:root{--ink:#1f2528;--muted:#6f7779;--paper:#f7f5f0;--surface:#fffefa;--line:#deddd6;--accent:#d85d3f;--soft-accent:#f2ded7;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--paper);min-width:320px;margin:0}a{color:inherit}.site-header,.site-footer{justify-content:space-between;align-items:center;max-width:1180px;margin:0 auto;padding:24px;display:flex}.site-header{border-bottom:1px solid var(--line)}.brand{letter-spacing:-.03em;align-items:center;gap:10px;font-size:1.05rem;font-weight:750;text-decoration:none;display:inline-flex}.brand-mark{background:var(--ink);width:30px;height:30px;color:var(--paper);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:1.1rem;display:grid}.header-note,.site-footer{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}main{max-width:1180px;margin:0 auto;padding:0 24px 72px}.hero{max-width:720px;padding:92px 0 82px}.eyebrow{color:var(--accent);letter-spacing:.16em;margin:0 0 14px;font-size:.72rem;font-weight:800}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.085em;margin-bottom:24px;font-size:clamp(3.4rem,8vw,6.8rem);font-weight:700;line-height:.9}h1 em{color:var(--accent);letter-spacing:-.06em;font-family:Georgia,Times New Roman,serif;font-weight:400}.hero-copy{max-width:430px;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.6}.section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px;display:flex}h2{letter-spacing:-.06em;margin-bottom:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1}.product-count{color:var(--muted);font-size:.85rem}.search-box{max-width:420px;margin-bottom:30px;display:block;position:relative}.search-box input{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--surface);font:inherit;border-radius:999px;outline:none;padding:14px 16px 14px 42px}.search-box input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--soft-accent)}.search-icon{color:var(--muted);font-size:1.3rem;line-height:1;position:absolute;top:50%;left:16px;transform:translateY(-52%)}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.product-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;overflow:hidden}.product-gallery{background:#e9e4dc}.product-image{aspect-ratio:1;object-fit:cover;background:#e9e4dc;width:100%;display:block}.image-placeholder{aspect-ratio:1;background:var(--soft-accent);color:var(--accent);place-items:center;font-family:Georgia,serif;font-size:3rem;display:grid}.product-body{padding:18px}.product-title{margin:0 0 8px;font-size:1.05rem;line-height:1.25}.product-description{min-height:42px;color:var(--muted);margin-bottom:18px;font-size:.9rem;line-height:1.45}.product-bottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.price{font-size:1.1rem;font-weight:800}.order-button{background:var(--ink);color:#fff;min-height:40px;font:inherit;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.order-button:hover{background:var(--accent)}.empty-state,.error-state,.loading-state{border:1px dashed var(--line);color:var(--muted);text-align:center;grid-column:1/-1;padding:72px 24px}.loading-state{border:0}.loading-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;margin-right:8px;animation:1s infinite alternate pulse;display:inline-block}@keyframes pulse{to{opacity:.25;transform:scale(.7)}}.site-footer{border-top:1px solid var(--line);margin-top:16px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:900px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.site-header,.site-footer{padding:18px 16px}.header-note,.site-footer span:last-child{display:none}main{padding:0 16px 48px}.hero{padding:64px 0 56px}h1{font-size:clamp(3rem,18vw,5rem)}.product-grid{grid-template-columns:1fr;gap:16px}.section-heading{flex-direction:column;align-items:start}}
