
@font-face{font-family:"Instrument Serif";src:url(assets/fonts/instrument-serif.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(assets/fonts/instrument-serif-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Inter";src:url(assets/fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(assets/fonts/plex-mono.woff2) format("woff2");font-weight:400;font-display:swap}
:root{--paper:#F5F2EC;--ink:#141414;--stone:#D9D4CB;--mid:#6E6A64;--copper:#B4532A;--white:#fff;
 --serif:"Instrument Serif",Georgia,"Times New Roman",serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,Consolas,monospace;
 --pad:clamp(1.25rem,4vw,3.5rem);--hh:4rem}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.55 var(--sans);overflow-x:clip}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;letter-spacing:-.005em}
h2{font-size:clamp(2.125rem,4.4vw,3.75rem);line-height:1.04}
p{margin:0}
.mono{font-family:var(--mono);font-size:0.75rem;letter-spacing:.08em;text-transform:uppercase}
.eyebrow{font-family:var(--mono);font-size:0.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--copper);margin-bottom:1.125rem;display:flex;align-items:center;gap:0.625rem}
.eyebrow::before{content:"";width:1.375rem;height:0.0625rem;background:currentColor}
.lead{color:var(--mid);font-size:clamp(1.0625rem,1.4vw,1.1875rem);max-width:38.75rem;margin-top:1.125rem}
.wrap{padding-left:var(--pad);padding-right:var(--pad)}
section{position:relative}
.sec{padding-top:clamp(5rem,10vw,8.75rem);padding-bottom:clamp(5rem,10vw,8.75rem);border-top:0.0625rem solid var(--stone)}
:focus-visible{outline:0.125rem solid var(--copper);outline-offset:0.1875rem}
.sr{position:absolute;width:0.0625rem;height:0.0625rem;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}


.btn{display:inline-flex;align-items:center;gap:0.625rem;background:var(--copper);color:var(--white);border:0.0625rem solid var(--copper);padding:0.8125rem 1.375rem;border-radius:0.125rem;text-decoration:none;font:500 0.9375rem/1 var(--sans);cursor:pointer;transition:background .2s,color .2s}
.btn:hover{background:var(--ink);border-color:var(--ink)}
.btn.ghost{background:transparent;color:inherit;border-color:currentColor}
.btn.ghost:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.link{font:500 0.9375rem/1 var(--sans);text-decoration:none;border-bottom:0.0625rem solid currentColor;padding-bottom:0.1875rem}
.link:hover{color:var(--copper)}


