@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--ink:#20251f;--green:#315b43;--cream:#f6f5ef;--line:#e5e6df;--muted:#73796f}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;background:#fff}a{color:inherit;text-decoration:none}.top{height:76px;padding:0 7%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:5}.brand{font-size:28px;font-weight:700;letter-spacing:-2px}.brand span{color:#a4b78b}nav{display:flex;align-items:center;gap:28px;font-size:14px}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0}.outline,.dark,.primary{padding:12px 18px;border-radius:7px;font-weight:600}.outline{background:white;border:1px solid var(--line)}.dark{background:var(--ink);color:#fff}.primary{display:inline-block;background:var(--green);color:#fff;text-align:center}.hero{background:var(--cream);padding:75px 10%;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;min-height:440px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--green)}h1{font:700 clamp(40px,5vw,64px)/1.08 'Playfair Display',serif;letter-spacing:-1.5px;margin:16px 0}h1 em{color:var(--green)}.hero p:not(.eyebrow){max-width:490px;line-height:1.8;color:#666;margin-bottom:26px}.hero-art{display:flex;justify-content:center}.art-card{width:min(330px,90%);height:270px;background:#dce4d4;border-radius:4px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(2deg);box-shadow:18px 18px 0 #c4d0bd}.art-card span{font-size:28px;font-weight:700;letter-spacing:-2px}.art-card strong{font:700 34px/1.05 'Playfair Display';color:#315b43}.art-card small{letter-spacing:1px;font-size:9px}.section{padding:70px 8%}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}h2{font:700 34px 'Playfair Display';margin:8px 0 0}.section-head input{width:240px}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.product{border:1px solid var(--line);border-radius:9px;overflow:hidden}.product img,.placeholder{width:100%;height:190px;object-fit:cover;background:#eff1eb}.placeholder{display:grid;place-items:center;color:#8b9b83;font-size:42px}.product-info{padding:15px}.product-info h3{font-size:15px;margin:0 0 7px}.price{font-weight:700;color:var(--green)}.stock{font-size:12px;color:var(--muted);margin:8px 0 12px}.product button{width:100%;padding:10px;border-radius:6px;background:#edf2eb;color:var(--green);font-weight:700}.product button:disabled{opacity:.4;cursor:not-allowed}.how{background:#f8f8f5;padding:65px 9%;text-align:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:35px;text-align:left}.steps article{background:#fff;padding:25px;border-radius:8px}.steps article>b{color:#78906f;font-size:13px}.steps h3{margin-bottom:8px}.steps p,.muted{color:var(--muted);font-size:13px;line-height:1.6}footer{padding:28px 8%;display:flex;justify-content:space-between;color:var(--muted);font-size:13px}footer b{font-size:20px;color:var(--ink)}.overlay{position:fixed;inset:0;background:#1119;z-index:10;display:grid;place-items:center;padding:18px}.hidden{display:none!important}.modal{position:relative;background:#fff;border-radius:12px;padding:28px;width:min(480px,100%);max-height:90vh;overflow:auto}.modal.wide{width:min(850px,100%)}.x{position:absolute;right:18px;top:12px;background:none;font-size:27px;color:#777}.modal h2{font-size:27px;margin:0 30px 20px 0}.total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:18px 0;margin-top:15px}.full{width:100%}label{display:block;font-size:13px;font-weight:600;margin:14px 0}label input,label textarea,.product-form input,.filter select,.section-head input{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:6px;margin-top:7px;outline-color:#78906f}textarea{resize:vertical}.cart-row{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.qty button{background:#edf2eb;border-radius:4px;padding:4px 9px;margin:0 5px}.center{text-align:center}.success{margin:auto auto 15px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#e7f1e6;color:var(--green);font-size:25px}.order-code{display:block;font-size:25px;letter-spacing:2px;color:var(--green);padding:12px;background:#f3f6f0;margin:15px}.staff-head{display:flex;justify-content:space-between;align-items:center}.staff-head h2{margin:0}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:20px 0}.tab{padding:10px 14px;background:white;color:#666}.tab.active{color:var(--green);border-bottom:2px solid var(--green);font-weight:700}.order-card{border:1px solid var(--line);padding:15px;border-radius:8px;margin:12px 0}.order-top{display:flex;justify-content:space-between;gap:12px}.order-code-small{font-weight:700;color:var(--green)}.status{font-size:11px;background:#f1f3ed;padding:5px 8px;border-radius:20px}.order-card p{font-size:13px;line-height:1.6;color:#62685f}.actions{display:flex;flex-wrap:wrap;gap:7px}.actions button{padding:8px 11px;border-radius:5px;background:#edf2eb;color:var(--green);font-size:12px;font-weight:700}.actions .danger{background:#faeeee;color:#a33}.product-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.product-form input{margin:0}.product-form button{grid-column:1/-1}.admin-product{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line);font-size:13px}.admin-product button{background:#faeeee;color:#a33;border-radius:5px;padding:6px 9px}.filter{max-width:230px}@media(max-width:800px){.top{padding:0 5%;height:auto;min-height:70px}nav{gap:10px}nav>a{display:none}.hero{padding:55px 7%;grid-template-columns:1fr}.hero-art{display:none}.products{grid-template-columns:repeat(2,1fr);gap:12px}.product img,.placeholder{height:145px}.section{padding:50px 5%}.steps{grid-template-columns:1fr}.section-head{align-items:start;gap:15px;flex-direction:column}.section-head input{width:100%}}@media(max-width:430px){.brand{font-size:23px}nav{gap:6px}nav button{padding:10px;font-size:12px}.products{grid-template-columns:1fr 1fr}.product-info{padding:10px}.product-info h3{font-size:13px}footer{gap:10px;flex-direction:column}.product-form{grid-template-columns:1fr}}
