@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&display=swap');
:root{--green:#176b45;--green-dark:#105236;--mint:#eaf5ee;--cream:#fffdf7;--ink:#203027;--muted:#68766e;--line:#e3e9e4;--red:#b42318}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Nunito,Arial,sans-serif}
a{color:inherit;text-decoration:none}
.site-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:14px max(20px,calc((100% - 1100px)/2));background:#fff;border-bottom:1px solid var(--line)}
.brand{font-weight:800;color:var(--green);font-size:1.12rem}
.cart-link{background:var(--mint);color:var(--green-dark);padding:9px 14px;border-radius:999px;font-weight:800}
.cart-link span{display:inline-grid;place-items:center;min-width:23px;height:23px;margin-left:4px;background:var(--green);color:#fff;border-radius:50%;font-size:.8rem}
.container{width:min(1100px,calc(100% - 32px));margin:0 auto}
.hero{margin:28px 0 38px;padding:42px 34px;border-radius:24px;background:linear-gradient(120deg,#e8f4e9,#f8f1d9)}
.hero h1{max-width:650px;margin:8px 0;font-size:clamp(2rem,5vw,3.2rem);line-height:1.08}
.hero p{max-width:650px;color:#526458}
.hero.compact{padding:28px}
.eyebrow{margin:0;color:var(--green);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.section-heading{display:flex;align-items:center;justify-content:space-between;margin:24px 0 16px}
h2{margin:4px 0;font-size:1.65rem}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
.product-card,.panel{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff}
.product-card img,.image-placeholder{display:block;width:100%;height:180px;object-fit:cover;background:#f0f3ef}
.image-placeholder{display:grid;place-items:center;color:var(--muted)}
.product-info{padding:16px}
.product-info h3{margin:0 0 5px}
.product-info p{min-height:38px;margin:4px 0 12px}
.price{display:block;margin:8px 0 14px;color:var(--green);font-size:1.1rem}
.muted{color:var(--muted)}
.small{font-size:.88rem}
.primary,.outline,.danger{border:0;border-radius:11px;padding:11px 16px;font:inherit;font-weight:800;cursor:pointer}
.primary{background:var(--green);color:white}
.primary:hover{background:var(--green-dark)}
.outline{border:1px solid var(--green);background:white;color:var(--green)}
.danger{background:#fff0ee;color:var(--red)}
.full{width:100%}
.cart-section{margin:46px 0;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff}
.cart-items{display:grid;gap:12px;margin:16px 0 22px}
.cart-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.cart-item-main{display:grid;gap:3px}
.quantity-controls,.button-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.quantity-btn{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:#f8faf8;font-size:1.2rem;cursor:pointer}
.remove-btn{border:0;background:none;color:var(--red);font:inherit;cursor:pointer}
.field-label{display:block;margin:14px 0 6px;font-weight:800}
input,textarea{width:100%;padding:12px;border:1px solid #cfd9d1;border-radius:10px;background:white;font:inherit;color:var(--ink)}
textarea{resize:vertical}
.cart-total{display:flex;justify-content:space-between;align-items:center;margin:20px 0;font-size:1.1rem}
.cart-total strong{color:var(--green);font-size:1.45rem}
.confirm-box{margin-top:16px;padding:16px;border-radius:12px;background:var(--mint)}
.hidden{display:none!important}
.site-footer{padding:26px;text-align:center;color:var(--muted);border-top:1px solid var(--line)}
.admin-container{max-width:760px}
.panel{padding:22px;margin:16px 0}
.panel h2,.panel h3{margin-top:0}
.message{min-height:1.3em;color:var(--green);font-weight:700}
.error-text{color:var(--red)}
.check-line{display:flex;align-items:center;gap:8px;margin:16px 0}
.check-line input{width:auto}
.admin-product-list{display:grid;gap:10px;margin:16px 0 40px}
.admin-product-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}
.admin-product-info{display:flex;align-items:center;gap:12px}
.admin-product-info img{width:62px;height:62px;object-fit:cover;border-radius:10px}
.admin-product-info p{margin:4px 0 0}
.text-link{color:var(--green);font-weight:800}
@media(max-width:600px){.hero{padding:28px 22px}.cart-section{padding:16px}.cart-row{align-items:flex-start;flex-direction:column}.admin-product-row{align-items:flex-start;flex-direction:column}.site-header{padding:12px 16px}}
