:root{--brown:#552f1d;--ink:#34291f;--muted:#8c8074;--line:#e4dcd2;--cream:#faf8f4;--sand:#eee7dc;--accent:#996b45}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:14px/1.5 Arial,sans-serif}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a8784c;outline-offset:4px}[hidden]{display:none!important}.skip{position:fixed;left:12px;top:-70px;background:var(--brown);color:white;padding:12px;z-index:10}.skip:focus{top:12px}.header{height:106px;max-width:1440px;margin:auto;padding:20px 54px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:block}.brand img{display:block;width:218px;height:auto}.header nav{display:flex;align-items:center;gap:34px;font-size:13px}.header .current{color:var(--brown);font-weight:600}.header nav a{border-left:1px solid var(--line);padding-left:32px}main{max-width:1440px;margin:auto;padding:0 54px}.intro{display:flex;justify-content:space-between;align-items:center;padding:44px 0 38px;gap:30px}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:600;color:var(--muted);margin:0 0 11px}.intro h1{font:normal 48px/1.13 Georgia,'Times New Roman',serif;letter-spacing:-1.3px;margin:0 0 15px}.intro h1 em{font-weight:normal;color:#906846}.intro-copy{font-size:14px;line-height:1.65;color:#7a6f64;margin:0}.intro-note{display:grid;gap:6px;font-size:11px;color:var(--muted);padding-right:8px}.intro-note strong{font-size:12px;color:var(--ink);font-weight:500}.sample-dots{display:flex;padding-left:4px;margin-bottom:5px}.sample-dots i{width:28px;height:28px;border-radius:50%;border:2px solid var(--cream);margin-left:-4px;background:#723e2a}.sample-dots i:nth-child(2){background:#bab284}.sample-dots i:nth-child(3){background:#37362e}.sample-dots i:nth-child(4){background:#a07686}.workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,1fr);gap:38px;align-items:start}.step-heading{display:flex;gap:10px;align-items:center;margin-bottom:18px;min-height:26px}.step-heading h2{font-size:15px;margin:0;font-weight:500}.step{font-size:10px;color:var(--accent);border:1px solid #d9c9b7;border-radius:50%;width:25px;height:25px;display:grid;place-items:center}.counter{margin-left:auto;font-size:10px;color:var(--muted)}.products{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-bottom:14px}.product{border:1px solid var(--line);background:transparent;border-radius:10px;color:#827364;padding:12px 3px 9px;min-height:91px;display:grid;justify-items:center;gap:8px;font-size:9px;line-height:1.3}.product svg{width:38px;height:35px;stroke:currentColor;fill:none;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.product[aria-pressed=true]{border-color:var(--brown);background:#f0e8df;color:var(--brown)}.product:hover{background:#f1ece5}.stage{position:relative;border:1px solid var(--line);border-radius:16px;background:radial-gradient(ellipse at 50% 38%,#fffefa 0,#f2ede4 80%);overflow:hidden;height:410px}.stage-top,.stage-bottom{position:absolute;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;z-index:2;pointer-events:none}.stage-top{top:16px}.stage-bottom{bottom:16px;font-size:10px;color:#9a8b7b}.stage-top button,.stage-bottom button{pointer-events:auto}.stage-label{font-size:9px;letter-spacing:1.3px;text-transform:uppercase;color:#8c7967}.stage-modes{display:flex;background:#ffffffc9;border:1px solid #e9e1d6;border-radius:7px;padding:3px}.stage-modes button{border:0;background:transparent;border-radius:4px;font-size:9px;padding:6px 8px;color:#867968}.stage-modes button[aria-pressed=true]{background:var(--brown);color:#fff}.stage-bottom button{font-size:10px;border:0;background:transparent;color:#786956;padding:5px}#viewer{position:absolute;inset:35px 0 25px;touch-action:none}#viewer canvas{width:100%;height:100%;display:block}#photo-view{position:absolute;inset:0;background:#f8f6f0}#result-image{width:100%;height:100%;object-fit:contain}.loading{position:absolute;inset:0;z-index:4;background:#f8f5efed;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;backdrop-filter:blur(7px)}.loading strong{font:24px Georgia,serif;margin:18px 0 0}.loading p{font-size:12px;color:var(--muted);line-height:1.8}.spinner{width:34px;height:34px;border:2px solid #dccbbb;border-top-color:var(--brown);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fallback{position:absolute;inset:65px 20px 45px;text-align:center;color:var(--muted);font-size:12px}.fallback img{height:65%;max-width:80%;object-fit:contain}.view-controls{display:flex;align-items:center;gap:6px;padding:12px 0 16px}.view-controls button{background:transparent;color:#8c7a69;border:1px solid transparent;border-radius:6px;padding:6px 9px;font-size:10px}.view-controls button[aria-pressed=true]{background:#eee6db;border-color:#ded0bf;color:var(--brown)}#dimensions{margin-left:auto;font-size:10px;color:var(--muted)}.selected-material{display:flex;gap:14px;align-items:center;border-top:1px solid var(--line);padding:17px 0}.selected-material>img{height:64px;width:70px;object-fit:cover;border-radius:8px}.selected-material .eyebrow{font-size:8px;letter-spacing:1.3px}.selected-material h3{margin:3px 0 3px;font-size:16px;font-weight:500}.selected-material p{font-size:11px;color:var(--muted);margin:0}.material-mark{margin-left:auto;color:#ad927b;font-size:24px}.actions{display:grid;grid-template-columns:1.3fr 1fr;gap:10px}.primary{background:var(--brown);color:#fff;border:1px solid var(--brown);border-radius:8px;min-height:47px;padding:12px 14px;font-size:11px;font-weight:500}.primary:hover:not(:disabled){background:#70462e}.primary span{font-size:19px;vertical-align:middle;margin-right:5px}.buy-link{display:grid;place-items:center;border:1px solid #c9b8a4;color:var(--brown);border-radius:8px;font-size:11px;padding:10px;text-align:center}.buy-link:hover{background:#f0e8df}.visual-note{font-size:10px;color:#a09587;line-height:1.7;margin:13px 0 0}.status{font-size:12px;color:#756452;margin:9px 0 0}.error{color:#8c2f24;background:#fbece7;border:1px solid #efc9bc;padding:12px 15px;border-radius:8px;font-size:12px}.result-actions{display:flex;justify-content:space-between;gap:12px;margin:10px 0}.text-button{font-size:11px;background:transparent;border:0;color:var(--brown);padding:5px 0;text-decoration:underline;text-underline-offset:3px}.search{display:flex;align-items:center;border:1px solid var(--line);background:#fff;border-radius:8px;gap:9px;padding:8px 12px;height:40px}.search span{font-size:24px;color:#a89987;line-height:1}.search input{border:0;outline:0;background:none;width:100%;font-size:11px;color:var(--ink)}.families{display:flex;gap:6px;flex-wrap:wrap;padding:12px 0 15px}.families button{font-size:9px;padding:5px 10px;border-radius:20px;background:transparent;border:1px solid var(--line);color:#8b7a67}.families button[aria-pressed=true]{background:#e9dfd1;border-color:#cbbbA6;color:var(--brown)}.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;max-height:615px;overflow-y:auto;padding:2px 7px 4px 2px;scrollbar-width:thin;scrollbar-color:#c8b8a4 transparent;overscroll-behavior:contain}.leather{position:relative;border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden;text-align:left;padding:0;color:var(--ink);display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s}.leather img{width:100%;aspect-ratio:1.48;object-fit:cover;display:block;background:#f2eee8}.leather-info{padding:9px 10px 11px;display:grid;gap:1px}.leather strong{font-size:11px;font-weight:600}.leather .color{font-size:10px;color:#897965;text-transform:capitalize}.leather .thickness{font-size:9px;color:#b1a394;margin-top:4px}.leather[aria-pressed=true]{border-color:var(--brown);box-shadow:0 0 0 1px var(--brown)}.leather[aria-pressed=true]::after{content:'✓';position:absolute;right:7px;top:7px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;color:white;background:var(--brown);font-size:11px}.leather:hover{border-color:#aa896c}.catalog-foot{font-size:9px;line-height:1.6;color:#a49787;text-align:center;margin:14px 0}.no-results{padding:35px 10px;text-align:center;color:var(--muted);font-size:12px}.no-results button{display:block;margin:12px auto;border:0;background:transparent;text-decoration:underline;color:var(--brown)}.how{border-top:1px solid var(--line);margin-top:42px;padding:28px 0 35px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px}.how span{font-size:9px;letter-spacing:1.1px;color:#ac9075}.how h2{font:22px/1.3 Georgia,serif;margin:8px 0}.how p{font-size:11px;color:var(--muted);line-height:1.8;max-width:320px}footer{display:flex;align-items:center;gap:30px;max-width:1440px;margin:auto;border-top:1px solid var(--line);padding:25px 54px 35px;color:var(--muted);font-size:10px}footer img{width:150px;height:auto;opacity:.8}footer a{margin-left:auto;color:var(--brown)}
@media(min-width:1500px){.stage{height:470px}.catalog-grid{max-height:680px}}@media(max-width:1100px){.header,main{padding-left:30px;padding-right:30px}.workspace{gap:24px;grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr)}.intro h1{font-size:41px}.product{font-size:8px;min-height:82px}.actions{grid-template-columns:1fr}.stage{height:390px}.catalog-grid{max-height:640px}.stage-top{left:14px;right:14px}.stage-label{font-size:8px}.intro-note{max-width:210px}.how{gap:30px}footer{padding-left:30px;padding-right:30px}}
@media(max-width:800px){.header{height:86px;padding:14px 20px}.brand img{width:178px}.header nav .current{display:none}.header nav a{padding:0;border:0;font-size:10px}main{padding:0 20px}.intro{padding:29px 0 26px}.intro h1{font-size:36px;max-width:420px}.intro .eyebrow{font-size:8px;letter-spacing:1px}.intro-copy{font-size:12px}.intro-note{display:none}.workspace{display:flex;flex-direction:column;gap:30px}.fitting-column,.catalog-column{width:100%}.stage{height:440px}.product{font-size:9px;min-height:80px}.products{gap:6px}.actions{grid-template-columns:1.2fr 1fr}.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:none;overflow:visible;padding:2px}.catalog-foot{text-align:left}.families button{font-size:11px;padding:7px 12px}.search{height:44px}.search input{font-size:16px}.step-heading h2{font-size:17px}.step-heading{margin-bottom:13px}.counter{font-size:11px}.how{gap:22px;margin-top:28px}.how h2{font-size:19px}.how p{font-size:10px}footer{padding:20px;flex-wrap:wrap;gap:16px}footer span{display:none}}
@media(max-width:480px){.header{height:78px;padding:12px 16px}.brand img{width:161px}main{padding:0 16px}.intro h1{font-size:33px;max-width:320px}.intro h1 em{display:block}.intro-copy{font-size:12px}.desktop-break{display:none}.intro{padding:26px 0 25px}.products{gap:4px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px}.product{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 5px;min-height:47px;font-size:9px;border-radius:7px}.product svg{width:27px;height:26px;flex:0 0 auto}.stage{height:355px;border-radius:13px}.stage-top{left:12px;right:12px;top:12px}.stage-label{font-size:7px;letter-spacing:1px}.stage-modes button{font-size:8px;padding:5px 6px}.stage-bottom{left:12px;right:12px;bottom:12px;font-size:8px}.stage-bottom button{font-size:8px}.view-controls{gap:3px}.view-controls button{font-size:9px;padding:7px 6px}#dimensions{font-size:9px}.selected-material>img{width:59px;height:55px}.selected-material h3{font-size:15px}.selected-material p{font-size:10px}.actions{grid-template-columns:1fr}.primary,.buy-link{min-height:46px;font-size:12px}.visual-note{font-size:10px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.leather strong{font-size:12px}.leather .color{font-size:11px}.leather .thickness{font-size:10px}.leather img{aspect-ratio:1.4}.how{grid-template-columns:1fr;gap:22px;padding-bottom:25px}.how p{font-size:12px;margin-bottom:0;max-width:none}.how h2{font-size:23px}.loading strong{font-size:21px}.loading p{font-size:11px}footer img{width:137px}footer a{font-size:10px}.result-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}.spinner{animation-duration:2s}}

.material-mark{display:flex;align-items:center;gap:7px;text-align:right;color:var(--brown);padding:5px;flex-shrink:0}.material-link-text{font-size:10px;line-height:1.4}.stage,.catalog-column{scroll-margin-top:16px}