.hdr{position:fixed;inset:0 0 auto 0;height:var(--hh);z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);color:var(--paper);transition:background .3s,color .3s,border-color .3s;border-bottom:0.0625rem solid transparent}
.hdr.solid{background:rgba(245,242,236,.97);color:var(--ink);border-bottom-color:var(--stone)}
.logo{font:400 1.5rem/1 var(--serif);text-decoration:none;display:flex;align-items:baseline;gap:0.5rem}
.logo small{font:400 0.625rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;opacity:.7}
.nav{display:flex;gap:1.75rem;font-size:0.875rem}
.nav a{text-decoration:none;opacity:.85}.nav a:hover{opacity:1;color:var(--copper)}
.hdr-r{display:flex;align-items:center;gap:0.875rem}
.qbtn{position:relative;background:none;border:0.0625rem solid currentColor;color:inherit;border-radius:0.125rem;height:2.5rem;padding:0 0.875rem;font:400 0.75rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;gap:0.5rem}
.badge{min-width:1.25rem;height:1.25rem;padding:0 0.375rem;border-radius:0.625rem;background:var(--copper);color:#fff;display:inline-grid;place-items:center;font:500 0.6875rem/1 var(--mono);letter-spacing:0}
.badge.bump{animation:bump .45s ease}
@keyframes bump{30%{transform:scale(1.45)}}
.hdr .btn{padding:0.6875rem 1.125rem;font-size:0.875rem}





.hero{height:100vh;min-height:38.75rem;max-height:68.75rem;overflow:hidden;color:var(--paper);background:var(--ink);--mx:62%;--my:42%}
.hero picture,.hero .hero-img{position:absolute;inset:0;width:100%;height:100%}
.hero .hero-img{object-fit:cover;object-position:60% 50%}
.hero .dim{position:absolute;inset:0;background:radial-gradient(circle at var(--mx) var(--my),rgba(0,0,0,0) 0,rgba(0,0,0,0) 9%,rgba(10,8,6,.5) 34%,rgba(10,8,6,.66) 100%);pointer-events:none}
.hero .spec{position:absolute;inset:0;background:radial-gradient(circle at var(--mx) var(--my),rgba(255,248,232,1) 0,rgba(255,226,176,.8) 4%,rgba(255,206,140,.35) 11%,rgba(255,206,140,0) 20%);mix-blend-mode:overlay;pointer-events:none}
.hero .spec2{position:absolute;inset:0;background:radial-gradient(circle at var(--mx) var(--my),rgba(255,236,200,.42) 0,rgba(255,220,170,.12) 4%,rgba(255,220,170,0) 9%);mix-blend-mode:screen;pointer-events:none}
.hero .scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,11,8,.78) 0,rgba(14,11,8,.45) 38%,rgba(14,11,8,0) 64%),linear-gradient(0deg,rgba(14,11,8,.5) 0,rgba(14,11,8,0) 30%);pointer-events:none}
.hero-txt{position:absolute;left:var(--pad);bottom:clamp(3rem,9vh,6.875rem);max-width:40rem}
.hero .eyebrow{color:#E7B79C}
.hero h1{font-size:clamp(2.875rem,6.4vw,6rem);line-height:.98}
.hero h1 em{font-style:italic;color:#F0C9A8}
.hero .lead{color:rgba(245,242,236,.82)}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:1.375rem;margin-top:2rem}
.hero .btn.ghost{color:var(--paper)}
.hero .btn.ghost:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.facts{margin-top:1.625rem;font:400 0.75rem/1.6 var(--mono);letter-spacing:.06em;color:rgba(245,242,236,.75)}
.hint{position:absolute;right:var(--pad);bottom:1.75rem;font:400 0.6875rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(245,242,236,.7)}


.nums{padding-top:0;padding-bottom:0}
.ngrid{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:0.0625rem solid var(--stone)}
.ngrid>div{padding:clamp(1.75rem,3.6vw,3.25rem) 1.125rem clamp(1.75rem,3.6vw,3rem) 0;border-right:0.0625rem solid var(--stone);padding-left:1.125rem}
.ngrid>div:first-child{padding-left:0}.ngrid>div:last-child{border-right:0}
.nv{font:400 clamp(2.5rem,4.6vw,4rem)/1 var(--serif);white-space:nowrap}
.nv small{font-size:.5em;margin-left:0.25rem}
.nl{margin-top:0.75rem;color:var(--mid)}
.nnote{margin-top:0.625rem;font:400 0.6875rem/1.5 var(--mono);color:var(--copper);letter-spacing:.02em}


.proc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2.5rem;flex-wrap:wrap}
.story{position:relative;height:1000vh;margin-top:2.5rem}
.stage{position:sticky;top:0;height:100vh;display:grid;grid-template-columns:minmax(12.5rem,3fr) 4fr 5fr;gap:clamp(1.25rem,3vw,3rem);padding:calc(var(--hh) + 1.75rem) var(--pad) 2rem;align-items:center}
.steps{list-style:none;margin:0;padding:0;border-left:0.0625rem solid var(--stone)}
.steps li{position:relative;padding:0.5rem 0 0.5rem 1.125rem;color:var(--mid);font-size:0.9375rem;transition:color .25s,transform .25s;cursor:pointer}
.steps li .n{font:400 0.6875rem/1 var(--mono);display:inline-block;width:1.875rem;letter-spacing:.06em}
.steps li.done{color:var(--mid)}
.steps li.on{color:var(--ink);transform:translateX(0.25rem)}
.steps li.on::before{content:"";position:absolute;left:-0.125rem;top:0.4375rem;bottom:0.4375rem;width:0.1875rem;background:var(--copper)}
.canvas{position:relative;height:min(70vh,40rem);display:grid;place-items:center}
.canvas svg{width:min(56vh,27.5rem,100%);height:auto;overflow:visible}
.pbar{position:absolute;top:0;left:0;right:0;height:0.125rem;background:var(--stone)}
.pbar i{display:block;height:100%;width:0;background:var(--copper)}
.pcount{position:absolute;bottom:0;left:0;font:400 0.75rem/1 var(--mono);color:var(--mid);letter-spacing:.1em}
.photo{display:flex;flex-direction:column;gap:0.875rem;max-width:calc(44vh * 4 / 3 + 2.5rem)}
.frame{position:relative;aspect-ratio:4/3;background:var(--paper);overflow:hidden}
.frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s ease,transform 1.2s ease;transform:scale(1.03)}
.frame img.on{opacity:1;transform:scale(1)}
.cap .num{font:400 0.75rem/1 var(--mono);color:var(--copper);letter-spacing:.1em}
.cap h3{font-size:clamp(1.625rem,2.4vw,2.125rem);margin-top:0.5rem}
.cap p{color:var(--mid);margin-top:0.375rem;max-width:28.75rem}
.cap .hard{margin-top:0.75rem;font:400 0.75rem/1.4 var(--mono);color:var(--copper);letter-spacing:.06em;text-transform:uppercase}
.wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.625rem;opacity:0;transform:translateY(0.5rem);transition:opacity .35s,transform .35s;pointer-events:none}
.wall.on{opacity:1;transform:none;pointer-events:auto}
.wall figure{margin:0;background:#fff;border:0.0625rem solid var(--stone);transition:border-color .25s}
.wall figure.on{border-color:var(--copper)}
.wall img{aspect-ratio:1;object-fit:cover;width:100%}
.wall figcaption{font:400 max(.875rem,14px)/1.4 var(--mono);letter-spacing:.035em;text-transform:uppercase;padding:0.5rem}
.wallnote{font:400 0.6875rem/1.5 var(--mono);color:var(--mid);margin-top:0.375rem}
.photo .wallbox{max-width:min(100%,46vh)}
.stage .wallnote{opacity:0;transition:opacity .35s}.stage .wall.on+.wallnote{opacity:1}
.stage .cap p{min-height:3.1em}

.cards{display:none;list-style:none;margin:2.5rem 0 0;padding:0 var(--pad)}
.cards li{display:grid;grid-template-columns:1fr;gap:0.875rem;padding:1.75rem 0;border-top:0.0625rem solid var(--stone)}
.cards img{width:100%;aspect-ratio:4/3;object-fit:cover}
.cards .wall{opacity:1;transform:none;pointer-events:auto}


.cym{display:grid;grid-template-columns:5fr 7fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.chips{display:flex;flex-direction:column;gap:0.625rem;margin-top:2.125rem}
.chip{display:flex;justify-content:space-between;align-items:center;gap:1rem;text-align:left;width:100%;background:transparent;border:0.0625rem solid var(--stone);border-radius:0.125rem;padding:1rem 1.125rem;font:400 1rem/1.35 var(--sans);color:var(--ink);cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.chip::after{content:"→";font-family:var(--mono);transition:transform .2s}
.chip:hover{border-color:var(--ink)}
.chip:hover::after{transform:translateX(0.25rem)}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.answer{border:0.0625rem solid var(--stone);background:var(--white);padding:clamp(1.5rem,3vw,2.75rem);min-height:22.5rem;position:relative}
.answer .ph{color:var(--mid);display:grid;place-items:center;height:100%;min-height:17.5rem;text-align:center;font:400 0.8125rem/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.ans{animation:rise .45s ease both}
@keyframes rise{from{opacity:0;transform:translateY(0.625rem)}}
.ans .q{font:400 0.75rem/1.4 var(--mono);color:var(--copper);letter-spacing:.08em;text-transform:uppercase}
.ans h3{font-size:clamp(1.875rem,3vw,2.625rem);margin-top:0.75rem;line-height:1.05}
.ans dl{display:grid;grid-template-columns:7.5rem 1fr;gap:0;margin:1.75rem 0 0;border-top:0.0625rem solid var(--stone)}
.ans dt,.ans dd{padding:0.875rem 0;border-bottom:0.0625rem solid var(--stone);margin:0}
.ans dt{font:400 0.6875rem/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mid)}
.ans .act{margin-top:1.625rem;display:flex;gap:1.125rem;align-items:center;flex-wrap:wrap}


.dev{display:grid;grid-template-columns:7fr 5fr;gap:clamp(2rem,5vw,5rem);align-items:center;margin-top:3rem}
.devframe{position:relative;height:min(70vh,38.75rem);background:var(--white);border:0.0625rem solid var(--stone);overflow:hidden;touch-action:pan-y;cursor:ew-resize;user-select:none}
.devframe img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:3%;background:var(--white);visibility:hidden;pointer-events:none}
.devframe img:first-child{visibility:visible}
.handle{position:absolute;z-index:3;top:0;bottom:0;left:0;width:0.125rem;background:var(--copper);opacity:0;pointer-events:none;transform:translateX(-0.0625rem)}
.handle::after{content:"\2194";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2.375rem;height:2.375rem;border-radius:50%;background:var(--paper);border:0.125rem solid var(--copper);display:grid;place-items:center;font:400 1rem/1 var(--sans);color:var(--copper)}
.devtag{position:absolute;z-index:4;left:0.875rem;top:0.875rem;font:400 0.6875rem/1 var(--mono);letter-spacing:.1em;background:var(--paper);padding:0.4375rem 0.5625rem;border:0.0625rem solid var(--stone)}
.scrub{margin-top:1.375rem}
.ticks{display:grid;grid-template-columns:repeat(4,1fr);margin-top:0.625rem}
.ticks button{background:none;border:0;padding:0.375rem 0;text-align:left;font:400 0.6875rem/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mid);cursor:pointer}
.ticks button:nth-child(2),.ticks button:nth-child(3){text-align:center}.ticks button:last-child{text-align:right}
.ticks button.on{color:var(--copper)}
input[type=range].rng{-webkit-appearance:none;appearance:none;width:100%;height:1.75rem;background:transparent;cursor:pointer;margin:0}
.rng::-webkit-slider-runnable-track{height:0.125rem;background:linear-gradient(90deg,var(--copper) var(--fill,0%),var(--stone) var(--fill,0%))}
.rng::-moz-range-track{height:0.125rem;background:var(--stone)}
.rng::-moz-range-progress{height:0.125rem;background:var(--copper)}
.rng::-webkit-slider-thumb{-webkit-appearance:none;width:1.375rem;height:1.375rem;border-radius:50%;background:var(--paper);border:0.125rem solid var(--copper);margin-top:-0.625rem;box-shadow:none}
.rng::-moz-range-thumb{width:1.125rem;height:1.125rem;border-radius:50%;background:var(--paper);border:0.125rem solid var(--copper)}
.devcap .st{font:400 0.75rem/1 var(--mono);color:var(--copper);letter-spacing:.1em}
.devcap h3{font-size:clamp(1.75rem,2.8vw,2.5rem);margin-top:0.625rem}
.devcap p{color:var(--mid);margin-top:0.5rem;min-height:3.2em}
.devhint{margin-top:1.625rem;font:400 0.6875rem/1.5 var(--mono);color:var(--mid);letter-spacing:.06em;text-transform:uppercase}


.gal{border-top:0.0625rem solid var(--stone)}
.galpin{position:relative}
.galstage{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding-top:var(--hh)}
.galhead{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;margin-bottom:clamp(1.5rem,4vh,2.75rem)}
.track{display:flex;gap:1.25rem;padding:0 var(--pad);will-change:transform}
.card{flex:0 0 clamp(15rem,22vw,20rem);background:var(--white);border:0.0625rem solid var(--stone);position:relative}
.card .im{overflow:hidden;aspect-ratio:1;background:#fff}
.card .im img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.card:hover .im img{transform:scale(1.55)}
.card .meta{display:flex;justify-content:space-between;align-items:center;gap:0.75rem;padding:0.875rem 1rem;border-top:0.0625rem solid var(--stone)}
.card .sku{font:400 0.75rem/1 var(--mono);letter-spacing:.08em;color:var(--copper)}
.card .nm{font:500 0.875rem/1.35 var(--sans);margin-top:0.375rem}
.add{flex:0 0 2.5rem;width:2.5rem;height:2.5rem;border-radius:50%;border:0.0625rem solid var(--ink);background:transparent;font:300 1.375rem/1 var(--sans);cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s,border-color .2s}
.add:hover{background:var(--ink);color:var(--paper)}
.add[aria-pressed="true"]{background:var(--copper);border-color:var(--copper);color:#fff;font-size:1rem}
.galprog{margin:clamp(1.25rem,4vh,2.25rem) var(--pad) 0;height:0.125rem;background:var(--stone)}
.galprog i{display:block;height:100%;width:0;background:var(--copper)}
.galnote{padding:0 var(--pad);margin-top:0.75rem;font:400 0.6875rem/1.5 var(--mono);color:var(--mid);letter-spacing:.06em;text-transform:uppercase}


.qwrap{display:grid;grid-template-columns:8fr 4fr;gap:clamp(2rem,5vw,4.5rem);margin-top:3rem;align-items:start}
.wiz{background:var(--white);border:0.0625rem solid var(--stone);padding:clamp(1.375rem,3vw,2.75rem)}
.wsteps{display:grid;grid-template-columns:repeat(3,1fr);gap:0.5rem;margin-bottom:1.875rem}
.wsteps span{font:400 0.6875rem/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mid);padding-top:0.75rem;border-top:0.125rem solid var(--stone)}
.wsteps span.on{color:var(--ink);border-top-color:var(--copper)}
.wsteps span.done{color:var(--mid);border-top-color:var(--ink)}
fieldset{border:0;padding:0;margin:0 0 1.625rem}
legend{font:400 1.625rem/1.15 var(--serif);margin-bottom:0.875rem;padding:0}
.opts{display:flex;flex-wrap:wrap;gap:0.5rem}
.opt{position:relative}
.opt input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.opt span{display:inline-block;border:0.0625rem solid var(--stone);padding:0.625rem 0.875rem;border-radius:0.125rem;font-size:0.9375rem;transition:border-color .2s,background .2s,color .2s}
.opt input:hover+span{border-color:var(--ink)}
.opt input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.opt input:focus-visible+span{outline:0.125rem solid var(--copper);outline-offset:0.125rem}
.fld{display:grid;gap:0.375rem;margin-bottom:0.875rem}
.fld label{font:400 0.6875rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mid)}
.fld input,.fld textarea{font:400 1rem/1.4 var(--sans);border:0.0625rem solid var(--stone);border-radius:0.125rem;padding:0.75rem;background:var(--paper);color:var(--ink);width:100%}
.fld textarea{min-height:6rem;resize:vertical}
.two{display:grid;grid-template-columns:1fr 1fr;gap:0.875rem}
.hintline{font:400 0.75rem/1.5 var(--mono);color:var(--mid);margin-top:0.5rem}
.err{color:var(--copper);font:400 0.8125rem/1.4 var(--sans);min-height:1.4em;margin-top:0.375rem}
.wnav{display:flex;justify-content:space-between;align-items:center;gap:0.75rem;margin-top:0.625rem;padding-top:1.375rem;border-top:0.0625rem solid var(--stone)}
.wnav .back{background:none;border:0;font:500 0.9375rem/1 var(--sans);cursor:pointer;color:var(--mid);padding:0.625rem 0}
.wnav .back:hover{color:var(--ink)}
.skus{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.375rem}
.skus .tag{display:inline-flex;align-items:center;gap:0.5rem;font:400 0.75rem/1 var(--mono);border:0.0625rem solid var(--copper);color:var(--copper);padding:0.5rem 0.625rem;border-radius:0.125rem}
.skus .tag button{background:none;border:0;color:inherit;cursor:pointer;font-size:0.875rem;padding:0;line-height:1}
.skus .none{font-size:0.875rem;color:var(--mid)}
.wpane[hidden]{display:none}
.sum{animation:rise .4s ease both}
.sum h3{font-size:clamp(1.875rem,3vw,2.5rem)}
.sum dl{display:grid;grid-template-columns:9.375rem 1fr;margin:1.375rem 0 0;border-top:0.0625rem solid var(--stone)}
.sum dt,.sum dd{margin:0;padding:0.75rem 0;border-bottom:0.0625rem solid var(--stone)}
.sum dt{font:400 0.6875rem/1.7 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mid)}
.sum pre{white-space:pre-wrap;font:400 0.8125rem/1.55 var(--mono);background:var(--paper);border:0.0625rem solid var(--stone);padding:0.875rem;margin:1.25rem 0 0;max-height:13.75rem;overflow:auto}
.sum .act{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:1.375rem;align-items:center}
.toast{font:400 0.75rem/1.5 var(--mono);color:var(--copper);margin-top:0.75rem;min-height:1.5em}
.side img{width:100%;aspect-ratio:4/3;object-fit:cover}
.contact{margin-top:1.375rem;border-top:0.0625rem solid var(--stone);padding-top:1.125rem;font-size:0.9375rem;line-height:1.7}
.contact b{font-weight:500}
.contact .mono{color:var(--mid);display:block;margin-bottom:0.375rem}


