/* The actual factory beside the product story; no video request until a visitor opens it. */
.design-page .hero .product-visual figcaption.factory-preview {display:block;padding:16px 20px 20px}
.design-page .hero .product-visual .factory-preview__link {display:grid;grid-template-columns:88px minmax(0,1fr) 20px;align-items:center;gap:14px;white-space:normal;text-decoration:none;font-size:14px;line-height:1.45;border-top:1px solid #cddad2;padding-top:16px}
.design-page .hero .product-visual .factory-preview__link img {width:88px;height:64px;aspect-ratio:auto;object-fit:cover;border-radius:2px}
.factory-preview__link strong {display:block;font-size:14px;color:#163d49;text-decoration:underline;text-underline-offset:4px}
.factory-preview__link small {display:block;color:#4c6972;font-size:12px;margin-top:5px}
.factory-preview__link:focus-visible {outline:2px solid #1685b1;outline-offset:5px}
/* A sample is reviewed against an agreed purpose, with a conditional revision loop. */
.sample-review {--review-line:#b9cdcc;--review-ink:#173e48;color:var(--review-ink)}
.sample-review__scope {display:flex;align-items:baseline;justify-content:space-between;gap:30px;padding:22px 0;border-block:1px solid var(--review-line);margin-bottom:32px}
.sample-review__scope strong {font-size:18px;flex:0 0 28%}
.sample-review__scope p {margin:0;max-width:700px;font-size:15px;line-height:1.65;color:#365b67}
.sample-review__flow {display:grid;grid-template-columns:2fr 1fr;gap:28px;align-items:stretch}
.sample-review__assess {min-width:0}
.sample-review__steps {list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--review-line);background:#fcfcf6}
.sample-review__step {position:relative;padding:28px;min-width:0}
.sample-review__step+li {border-left:1px solid var(--review-line)}
.sample-review__step+li:before {content:'→';position:absolute;left:-16px;top:28px;display:grid;place-items:center;width:30px;height:30px;background:#e6f0ee;border:1px solid var(--review-line);border-radius:50%;font-size:18px}
.sample-review__num {display:inline-block;font:12px ui-monospace,monospace;letter-spacing:.08em;color:#27758c;margin-bottom:22px}
.sample-review h3 {font-size:24px;line-height:1.15;margin:0 0 14px;color:var(--review-ink)}
.sample-review p {font-size:15px;line-height:1.65;color:#365b67;margin:0}
.sample-review__revision {position:relative;border:1px dashed #7eaaae;border-top:0;margin:0 18px;padding:19px 24px;display:flex;gap:14px;align-items:flex-start;background:#dcebea}
.sample-review__revision>span {font-size:27px;line-height:1;color:#1b7185}
.sample-review__revision strong {display:block;font-size:15px;margin-bottom:5px}
.sample-review__revision p {font-size:14px}
.sample-review__approval {position:relative;background:#173e48;padding:28px;color:#fcfcf6;border:1px solid #173e48}
.sample-review__approval:before {content:'→';position:absolute;left:-25px;top:28px;color:#27758c;font-size:22px}
.sample-review__approval .sample-review__num {color:#a3d5df}
.sample-review__approval h3 {color:#fcfcf6}
.sample-review__approval p {color:#e1eeed}
.sample-review__outcome {display:flex;align-items:center;gap:22px;padding:24px 0;border-bottom:1px solid var(--review-line)}
.sample-review__outcome strong {flex:0 0 28%;font-size:19px}
.sample-review__outcome p {max-width:710px}
@media(max-width:700px) {
 .design-page .hero .product-visual figcaption.factory-preview {padding:12px 16px 18px}
 .design-page .hero .product-visual .factory-preview__link {grid-template-columns:64px minmax(0,1fr) 16px;gap:10px}
 .design-page .hero .product-visual .factory-preview__link img {width:64px;height:64px}
 .sample-review__scope,.sample-review__outcome {display:block;padding:20px 0}
 .sample-review__scope strong,.sample-review__outcome strong {display:block;margin-bottom:10px}
 .sample-review__flow {grid-template-columns:1fr;gap:24px}
 .sample-review__steps {grid-template-columns:1fr}
 .sample-review__step {padding:24px}
 .sample-review__step+li {border-left:0;border-top:1px solid var(--review-line)}
 .sample-review__step+li:before {content:'↓';left:24px;top:-16px}
 .sample-review__num {margin-bottom:14px}
 .sample-review__revision {margin-inline:10px;padding:20px 15px;gap:10px}
 .sample-review__approval {padding:24px}
 .sample-review__approval:before {content:'↓';left:27px;top:-27px}
}
