:root{--bg:#f4f2ee;--surface:#fff;--primary:#173d33;--text:#182a25;--muted:#63716a;--accent:#d0c1a5;--border:#dddcd3;color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.35;cursor:not-allowed}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.app-header{background:var(--surface);height:72px;display:flex;justify-content:space-between;align-items:center;padding:0 max(22px,calc((100vw - 1260px)/2));border-bottom:1px solid var(--border);gap:20px}.brand{display:flex;gap:11px;align-items:center;font-size:13px;letter-spacing:.14em;font-weight:800}.brand-logo{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:var(--primary);color:#fff;font-size:22px;font-family:Georgia,serif;letter-spacing:0}.brand img{width:40px;height:40px;object-fit:contain}.small{font-size:12px;color:var(--muted)}.nav-item{font-size:13px;font-weight:650}.container{max-width:1280px;padding:0 24px;margin:auto}.hero{padding:74px 0 48px;max-width:840px}.eyebrow{text-transform:uppercase;color:var(--primary);font-weight:800;letter-spacing:.2em;font-size:11px}.hero h1{font-size:clamp(36px,5vw,72px);line-height:1.04;letter-spacing:-.05em;margin:18px 0}.hero p{font-size:17px;color:var(--muted);line-height:1.7}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.section-title{font-size:27px;letter-spacing:-.035em}.products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:14px 0 80px}.product-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:18px;overflow:hidden;transition:transform .15s,box-shadow .15s}.product-card:hover{transform:translateY(-2px);box-shadow:0 12px 34px #10282019}.card-image{position:relative;height:340px;background:#dfded7;display:flex;align-items:center;justify-content:center}.card-image img{width:100%;height:100%;object-fit:contain}.card-image .pill{position:absolute;left:16px;top:16px}.card-text{padding:20px}.card-text h3{font-size:21px;margin:0 0 8px;letter-spacing:-.03em}.card-text p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.pill{display:inline-block;background:#fffdef;padding:8px 10px;border-radius:100px;font-size:10px;font-weight:800;letter-spacing:.05em}.footer{padding:28px 0 44px;border-top:1px solid var(--border);color:var(--muted);font-size:13px}.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:12px;padding:11px 15px;font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px}.btn.primary{background:var(--primary);color:white;border-color:var(--primary)}.btn.outline{border-color:var(--primary);color:var(--primary);background:transparent}.btn.muted{background:var(--bg)}.btn.small-btn{padding:7px 9px;min-height:34px;font-size:12px}.btn:focus-visible,.product-card:focus-visible{outline:3px solid #5db392;outline-offset:2px}.detail-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(350px,1fr);min-height:calc(100vh - 72px)}.product-stage{position:sticky;top:0;height:calc(100vh - 72px);min-height:640px;background:linear-gradient(125deg,#f7f7f3,#dfe5db);display:flex;align-items:stretch;justify-content:center;overflow:hidden}.model-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;z-index:2}.model-poster{position:absolute;inset:10% 10% 12%;width:80%;height:78%;object-fit:contain;z-index:1;transition:opacity .5s}.model-poster.faded{opacity:0}.gallery-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:5;background:#edede7;touch-action:pan-y;user-select:none}.gallery-controls{position:absolute;z-index:12;bottom:24px;left:50%;transform:translateX(-50%);display:flex;align-items:center;max-width:calc(100% - 24px);gap:8px;border-radius:15px;padding:9px;background:#fffffff0;box-shadow:0 6px 25px #15291b22}.gallery-counter{font-size:12px;min-width:42px;text-align:center;font-weight:700}.gallery-dots{display:flex;gap:5px;align-items:center;max-width:180px;overflow-x:auto}.gallery-dot{border:0;border-radius:8px;padding:0;width:8px;height:8px;flex-shrink:0;background:#b7c3b9}.gallery-dot.selected{width:22px;background:var(--primary)}.stage-upper{position:absolute;z-index:7;top:24px;left:26px;right:26px;pointer-events:none}.stage-upper h1{font-size:clamp(25px,3vw,40px);letter-spacing:-.04em;margin:5px 0}.load-indicator{position:absolute;z-index:8;left:50%;top:48%;transform:translate(-50%,-50%);background:#fffffff0;border-radius:14px;padding:15px 18px;text-align:center;max-width:320px;box-shadow:0 6px 22px #15291b11}.load-indicator strong{display:block;margin-bottom:4px;font-size:13px}.progress-track{margin:11px auto 0;background:#dfe6de;height:4px;border-radius:20px;overflow:hidden;width:220px;max-width:100%}.progress-bar{height:100%;width:0%;background:var(--primary);transition:width .2s}.stage-action{position:absolute;z-index:8;right:24px;top:24px;display:flex;flex-direction:column;gap:7px}.side-panel{padding:30px 28px 80px;background:#fff;overflow:auto}.side-panel section{padding:18px 0;border-bottom:1px solid var(--border)}.side-panel .name{font-size:32px;letter-spacing:-.05em;line-height:1.2;margin:6px 0 10px}.side-panel p{line-height:1.68;color:var(--muted);font-size:13px;white-space:pre-wrap}.side-panel h3{font-size:14px}.controls-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.spec-table{display:grid;gap:7px;font-size:13px}.spec-table div{display:flex;gap:15px;justify-content:space-between;border-bottom:1px dashed var(--border);padding:6px 0}.spec-table strong{font-weight:600}.tag{padding:5px 9px;border-radius:7px;background:var(--bg);font-size:12px}.flex-wrap{display:flex;flex-wrap:wrap;gap:8px}.popup-layer{position:fixed;inset:0;z-index:80;background:#0e1a1599;display:grid;place-items:center;padding:25px}.popup-card{width:min(480px,100%);max-height:85vh;overflow:auto;background:white;border-radius:20px;padding:28px}.popup-card h2{font-size:24px}.popup-card p{line-height:1.8;white-space:pre-wrap;font-size:14px}.popup-card img{max-width:100%;border-radius:12px}.uploadbox{background:#f4f3f0;border:1px dashed #bbc9bc;border-radius:13px;padding:13px;display:block}.uploadbox input{max-width:100%}.err{color:#a23435}.ok{color:#157647}.loading-fail{font-size:13px;line-height:1.7}.contact-bar{display:flex;gap:8px;flex-wrap:wrap}.room-stage{background-size:cover;background-position:center}.room-stage canvas{cursor:move}.room-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.room-tools input[type=range]{width:110px}.room-tools label{font-size:12px}.room-panel{background:#f5f3f0;border-radius:12px;padding:12px;margin:10px 0}.notice{background:#fffbe6;color:#5b4b1f;border-radius:10px;padding:12px 14px;font-size:12px;line-height:1.6}
@media(max-width:950px){.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{grid-template-columns:1fr}.product-stage{height:65vh;min-height:420px;position:relative}.side-panel{padding:25px 22px}.hero{padding-top:45px}.card-image{height:270px}.stage-upper{top:14px;left:17px}.stage-action{right:14px;top:14px}}@media(max-width:560px){.products-grid{grid-template-columns:1fr}.card-image{height:370px}.container{padding:0 18px}.product-stage{min-height:390px;height:58svh}.stage-upper h1{font-size:25px}.side-panel .name{font-size:27px}.btn{font-size:12px;padding:9px}.gallery-controls{bottom:12px}.nav-item{display:none}.hero h1{font-size:43px}}