.drawer{position:fixed;top:0;right:0;bottom:0;width:min(26.25rem,100%);background:var(--paper);border-left:0.0625rem solid var(--stone);z-index:70;transform:translateX(100%);transition:transform .35s ease;display:flex;flex-direction:column;padding:1.5rem}
.drawer.open{transform:none}
.drawer h3{font-size:1.875rem}
.drawer ul{list-style:none;margin:1.25rem 0;padding:0;overflow:auto;flex:1}
.drawer li{display:grid;grid-template-columns:4rem 1fr auto;gap:0.75rem;align-items:center;padding:0.625rem 0;border-bottom:0.0625rem solid var(--stone)}
.drawer li img{width:4rem;height:4rem;object-fit:cover;background:#fff}
.drawer .x{background:none;border:0;font-size:1.125rem;cursor:pointer;color:var(--mid)}
.drawer .close{position:absolute;right:1.125rem;top:1.125rem;background:none;border:0;font-size:1.375rem;cursor:pointer}
.veil{position:fixed;inset:0;background:rgba(20,20,20,.35);z-index:65;opacity:0;pointer-events:none;transition:opacity .3s}
.veil.on{opacity:1;pointer-events:auto}


.ftr{background:var(--ink);color:var(--paper);padding:4rem var(--pad) 3rem;display:grid;grid-template-columns:2fr 1fr 1fr;gap:2.5rem;font-size:0.875rem;line-height:1.7}
.ftr .logo{font-size:1.875rem}
.ftr .mono{color:var(--mid);display:block;margin-bottom:0.625rem}
.ftr a{text-decoration:none}.ftr a:hover{color:#E7B79C}
.ftr .fine{grid-column:1/-1;border-top:0.0625rem solid var(--stone);padding-top:1.125rem;color:var(--mid);font:400 0.6875rem/1.6 var(--mono);letter-spacing:.04em}


.rv{opacity:0;transform:translateY(1rem);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}


@media (max-width:1100px){.ngrid{grid-template-columns:repeat(3,1fr)}.ngrid>div:nth-child(3n){border-right:0}.ngrid>div:nth-child(3n+1){padding-left:0}.ngrid>div:nth-child(-n+3){border-bottom:0.0625rem solid var(--stone)}.nav{display:none}}
@media (max-width:900px){
 :root{--hh:3.625rem}
 .hdr .btn{display:none}
 .story{height:auto;margin-top:0}.stage{display:none}.cards{display:block}
 .cym,.dev,.qwrap{grid-template-columns:1fr}
 .answer{min-height:0}.answer .ph{min-height:7.5rem}
 .galpin{height:auto!important}.galstage{position:relative;height:auto;padding:clamp(4.375rem,12vw,7.5rem) 0}
 .track{overflow-x:auto;scroll-snap-type:x mandatory;transform:none!important;padding-bottom:0.75rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}
 .track::-webkit-scrollbar{display:none}
 .card{scroll-snap-align:start;flex-basis:72vw}
 .ftr{grid-template-columns:1fr}
 .hero-txt{right:var(--pad)}
 .hero .scrim{background:linear-gradient(0deg,rgba(14,11,8,.85) 0,rgba(14,11,8,.55) 45%,rgba(14,11,8,.1) 75%)}
 .hint{display:none}
}
@media (max-width:560px){
 .ngrid{grid-template-columns:1fr 1fr}.ngrid>div{padding-left:0.875rem!important;border-right:0.0625rem solid var(--stone)!important;border-bottom:0.0625rem solid var(--stone)}.ngrid>div:nth-child(2n){border-right:0!important}.ngrid>div:nth-child(2n+1){padding-left:0!important}.ngrid>div:nth-last-child(-n+2){border-bottom:0}
 .two{grid-template-columns:1fr}
 .sum dl,.ans dl{grid-template-columns:1fr}.sum dt,.ans dt{border-bottom:0;padding-bottom:0}
 .qbtn .lbl{display:none}
 .hero h1{font-size:2.75rem}
}

.rm .story{height:auto;margin-top:0}.rm .stage{display:none}.rm .cards{display:block}
.rm .galpin{height:auto!important}.rm .galstage{position:relative;height:auto;padding:clamp(4.375rem,12vw,7.5rem) 0}
.rm .track{overflow-x:auto;scroll-snap-type:x mandatory;transform:none!important;padding-bottom:0.75rem}
.rm .card{scroll-snap-align:start}
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
 .rv{opacity:1;transform:none}
 .card:hover .im img{transform:none}
}
.mob{display:none}
@media (max-width:900px){.dsk{display:none}.mob{display:inline}}


:root{--mat:var(--tile);--tile:#F0EBE3}


.ed{margin:0;padding:0;background:none;border:0}
.ed-in{position:relative;overflow:hidden;background:var(--paper);
 -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%),linear-gradient(180deg,transparent 0,#000 4.5%,#000 95.5%,transparent 100%);
 -webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%),linear-gradient(180deg,transparent 0,#000 4.5%,#000 95.5%,transparent 100%);mask-composite:intersect}

.ed-in::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;background:radial-gradient(ellipse at 50% 48%,rgba(0,0,0,0) 70%,rgba(20,20,20,.06) 100%)}
.ed figcaption{font:400 0.65625rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mid);padding:0.5rem 0.125rem 0;display:flex;justify-content:space-between;gap:0.75rem;border-top:0.0625rem solid var(--stone);margin-top:0.375rem}
.ed figcaption::after{content:"Northmelon";color:var(--mid)}


.photo{max-width:calc(44vh * 4 / 3 + 2.5rem)}
.frame{aspect-ratio:4/3}
.frame img{opacity:1;clip-path:inset(0 0 0 100%);transform:scale(1.06);transition:clip-path .85s cubic-bezier(.77,0,.18,1),transform 9s cubic-bezier(.2,.6,.2,1)}
.frame img.on{clip-path:inset(0 0 0 0);transform:scale(1);z-index:1}
.frame img.prev{clip-path:inset(0 0 0 0);z-index:0;transition:none}
.cap .hard::before{content:"";display:inline-block;width:0.875rem;height:0.0625rem;background:currentColor;vertical-align:middle;margin-right:0.5rem}
.cards .ed img,.side .ed img{width:100%;aspect-ratio:4/3;object-fit:cover}
.plx img{transform:translate3d(0,var(--py,0rem),0) scale(1.1);will-change:transform}
.rv-clip .ed-in{clip-path:inset(0 0 100% 0);transition:clip-path 1.1s cubic-bezier(.77,0,.18,1)}
.rv-clip.in .ed-in{clip-path:inset(0 0 0 0)}


.card{background:var(--tile);border-color:var(--stone);box-shadow:0 1.125rem 2.125rem -1.75rem rgba(20,20,20,.35);transition:box-shadow .4s,transform .4s}
.card:hover{box-shadow:0 1.625rem 2.75rem -1.75rem rgba(20,20,20,.4);transform:translateY(-0.1875rem)}
.card .im{background:var(--tile);padding:6%}
.card .meta{background:var(--paper);border-top-color:var(--stone)}
.wall figure{background:var(--tile);border-color:var(--stone);padding:0.375rem}
.wall figure.on{border-color:var(--copper);box-shadow:0 0.75rem 1.375rem -1.125rem rgba(20,20,20,.45)}
.truecol{font:400 0.65625rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mid);margin-top:0.5rem;display:flex;align-items:center;gap:0.5rem}
.truecol::before{content:"";width:0.5rem;height:0.5rem;border:0.0625rem solid var(--mid);border-radius:50%}
.galhead .truecol{margin-top:0.875rem}


