/* Owner revision: one continuous LENGTHWISE paper edge, never horizontal waves. */
.wd8230-page { background:#111; }
.vertical-paper { position:absolute; inset:0; z-index:0; pointer-events:none; }
.vertical-paper svg { display:block; width:100%; height:100%; fill:#fff; }
.vertical-paper .vertical-mobile { display:none; }
.wd8230-page .section { background:transparent; color:#fff; --muted:#bbb; padding-bottom:100px; }
.wd8230-page .wave, .wd8230-page .contrast-split { display:none; }
.vertical-paper .brush-fray { fill:none; }
.work-printer { background:transparent; padding:0; box-shadow:none; }
.work-printer img { background:transparent; }
.finish-picker { display:flex; gap:12px; margin-bottom:18px; }
.finish-picker button { min-height:44px; padding:10px 25px; border:1px solid #999; background:#fff; color:#111; }
.finish-picker button[aria-pressed=true] { background:#111; color:#fff; }
.gallery-controls { grid-template-columns:repeat(3,minmax(0,1fr)); }
.wd8230-page .section h2>span { -webkit-text-stroke-color:#fff; }
.wd8230-page .hero { min-height:820px; }
.hero-model { color:#1111110c; }
.art-footnote, .hero-bottom>span:last-child { color:#666; }
.hero-bottom>span:first-child { color:#aaa; }
.contrast-copy h2 { max-width:46%; font-size:clamp(56px,6vw,88px); }
.contrast-copy p { max-width:36%; }
.contrast-foot { color:#aaa; max-width:42%; line-height:1.6; }
.benefits h2, .steps h2, .technical-heading>div, .gallery-heading h2,
.interlude h2 { max-width:46%; }
.benefit-grid article:nth-child(-n+2), .steps-grid li:nth-child(-n+2) {
  background:transparent; color:#fff; --muted:#bbb;
}
.benefit-grid article:nth-child(n+3), .steps-grid li:nth-child(n+3) {
  background:transparent; color:#111; --muted:#555;
}
/* Cards must not paint rectangular backgrounds over the continuous curved edge.
   Keep the middle columns' text clear of its widest sweep instead. */
.benefit-grid article:nth-child(2), .steps-grid li:nth-child(2) { padding-inline-end:clamp(28px,3.6vw,56px); }
.benefit-grid article:nth-child(3), .steps-grid li:nth-child(3) { padding-inline-start:clamp(28px,3.6vw,56px); }
.benefit-grid article:nth-child(-n+2) .benefit-number { color:#aaa; }
.steps-grid li:nth-child(-n+2)>span { color:#aaa; }
.why .split>div:last-child, .offer .split>div:last-child {
  color:#111; --muted:#555;
}
.why .split>div:last-child h2>span, .offer .split>div:last-child h2>span {
  -webkit-text-stroke-color:#111;
}
.detail-image>span, .packing-art>small { color:#555; }
.technical-heading>p, .gallery-heading>p { color:#555; }
.spec-table dt { color:#fff; }
.spec-table dd { color:#444; }
.spec-table>div, .faq-layout, .print-layout { grid-template-columns:1fr 1fr; gap:9%; }
.source-note { background:#fff; color:#444; padding:16px 24px; border:1px solid #ddd; }
.source-note p { color:#555; }
.gallery-controls { background:#fff; }
.gallery-controls button { color:#555; border-color:#ccc; }
.gallery-controls button[aria-pressed=true] { color:#111; background:#f3f3f3; border-top-color:#111; }
.gallery>.note { padding:12px 16px; background:#fff; color:#555; }
.offer .plain-list li { border-color:#ccc; }
.faq-layout>div:last-child { color:#111; --muted:#555; }
.final h2 { max-width:48%; font-size:clamp(72px,8vw,120px); }
.order-panel { color:#fff; --muted:#bbb; }
.order-panel p { color:#bbb; }

/* The WD8220 interaction pattern, using a genuine WD8230 front photograph. */
.printer-demo {
  --machine-width:320px;
  position:relative; width:100%; height:610px; min-height:0;
  padding:0; border:0; background:transparent; overflow:hidden; isolation:isolate;
}
.scene-coordinate { position:absolute; top:10px; left:0; z-index:7; color:#666; }
.print-model { position:absolute; top:5px; left:0; right:0; text-align:center; color:#11111109; font-size:160px; font-weight:900; letter-spacing:-.08em; }
.print-machine { position:absolute; top:65px; left:50%; transform:translateX(-50%); width:var(--machine-width); z-index:5; pointer-events:none; }
.print-machine img { display:block; width:100%; height:auto; }
.printer-demo .paper-output {
  position:absolute; top:calc(65px + var(--machine-width) * .603);
  left:0; right:0; bottom:40px; width:auto; height:auto;
  transform:none; overflow:hidden; z-index:6;
  mask-image:linear-gradient(#000 88%,transparent);
}
.printed-sheet, .manual-sheet {
  position:absolute; top:0; left:calc(50% + var(--machine-width) * .004); width:calc(var(--machine-width) * .57);
  height:auto; padding:0; border:0;
  background:#f5f3e9; box-shadow:3px 10px 18px #0004;
  transform:translate(-50%,-100%);
}
.print-feed-label { padding-top:0; background:#fff; }
.label-art { width:100%; aspect-ratio:650/650; overflow:hidden; }
.label-art-1 { aspect-ratio:650/550; }
.label-art-2 { aspect-ratio:650/638; }
.label-art-3 { aspect-ratio:650/610; }
.label-art-4 { aspect-ratio:650/614; }
.print-feed-label img { width:100%; height:auto; aspect-ratio:1; }
.print-perforation { height:6px; margin:0; border-bottom:1px dashed #aaa89b; }
.print-feed-shadow { position:absolute; left:calc(50% + var(--machine-width) * .004); top:0; transform:translateX(-50%); width:calc(var(--machine-width) * .57); height:5px; background:linear-gradient(#0007,transparent); z-index:8; pointer-events:none; }
.dimension { color:#555; bottom:12px; }
.print-console { padding:18px; margin:22px 0; max-width:400px; border:1px solid #444; background:#222; color:#fff; }
.print-console>b { display:block; font:10px monospace; letter-spacing:.13em; margin-bottom:14px; }
.print-samples { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:6px; }
.print-samples button { min-width:0; min-height:74px; padding:5px 3px; border:2px solid transparent; background:#fff; color:#222; }
.print-samples button[aria-pressed=true] { border-color:var(--accent); background:#fff8d9; }
.print-samples img { width:100%; height:42px; object-fit:contain; }
.print-samples span { display:block; margin-top:5px; font-size:6px; line-height:1.4; font-weight:700; overflow-wrap:anywhere; }
.print-test-button { display:flex; justify-content:space-between; align-items:center; width:100%; min-height:48px; margin-top:14px; padding:12px 15px; background:var(--accent); color:#111; border:0; font-size:13px; font-weight:700; }
.print-console button:disabled { opacity:.55; cursor:wait; }
.print-console-footer { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; margin-top:12px; }
.print-console-footer>span { font-size:10px; color:#ddd; }
.print-console-footer>button { min-height:44px; padding:10px; background:#333; color:#fff; border:1px solid #666; font-size:10px; }
.print-console noscript { font-size:11px; line-height:1.6; }
.print-copy .note { max-width:48ch; }

@media (min-width:761px) and (max-width:1100px) {
  .printer-demo { --machine-width:270px; }
  .benefit-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
  .benefit-grid h3 { font-size:20px; }
  .benefit-grid p { font-size:13px; }
  .print-layout { grid-template-columns:1fr 1fr; gap:8%; }
  .print-copy h2 { font-size:clamp(37px,5vw,56px); }
  .print-samples { gap:3px; }
  .print-samples span { font-size:5px; }
  .print-console { padding:12px; }
}

/* On phones the same vertical edge becomes a continuous left rail. Content keeps
   full-width dark/light sections instead of squeezing text into two tiny columns. */
@media (max-width:760px) {
  .vertical-paper { z-index:4; width:40px; overflow:hidden; mix-blend-mode:difference; }
  .vertical-paper .vertical-wide { display:none; }
  .vertical-paper .vertical-mobile { display:block; position:absolute; left:0; width:80px; max-width:none; height:100%; }
  .wd8230-page .wrap { width:calc(100% - 64px); margin-left:44px; margin-right:20px; }
  .wd8230-page .section { padding-bottom:70px; }
  .wd8230-page .section.dark { background:#111; color:#fff; --muted:#bbb; }
  .wd8230-page .section.light { background:#fff; color:#111; --muted:#555; }
  .wd8230-page .light h2>span { -webkit-text-stroke-color:#111; }
  .hero h1 { font-size:clamp(40px,11vw,58px); }
  .hero .kicker { font-size:8px; }
  .hero-model { color:#ffffff0c; }
  .art-footnote { color:#aaa; }
  .hero-art { width:95%; }
  .hero .hero-actions { display:grid; }
  .hero .hero-actions .cta { width:100%; }
  .hero .price { margin-bottom:5px; }
  .hero-bottom>span:first-child { color:#aaa; }
  .contrast-scene { height:780px; }
  .contrast-copy h2 { max-width:none; font-size:clamp(40px,10.8vw,58px); }
  .contrast-copy p { max-width:100%; }
  .contrast-foot { left:44px; bottom:18px; max-width:calc(100% - 64px); color:#aaa; }
  .contrast-labels .flow-0 { top:47%; left:15%; }
  .contrast-labels .flow-1 { top:55%; right:4%; }
  .contrast-labels .flow-2 { top:72%; left:30%; }
  .benefits h2, .steps h2, .technical-heading>div, .gallery-heading h2,
  .interlude h2, .final h2 { max-width:none; }
  .benefit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .benefit-grid article:nth-child(n), .steps-grid li:nth-child(n) { color:inherit; background:transparent; --muted:inherit; }
  .benefit-grid article:nth-child(n), .steps-grid li:nth-child(n) { padding-inline:0; }
  .benefit-grid article:nth-child(n) .benefit-number { color:#666; }
  .steps-grid li:nth-child(n)>span { color:#aaa; }
  .why .split>div:last-child, .offer .split>div:last-child { color:inherit; --muted:inherit; }
  .packing-art { width:100%; transform:scale(.94); transform-origin:left center; }
  .packing-art>small { color:#aaa; }
  .technical-heading>p { color:#555; }
  .spec-table dt { color:#111; }
  .spec-table dd { color:#555; }
  .spec-table>div { grid-template-columns:1fr; gap:5px; }
  .faq-layout { grid-template-columns:1fr; gap:15px; }
  .source-note { padding:12px 14px; }
  .gallery-heading>p { color:#bbb; }
  .interlude { min-height:820px; }
  .interlude h2 { font-size:clamp(40px,10vw,58px); }
  .offer .plain-list li { border-color:#444; }
  .faq-layout>div:last-child { color:inherit; --muted:inherit; }
  .final h2 { font-size:clamp(60px,15vw,90px); }
  .printer-demo { --machine-width:250px; height:380px; flex:none; order:2; }
  .print-layout { display:flex; flex-direction:column; align-items:stretch; gap:20px; }
  .print-copy { display:contents; }
  .print-copy h2 { order:0; margin-bottom:0; }
  .print-copy>p:not(.note) { order:1; margin-bottom:0; }
  .print-copy .print-console { order:3; margin:0; width:100%; max-width:none; }
  .print-copy .note { order:4; margin:0; }
  .print-copy .print-status { order:5; margin-top:0; }
  .print-copy h2 { font-size:clamp(36px,10vw,56px); }
  .print-console { padding:12px; }
  .print-samples { gap:4px; }
  .print-samples button { min-height:70px; }
  .print-samples img { height:34px; }
  .print-samples span { font-size:5px; }
  .scene-coordinate { font-size:8px; }
  .print-model { font-size:130px; }
  .dimension { font-size:6px; }
  .river-0 { display:none; }
}
@media (max-width:359px) {
  .printer-demo { --machine-width:230px; }
  .packing-art { transform:scale(.83); transform-origin:left center; }
  .print-console-footer>button { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .printer-demo .paper-output { overflow:hidden; }
  .printed-sheet { transform:translate(-50%,-65%)!important; }
}
@media print {
  .vertical-paper { display:none; }
  .wd8230-page .section { color:#111; background:#fff; --muted:#444; }
  .spec-table dt, .benefit-grid article:nth-child(n), .steps-grid li:nth-child(n) { color:#111; background:#fff; }
}

/* Owner review: clean product cutouts, legible panels and parcel application. */
.detail-image, .offer-image, .final-product-photo, .hero-photo,
.detail-image img, .offer-image img { background:transparent; border:0; box-shadow:none; }
.parcel-front { overflow:visible; }
.parcel-transfer { position:relative; z-index:4; transform-origin:center; }
.format-label.shipping-label { display:block; padding:0; height:auto; border:1px solid #aaa; background:#fff; color:#fff; box-shadow:0 2px 5px #0002; }
.format-label.tone-yellow { background:#ffda42; color:#ffda42; border-color:#bc9925; }
.format-label.tone-red { background:#eb5149; color:#eb5149; border-color:#b5332d; }
.parcel-mini { width:76%; margin:8px 0; }
.parcel-back .parcel-mini:nth-of-type(2) { width:91%; }
.parcel-back { height:230px; top:40px; }
.parcel-front { height:180px; padding:18px; }
.parcel-front .shipping-label { padding:0; }
.parcel-front .parcel-mini { width:83%; margin-top:13px; }
.parcel-sticker { display:inline-block; position:relative; padding:4px 5px; margin:5px 2px 0 0; font:700 8px/1.2 monospace; font-style:normal; box-shadow:0 1px 2px #0002; }
.parcel-sticker.red { background:#cf3028; color:#fff; }
.parcel-sticker.yellow { background:#ffe064; color:#171717; }
.parcel-front .parcel-sticker { font-size:6px; }
.gallery .finish-picker { gap:12px; flex-wrap:wrap; }
.gallery .finish-picker button { display:flex; align-items:center; gap:10px; background:#fff; color:#111; border:2px solid #ccc; border-radius:8px; }
.gallery .finish-picker button[aria-pressed=true] { background:#fff; color:#111; border-color:#111; box-shadow:0 0 0 2px #fff; }
.finish-picker button>span { font-size:10px; }
.finish-dot { width:15px; height:15px; border-radius:50%; border:1px solid #888; background:#fff; }
.finish-dot.black { background:#222; }
.gallery-main { background:transparent; border:0; box-shadow:none; }
.gallery-controls button img { display:block; width:100%; height:85px; object-fit:contain; margin-bottom:8px; }
.gallery-controls button { background:#fff; color:#111; }
.gallery-controls button[aria-pressed=true] { background:#fff; color:#111; box-shadow:inset 0 3px #111; }
.spec-table { background:transparent; padding:0; }
.spec-table dt { color:#fff; }
.spec-table dd { color:#111; }
.spec-table>div { background:transparent; border-color:#ccc; }
/* Reserve the centre sweep for the boundary: a whole paragraph stays on one side. */
.technical-heading>p, .gallery-heading>p, .why .split>div:last-child,
.offer .split>div:last-child, .faq-layout>div:last-child { background:transparent; color:#111; --muted:#444; padding:0; border-radius:0; }
.why .split>div:last-child p, .offer .split>div:last-child p,
.faq-layout>div:last-child p { color:#444; }
.benefit-grid, .steps-grid { display:grid; grid-template-columns:42% 42%; column-gap:16%; row-gap:40px; }
.benefit-grid article:nth-child(n), .steps-grid li:nth-child(n) { padding-inline:0; background:transparent; }
.benefit-grid article:nth-child(odd), .steps-grid li:nth-child(odd) { color:#fff; --muted:#ccc; }
.benefit-grid article:nth-child(even), .steps-grid li:nth-child(even) { color:#111; --muted:#444; }
.benefit-grid article:nth-child(odd) .benefit-number, .steps-grid li:nth-child(odd)>span { color:#ccc; }
.benefit-grid article:nth-child(even) .benefit-number, .steps-grid li:nth-child(even)>span { color:#444; }
.benefit-grid article h3, .benefit-grid article p, .benefit-grid article b,
.steps-grid li h3, .steps-grid li p { background:transparent; padding:0; border-radius:0; }
.contrast-scene { overflow:visible; min-height:1000px; }
.contrast-labels .flow-2 { top:48%; }
.interlude { overflow:visible; min-height:1100px; }
.interlude-labels { top:0; }
.interlude-labels>.shipping-label:nth-child(3) { top:400px; }
.shipping-label.label-dark { background:#fff; color:#111; border-color:#ccc; }
.v1-finish-study { --finish:0%; position:relative; height:180vh; margin:60px 0; isolation:isolate; }
.v1-finish-sticky { position:sticky; top:0; height:100vh; min-height:480px; overflow:hidden; isolation:isolate; }
.v1-finish-layer { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:#111; color:#fff; }
.v1-finish-layer.blanc { background:#fff; color:#111; z-index:2; clip-path:inset(0 calc(100% - var(--finish)) 0 0); }
.v1-finish-layer img { width:75%; height:65%; object-fit:contain; }
.v1-finish-layer>span { position:absolute; top:30px; left:30px; font:700 clamp(30px,6vw,70px)/1 monospace; }
.v1-finish-line { position:absolute; z-index:3; left:var(--finish); top:0; bottom:90px; width:1px; background:#fff; mix-blend-mode:difference; }
.v1-finish-controls { position:absolute; z-index:4; bottom:0; left:0; right:0; display:flex; flex-wrap:wrap; gap:14px; align-items:center; padding:20px; background:#fff; color:#111; font-size:12px; border-top:1px solid #888; }
.v1-finish-controls input { min-width:100px; flex:1; accent-color:#111; }
.v1-finish-controls button { min-height:44px; padding:8px 12px; border:1px solid #111; background:#fff; color:#111; }
@media(min-width:761px) {
  .split, .hero-grid { grid-template-columns:42% 42%; column-gap:16%; }
  .final-grid { grid-template-columns:42% 42%; gap:16%; }
  .order-panel { background:transparent; color:#111; padding:0; }
  .order-panel p, .order-panel small { color:#444; }
  .detail-image>span, .offer-image>span { color:#ccc; }
  .spec-table>div, .faq-layout, .print-layout { grid-template-columns:42% 42%; gap:16%; }
  .benefits h2, .steps h2, .technical-heading>div, .gallery-heading h2, .interlude h2 { max-width:42%; }
  .technical-heading>p, .gallery-heading>p { max-width:40%; }
}
@media(max-width:760px) {
  .gallery-controls button img { height:60px; }
  .benefit-grid, .steps-grid { grid-template-columns:1fr; gap:28px; }
  .wd8230-page .benefit-grid article:nth-child(n) { color:#111; --muted:#444; }
  .wd8230-page .steps-grid li:nth-child(n) { color:#fff; --muted:#ccc; }
  .spec-table dt { color:#111; }
  .contrast-scene { min-height:900px; }
  .contrast-labels .flow-2 { top:68%; }
  .interlude { min-height:1000px; }
  .interlude-labels { top:330px; }
  .interlude-labels>.shipping-label:nth-child(3) { top:310px; }
  .parcel-front { height:150px; }
  .technical-heading>p, .gallery-heading>p, .why .split>div:last-child,
  .offer .split>div:last-child, .faq-layout>div:last-child { padding:0; }
  .gallery-heading>p { color:#ccc; }
  .offer .split>div:last-child { color:#fff; --muted:#ccc; }
  .offer .split>div:last-child p, .offer-image>span { color:#ccc; }
  .detail-image>span { color:#444; }
}
@media(prefers-reduced-motion:reduce) {
  .v1-finish-study { height:auto; }
  .v1-finish-sticky { position:relative; height:650px; }
}
