:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#2b2420;background:#faf6ef}h1,h2,h3,.brand{font-family:Fraunces,Georgia,serif;font-optical-sizing:auto}*{box-sizing:border-box}body{margin:0;position:relative}body:before{content:"";position:fixed;top:-30px;right:-30px;bottom:-30px;left:-30px;z-index:-1;background-image:linear-gradient(#faf6ef99,#faf6ef99),url(/bazaar.jpg);background-blend-mode:normal,normal;background-size:cover;background-position:center;filter:saturate(.55) brightness(1.05) blur(4px)}.preview-banner{background:#fef3c7;color:#92400e;text-align:center;padding:.5rem 1rem;font-size:.85rem;border-bottom:1px solid #fde68a}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.85rem 1.25rem;background:#fffdf9;border-bottom:1px solid #ecdfcd}.topbar>.brand-block{grid-column:2;justify-self:center;text-align:center}.topbar>*:last-child{grid-column:3;justify-self:end}.brand{font-weight:700;font-size:1.6rem;letter-spacing:.01em;text-decoration:none;color:#2b2420}.brand-tagline{margin:.1rem 0 0;font-size:.75rem;color:#8a7862}.container{max-width:860px;margin:1.5rem auto;padding:0 1rem}.hero{background:#fffdf9;border:1px solid #ecdfcd;border-radius:14px;padding:1.5rem 1.25rem;margin-bottom:1rem;text-align:center}.hero h1{margin:0 0 .3rem}.hero p{margin:0}.card{background:#fffdf9;border:1px solid #ecdfcd;border-radius:12px;padding:1rem 1.25rem;margin-bottom:1rem}h1{font-size:1.9rem;font-weight:600;letter-spacing:-.01em;margin:.3rem 0}h2{font-size:1.3rem;font-weight:600}h2.section{margin-top:1.5rem}h3{font-size:1.05rem;font-weight:600;margin:0 0 .25rem}.search-box{margin:.75rem 0 1rem;padding:.6rem .85rem;font-size:1rem}.grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.list{list-style:none;padding:0}.row{display:flex;align-items:center}.row.spread{justify-content:space-between;gap:1rem}.gap{gap:.5rem}.muted{color:#8a7862;font-size:.9rem;margin:.2rem 0}.small{font-size:.8rem}.tagline{color:#4f7a5c;font-size:.8rem;text-transform:capitalize}.error{color:#b91c1c;font-size:.9rem}.plain{text-decoration:none;color:inherit;display:block}.cover{width:100%;height:130px;border-radius:8px;margin-bottom:.5rem;object-fit:cover}.thumb{width:60px;height:60px;border-radius:8px;object-fit:cover;flex-shrink:0}.tile{display:flex;align-items:center;justify-content:center;font-size:2.2rem}.thumb.tile{font-size:1.6rem}.item-main{display:flex;align-items:center;gap:.85rem}.item-main.clickable{background:none;border:none;padding:0;margin:0;text-align:left;color:inherit;font:inherit;cursor:pointer;white-space:normal}.price-col{text-align:right;display:flex;flex-direction:column;gap:.4rem;align-items:flex-end}label{display:block;margin:.6rem 0;font-size:.9rem}input{display:block;width:100%;margin-top:.25rem;padding:.5rem;border:1px solid #ddccb5;border-radius:6px;font:inherit}.inline{display:inline-flex;align-items:center;gap:.35rem;margin-right:1rem}.inline input{width:auto;display:inline-block;margin:0}fieldset.interest{border:1px solid #ecdfcd;border-radius:6px;margin:.6rem 0}button{padding:.5rem .9rem;border:1px solid #ddccb5;border-radius:6px;background:#3b2a20;color:#fff;font:inherit;cursor:pointer;white-space:nowrap}button:disabled{opacity:.6;cursor:default}button.link{background:none;border:none;color:#4f7a5c;padding:.5rem 0;cursor:pointer}.cart-summary{border:1px solid #4f7a5c33}.cart-line{padding:.4rem 0}.qty-btn{width:28px;height:28px;padding:0;line-height:1;border-radius:50%}.line-total{min-width:80px;text-align:right}.cart-total{margin:.5rem 0;padding-top:.5rem;border-top:1px solid #ecdfcd}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50}.modal{position:relative;background:#fffdf9;border-radius:14px;padding:1.5rem;width:100%;max-width:420px;box-shadow:0 20px 40px #0003}.modal-close{position:absolute;top:.5rem;right:.5rem;background:none;border:none;color:#8a7862;font-size:1.5rem;line-height:1;padding:.25rem .5rem}.modal-done{text-align:center}.modal.wide{max-width:480px}.gallery-main{width:100%;height:220px;border-radius:10px;object-fit:cover;font-size:3.5rem}.gallery-thumbs{display:flex;gap:.5rem;margin-top:.5rem}.gallery-thumb{padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:none;width:48px;height:48px}.gallery-thumb.active{border-color:#4f7a5c}.gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}