.devframe{background:var(--tile);border-color:var(--stone)}
.devframe img{background:var(--tile);padding:3%}


.hero{background:var(--paper)}
.hero picture{-webkit-mask-image:linear-gradient(180deg,#000 0,#000 86%,transparent 100%);mask-image:linear-gradient(180deg,#000 0,#000 86%,transparent 100%)}
.hero .scrim{background:linear-gradient(180deg,rgba(14,12,10,.5) 0,rgba(14,12,10,0) 12%),linear-gradient(90deg,rgba(14,12,10,.84) 0,rgba(14,12,10,.74) 30%,rgba(14,12,10,.4) 47%,rgba(14,12,10,0) 62%);
 -webkit-mask-image:linear-gradient(180deg,#000 0,#000 84%,transparent 100%);mask-image:linear-gradient(180deg,#000 0,#000 84%,transparent 100%)}
.hero-txt{bottom:clamp(5.625rem,17vh,10.625rem);z-index:5}
.hero .scrollcue,.hero .cursor-hint{z-index:5}
.hero .scrollcue{bottom:clamp(5.625rem,15vh,9.375rem)}
.hero-img{animation:heroKB 18s cubic-bezier(.2,.6,.2,1) both}
@keyframes heroKB{from{transform:scale(1.05)}to{transform:scale(1)}}
@media (max-width:900px){
 .hero .scrim{background:linear-gradient(180deg,rgba(14,12,10,.5) 0,rgba(14,12,10,0) 10%),linear-gradient(0deg,rgba(14,12,10,0) 0,rgba(14,12,10,.8) 14%,rgba(14,12,10,.72) 62%,rgba(14,12,10,.35) 76%,rgba(14,12,10,0) 86%);-webkit-mask-image:none;mask-image:none}
 .hero-txt{bottom:clamp(4.375rem,12vh,7.5rem)}
 .hero .scrollcue{bottom:1.75rem}
}


.hintx{font:400 0.6875rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--copper);transition:opacity .6s ease,transform .6s ease}
.hintx.gone{opacity:0!important;transform:translateY(-0.25rem);pointer-events:none}
.dot{display:inline-block;width:0.375rem;height:0.375rem;border-radius:50%;background:var(--copper);margin-right:0.5625rem;vertical-align:0.0625rem;animation:dotp 1.8s ease-in-out infinite}
@keyframes dotp{0%,100%{box-shadow:0 0 0 0 rgba(180,83,42,.5)}60%{box-shadow:0 0 0 0.4375rem rgba(180,83,42,0)}}


.cursor-hint{position:absolute;left:calc(var(--hx,64%) + 1.125rem);top:calc(var(--hy,44%) + 1.125rem);display:flex;align-items:center;gap:0.625rem;color:#F0C9A8;background:rgba(20,14,10,.55);padding:0.5rem 0.75rem 0.5rem 0.625rem;border:0.0625rem solid rgba(240,201,168,.35)}
.cursor-hint svg{animation:cur 2.4s ease-in-out infinite}
@keyframes cur{0%,100%{transform:translate(0,0)}35%{transform:translate(-0.375rem,-0.3125rem)}70%{transform:translate(0.3125rem,-0.125rem)}}
@media (pointer:coarse){.cursor-hint{display:none}}
.scrollcue{position:absolute;right:var(--pad);bottom:2.75rem;display:flex;flex-direction:column;align-items:center;gap:0.625rem;color:rgba(245,242,236,.85)}
.scrollcue i{position:relative;display:block;width:0.0625rem;height:2.875rem;background:rgba(245,242,236,.3);overflow:hidden}
.scrollcue i::after{content:"";position:absolute;left:0;top:-40%;width:0.0625rem;height:40%;background:#F0C9A8;animation:cue 1.8s cubic-bezier(.6,0,.3,1) infinite}
@keyframes cue{to{top:100%}}
@media (max-width:900px){.scrollcue{display:flex;right:auto;left:50%;transform:translateX(-50%);bottom:0.875rem}.scrollcue span{display:none}.scrollcue i{height:1.875rem}}


.stagehint{position:absolute;top:0.875rem;left:0;color:var(--copper)}
.stagehint b{display:inline-block;font-weight:400;margin-left:0.375rem;animation:bob 1.6s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(0.25rem)}}
.pcount::before{content:"Step ";}


.hintline2{margin-top:1.875rem;margin-bottom:-1.125rem}


.dragpill{position:absolute;z-index:5;left:50%;bottom:1.125rem;transform:translateX(-50%);background:var(--paper);border:0.0625rem solid var(--copper);padding:0.625rem 1rem;display:flex;gap:0.625rem;align-items:center;pointer-events:none}
.dragpill.gone{transform:translateX(-50%) translateY(0.375rem)}
.dragpill b{font-weight:400}
.dragpill .la{animation:la 1.4s ease-in-out infinite}.dragpill .ra{animation:ra 1.4s ease-in-out infinite}
@keyframes la{50%{transform:translateX(-0.25rem)}}@keyframes ra{50%{transform:translateX(0.25rem)}}
.handle{opacity:0;transition:opacity .2s}


.galhint{margin:0 0 0.875rem}
.add.pulse{animation:addp 1.6s ease-out infinite}
@keyframes addp{0%{box-shadow:0 0 0 0 rgba(180,83,42,.55)}70%,100%{box-shadow:0 0 0 0.75rem rgba(180,83,42,0)}}


.qwrapb{position:relative}
.qtoast{position:absolute;right:0;top:calc(100% + 0.625rem);white-space:nowrap;font:400 0.6875rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;background:var(--ink);color:var(--paper);padding:0.5625rem 0.6875rem;opacity:0;transform:translateY(-0.25rem);transition:opacity .3s,transform .3s;pointer-events:none}
.qtoast.on{opacity:1;transform:none}
.qbtn.flash{border-color:var(--copper);color:var(--copper)}


.wtop{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.875rem}
.wtop .mono{color:var(--mid)}.wtop .wtip{color:var(--copper)}
.wsteps span{display:flex;align-items:center;gap:0.625rem}
.wsteps em{font-style:normal;display:inline-grid;place-items:center;width:1.375rem;height:1.375rem;border-radius:50%;border:0.0625rem solid currentColor;font-size:0.6875rem;letter-spacing:0;flex:0 0 1.375rem}
.wsteps span.on em{background:var(--copper);border-color:var(--copper);color:#fff}
.wsteps span.done em{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.wsteps span.done em::before{content:"\2713"}.wsteps span.done em{font-size:0}.wsteps span.done em::before{font-size:0.6875rem}


@media (prefers-reduced-motion:reduce){
 .frame img{transition:none;transform:none}
 .hero-img{animation:none}
 .plx img{transform:none!important}
 .rv-clip .ed-in{clip-path:none}
 .card:hover{transform:none}
}

.hero-txt h1,.hero-txt .lead,.hero-txt .eyebrow,.hero-txt .facts{text-shadow:0 0.0625rem 0.875rem rgba(0,0,0,.35)}

/* Shared production shell and page layouts. The supplied reference owns the home composition. */
:root{--hh:5.125rem;--pad:max(1.75rem,calc((100vw - 80rem)/2));--tile:#F0EBE3}
::selection{background:var(--copper);color:var(--paper)}
body{caret-color:var(--copper);scrollbar-color:var(--stone) var(--paper)}
[hidden]{display:none!important}
button,input,textarea{font:inherit}
button,a,input,textarea{touch-action:manipulation}
button{color:inherit}
h2{font-size:clamp(1.875rem,3.4vw,3rem)}
.sec{padding-top:7.5rem;padding-bottom:7.5rem}
.wrap{max-width:100%}
.btn{min-height:3rem;justify-content:center;color:var(--paper)}
.btn:hover{background:var(--ink);border-color:var(--ink)}
.skip{position:fixed;top:0.5rem;left:0.5rem;z-index:100;background:var(--paper);padding:0.75rem;transform:translateY(-180%)}
.skip:focus{transform:none}
.hdr .logo,.ftr .logo{display:flex;flex-direction:column;align-items:flex-start;gap:0.4375rem;flex-shrink:0}
.logo small{opacity:1;font-size:0.5625rem}
.hdr .nav{gap:1.25rem;font-size:0.8125rem}
.hdr-r{gap:0.75rem}.hdr .btn{padding:0.75rem 1rem}
.header-catalog{font-size:0.8125rem;white-space:nowrap}
.menu-toggle{display:none;width:2.75rem;height:2.75rem;border:0.0625rem solid currentColor;background:none;padding:0.75rem}
.menu-toggle span{display:block;width:1.125rem;height:0.0625rem;background:currentColor;margin:0.3125rem 0}
.mobile-nav{position:fixed;inset:var(--hh) 0 0;background:var(--paper);z-index:49;display:flex;flex-direction:column;padding:2.25rem var(--pad);gap:1.5rem;overflow:auto}
.mobile-nav>a:not(.btn){font-size:1.5rem;text-decoration:none}
.mobile-nav .btn{align-self:flex-start}
.ftr{background:var(--paper);color:var(--ink);border-top:0.0625rem solid var(--stone);grid-template-columns:1.2fr .8fr 1.4fr .7fr;padding-top:4.5rem;padding-bottom:1.875rem;gap:2rem}
.ftr p{margin-top:1.25rem;max-width:32ch;color:var(--mid)}
.ftr .mono,.ftr .fine{color:var(--mid)}
.ftr>div:nth-child(2)>a{display:block;margin:0.4375rem 0}
.ftr .contact{margin:0;padding:0;border:0;overflow-wrap:anywhere}
.ftr .fine{display:flex;justify-content:space-between;border-color:var(--stone);margin-top:1.25rem}
.ftr a:hover{color:var(--copper)}
.whatsapp{position:fixed;right:1.375rem;bottom:1.375rem;width:2.75rem;height:2.75rem;display:grid;place-items:center;background:var(--ink);color:var(--paper);z-index:45}
.whatsapp:hover{color:var(--copper)}
.steps li{padding:0;cursor:default}
.steps button{position:relative;width:100%;text-align:left;background:none;border:0;padding:0.5rem 0 0.5rem 1.125rem;min-height:2.5rem;color:inherit;font-size:0.9375rem;cursor:pointer}
.steps li:has(button.on){transform:translateX(0.25rem);color:var(--ink)}
.steps button.on::before{content:"";position:absolute;left:-0.125rem;top:0.4375rem;bottom:0.4375rem;width:0.1875rem;background:var(--copper)}
.steps button.done{color:var(--mid)}
.steps button.on{color:var(--ink)}
.frame img{opacity:1}
.devframe img{pointer-events:auto}
.wall{opacity:1;visibility:hidden;transform:translateY(0.5rem);transition:transform .35s}
.wall.on,.cards .wall{visibility:visible;transform:none}
.stage .wallbox{display:none}
.stage .wallbox.active{display:block}
.stage .photo:has(.wallbox.active){max-width:min(100%,calc(30vh * 4 / 3))}
.stage .wallnote{opacity:1}
.answer,.wiz{background:var(--paper)}
.ans[hidden]{display:none}
.rv{opacity:1;transform:none}
.js .rv:not(.in){opacity:0;transform:translateY(1rem)}
.js-only{display:none}
.js .js-only{display:grid}
html:not(.js) .story{display:block;height:auto}
html:not(.js){scroll-behavior:auto}
html:not(.js) *,html:not(.js) *::before,html:not(.js) *::after{animation:none!important;transition:none!important}
html:not(.js) .hdr{background:var(--paper);color:var(--ink);border-bottom:0.0625rem solid var(--stone)}
html:not(.js) .stage{display:none}
html:not(.js) .cards{display:block}
html:not(.js) .galpin{height:auto}
html:not(.js) .galstage{position:relative;height:auto;padding:4.5rem 0}
html:not(.js) .track{overflow-x:auto}
html:not(.js) .rv-clip .ed-in{clip-path:none}
html:not(.js) .wtop,html:not(.js) .wsteps,html:not(.js) #wback{display:none}
html:not(.js) .ans+.ans{border-top:0.0625rem solid var(--stone);padding-top:1.875rem;margin-top:1.875rem}
.wpane,.qwrap,.dev>div,.cym>div,.split>*{min-width:0}
.drawer[aria-hidden=true]{visibility:hidden}
.drawer.open{visibility:visible}
.drawer .close,.drawer .x,.skus .tag button{min-width:2.5rem;min-height:2.5rem}
.skus .tag{padding:0 0 0 0.625rem}
.skus .tag button{font-size:1.25rem}
.drawer .unknown{grid-template-columns:1fr auto}
.drawer .mono{margin-top:0.75rem}
.qtoast{max-width:min(21.25rem,calc(100vw - 2rem));white-space:normal;line-height:1.4}
.wtop{gap:1.25rem;align-items:flex-start;line-height:1.5}
.wtop .wtip{text-align:right}
.wsteps span{color:var(--mid)}
.wnav button{min-height:2.75rem}
.sum pre{overflow-wrap:anywhere}
.sum .act .link{background:none;border:0;border-bottom:0.0625rem solid currentColor;min-height:2.5rem;cursor:pointer}
.wiz[aria-busy=true]{cursor:progress}
.btn:disabled{cursor:wait;background:var(--mid);border-color:var(--mid)}
.contact a{overflow-wrap:anywhere}
.hintline a{color:var(--copper)}
.page-hero{padding-top:calc(var(--hh) + 4.75rem);padding-bottom:6.25rem;display:grid;grid-template-columns:6fr 6fr;align-items:center;gap:5rem}
.page-hero h1,.prose h1{font-size:clamp(2.625rem,5vw,4.5rem);line-height:1.02;max-width:12ch}
.page-hero .lead{font-size:1.0625rem}
.page-hero.full{display:block}
.page-hero.full>div{max-width:48.75rem}
.page-hero.full h1{max-width:16ch}
.page-hero.full>figure{margin-top:3rem}
.page-hero.full>figure img{width:100%;max-height:41.25rem;object-fit:cover}
.page-hero:not(:has(img)){grid-template-columns:1fr;padding-bottom:4rem}
.product-hero{max-width:35rem;width:100%;background:var(--tile);padding:6%;border:0.0625rem solid var(--stone)}
.product-hero img{width:100%;height:auto;object-fit:contain}
.act{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;margin-top:1.75rem}
.content-top{margin-top:2.625rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.ed-in img{width:100%;aspect-ratio:4/3;object-fit:cover}
.material-list>div{padding:1.375rem 0;border-top:0.0625rem solid var(--stone);font:400 1.875rem/1.2 var(--serif)}
.material-list small{display:block;font:400 0.75rem/1.5 var(--mono);color:var(--mid);margin-top:0.75rem}
.category-list>a{display:flex;justify-content:space-between;gap:1.25rem;padding:1.25rem 0;border-top:0.0625rem solid var(--stone);text-decoration:none}
.category-list>a:hover{color:var(--copper)}
.category-list span{transition:transform .2s}
.category-list>a:hover span{transform:translateX(0.25rem)}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;margin-top:2.5rem}
.product-grid .card{min-width:0}
.product-grid .meta{padding:0.875rem 0.75rem;gap:0.5rem}
.spec-list{display:grid;grid-template-columns:minmax(10.625rem,1fr) 3fr;margin:2.25rem 0 0}
.spec-list dt,.spec-list dd{margin:0;padding:1.125rem 0;border-top:0.0625rem solid var(--stone)}
.spec-list dt{font:400 0.75rem/1.55 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--mid);padding-right:1.375rem}
.send-list{display:grid;grid-template-columns:1fr 1fr;gap:0 4rem;list-style-position:inside;padding:0;margin:2.25rem 0}
.send-list li{padding:1.0625rem 0;border-top:0.0625rem solid var(--stone)}
.starting-points{display:grid;grid-template-columns:repeat(3,1fr);margin-top:2.5rem;border-bottom:0.0625rem solid var(--stone)}
.starting-points button{border:0;border-top:0.0625rem solid var(--stone);border-right:0.0625rem solid var(--stone);padding:1.875rem;text-align:left;background:none;cursor:pointer}
.starting-points button:first-child{padding-left:0}
.starting-points button:last-child{border-right:0}
.starting-points button:hover{color:var(--copper)}
.starting-points strong{font:400 1.875rem/1.15 var(--serif);display:block;margin-bottom:1rem}
.starting-points span{color:var(--mid);display:block}
.six-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:1.25rem;padding:0;list-style:none;margin:2.5rem 0 3.25rem}
.six-steps li{border-top:0.0625rem solid var(--stone);padding-top:1.125rem}
.six-steps .mono{color:var(--copper)}
.six-steps h3{font-size:1.625rem;margin:1rem 0 0.75rem}
.six-steps p{font-size:0.9375rem;color:var(--mid)}
.plain-list{margin:2rem 0;padding-left:1.375rem;line-height:2}
.faq{margin-top:2.5rem}
.faq details{border-top:0.0625rem solid var(--stone);padding:1.375rem 0}
.faq details:last-child{border-bottom:0.0625rem solid var(--stone)}
.faq summary{cursor:pointer;font-size:1.25rem;min-height:2.5rem}
.faq p{max-width:75ch;margin-top:1.25rem;color:var(--mid)}
.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem 3rem;margin-top:3rem}
.process-grid article>.cap{margin-top:1.5rem}
.process-grid .wallbox{margin-top:1.5rem}
.film{margin:0}
.film video{display:block;width:100%;height:auto;background:var(--paper)}
.film figcaption{color:var(--mid);margin-top:1rem;line-height:1.6}
.park-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem 1.75rem;margin-top:2.5rem}
.next-steps{list-style-position:inside;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.75rem;margin-top:2.5rem}
.next-steps li{border-top:0.0625rem solid var(--stone);padding:1.5rem 0}
.prose{max-width:56.25rem;margin:auto;padding:calc(var(--hh) + 5.25rem) 1.75rem 7.5rem}
.prose h2{font-size:2rem;margin:3rem 0 1.125rem}
.prose h1{max-width:none}
.prose p{color:var(--mid);max-width:75ch}
.truecol{line-height:1.55}
.hero .dim,.hero .spec,.hero .spec2{-webkit-mask-image:linear-gradient(180deg,#000 0,#000 86%,transparent 100%);mask-image:linear-gradient(180deg,#000 0,#000 86%,transparent 100%)}
.rm .rv,.rm .js .rv,.rm .rv:not(.in){opacity:1;transform:none}
.rm .rv-clip .ed-in{clip-path:none}
.rm .plx img{transform:none}
.rm .hero-img{animation:none}
.rm .frame img{transform:none}
.rm .hintx,.rm .dot,.rm .add,.rm .badge{animation:none}
@media(pointer:coarse){.card:hover .im img{transform:none}.card:hover{transform:none}}
@media(min-width:901px) and (max-width:1250px){.hdr .nav{gap:0.75rem;font-size:0.75rem}.hdr-r{gap:0.5rem}.header-catalog{display:none}.hdr .nav{display:flex}.stage{gap:1.5rem;grid-template-columns:2.6fr 3fr 4fr}.steps button{font-size:0.8125rem}}
@media(max-width:900px){
 :root{--pad:1.5rem;--hh:4.25rem}
 body{font-size:1rem}.sec{padding-top:4.5rem;padding-bottom:4.5rem}
 .hdr .nav,.header-catalog,.hdr-r>.btn{display:none}.menu-toggle{display:block}.hdr-r{gap:0.75rem}
 .hdr .logo{font-size:1.5625rem}.hdr .logo small{font-size:0.5rem}
 .ftr{grid-template-columns:1fr 1fr;padding-top:3.5rem;gap:2.25rem 1.5rem}
 .page-hero{padding-top:calc(var(--hh) + 3rem);padding-bottom:4rem;grid-template-columns:1fr;gap:2.5rem}
 .page-hero h1,.prose h1{font-size:2.625rem;max-width:14ch}
 .split,.process-grid{grid-template-columns:1fr;gap:2.25rem}
 .park-grid{grid-template-columns:1fr 1fr}
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
 .six-steps{grid-template-columns:1fr 1fr}
 .starting-points{grid-template-columns:1fr}.starting-points button{padding:1.5rem 0;border-right:0}
 .next-steps{grid-template-columns:1fr 1fr}
 .hero .lead{font-size:1.0625rem}.hero .eyebrow{font-size:0.6875rem;line-height:1.6}
 .hero-txt{bottom:clamp(4.375rem,12vh,7.5rem)}
 .qwrap{margin-top:2rem}.qtoast{right:-3.5rem}
}
@media(max-width:560px){
 :root{--pad:1.25rem}
 h2{font-size:1.875rem}.hero h1{font-size:2.75rem}
 .ftr,.park-grid{grid-template-columns:1fr}
 .hero-cta{gap:1.375rem;flex-direction:column;align-items:flex-start}.hero-cta .btn{font-size:0.9375rem}
 .product-grid{gap:1.25rem 0.75rem}.product-grid .meta{padding:0.75rem 0.5rem;align-items:flex-start;flex-wrap:wrap}
 .product-grid .nm{font-size:0.8125rem}.product-grid .sku{font-size:0.6875rem}
 .product-grid .add{margin-left:auto}
 .spec-list{grid-template-columns:1fr}
 .spec-list dt{border-bottom:0;padding-bottom:0}.spec-list dd{border-top:0;padding-top:0.5rem}
 .send-list,.six-steps,.next-steps{grid-template-columns:1fr}
 .two{grid-template-columns:1fr}
 .wtop .mono{font-size:0.625rem}.wsteps span{font-size:0.625rem;gap:0.3125rem;letter-spacing:.03em}
 .wiz{padding:1.375rem 1.125rem}.ticks button{min-height:2.75rem;font-size:0.625rem}
 .devframe{height:30rem;max-height:65vh}
 .drawer{padding:1.5rem 1.25rem}.drawer li{gap:0.625rem}
 .whatsapp{right:1rem;bottom:1rem}
}
@media(prefers-reduced-motion:reduce){.js .rv:not(.in){opacity:1;transform:none}.card:hover{transform:none}.plx img{will-change:auto}.rv-clip .ed-in{clip-path:none}.story{height:auto}.stage{display:none}.cards{display:block}.galpin{height:auto!important}.galstage{position:relative;height:auto;padding:4.5rem 0}.track{overflow-x:auto;transform:none!important;scroll-snap-type:x mandatory}}

/* The reference remains unchanged through 1440 CSS pixels. Body text keeps its
   existing cap; only the process story uses the separately approved wider stage. */
@media (width > 1440px) {
 :root {
  font-size:clamp(16px,0.42vw + 10px,22px);
  --wide-shell:min(92vw,1680px);
  --wide-gutter:clamp(24px,4vw,96px);
  --wide-content:calc(var(--wide-shell) - 2 * var(--wide-gutter));
  --pad:calc((100vw - var(--wide-content)) / 2);
 }
 .wrap {
  width:var(--wide-shell);max-width:var(--wide-shell);margin-inline:auto;
  padding-inline:var(--wide-gutter);
 }
 .whatsapp svg{width:1.5rem;height:1.5rem}
 .cursor-hint svg{width:1.375rem;height:1.375rem}
 .hero{max-height:none}
 .hero-txt{max-width:40rem;width:40rem}
 .hero h1{font-size:clamp(3.5rem,5.2vw,8rem)}
 .hero .lead{max-width:40rem}
 /* A wider, image-led stage is distinct from the readable body container.
    Keep the whole reference SVG (chain and QC badge included) inside its column. */
 .story{height:calc(100vh + 10 * clamp(600px,75vh,1000px))}
 .stage{
  --process-shell:min(94vw,3400px);
  --process-gutter:clamp(32px,2.5vw,96px);
  --process-art:min(clamp(520px,25vw,880px),calc((100vh - var(--hh) - 6rem) / 1.2));
  --process-inner:calc(var(--process-shell) - 2 * var(--process-gutter));
  --process-photo:min(calc(62vh * 4 / 3),calc((100vh - var(--hh) - 20rem) * 4 / 3),calc(var(--process-inner) - 14rem - var(--process-art) - 4rem));
  width:var(--process-shell);max-width:var(--process-shell);margin-inline:auto;
  grid-template-columns:14rem var(--process-art) var(--process-photo);
  justify-content:space-between;gap:2rem;
  padding:calc(var(--hh) + 2rem) var(--process-gutter) 2rem;
 }
 .stage>*{min-width:0}
 .stage .canvas{height:min(74vh,calc(100vh - var(--hh) - 6rem))}
 .stage .canvas svg{width:100%;max-width:100%}
 .stage .photo,.stage .photo:has(.wallbox.active){
  width:100%;max-width:100%;
 }
 /* The finish comparison belongs beside its explanation, below the same photo.
    This avoids shrinking the photo when step 08 becomes active. */
 .stage .photo:has(.wallbox.active){display:grid;grid-template-columns:1fr 1fr;column-gap:1.5rem;align-items:start}
 .stage .photo>figure{grid-column:1/-1}
 .stage .photo .cap{max-width:36rem}
 .stage .frame{aspect-ratio:4/3;flex-shrink:0}
 .stage .photo .wallbox{max-width:100%}
}
/* Candidate B: on ultra-wide screens, explain the process before its photograph.
   Caption columns mirror the art/photo columns; all three groups share one grid.
   Smaller screens retain the already verified A composition. */
@media (width >= 2200px) {
 .stage{
  --process-shell:min(92vw,2800px);
  --process-art:clamp(400px,18vw,640px);
  --process-photo:min(calc(48vh * 4 / 3),calc((100vh - var(--hh) - 20rem) * 4 / 3),calc(var(--process-inner) - 14.5rem - var(--process-art) - 5rem));
  --process-body:calc(var(--process-photo) * .75 + 3rem);
  --process-finish:0rem;
  grid-template-columns:14.5rem var(--process-art) var(--process-photo);
  grid-template-rows:auto var(--process-body);
  justify-content:center;align-content:center;align-items:start;
  gap:2rem 2.5rem;
 }
 .stage:has(.wallbox.active){--process-finish:calc(var(--process-art) / 3 + 6rem)}
 .stage .steps{grid-column:1;grid-row:1/3;align-self:start;padding-top:2rem}
 .stage .steps button{font-size:1rem;line-height:1.5;padding-block:.65rem}
 .stage .steps button.on{font-weight:600}
 .stage .photo,.stage .photo:has(.wallbox.active){display:contents}
 .stage .photo .cap{
  grid-column:2/4;grid-row:1;max-width:none;
  display:grid;grid-template-columns:var(--process-art) var(--process-photo);
  column-gap:2.5rem;row-gap:.5rem;
 }
 .stage .cap .num{grid-column:1;grid-row:1;font-size:1rem;line-height:1.2}
 .stage .cap h3{grid-column:1;grid-row:2;font-size:clamp(2.5rem,2.2vw,4rem);line-height:1.04;margin:0}
 .stage .cap .hard{grid-column:1;grid-row:3;font-size:1rem;line-height:1.5;margin:0;color:var(--ink);letter-spacing:.04em}
 .stage .cap p{grid-column:2;grid-row:1/4;align-self:center;font-size:1.25rem;line-height:1.55;max-width:42ch;min-height:0;margin:0}
 .stage .photo>figure{grid-column:3;grid-row:2;margin:0}
 .stage .canvas{grid-column:2;grid-row:2;height:100%;padding:1rem 0 calc(1rem + var(--process-finish))}
 .stage .canvas svg{width:min(100%,calc((var(--process-body) - 2rem - var(--process-finish)) / 1.2));max-height:100%}
 .stage .pcount{bottom:calc(var(--process-finish) + .25rem)}
 .stage .photo .wallbox.active{grid-column:2;grid-row:2;align-self:end;max-width:100%;margin:0}
}
/* B readability candidate: role-specific type, preserving the stage composition. */
@media (width > 1440px) {
 .stage{--process-reading:#49443e;--process-secondary:#625d55}
 .stage .steps button{
  font-size:1.25rem;line-height:1.45;color:var(--process-reading);
  padding-left:3rem;text-indent:-1.875rem;
 }
 .stage .steps button.done{color:var(--process-reading)}
 .stage .steps button.on{color:var(--ink);font-weight:600}
 .stage .steps .n{font-size:.875rem;color:var(--process-secondary);text-indent:0}
 .stage .cap p{font-size:1.25rem;line-height:1.6;color:var(--process-reading)}
 .stage .photo>figure>figcaption{
  font-size:.8125rem;line-height:1.5;letter-spacing:.08em;color:var(--process-secondary);
 }
 .stage .photo>figure>figcaption::after{color:var(--process-secondary)}
 .stage .pcount{font-size:.875rem;line-height:1.4;color:var(--process-secondary);letter-spacing:.06em}
}
@media (width >= 2200px) {
 .stage .cap p{font-size:1.4rem}
}

/* Local pages candidate. The accepted process stage and <=1440px stay unchanged. */
@media (width > 1440px) {
 .page-hero.wrap,.sec.wrap,.nums.wrap,.gal .wrap {
  --page-shell:min(92vw,2080px);
  width:var(--page-shell);max-width:var(--page-shell);
  --mid:#625d55;
 }
 .page-hero,.sec.wrap{font-size:1.2rem;line-height:1.6}
 .page-hero{gap:3rem;padding-top:calc(var(--hh) + 3.5rem);padding-bottom:4rem}
 .sec.wrap{padding-block:5.5rem}
 .page-hero h1{font-size:4.5rem}
 .page-hero .lead,.sec.wrap .lead{font-size:1.25rem;line-height:1.6;max-width:44rem}
 .page-hero.full>div{max-width:48rem}
 .page-hero .btn,.sec.wrap .btn,.sec.wrap .link{font-size:1.05rem}
 .page-hero .eyebrow,.sec.wrap .eyebrow{font-size:.85rem}
 .nums .nl{font-size:.85rem;line-height:1.5}
 .nums .nnote{font-size:.8rem;line-height:1.55}
 .gal{--pad:calc((100vw - (min(92vw,2080px) - 2 * var(--wide-gutter))) / 2);--mid:#625d55}
 .gal .lead{font-size:1.25rem;line-height:1.6;max-width:44rem}
 .gal .card .nm{font-size:1.05rem;line-height:1.4}
 .gal .card .sku,.gal .eyebrow,.galnote,.gal .mono{font-size:.85rem;line-height:1.5}
 .product-hero{max-width:36rem;justify-self:end}
 .sec.wrap .mono,.sec.wrap figcaption{font-size:.85rem;line-height:1.5}
 .material-list small,.spec-list dt{font-size:.9rem;line-height:1.55}
 .sec.wrap .cap p{font-size:1.15rem;line-height:1.6;max-width:65ch}
 .sec.wrap .cap .hard{font-size:.9rem;line-height:1.5}
 .product-grid .nm{font-size:1.05rem;line-height:1.4}
 .product-grid .sku{font-size:.85rem}
 .starting-points span,.six-steps p{font-size:1.05rem;line-height:1.6}
 .six-steps{gap:1.5rem}
 .six-steps h3{font-size:1.8rem;line-height:1.15}
 .faq summary{font-size:1.35rem}
 .faq p{max-width:65ch}
 /* People at the photograph's edge should not be lost to the parallax crop. */
 .sec.wrap .ed-in img[src*="about-team-"],.sec.wrap .ed-in img[src*="about-designers"]{aspect-ratio:auto;height:auto;transform:none!important}
 #make .chip{font-size:1.15rem}
 #make .answer .ph,#make .ans .q,#make .ans dt{font-size:.9rem}
 #dev .ticks button,#dev .devhint,#dev .devtag{font-size:.85rem;line-height:1.5}
 #dev .devcap .st{font-size:.9rem}
 #quote .wsteps span{font-size:.85rem;line-height:1.4;letter-spacing:.04em}
 #quote .wtop .mono,#quote .fld label,#quote .hintline,#quote .sum dt{font-size:.85rem;line-height:1.5}
 #quote .opt span,#quote .fld input,#quote .fld textarea,#quote .contact{font-size:1.1rem}
 #quote .skus .none,#quote .sum pre,#quote .err{font-size:1rem;line-height:1.55}
 .page-hero:not(:has(img)){padding-bottom:2.5rem}
 .page-hero:not(:has(img))+#quote{padding-top:3rem}
 .page-hero:not(:has(img))+#quote .qwrap{margin-top:2rem}
}

/* Buyer readability round: preserve the established composition and process stage. */
:root{--mid:#625d55;--copper:#ad5028}
.ed-in{-webkit-mask-image:none;mask-image:none}
.ed-in::before{display:none}
.sec.wrap .ed-in img[src*="about-team-"],.sec.wrap .ed-in img[src*="about-designers"]{aspect-ratio:auto;height:auto;transform:none!important}
.ed figcaption{font-size:max(.75rem,12px);line-height:1.6;letter-spacing:.06em}
.ed figcaption::after{display:none}
.hintline,.truecol,.material-list small,.spec-list dt,.ans dt,.ans .q,.cap .hard{font-size:max(.875rem,14px);line-height:1.6}
.ftr .fine,.ftr .mono,.ftr .contact{font-size:max(.875rem,14px);line-height:1.6}
.fld label,.wtop .mono,.skus .mono,.sum dt{font-size:max(.875rem,14px);line-height:1.5}
.fld input,.fld textarea{font-size:max(1rem,16px);line-height:1.5;min-height:48px}
.opt span{font-size:max(1rem,16px);min-height:48px;display:flex;align-items:center;line-height:1.4}
.wsteps span{font-size:max(.8125rem,13px);line-height:1.45;letter-spacing:.025em;align-items:flex-start}
.wsteps em{margin-top:.125rem}
.ticks button{font-size:max(.8125rem,13px);line-height:1.5;min-height:48px;letter-spacing:0}
.chip{min-height:48px;line-height:1.5}
.ans dd{line-height:1.65}
.ans h3{text-wrap:balance}
.js #answer{display:grid;align-content:start;min-height:0}
.js #answer .ans{grid-area:1/1;min-width:0;animation:none}
.js #answer .ans[hidden]{display:block!important;visibility:hidden;pointer-events:none}
.js #answer:not([data-ready]) .ans:not([data-answer="photo"]){visibility:hidden;pointer-events:none}
html:not(.js) #make .chips,html:not(.js) #chipHint{display:none}
.btn,.qbtn{min-height:48px}
@media(min-width:901px) and (max-width:1440px){
 .hdr .nav{font-size:14px;gap:clamp(10px,1.4vw,20px)}
 .steps button{font-size:16px;line-height:1.4;min-height:44px}
 .cap p,.six-steps p{font-size:16px;line-height:1.65}
}
@media(min-width:901px) and (max-width:1120px){.header-catalog{display:none}.hdr .nav{gap:10px}.hdr-r{gap:8px}.hdr .btn{padding:12px}}
@media(max-width:900px){
 .sec{padding-top:64px;padding-bottom:64px}
 .hintline,.truecol,.cap .hard,.ans .q,.ans dt{font-size:14px}
 .ed figcaption{font-size:12px}
 .product-grid .nm{font-size:16px;line-height:1.45}
 .product-grid .sku{font-size:13px}
 .wtop{gap:12px}.wtop .mono{font-size:13px;letter-spacing:.025em}
 .wsteps{gap:10px}.wsteps span{font-size:13px;flex-direction:column;gap:6px}
 .ticks{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}
 .ticks button{text-align:left;padding:8px}
 .ans dl{grid-template-columns:1fr}.ans dt{border-bottom:0;padding-bottom:0}.ans dd{padding-top:4px}
 #answer{padding:24px 20px}.ans .act{align-items:flex-start}
 .whatsapp{bottom:12px;right:12px}
}

/* Missing process evidence keeps its existing frame without substituting another operation. */
.process-photo-note{display:grid;place-items:center;min-height:16rem;aspect-ratio:4/3;padding:2rem;text-align:center;background:var(--bg,#f4f1ea);color:inherit;box-sizing:border-box}.process-photo-note p{margin:0;font-size:1.1rem;line-height:1.6}.process-photo-note span{font-size:.9rem}#frame>.process-photo-note{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;opacity:0;visibility:hidden}#frame>.process-photo-note.on{opacity:1;visibility:visible;z-index:2}

/* Keep the documented rotary tool in view when the source is cropped by the existing frame. */
img[src$="hand-finishing.jpg"]{object-position:50% 0%!important}

/* Audit follow-up: readable supporting information and deliberate video loading. */
.facts{font-size:max(.875rem,14px);line-height:1.65;color:rgba(245,242,236,.9)}
.hintline,.truecol,.devcap .st,#chipHint{font-size:max(.875rem,14px);line-height:1.5}
.ed figcaption,.film figcaption{font-size:max(.875rem,14px);line-height:1.6;letter-spacing:.035em}
.add{flex-basis:2.75rem;width:2.75rem;height:2.75rem;min-width:44px;min-height:44px}
.film-player{position:relative}.film-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);min-height:48px;white-space:nowrap}
.film-play[hidden]{display:none}#factory-video-status:empty{display:none}
#factory-video-status{font-size:1rem;margin-top:.75rem}

.wallnote,.galhint,.b3-drag-hint,#dev .ticks button{font-size:max(.875rem,14px);line-height:1.5}

/* Release candidate: no Hero photograph; retain the approved text and geometry. */
.hero.hero--image-empty{background:linear-gradient(180deg,var(--ink) 0%,var(--ink) 86%,var(--paper) 100%)}

/* Homepage refinement 2026-10-27: functional type and generous standalone targets. */
body[data-page="index"] .eyebrow{font-size:.8125rem;line-height:1.5}
body[data-page="index"] .hdr .qbtn{font-size:.8125rem}
body[data-page="index"] .badge{font-size:.8125rem;min-width:22px;height:22px}
body[data-page="index"] main .link{display:inline-flex;align-items:center;min-height:44px;line-height:1.4}
@media(max-width:767px){
 body[data-page="index"] .hdr .qbtn{padding-inline:10px;gap:6px;letter-spacing:.02em}
 body[data-page="index"] .hdr .qbtn .lbl{display:inline}
 body[data-page="index"] .hdr .qbtn .quote-long{display:none}
 body[data-page="index"] .ftr a,body[data-page="index"] main a[href^="mailto:"],body[data-page="index"] main a[href^="https://wa.me/"]{display:inline-flex;align-items:center;min-height:44px;line-height:1.4}
}

/* Contact keeps its reserved row throughout the collapsed-navigation range. */
.whatsapp .wa-label{display:none}
@media(max-width:900px){
 :root{--hh:7rem}
 .hdr{padding-bottom:44px}
 .hdr .qbtn{font-size:13px;padding-inline:10px;gap:6px;letter-spacing:.02em}
 .hdr .qbtn .lbl{display:inline}
 .hdr .qbtn .quote-long{display:none}
 .hdr .badge{font-size:13px;min-width:22px;height:22px}
 .whatsapp{top:calc(var(--hh) - 44px);bottom:auto;left:var(--pad);right:auto;width:auto;height:44px;display:flex;gap:8px;background:transparent;color:var(--ink);z-index:55}
 .whatsapp svg{width:20px;height:20px}
 .whatsapp .wa-label{display:inline;font:500 14px/1.4 var(--sans)}
}

@media(max-width:900px){main [id]{scroll-margin-top:calc(var(--hh) + 16px)}}

/* Keep the Privacy contact-link focus ring clear of viewport edges during keyboard scrolling. */
body[data-page="privacy"] .prose a{scroll-margin-block:calc(var(--hh) + 16px) 24px}

/* R6: Contact labels use reading roles; field names, stages and validation stay intact. */
body[data-page="contact"] #wiz .wtop .mono{font:400 14px/1.5 var(--sans);letter-spacing:0;text-transform:none}
body[data-page="contact"] #wiz .wsteps>span{font:500 14px/1.4 var(--sans);letter-spacing:0;text-transform:none}
body[data-page="contact"] #wiz .wsteps>span>i{font-family:var(--mono)}
body[data-page="about"] .b2-photo figcaption,body[data-page="manufacturing"] .b2-photo figcaption,body[data-page="contact"] .b2-photo figcaption{font:400 14px/1.6 var(--sans);letter-spacing:0;text-transform:none}

/* Recovery: separate footer navigation into comfortable mobile tap targets. */
@media(max-width:700px){.ftr>div:nth-child(2){display:flex;flex-direction:column;align-items:flex-start;gap:4px}.ftr>div:nth-child(2)>a{display:inline-flex;align-items:center;min-height:44px}.ftr .contact>a{max-width:100%;overflow-wrap:anywhere}.mobile-nav{max-height:calc(100dvh - var(--hh));overflow-y:auto;overscroll-behavior:contain}.hdr .logo{flex-shrink:0}}

@media(max-width:700px){body .hdr,body .hdr.solid{background:var(--paper)!important;backdrop-filter:none}}
