/* Only resource 125. Shared frame and wash donor assets remain unchanged. */
.dspp .dspp-hero-cta{margin-top:20px}
.dspp .dspp-selection{display:grid;gap:28px;max-width:1000px;margin:0 auto;padding-top:24px}
.dspp .dspp-programs,.dspp .dspp-addons,.dspp .dspp-addon-items{display:grid;gap:8px}
.dspp .dspp-option{min-width:0;padding:12px;border:1px solid #4c4e58;border-radius:10px;background:var(--dw-panel)}
.dspp .dspp-option[data-selected=true]{border-color:#d1818d;background:#211b23}
.dspp[data-dspp-ready=true] .dspp-program{cursor:pointer}
.dspp[data-dspp-ready=true] .dspp-program:hover{border-color:#d1818d}
.dspp .dspp-program .dswl-details-body{cursor:text}
.dspp .dspp-option-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}
.dspp .dspp-option-heading :is(h3,h4){margin:0;font-size:18px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}
.dspp .dspp-option-heading p{font-size:12px;line-height:1.4;color:var(--dw-muted);margin-top:4px}
.dspp .dspp-option-heading>strong{font-size:19px;white-space:nowrap;line-height:1.35;font-weight:700}
.dspp .dspp-unit{font-size:11px;color:#c6bac4;margin:4px 0 7px}
.dspp .dspp-option-actions{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}
.dspp .dspp-option-actions>.dswl-details{grid-column:1/-1;grid-row:1;min-width:0}
.dspp .dspp-option-actions>.dswl-program-select{grid-column:2;grid-row:1;min-width:104px;min-height:44px;position:relative}
.dspp .dspp-option-actions>.dswl-details>summary{max-width:calc(100% - 112px);font-size:12px;min-height:44px;padding:8px}
.dspp .dswl-details-body{max-width:100%;font-size:13px;padding-top:12px}
.dspp .dswl-rate-heading{display:block;overflow-wrap:anywhere}
.dspp .dswl-rate-heading>strong{display:block;font-size:13px}
.dspp .dswl-rate-heading>strong+strong{margin-top:7px;color:#f1bfc6}
.dspp .dspp-addons .dspp-option{padding:9px 12px}
.dspp .dspp-addons .dspp-option-heading :is(h3,h4){font-size:15px}
.dspp .dspp-addons .dspp-option-heading>strong{font-size:17px}
.dspp .dspp-addons .dspp-unit{margin-bottom:2px}
.dspp .dspp-quantity{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #4e424e;margin-top:12px;padding-top:10px;font-size:13px}
.dspp .dspp-quantity>div{display:flex;gap:6px;align-items:center}
.dspp .dspp-quantity button{width:40px;min-height:44px;background:#28242d;border:1px solid #7d6570;color:#fff;cursor:pointer;font-size:21px}
.dspp .dspp-quantity button:disabled{opacity:.4;cursor:default}
.dspp .dspp-quantity input{width:52px;height:44px;border:1px solid #7d6570;background:#121217;color:#fff;text-align:center;appearance:textfield;font-size:16px;padding:4px}
.dspp .dspp-quantity input::-webkit-inner-spin-button{appearance:none}
.dspp .dspp-order-sidebar{min-width:0}
.dspp .dspp-order-sidebar .dswl-cart{margin:0;max-width:none}
.dspp .dspp-guide{display:none;padding:22px;border:1px solid #4b4550;border-radius:12px;background:#17191e}
.dspp .dspp-guide h2{font-size:21px;font-weight:700;line-height:1.25;margin:0 0 10px}
.dspp .dspp-guide p{font-size:14px;line-height:1.5;color:var(--dw-muted)}
.dspp .dswl-cart-items .dswl-cart-remove{grid-column:3;width:36px;min-height:44px}
.dspp .dspp-cart-fab{position:fixed;right:16px;bottom:calc(90px + env(safe-area-inset-bottom,0px));z-index:96;display:flex;flex-direction:column;gap:3px;align-items:flex-start;max-width:calc(100vw - 32px);min-height:56px;padding:10px 16px;background:#6e2435;border:1px solid #f1a8b4;border-radius:12px;box-shadow:0 6px 28px #0008;color:#fff;font-family:inherit;cursor:pointer}
.dspp .dspp-cart-fab>span{display:flex;gap:10px;align-items:center;font-size:12px;line-height:1.3}
.dspp .dspp-cart-fab [data-dspp-count]{font-size:11px;color:#f2d0d7}
.dspp .dspp-cart-fab>strong{font-size:17px;line-height:1.25;font-weight:700}
.dspp[data-dspp-keyboard=true] .dspp-cart-fab{display:none}
.dspp dialog.dswl-cart-dialog,.dspp dialog.dswl-book-dialog{max-height:calc(var(--dspp-view-height,100dvh) - 32px)!important}
.dspp .dswl-cart-dialog .dswl-cart-items{max-height:min(260px,32dvh);overflow:auto}
.dspp .dswl-book-dialog .dswl-dialog-summary p{max-height:80px}
.dspp .dswl-book-dialog .dswl-dialog-details pre{max-height:180px;overflow:auto;padding-right:4px}
.dspp .dswl-copy-fallback{max-height:180px;min-height:110px}
.dspp .dswl-options{max-height:min(280px,40dvh)}
.dspp .dswl-options [role=option]{font-size:14px}
.dspp:not([data-dspp-ready=true]) .dspp-order-sidebar{display:none}
.dspp .dswl-configure,.dspp #dspp-extras,.dspp #dspp-vehicle{scroll-margin-top:110px}
@media(max-width:767px){
 .dspp .dswl-hero{grid-template-columns:minmax(0,1fr);gap:14px}
 .dspp .dswl-hero-copy{grid-column:1;grid-row:1}
 .dspp .dswl-hero .dswl-photos{grid-column:1;grid-row:2}
 .dspp .dswl-hero .dswl-photos .dswl-slider-track>[data-dswl-slide]{flex-basis:78%}
 .dspp .dswl-hero .dswl-photos .dswl-slider-track img{height:140px;object-fit:cover}
 .dspp .dswl-hero .dswl-photos .dswl-slider-controls button{top:46px}
 .dspp .dswl-vehicle-band{grid-column:1;grid-row:3;padding:14px}
 .dspp .dspp-hero-cta{margin-top:16px}
 .dspp .dspp-selection{padding-top:20px;gap:26px}
 .dspp .dswl-extras{padding-top:0}
 .dspp .dspp-option-heading :is(h3,h4){font-size:16px}
 .dspp .dspp-option-heading>strong{font-size:17px}
 .dspp .dspp-addons .dspp-option-heading :is(h3,h4){font-size:14px}
 .dspp .dspp-addons .dspp-option-heading>strong{font-size:16px}
 .dspp .dspp-option-heading p{font-size:11px}
 .dspp .dswl-cart-items>li{grid-template-columns:minmax(0,1fr) auto 32px}
 .dspp .dswl-cart-item-price{font-size:13px;max-width:112px}
 .dspp .dswl-dialog-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
 .dspp .dswl-dialog-actions .dswl-messenger{padding:8px 5px;gap:4px;font-size:11px;justify-content:center}
 .dspp .dswl-dialog-actions .dswl-messenger-icon{width:22px;height:22px;flex-basis:22px}
 .dspp .dswl-copy{font-size:12px}
 .dspp .dswl-book-dialog .dswl-dialog-intro{font-size:13px}
 .dspp .dswl-book-dialog h2{font-size:24px}
}
@media(min-width:768px) and (max-width:1023px){
 .dspp .dswl-hero{grid-template-columns:1fr 1fr;gap:20px}
 .dspp .dswl-vehicle-band{grid-column:2;grid-row:1/3}
 .dspp .dspp-programs{grid-template-columns:repeat(3,minmax(0,1fr))}
 .dspp .dspp-program .dspp-option-heading{grid-template-columns:minmax(0,1fr)}
 .dspp .dspp-program .dspp-option-heading>strong{font-size:23px}
 .dspp .dspp-program .dspp-option-actions{display:flex;flex-wrap:wrap}
 .dspp .dspp-program .dspp-option-actions>.dswl-details{width:100%}
 .dspp .dspp-program .dspp-option-actions>.dswl-details>summary{max-width:100%}
}
@media(min-width:1024px){
 .dspp .dspp-selection{max-width:none;grid-template-columns:minmax(0,1fr) 344px;gap:38px 32px;padding-top:34px;align-items:start}
 .dspp .dswl-configure{grid-column:1/-1;grid-row:1}
 .dspp .dspp-programs{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
 .dspp .dspp-program{padding:18px}
 .dspp .dspp-program .dspp-option-heading{grid-template-columns:minmax(0,1fr);gap:14px}
 .dspp .dspp-program .dspp-option-heading :is(h3,h4){font-size:20px;min-height:52px}
 .dspp .dspp-program .dspp-option-heading>strong{font-size:29px;line-height:1.2}
 .dspp .dspp-program .dspp-unit{margin:8px 0 16px}
 .dspp .dspp-option-actions>.dswl-details>summary{font-size:13px}
 .dspp .dswl-extras{grid-column:1;grid-row:2;padding-top:0}
 .dspp .dspp-addons,.dspp .dspp-addon-items{gap:10px}
 .dspp .dspp-addons .dspp-option{padding:14px 16px}
 .dspp .dspp-addons .dspp-option-heading :is(h3,h4){font-size:17px}
 .dspp .dspp-addons .dspp-option-heading>strong{font-size:20px}
 .dspp .dspp-order-sidebar{grid-column:2;grid-row:2;position:sticky;top:112px;align-self:start;scroll-margin-top:112px}
 .dspp .dspp-order-sidebar .dswl-cart{display:flex;flex-direction:column;max-height:calc(100dvh - 136px);overflow:hidden;padding:20px}
 .dspp .dspp-order-sidebar .dswl-cart-items{min-height:0;max-height:min(320px,34dvh);overflow:auto;overscroll-behavior:contain;flex:1 1 auto}
 .dspp .dspp-order-sidebar .dswl-cart-items>li{grid-template-columns:minmax(0,1fr) auto 32px;gap:4px}
 .dspp .dspp-order-sidebar .dswl-cart-item-name{font-size:13px}
 .dspp .dspp-order-sidebar .dswl-cart-item-price{font-size:13px;max-width:95px}
 .dspp .dspp-order-sidebar .dswl-cart-heading h2{font-size:22px}
 .dspp .dspp-order-sidebar .dswl-cart-estimate,.dspp .dspp-order-sidebar .dswl-extra-actions,.dspp .dspp-order-sidebar .dswl-cart-foot{flex-shrink:0}
 .dspp[data-dspp-ready=true][data-dspp-has-selection=false] .dspp-guide{display:block}
 .dspp .dspp-cart-fab{display:none}
 .dspp .dswl-hero .dswl-photos .dswl-slider-track img{height:120px}
}
@media(min-width:1024px) and (max-width:1199px){
 .dspp .dspp-selection{grid-template-columns:minmax(0,1fr) 300px;gap:30px 24px}
 .dspp .dspp-program{padding:14px}
 .dspp .dspp-program .dspp-option-heading :is(h3,h4){font-size:18px;min-height:48px}
 .dspp .dspp-program .dspp-option-heading>strong{font-size:25px}
 .dspp .dspp-option-actions>.dswl-details>summary{font-size:11px;padding:8px 5px}
 .dspp .dspp-option-actions>.dswl-program-select{min-width:100px;font-size:12px}
 .dspp .dspp-order-sidebar .dswl-cart{padding:16px}
}
@media(max-width:359px){
 .dspp .dspp-option{padding:10px}
 .dspp .dspp-option-heading{gap:8px}
 .dspp .dspp-option-heading :is(h3,h4){font-size:15px}
 .dspp .dspp-option-heading>strong{font-size:16px}
 .dspp .dspp-option-actions>.dswl-details>summary{font-size:11px;padding:8px 5px}
 .dspp .dspp-option-actions>.dswl-program-select{min-width:98px;font-size:12px}
 .dspp .dswl-dialog-actions{gap:4px}
 .dspp .dswl-dialog-actions .dswl-messenger{font-size:10px;padding:7px 3px}
 .dspp .dswl-dialog-actions .dswl-messenger-icon{display:none}
}

/* 034 — visible addon groups retain their compact option rows. */
.dspp .dspp-addons{gap:18px}
.dspp .dspp-addons .dswl-extra-task+.dswl-extra-task{margin-top:0}
.dspp .dspp-addons .dswl-extra-task>h3{margin-bottom:8px}

/* 035 — shared paper cart; preserve a readable name column in the compact sidebar. */
.dspp .dswl-cart-items>li{grid-template-columns:minmax(0,1fr) auto 32px;gap:6px}
.dspp .dswl-cart-items .dswl-cart-remove{grid-column:3;width:32px;min-height:44px}
.dspp .dswl-cart-item-price{max-width:112px;font-size:14px}
.dspp .dswl-cart-item-unit{font-size:12px;line-height:1.4}
.dspp .dswl-cart-dialog .dswl-cart{padding:14px}
@media(min-width:1024px){
 .dspp .dspp-order-sidebar .dswl-cart-items>li{grid-template-columns:minmax(0,1fr) auto 28px;gap:6px}
 .dspp .dspp-order-sidebar .dswl-cart-item-name,.dspp .dspp-order-sidebar .dswl-cart-item-price{font-size:14px}
 .dspp .dspp-order-sidebar .dswl-cart-item-price{max-width:108px}
 .dspp .dspp-order-sidebar .dswl-cart-items .dswl-cart-remove{width:28px}
}
@media(max-width:359px){
 .dspp .dswl-cart-dialog .dswl-cart{padding:12px}
 .dspp .dswl-cart-items>li{grid-template-columns:minmax(0,1fr) auto 28px;gap:4px}
 .dspp .dswl-cart-item-price{font-size:13px;max-width:100px}
 .dspp .dswl-cart-items .dswl-cart-remove{width:28px}
}

/* 035 — keep two readable messenger actions and give MAX its own row. */
.dspp .dswl-book-dialog .dswl-dialog-actions .dswl-messenger{justify-content:flex-start;flex-wrap:wrap;gap:7px;padding:9px 10px;font-size:12px;min-height:44px}
.dspp .dswl-book-dialog .dswl-dialog-actions .dswl-messenger>span:last-child{flex:1 1 auto;min-width:min-content;max-width:100%}
.dspp .dswl-book-dialog .dswl-dialog-actions .dswl-messenger--max{grid-column:1/-1}
.dspp .dswl-book-dialog .dswl-dialog-actions .dswl-messenger-icon{display:grid;width:22px;height:22px;flex:0 0 22px;padding:4px}
@media(max-width:767px){.dspp .dswl-book-dialog .dswl-dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}}

/* Resource 125 compact project photo cover. */
.dspp header.dswl-photo-hero{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;padding:16px 0 24px}
.dspp #dspp-photo-cover{position:relative;isolation:isolate;overflow:hidden;grid-column:1;grid-row:1;height:270px;min-width:0;border:1px solid #454954;border-radius:14px;background:#191b1f}
.dspp #dspp-photo-cover::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(9,10,12,.13) 12%,rgba(9,10,12,.2) 30%,rgba(9,10,12,.81) 67%,rgba(9,10,12,.97) 100%);pointer-events:none}
.dspp #dspp-photo-cover .dswl-hero-copy{position:absolute;inset:auto 0 0;z-index:2;display:block;width:auto;max-width:none;margin:0;padding:0 18px 18px;grid-column:auto;grid-row:auto;pointer-events:none}
.dspp #dspp-photo-cover h1{margin:0;max-width:none;font-size:30px;line-height:1.06;letter-spacing:-.035em;color:#fff;text-shadow:0 1px 10px #0005}
.dspp #dspp-photo-cover .dswl-hero-description{max-width:calc(100% - 94px);margin:9px 0 0;color:#f1f2f4;font-size:14px;line-height:1.4;text-shadow:0 1px 8px #0008}
.dspp #dspp-photo-cover .dswl-photos{position:absolute;inset:0;grid-column:auto;grid-row:auto;width:100%;height:100%;margin:0;padding:0;border:0}
.dspp #dspp-photo-cover .dswl-photos .dswl-section-heading{display:contents;margin:0}
.dspp #dspp-photo-cover .dswl-photos .dswl-slider-track{position:relative;z-index:0;display:flex;width:100%;height:100%;gap:0;margin:0;padding:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.dspp #dspp-photo-cover .dswl-photos .dswl-slider-track::-webkit-scrollbar{display:none}
.dspp #dspp-photo-cover .dswl-photos .dswl-slider-track:focus-visible{outline:3px solid #fff;outline-offset:-4px}
.dspp #dspp-photo-cover .dswl-photos .dswl-slider-track>[data-dswl-slide]{flex:0 0 100%;width:100%;height:100%;min-width:0;scroll-snap-align:start}
.dspp #dspp-photo-cover .dswl-photos figure{width:100%;height:100%;margin:0}
.dspp #dspp-photo-cover .dswl-photos .dswl-slider-track img{display:block;width:100%;height:100%;max-width:none;aspect-ratio:auto;object-fit:cover;object-position:50% 45%;border-radius:0}
.dspp #dspp-photo-cover .dswl-slider-controls:not([hidden]){display:contents}
.dspp #dspp-photo-cover .dswl-slider-controls button{position:absolute;top:auto;bottom:16px;z-index:3;width:44px;height:44px;min-height:44px;margin:0;padding:0;border:1px solid #a0a5af;border-radius:50%;background:#15171bd9;color:#fff;font-size:24px;line-height:1}
.dspp #dspp-photo-cover .dswl-slider-controls button:focus-visible{outline:3px solid #fff;outline-offset:3px}
.dspp #dspp-photo-cover [data-dswl-slider-prev]{left:auto;right:66px}
.dspp #dspp-photo-cover [data-dswl-slider-next]{left:auto;right:14px}
.dspp #dspp-photo-cover .dswl-slider-controls>span{position:absolute;inset:18px auto auto 18px;z-index:3;clip:auto;clip-path:none;width:auto;height:auto;min-width:0;overflow:visible;margin:0;padding:4px 7px;border-radius:6px;background:#14161bba;color:#fff;white-space:nowrap;font-size:11px;line-height:1.3}
.dspp .dswl-photo-hero>.dswl-vehicle-band{grid-column:1;grid-row:2;margin:0;align-self:start}
@media(min-width:768px){
 .dspp header.dswl-photo-hero{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:24px;padding:28px 0}
 .dspp #dspp-photo-cover{height:320px}
 .dspp .dswl-photo-hero>.dswl-vehicle-band{grid-column:2;grid-row:1;align-self:start}
 .dspp #dspp-photo-cover .dswl-hero-copy{padding:0 22px 22px}
 .dspp #dspp-photo-cover h1{font-size:30px}
 .dspp #dspp-photo-cover .dswl-hero-description{font-size:14px}
}
@media(min-width:1024px){
 .dspp header.dswl-photo-hero{gap:32px;padding:32px 0}
 .dspp #dspp-photo-cover{height:336px}
 .dspp #dspp-photo-cover h1{font-size:clamp(32px,3.1vw,44px)}
 .dspp #dspp-photo-cover .dswl-hero-description{font-size:15px;max-width:calc(100% - 104px)}
}
@media(max-width:359px){
 .dspp #dspp-photo-cover{height:280px}
 .dspp #dspp-photo-cover h1{font-size:26px}
 .dspp #dspp-photo-cover .dswl-hero-copy{padding:0 14px 16px}
 .dspp #dspp-photo-cover .dswl-hero-description{max-width:calc(100% - 94px);font-size:13px}
}
@media(prefers-reduced-motion:reduce){.dspp #dspp-photo-cover .dswl-slider-track{scroll-behavior:auto}.dspp #dspp-photo-cover *{animation:none;transition:none}}
/* Resource 125: current service app structure and four PPF classes. */
main.dspp [hidden]{display:none!important}
main.dspp *{box-sizing:border-box}
main.dspp .dspp-title-details{display:inline-flex;align-items:flex-start;gap:8px;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer}
main.dspp .dspp-title-details:focus-visible,main.dspp [data-dspp-category]:focus-visible,main.dspp [data-dspp-body-class]:focus-visible{outline:3px solid #ff9297;outline-offset:3px}
main.dspp .dswl-service-preview,main.dspp .dspp-service-preview{margin:6px 0 8px;color:#bfc3cc;font-size:13px;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:3em}
main.dspp .dspp-option:has(details[open]) :is(.dswl-service-preview,.dspp-service-preview){display:none}
main.dspp .dswl-details-body{cursor:pointer;overflow-wrap:anywhere}
main.dspp .dswl-details-body :is(p,ul,ol){max-width:100%}
main.dspp .dswl-details-body a{position:relative;z-index:2}
main.dspp .dspp-option-actions{grid-template-columns:minmax(0,1fr) auto;align-items:start}
main.dspp .dspp-stepper{display:flex;grid-column:2;grid-row:1;align-items:center;min-height:44px;margin:0;border:1px solid #727985;border-radius:7px;overflow:hidden;background:#1b1c20;position:relative;z-index:1}
main.dspp .dspp-stepper button{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;min-height:44px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#f4f3f0;font:inherit;font-size:20px;cursor:pointer}
main.dspp .dspp-stepper button:disabled{opacity:.4;cursor:default}
main.dspp .dspp-stepper input{display:block;flex:0 0 40px;width:40px;min-width:0;min-height:44px;margin:0;padding:4px 0;text-align:center;border:0;border-radius:0;background:transparent;color:#fff;font:inherit;font-size:16px;appearance:textfield}
main.dspp .dspp-stepper input::-webkit-inner-spin-button,main.dspp .dspp-stepper input::-webkit-outer-spin-button{appearance:none;margin:0}
main.dspp .dspp-stepper :is(input,button):focus-visible{outline:2px solid #ff9297;outline-offset:-3px}
main.dspp .dspp-stepper input[aria-invalid=true]{background:#4a2029}
main.dspp [data-dspp-body-class]{min-width:0;min-height:44px;padding:9px 10px;border:1px solid #555b66;border-radius:7px;background:#191b20;color:#f4f3f0;font:inherit;font-size:13px;text-align:left;cursor:pointer;overflow-wrap:anywhere}
main.dspp [data-dspp-body-class][aria-pressed=true]{border-color:#e4717c;background:#301c24}
main.dspp .dspp-body-classes,main.dspp [data-dspp-class-picker]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}
main.dspp .dspp-preparation-confirm{display:flex;align-items:flex-start;gap:9px;margin:12px 0;font-size:13px;line-height:1.5;color:#c5c7ce}
main.dspp .dspp-preparation-confirm input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:#d3293f}
main.dspp .dspp-selection{display:block;max-width:none}
main.dspp .dspp-programs{display:grid;grid-template-columns:minmax(0,1fr);gap:7px}
main.dspp .dspp-program{padding:10px 12px}
main.dspp .dspp-program .dspp-option-heading{grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
main.dspp .dspp-program .dspp-option-heading :is(h3,h4){min-height:0;font-size:16px}
main.dspp .dspp-program .dspp-option-heading>strong{font-size:17px}
main.dspp .dspp-program .dspp-unit{margin:3px 0 5px;font-size:11px}
main.dspp .dspp-program .dspp-option-actions{display:grid;grid-template-columns:minmax(0,1fr) auto}
main.dspp .dspp-program .dspp-option-actions>.dswl-details{width:auto}
main.dspp .dspp-program .dspp-option-actions>.dswl-details>summary{max-width:calc(100% - 120px)}
main.dspp .dspp-program .dswl-service-preview{font-size:12px;margin:5px 0}
main.dspp .dspp-order-sidebar{margin-top:24px}
main.dspp .dspp-guide{display:none!important}
main.dspp .dspp-addons{gap:14px}
main.dspp [data-dspp-app]{margin-top:24px;scroll-margin-top:var(--dspp-category-top,100px)}
main.dspp [data-dspp-categories]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
main.dspp [data-dspp-category]{position:relative;display:flex;align-items:center;gap:10px;min-width:0;width:100%;min-height:76px;padding:12px;border:1px solid #454953;border-radius:9px;background:#191a1e;color:#f4f3f0;text-align:left;cursor:pointer;font:inherit}
main.dspp [data-dspp-category]>svg{flex:0 0 30px;width:30px;height:30px;color:#d8dbe1}
main.dspp [data-dspp-category] :is(strong,small){display:block;overflow-wrap:anywhere}
main.dspp [data-dspp-category] strong{font-size:14px;font-weight:600;line-height:1.3}
main.dspp [data-dspp-category] small{font-size:11px;line-height:1.3;color:#aeb3be;margin-top:4px}
main.dspp [data-dspp-category]:hover,main.dspp [data-dspp-category][data-dspp-selected-count]:not([data-dspp-selected-count="0"]){border-color:#ee747d;background:#251b21}
main.dspp [data-dspp-category-count]{position:absolute;top:6px;right:6px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;background:#b71e2c;color:#fff;border-radius:20px;font-size:11px}
main.dspp [data-dspp-category-header]{position:sticky;top:var(--dspp-category-top,0px);z-index:24;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;margin:0 0 14px;padding:10px 0 12px;background:#111216f7;border-bottom:1px solid #343843;backdrop-filter:blur(8px)}
main.dspp [data-dspp-category-header] button{min-height:44px;padding:8px 12px;border:1px solid #555c68;border-radius:7px;background:transparent;color:#f4f3f0;font:inherit;font-size:13px;cursor:pointer}
main.dspp [data-dspp-category-back]{justify-self:start}
main.dspp [data-dspp-category-done]{justify-self:end}
main.dspp [data-dspp-category-title]{grid-column:1/-1;margin:1px 0;font-size:24px;line-height:1.2;font-weight:700;overflow-wrap:anywhere}
main.dspp [data-dspp-category-caption]{grid-column:1/-1;margin:0;font-size:12px;line-height:1.4;color:#bfc3cc}
main.dspp [data-dspp-extra-list]{display:grid;gap:14px}
main.dspp [data-dspp-extra-search]{max-width:100%;font-size:16px}
main.dspp[data-dspp-app-ready=true] [data-dspp-extra-group]>h3{display:none}
main.dspp [data-dspp-extra-row] .dspp-option-heading{align-items:start}
main.dspp [data-dspp-extra-row] .dspp-option-heading h4{display:flex;align-items:flex-start;gap:8px;min-width:0}
main.dspp [data-dspp-extra-row] .dspp-option-heading svg{flex:0 0 20px;width:20px;height:20px;color:#b6becb}
main.dspp [data-dspp-extra-row][data-selected=true] .dspp-option-heading svg{color:#e8808d}
main.dspp [data-dspp-swipe-hint]{display:none}
@media(max-width:1023px) and (any-pointer:coarse){
 main.dspp [data-dspp-swipe-hint]{display:flex;grid-column:1/-1;align-items:center;justify-content:center;gap:8px;min-height:32px;margin:0;padding:5px 8px;border:1px solid #812436;border-radius:10px;background:linear-gradient(100deg,#29151b,#1c1519);color:#c9c6ce;font:inherit;font-size:12px;line-height:1.3;pointer-events:none;user-select:none}
 main.dspp [data-dspp-swipe-hint] svg{display:block;flex:0 0 43px;width:43px;height:22px;color:#f2384e;overflow:visible}
 main.dspp [data-dspp-swipe-hint][data-state=visible] .dswl-swipe-hand,main.dspp [data-dspp-swipe-hint][data-state=visible] .dspp-swipe-hand{animation:dspp-swipe-teach057 2.2s ease-in-out infinite}
}
@keyframes dspp-swipe-teach057{0%,20%,100%{transform:translateX(0)}55%{transform:translateX(6px)}}
/* Signature 051 red capsule; the script measures shared navigation and cookie clearance. */
main.dspp .dspp-cart-fab{position:fixed;z-index:30;right:max(16px,env(safe-area-inset-right,0px));left:auto;bottom:var(--dspp-cart-bottom,calc(90px + env(safe-area-inset-bottom,0px)));display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:max-content;min-width:176px;max-width:min(250px,calc(100vw - 32px));min-height:56px;padding:9px 18px 12px;border:1px solid #ff7886;border-radius:999px;background:linear-gradient(175deg,#ed3549 0%,#ce1e37 44%,#a71029 100%);box-shadow:inset 0 1px 1px #ffffffa6,inset 0 -4px 0 #61091e73,0 7px 20px #0009;color:#fff;font:inherit;text-align:left;cursor:pointer;transform-origin:right bottom}
main.dspp .dspp-cart-fab>span{display:flex;align-items:center;gap:8px;font-size:11px;line-height:1.2}
main.dspp .dspp-cart-fab [data-dspp-count]{font-size:11px;line-height:1.2;color:#fff}
main.dspp .dspp-cart-fab>strong,main.dspp .dspp-cart-fab [data-dspp-total]{font-size:17px;font-weight:700;line-height:1.15;letter-spacing:-.02em;text-shadow:0 1px 1px #6f0b2855;white-space:normal;overflow-wrap:anywhere}
main.dspp .dspp-cart-fab:hover{filter:brightness(1.08)}
main.dspp .dspp-cart-fab:active{filter:brightness(.96);box-shadow:inset 0 3px 7px #69051d66}
main.dspp .dspp-cart-fab:focus-visible{outline:3px solid #fff;outline-offset:4px}
main.dspp[data-dspp-keyboard=true] .dspp-cart-fab{display:none}
main.dspp[data-dspp-has-selection=true]{padding-bottom:150px}
main.dspp .dswl-cart-item-price{white-space:normal;overflow-wrap:anywhere}
main.dspp dialog{max-width:calc(100vw - 24px);width:min(620px,calc(100vw - 24px));overflow:auto;overscroll-behavior:contain}
main.dspp dialog[open]:not(:modal){position:fixed;inset:12px;margin:auto;z-index:110}
main.dspp .dswl-copy-fallback{width:100%;font-size:14px;white-space:pre-wrap}
main.dspp .dswl-cart-item-name{overflow-wrap:anywhere}
@media(max-width:1023px){
 main.dspp .dspp-order-sidebar{display:none}
}
/* Use the existing shared capsule when its current quote is available. */
body[data-dsvc062-basket="true"]:has(#ds-guest-cart039) main.dspp [data-dspp-fab]{display:none!important}
@media(min-width:768px){
 main.dspp [data-dspp-categories]{grid-template-columns:repeat(3,minmax(0,1fr))}
 main.dspp .dspp-program .dspp-option-heading :is(h3,h4){font-size:17px}
 main.dspp .dspp-program .dspp-option-heading>strong{font-size:19px}
}
@media(min-width:1024px){
 main.dspp .dspp-selection{display:grid;grid-template-columns:minmax(0,1fr) 344px;gap:30px 32px;align-items:start}
 main.dspp .dswl-configure{grid-column:1/-1;grid-row:1}
 main.dspp [data-dspp-app]{grid-column:1;grid-row:2;margin-top:0}
 main.dspp .dspp-order-sidebar{grid-column:2;grid-row:2;margin-top:0}
 main.dspp .dspp-cart-fab{display:none}
 main.dspp[data-dspp-has-selection=true]{padding-bottom:56px}
}
@media(max-width:359px){
 main.dspp .dspp-program .dspp-option-heading :is(h3,h4){font-size:14px}
 main.dspp .dspp-program .dspp-option-heading>strong{font-size:15px}
 main.dspp [data-dspp-category]{gap:7px;padding:10px}
 main.dspp [data-dspp-category]>svg{flex-basis:25px;width:25px;height:25px}
 main.dspp [data-dspp-category] strong{font-size:13px}
 main.dspp .dspp-stepper button{width:31px;flex-basis:31px}
 main.dspp .dspp-stepper input{width:36px;flex-basis:36px}
 main.dspp .dspp-cart-fab [data-dspp-total]{font-size:16px}
}
@media(prefers-reduced-motion:reduce){main.dspp *,main.dspp *::before,main.dspp *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Service title icons. */
main.dspp .dspp-option-heading .dspp-service-icon{display:block;flex:0 0 22px;width:22px;height:22px}
main.dspp .dspp-option-heading :is(h3,h4){min-width:0}
main.dspp [data-dspp-body-class] strong{display:block;font-size:12px;font-weight:600;line-height:1.35}
main.dspp [data-dspp-body-class] small{display:block;margin-top:5px;font-size:10px;line-height:1.45;font-weight:400;color:#b5bbc6}
main.dspp .dspp-native-price{min-width:0;margin:28px 0}
main.dspp .dspp-table-scroll{display:block;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
main.dspp .dspp-table-scroll table{width:100%;min-width:680px;border-collapse:collapse;text-align:left;font-size:13px;line-height:1.45}
main.dspp .dspp-table-scroll :is(th,td){padding:10px 12px;border:1px solid #454953;vertical-align:top}
main.dspp .dspp-table-scroll td{white-space:nowrap}
main.dspp .dspp-table-scroll th{font-weight:600}
main.dspp .dspp-table-scroll th:first-child{min-width:190px}
main.dspp .dspp-table-scroll th small{font-size:11px;font-weight:400;color:#b5bbc6}
/* Same compact category row as the current wash app: Back left, title right, teaching hint below. */
main.dspp[data-dspp-app-ready=true] [data-dspp-category-header]{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:56px;margin:0 0 12px;padding:6px 0;border-bottom:1px solid #343740;background:#101114;z-index:40}
main.dspp[data-dspp-app-ready=true] [data-dspp-category-back]{grid-column:1;grid-row:1;min-height:44px;margin:0;padding:8px 10px;font-size:12px;line-height:1.2;white-space:nowrap;justify-self:start}
main.dspp[data-dspp-app-ready=true] [data-dspp-category-title]{grid-column:2;grid-row:1;min-width:0;margin:0;font-size:14px;line-height:1.3;font-weight:600;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
main.dspp[data-dspp-app-ready=true] :is([data-dspp-category-done],[data-dspp-category-caption]){display:none}
main.dspp[data-dspp-app-ready=true] [data-dspp-swipe-hint]{grid-column:1/-1;grid-row:2}
main.dspp[data-dspp-app-ready=true] [data-dspp-extra-search]{scroll-margin-top:calc(var(--dspp-category-top,88px) + 64px)}
main.dspp[data-dspp-app-ready=true] [data-dspp-extra-row]{scroll-margin-top:calc(var(--dspp-category-top,88px) + 108px)}
main.dspp .dspp-cart-fab{flex-direction:row;align-items:center;gap:11px;padding:8px 14px 10px}
main.dspp .dspp-cart-fab>svg{display:block;flex:none;width:26px;height:26px;filter:drop-shadow(0 1px 1px #6f0c2855)}
main.dspp .dspp-cart-fab>span:not(.dswl-sr){display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}
main.dspp .dspp-cart-fab>span:not(.dswl-sr)>span{font-size:11px;line-height:1.2;color:#fff}
main.dspp .dspp-option-heading>:is(h3,h4){display:flex;align-items:flex-start;gap:8px}
/* 057: shared039 retires the old launcher; this page now supplies its own capsule. */
@media(max-width:1023px){main.dspp[data-dspp-ready=true][data-dspp-has-selection=true]:not([data-dspp-keyboard=true]) .dspp-cart-fab[data-dspp-fab]:not([hidden]){display:flex!important}}
/* Donor052: keep vertical scrolling and pinch zoom native during deliberate right swipes. */
@media(max-width:1023px){
 main.dspp[data-dspp-app-ready=true] [data-dspp-app][data-dspp-app-view=category],
 main.dspp[data-dspp-app-ready=true] [data-dspp-app][data-dspp-app-view=search]{touch-action:pan-y pinch-zoom}
}
main.dspp details.dspp-class-examples{margin:8px 0 0;padding:0;border:0;border-top:1px solid #353942;border-radius:0;color:#bfc3cc;font-size:12px;line-height:1.45}
main.dspp details.dspp-class-examples>summary{min-height:44px;padding:12px 0;color:#d5d8df;font-size:12px;line-height:1.4;cursor:pointer}
main.dspp details.dspp-class-examples>summary:focus-visible{outline:2px solid #ff9297;outline-offset:2px}
main.dspp details.dspp-class-examples :is(p,dl,ul){margin:0 0 9px;font-size:12px;line-height:1.5}
main.dspp details.dspp-class-examples dt{margin-top:7px;font-weight:600;color:#d5d8df}
main.dspp details.dspp-class-examples dd{margin:2px 0 7px}

/* Compact PPF hero and pending price labels. */
main.dspp .dspp-option-heading>strong{white-space:normal;text-align:right;max-width:180px}
main.dspp .dspp-program .dspp-option-heading>strong{text-align:left}
main.dspp .dswl-hero-description{max-width:660px}

main.dspp #dspp-photo-cover{height:320px}
main.dspp #dspp-photo-cover h1{font-size:clamp(26px,3vw,36px)}
main.dspp #dspp-photo-cover .dswl-hero-copy{padding-bottom:70px}
main.dspp #dspp-photo-cover .dswl-hero-description{max-width:100%}
@media(min-width:1024px){main.dspp #dspp-photo-cover{height:336px}}
/* Two packages and two explicit material choices. */
main.dspp .dspp-film-picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:12px 24px;margin:6px 0 20px;padding:18px;border:1px solid #454953;border-radius:12px;background:#17191e}
main.dspp .dspp-film-picker h2{font-size:22px;line-height:1.15;margin:3px 0 8px}
main.dspp .dspp-film-picker p{font-size:12px;line-height:1.5;color:#c3c6cf;margin:0}
main.dspp .dspp-film-picker .dswl-eyebrow{font-size:10px;color:#f0a9b4}
main.dspp .dspp-film-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
main.dspp [data-dspp-film]{min-height:80px;padding:12px;text-align:left;border:1px solid #5b616f;border-radius:9px;background:#20232a;color:#fff;font:inherit;cursor:pointer}
main.dspp [data-dspp-film] strong{display:block;font-size:14px;line-height:1.3;margin-bottom:6px}
main.dspp [data-dspp-film] span{display:block;font-size:11px;line-height:1.45;color:#c1c6d0}
main.dspp [data-dspp-film][aria-pressed=true]{border-color:#ed8b9b;background:#3a202b;box-shadow:inset 0 0 0 1px #ed8b9b}
main.dspp [data-dspp-film]:focus-visible{outline:3px solid #ff9297;outline-offset:3px}
main.dspp [data-dspp-film-status]{grid-column:1/-1}
main.dspp .dspp-option [data-dspp-toggle]:disabled{opacity:.8;color:#abd8bf;background:#183326;border-color:#456b55;cursor:default}
main.dspp .dspp-programs{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:767px){main.dspp .dspp-film-picker{grid-template-columns:minmax(0,1fr);padding:13px;gap:12px}main.dspp .dspp-programs{grid-template-columns:minmax(0,1fr)}main.dspp [data-dspp-film]{padding:10px;min-height:104px}main.dspp [data-dspp-film] strong{font-size:13px}}
main.dspp .dspp-recommend-strip{margin:14px 0;padding:14px;border:1px solid #65494f;border-radius:10px;background:#241d24}
main.dspp .dspp-recommend-strip h3{font-size:16px;margin:0 0 5px}
main.dspp .dspp-recommend-strip p{font-size:12px;color:#c7c1ca;line-height:1.5;margin:0 0 10px}
main.dspp .dspp-recommend-strip>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
main.dspp [data-dspp-recommend]{min-height:54px;padding:9px;border:1px solid #796470;border-radius:8px;background:#30252d;color:#fff;font:inherit;font-size:12px;line-height:1.4;text-align:left;cursor:pointer}
main.dspp [data-dspp-recommend][aria-pressed=true]{background:#3a2030;border-color:#f0a4b2}
main.dspp [data-dspp-recommend]:focus-visible{outline:3px solid #ff9297;outline-offset:2px}
@media(max-width:767px){main.dspp .dspp-recommend-strip>div{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* PDF price list uses the same compact hero position as polishing. */
main.dspp #dspp-photo-cover #dspp-price-pdf{position:absolute;inset:14px 14px auto auto;z-index:4;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;max-width:none;margin:0;padding:8px 11px;border:1px solid #a0a5af;border-radius:9px;background:#14161bea;color:#fff;font-size:12px;font-weight:600;line-height:1.2;text-decoration:none;box-shadow:none}
main.dspp #dspp-photo-cover #dspp-price-pdf svg{display:block;flex:none;width:22px;height:28px}
main.dspp #dspp-photo-cover #dspp-price-pdf span{white-space:nowrap}
main.dspp #dspp-photo-cover #dspp-price-pdf:hover{background:#252830;border-color:#e2e4e8}
main.dspp #dspp-photo-cover #dspp-price-pdf:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(max-width:359px){main.dspp #dspp-photo-cover #dspp-price-pdf{inset:12px 12px auto auto}}
