.oss-home-pipe-quiz { --quiz-ink:#222529; --quiz-muted:#626872; --quiz-line:#e1e5e9; --quiz-red:#dd292b; padding:24px 0 40px; color:var(--quiz-ink); scroll-margin-top:90px; }
.oss-quiz-shell { display:grid; grid-template-columns:minmax(230px,.75fr) minmax(0,1.6fr); border:1px solid var(--quiz-line); border-radius:24px; overflow:hidden; background:#fff; }
.oss-quiz-aside { display:flex; flex-direction:column; min-width:0; padding:34px 28px; background:#202429; color:#fff; }
.oss-quiz-eyebrow { margin:0 0 18px; color:#ff999a; font-size:12px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.oss-quiz-aside h2 { color:#fff; font-size:clamp(26px,2.2vw,34px); line-height:1.18; font-weight:650; letter-spacing:-.025em; margin:0 0 18px; }
.oss-quiz-aside>p:not(.oss-quiz-eyebrow) { font-size:14px; line-height:1.65; color:#c6cbd1; margin:0; }
.oss-quiz-aside>img { display:block; width:100%; height:170px; margin:20px 0; object-fit:contain; border-radius:12px; }
.oss-quiz-summary { padding:18px 0; border-top:1px solid #ffffff29; border-bottom:1px solid #ffffff29; }
.oss-quiz-summary strong { display:block; font-size:13px; margin-bottom:8px; }
.oss-quiz-summary p { margin:0; color:#c6cbd1; font-size:13px; line-height:1.6; white-space:pre-line; overflow-wrap:anywhere; }
.oss-quiz-aside>a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; padding-top:20px; color:#fff; font-size:13px; text-decoration:none !important; }
.oss-quiz-main { min-width:0; padding:32px; }
.oss-quiz-steps { display:flex; gap:18px; list-style:none; margin:0 0 28px; padding:0 0 24px; border-bottom:1px solid var(--quiz-line); }
.oss-quiz-steps li { display:flex; align-items:center; gap:8px; margin:0; padding:0; color:var(--quiz-muted); font-size:13px; line-height:1.35; }
.oss-quiz-steps li::before { display:none; }
.oss-quiz-steps li>span { display:grid; place-items:center; width:28px; height:28px; flex-shrink:0; border:1px solid var(--quiz-line); border-radius:50%; font-size:12px; }
.oss-quiz-steps li[aria-current=step] { font-weight:600; color:var(--quiz-ink); }
.oss-quiz-steps li[aria-current=step]>span { border-color:var(--quiz-red); color:#fff; background:var(--quiz-red); }
.oss-quiz-main h3 { font-size:24px; line-height:1.25; letter-spacing:-.02em; margin:0 0 20px; font-weight:600; }
.oss-quiz-main [hidden] { display:none !important; }
.oss-quiz-main fieldset { border:0; padding:0; margin:0 0 24px; min-width:0; }
.oss-quiz-main legend { font-size:14px; line-height:1.4; font-weight:600; margin:0 0 12px; }
.oss-quiz-shapes { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.oss-quiz-shapes label,.oss-quiz-materials label { position:relative; margin:0; cursor:pointer; }
.oss-quiz-shapes input,.oss-quiz-materials input { position:absolute; opacity:0; width:1px; height:1px; }
.oss-quiz-shapes label>span { display:flex; align-items:center; gap:12px; min-height:72px; border:1px solid var(--quiz-line); border-radius:12px; padding:14px; font-size:15px; }
.oss-quiz-shapes b { display:grid; place-items:center; width:36px; font-size:34px; line-height:1; font-weight:400; }
.oss-quiz-shapes input:checked+span,.oss-quiz-materials input:checked+span { border-color:var(--quiz-red); background:#fff4f4; color:#ac1f21; box-shadow:inset 0 0 0 1px var(--quiz-red); }
.oss-quiz-materials { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.oss-quiz-materials label>span { display:flex; align-items:center; min-height:46px; border:1px solid var(--quiz-line); border-radius:9px; padding:10px 12px; font-size:13px; line-height:1.4; }
.oss-quiz-main a:focus-visible,.oss-quiz-main button:focus-visible,.oss-quiz-main input:focus-visible,.oss-quiz-main select:focus-visible,.oss-quiz-shapes input:focus-visible+span,.oss-quiz-materials input:focus-visible+span { outline:2px solid var(--quiz-red); outline-offset:3px; }
.oss-quiz-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.oss-quiz-fields label,.oss-quiz-volume>label { display:flex; flex-direction:column; gap:8px; font-size:13px; color:var(--quiz-muted); margin:0; }
.oss-quiz-fields select,.oss-quiz-volume input,.oss-quiz-volume select { width:100%; min-width:0; height:48px; border:1px solid #cfd5dc; border-radius:9px; padding:10px 12px; background:#fff; color:var(--quiz-ink); font-family:inherit;font-size:14px;line-height:1.4; }
.oss-quiz-hint,.oss-quiz-status { color:var(--quiz-muted); font-size:13px; line-height:1.55; margin:0 0 18px; }
.oss-quiz-status { margin:18px 0; min-height:20px; }
.oss-quiz-products legend { font-size:14px; }
.oss-quiz-parameter-choice { display:flex; align-items:center; gap:10px; padding:12px 0; font-size:13px; cursor:pointer; }
.oss-quiz-product { display:grid; grid-template-columns:18px 52px minmax(0,1fr); align-items:center; gap:10px; padding:12px; margin:8px 0 0; border:1px solid var(--quiz-line); border-radius:10px; cursor:pointer; }
.oss-quiz-product:has(input:checked) { border-color:var(--quiz-red); background:#fff6f6; }
.oss-quiz-product input,.oss-quiz-unknown input,.oss-quiz-parameter-choice input { accent-color:var(--quiz-red); width:18px; height:18px; margin:0; flex-shrink:0; }
.oss-quiz-product img { width:52px; height:52px; object-fit:contain; background:#fff; border-radius:6px; }
.oss-quiz-product strong { display:block; font-size:12px; line-height:1.5; font-weight:500; overflow-wrap:break-word; }
.oss-quiz-product small { display:block; font-size:12px; line-height:1.5; margin-top:5px; color:var(--quiz-muted); }
.oss-quiz-catalog-link,.oss-quiz-text-button { display:inline-flex; align-items:center; gap:12px; padding:6px 0; min-height:44px; border:0; background:none; color:#b32224; font-family:inherit;font-size:13px;line-height:1.4; text-decoration:none !important; cursor:pointer; }
.oss-quiz-volume { display:grid; grid-template-columns:1fr 90px; gap:12px; }
.oss-quiz-volume>label:last-child { grid-column:1/-1; }
.oss-quiz-unknown { display:flex; align-items:center; gap:10px; font-size:13px; line-height:1.4; padding:12px 0; margin:0; cursor:pointer; }
.oss-quiz-estimate { margin:8px 0 20px; padding:14px; border-radius:10px; background:#f5f6f7; color:var(--quiz-muted); font-size:13px; line-height:1.55; }
.oss-quiz-estimate strong { display:block; color:var(--quiz-ink); font-size:22px; margin-bottom:4px; }
.oss-quiz-nav { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:24px; padding-top:20px; border-top:1px solid var(--quiz-line); }
.oss-quiz-back,.oss-quiz-next { min-height:48px; padding:12px 18px; border-radius:9px; font-family:inherit;font-size:14px;font-weight:600;line-height:1.4; cursor:pointer; }
.oss-quiz-back { background:#fff; border:1px solid var(--quiz-line); color:var(--quiz-ink); }
.oss-quiz-next { display:flex; align-items:center; gap:18px; background:var(--quiz-red); color:#fff; border:1px solid var(--quiz-red); margin-left:auto; }
.oss-quiz-next:disabled { opacity:.6; cursor:wait; }
.oss-quiz-validation { color:#a51e20; font-size:13px; line-height:1.5; padding:12px; background:#fff0f0; border-radius:8px; }
.oss-home-pipe-quiz .oss-pipe-request-form { padding:0; background:none; border:0; box-shadow:none; width:100%; }
.oss-home-pipe-quiz .oss-pipe-form-heading { display:none; }
.oss-home-pipe-quiz .oss-pipe-request-fields { gap:16px; }
.oss-home-pipe-quiz .oss-pipe-request-field label { font-size:13px; }
.oss-home-pipe-quiz .oss-pipe-request-field input:not([type=file]),.oss-home-pipe-quiz .oss-pipe-request-field textarea { font-size:14px; padding:12px; border-radius:9px; }
.oss-home-pipe-quiz .oss-pipe-request-field textarea { min-height:110px; height:110px; }
.oss-home-pipe-quiz .oss-pipe-upload-button { padding:12px; }
.oss-home-pipe-quiz .oss-pipe-request-consent { font-size:12px; line-height:1.6; }
.oss-home-pipe-quiz .oss-pipe-request-submit { width:100%; font-size:15px; min-height:50px; }
.oss-home-pipe-quiz .oss-pipe-request-note { font-size:11px; }
@media (max-width:991px) { .oss-quiz-shell { grid-template-columns:1fr; } .oss-quiz-aside { padding:24px; } .oss-quiz-aside>img { display:none; } .oss-quiz-aside h2 br { display:none; } .oss-quiz-summary { margin-top:18px; } .oss-quiz-aside>a { padding-top:12px; } }
@media (max-width:600px) { .oss-home-pipe-quiz { padding:16px 0 24px; } .oss-quiz-shell { border-radius:18px; } .oss-quiz-aside { padding:24px 20px; } .oss-quiz-aside h2 { font-size:27px; } .oss-quiz-main { padding:24px 18px; } .oss-quiz-steps { gap:12px; } .oss-quiz-steps li { gap:6px; font-size:11px; } .oss-quiz-steps li>span { width:24px; height:24px; } .oss-quiz-main h3 { font-size:23px; } .oss-quiz-shapes label>span { gap:6px; padding:10px; font-size:13px; } .oss-quiz-shapes b { width:30px; font-size:30px; } .oss-quiz-materials label>span { padding:10px; font-size:12px; } .oss-quiz-fields { grid-template-columns:1fr; gap:12px; } .oss-quiz-next { padding:12px; gap:8px; font-size:13px; } .oss-home-pipe-quiz .oss-pipe-request-fields { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { .oss-home-pipe-quiz * { scroll-behavior:auto !important; } }

/* Small existing catalogue photos make the first quiz step easier to scan. */
.oss-quiz-shapes label>span,.oss-quiz-materials label>span { position:relative; gap:12px; padding-right:26px; }
.oss-quiz-shapes label>span { min-height:90px; }
.oss-quiz-materials label>span { min-height:68px; }
.oss-quiz-choice-image { display:block; flex:0 0 56px; width:56px; height:44px; object-fit:contain; pointer-events:none; }
.oss-quiz-shapes .oss-quiz-choice-image { flex-basis:68px; width:68px; height:52px; }
.oss-quiz-shapes input:checked+span::after,.oss-quiz-materials input:checked+span::after { content:''; box-shadow:inset 0 0 0 4px #fff; border:2px solid var(--quiz-red); position:absolute; right:7px; top:7px; display:grid; place-items:center; width:16px; height:16px; border-radius:50%; color:#fff; background:var(--quiz-red); font-size:11px; line-height:1; }
@media (hover:hover) { .oss-quiz-shapes label:hover>span,.oss-quiz-materials label:hover>span { border-color:#d8a3a4; background:#fff9f9; } }
@media (max-width:600px) {
 .oss-quiz-shapes label>span,.oss-quiz-materials label>span { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; padding:10px 8px; text-align:center; min-height:96px; }
 .oss-quiz-shapes .oss-quiz-choice-image { flex-basis:auto; width:64px; height:46px; }
 .oss-quiz-materials .oss-quiz-choice-image { flex-basis:auto; width:56px; height:40px; }
 .oss-quiz-shapes label>span>span,.oss-quiz-materials label>span>span { max-width:100%; overflow-wrap:break-word; }
}
