:root{--ink:#352c29;--rose:#a8575d;--cream:#fffaf5;--line:#eadfd5;--muted:#82776f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}.site-header{border-bottom:1px solid var(--line);background:#fffdf9;justify-content:space-between;align-items:center;height:84px;padding:0 max(24px,50vw - 590px);display:flex}.brand,.brand-logo{width:72px;height:72px;display:block}.brand-logo img{object-fit:contain;width:100%;height:100%;display:block}.header-caption{color:var(--rose);letter-spacing:.16em;font-size:24px;font-weight:800}.hero{max-width:1180px;margin:0 auto;padding:76px 24px 54px}.hero p{color:var(--rose);letter-spacing:.13em;margin:0 0 16px;font-size:11px;font-weight:800}.hero h1{letter-spacing:-.045em;max-width:760px;margin:0;font-family:Georgia,serif;font-size:clamp(42px,6vw,76px);font-weight:400;line-height:1.02}.hero span{color:var(--muted);margin-top:24px;font-size:13px;display:block}.notice{color:#725c53;background:#fff8f1;border:1px solid #ecd8cf;border-radius:13px;max-width:1132px;margin:0 auto;padding:14px 16px;font-size:12px;line-height:1.55}.controls{grid-template-columns:minmax(0,1fr) 230px;gap:10px;max-width:1180px;margin:34px auto 26px;padding:0 24px;display:grid}.controls label,.controls select{border:1px solid var(--line);background:#fffdf9;border-radius:13px;min-height:48px}.controls label{color:var(--rose);align-items:center;gap:10px;padding:0 14px;display:flex}.controls input{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.controls select{color:var(--ink);padding:0 13px}.catalog{max-width:1180px;margin:0 auto;padding:0 24px 80px}.family+.family{margin-top:54px}.family>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;margin-bottom:17px;padding-bottom:11px;display:flex}.family h2{margin:0;font-family:Georgia,serif;font-size:34px;font-weight:400}.family header span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:800}.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.card{border:1px solid var(--line);min-width:0;color:var(--ink);text-align:left;cursor:zoom-in;background:#fffdf9;border-radius:18px;padding:0 0 14px;transition:transform .16s,box-shadow .16s;overflow:hidden}:is(.card:hover,.card:focus-visible){outline:0;transform:translateY(-3px);box-shadow:0 15px 34px #472a231c}.photo{background:#fff;justify-content:center;height:205px;display:flex}.photo img{object-fit:contain;mix-blend-mode:multiply;width:auto;max-width:100%;height:100%}.card strong{color:var(--rose);letter-spacing:.09em;margin:14px 14px 4px;font-size:12px;display:block}.card small{min-height:31px;color:var(--muted);margin:0 14px;font-size:10px;line-height:1.4;display:block}footer{border-top:1px solid var(--line);color:var(--muted);background:#fffdf9;justify-content:center;align-items:center;gap:12px;padding:30px 24px;font-size:12px;display:flex}footer strong{color:var(--ink);font-family:Georgia,serif}footer span{color:var(--rose)}.lightbox{z-index:20;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.backdrop{background:#2d201bc2;border:0;position:absolute;inset:0}.lightbox article{z-index:1;background:#fffdf9;border-radius:22px;width:min(860px,100%);max-height:calc(100dvh - 40px);position:relative;overflow:auto;box-shadow:0 28px 80px #00000052}.lightbox article>img{object-fit:contain;background:#fff;width:100%;max-height:min(76dvh,760px);display:block}.lightbox article>div{padding:17px 19px 20px}.lightbox strong{color:var(--rose);letter-spacing:.1em;font-size:15px}.lightbox p{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.45}.close{z-index:2;color:var(--ink);cursor:pointer;background:#fffdf9f2;border:1px solid #ded1c7;border-radius:99px;padding:8px 11px;font-size:11px;font-weight:700;position:absolute;top:11px;right:11px}@media (max-width:760px){.site-header{height:76px;padding-inline:20px}.brand,.brand-logo{width:62px;height:62px}.header-caption{letter-spacing:.13em;font-size:14px}.hero{padding:48px 20px 35px}.hero p{font-size:9px}.notice{margin:0 14px;font-size:10px}.controls{grid-template-columns:1fr;margin:24px auto 22px;padding:0 14px}.catalog{padding:0 14px 55px}.family+.family{margin-top:39px}.family h2{font-size:29px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo{height:166px}.card strong{margin:11px 10px 3px;font-size:10px}.card small{margin:0 10px;font-size:8px}footer{text-align:center;display:grid}}
