:root{--ink:#1d211e;--muted:#68706a;--paper:#fbf9f5;--line:#ded9d0;--accent:#183f32}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Plus Jakarta Sans",system-ui,sans-serif}button,input,textarea,select{font:inherit}button,.button{cursor:pointer;border:0;background:var(--ink);color:#fff;border-radius:0;padding:12px 18px;font-weight:600;text-decoration:none;display:inline-block}.outline{background:transparent;color:var(--ink);border:1px solid var(--line)}.text{background:transparent;color:var(--muted);padding:10px 0}.eyebrow{font-size:.68rem;letter-spacing:.16em;font-weight:600;color:var(--muted)}.site-nav{max-width:1120px;margin:auto;padding:24px clamp(20px,5vw,60px);display:flex;justify-content:space-between;align-items:center}.site-nav a{color:var(--ink);text-decoration:none}.brand{font-weight:600;letter-spacing:-.04em;font-size:1.15rem}.brand span{color:var(--accent)}.landing-hero,.landing-grid,.landing-page footer{max-width:1120px;margin:auto;padding-left:clamp(20px,5vw,60px);padding-right:clamp(20px,5vw,60px)}.landing-hero{padding-top:100px;padding-bottom:110px;background:linear-gradient(112deg,transparent 55%,#eee6d9 55%)}.landing-hero h1{font:500 clamp(3.5rem,9vw,8rem)/.9 "Playfair Display",serif;letter-spacing:-.065em;max-width:820px;margin:16px 0 28px}.landing-hero p{max-width:560px;color:var(--muted);line-height:1.8}.landing-hero .button{margin-top:22px}.landing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:80px;padding-bottom:80px}.landing-grid div{border-top:2px solid var(--accent);padding-top:16px}.landing-grid h2{font:500 1.7rem "Playfair Display",serif;margin:28px 0 8px}.landing-grid p{color:var(--muted);line-height:1.65;font-size:.9rem}.landing-page footer{padding-bottom:30px;color:var(--muted);font-size:.75rem}.guest{max-width:760px;margin:auto}.guest-hero{padding:64px 26px 36px;background:var(--accent);color:#fff}.guest-hero h1{font:500 clamp(2.8rem,9vw,4.9rem)/.92 "Playfair Display",serif;letter-spacing:-.05em;margin:12px 0}.guest-hero p{max-width:440px;line-height:1.6;color:#e3e7e3}.guest-hero small{color:#d4ddd7}.guest-logo{width:72px;max-height:72px;object-fit:contain;background:white;padding:8px;border-radius:10px}.guest-content{padding:26px}.search{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fff}.categories{display:flex;gap:9px;overflow:auto;padding:18px 0 24px;position:sticky;top:0;background:var(--paper);z-index:2}.categories a{white-space:nowrap;text-decoration:none;color:var(--ink);padding:10px 14px;border:1px solid var(--line);border-radius:999px;font-size:.82rem}.categories a:first-child{background:var(--accent);color:#fff;border-color:var(--accent)}.category{padding:24px 0;border-top:1px solid var(--line)}.category h2,.sheet h2{font:500 2rem "Playfair Display",serif;letter-spacing:-.04em;margin:7px 0 18px}.products{display:grid;gap:1px}.product{background:transparent;color:var(--ink);display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;text-align:left;padding:14px 0;border-bottom:1px solid var(--line);border-radius:0}.product.text-only{grid-template-columns:42px 1fr auto}.product img{width:64px;height:64px;object-fit:cover;border-radius:10px}.product-monogram,.sheet-mark{display:grid;place-items:center;background:#eee9df;color:var(--accent);font-family:"Playfair Display",serif}.product-monogram{width:42px;height:42px;border-radius:50%;font-size:.68rem}.product-copy{display:grid;gap:4px}.product-copy strong{font-size:.9rem}.product-copy small{font-size:.75rem;line-height:1.4;color:var(--muted)}.product-copy em{font-size:.64rem;font-style:normal;color:var(--accent);font-weight:600}.product>b{font-size:.82rem;white-space:nowrap}.product.sold{opacity:.45}.guest footer{padding:30px 26px 45px;color:var(--muted);font-size:.78rem;line-height:2}.guest footer small{font-size:.7rem}.sheet-backdrop{position:fixed;inset:0;background:#1b201e88;display:flex;align-items:end;z-index:5}.sheet{background:var(--paper);width:min(760px,100%);max-height:90vh;overflow:auto;border-radius:22px 22px 0 0;padding:24px;position:relative}.sheet .close{position:absolute;right:18px;top:18px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:50%;height:38px;width:38px;padding:0;font-size:24px}.sheet img{display:block;width:min(280px,100%);max-height:230px;object-fit:cover;border-radius:14px;margin:0 auto 24px}.sheet-mark{width:120px;height:120px;border-radius:50%;font-size:1.5rem;margin:0 auto 24px}.sheet>p{line-height:1.65;color:var(--muted)}.sheet-price{font-size:1.25rem}.sheet ul{padding:0;list-style:none}.sheet li{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line)}.admin-page{min-height:100vh}.login-card{max-width:420px;margin:60px auto;padding:32px;border:1px solid var(--line);background:#fff}.login-card h1,.editor-head h1{font:500 2.6rem "Playfair Display",serif;margin:10px 0}.login-card p{color:var(--muted);line-height:1.6}.login-card form,.admin label{display:grid;gap:8px;margin-top:16px}.login-card input,.admin input,.admin textarea,.admin select{width:100%;padding:12px;border:1px solid var(--line);background:#fff;border-radius:6px}.login-card button{margin-top:20px}.admin{max-width:1180px;margin:20px auto;padding:0 clamp(20px,5vw,60px) 70px;display:grid;grid-template-columns:220px 1fr;gap:44px}.admin aside{display:grid;align-content:start;gap:10px}.admin aside [data-id]{text-align:left;background:transparent;color:var(--ink);padding:10px;border-bottom:1px solid var(--line);border-radius:0}.editor-head{border-bottom:1px solid var(--line);margin-bottom:25px}.editor-head p,.hint{color:var(--muted);line-height:1.65;font-size:.85rem}.admin form>label{font-size:.82rem;font-weight:600}.admin textarea{min-height:80px;resize:vertical}.admin textarea[name=categories]{min-height:360px;font:12px/1.5 ui-monospace,SFMono-Regular,monospace}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.editor-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.not-found{max-width:640px;margin:100px auto;padding:20px}.not-found h1{font:500 3rem "Playfair Display",serif}@media(max-width:680px){.landing-hero{padding-top:70px;background:none}.landing-grid{grid-template-columns:1fr;padding-top:40px}.guest-hero{padding-top:42px}.guest-content{padding:18px}.admin{grid-template-columns:1fr;gap:28px}.admin aside{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.product{grid-template-columns:55px 1fr auto}.product img{width:55px;height:55px}}