*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f4eee5;--bg-alt: #faf6ef;--accent: #6c4f32;--accent-dark: #4d3824;--accent-soft: #d2bba3;--border-soft: #cfc2b2;--text-main: #3a2e23;--text-muted: #7c6c5f;--danger: #9a3a3a;--card-radius: 14px;--shadow-soft: 0 14px 30px rgba(0, 0, 0, .06)}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at top left,#f6efe3 0,#e5ded2 45%,#d8d0c3);color:var(--text-main)}.app{min-height:100vh;padding:32px 16px 40px}.layout{max-width:1320px;margin:28px auto 0;display:grid;grid-template-columns:minmax(0,2.2fr) minmax(360px,1fr);gap:28px}@media(max-width:800px){.layout{grid-template-columns:1fr}}.header{width:100%;margin:0 0 16px;padding:18px 26px 20px;text-align:center;font-family:Playfair Display,serif;color:var(--text-main);background:#f4eee5f5;border:2px solid var(--accent-dark);border-radius:18px;box-shadow:var(--shadow-soft)}.header h1{font-size:2.1rem;letter-spacing:.18em;font-weight:700;text-transform:uppercase}.header p{font-size:.95rem;margin-top:6px;color:var(--text-muted);font-weight:400;letter-spacing:.18em;text-transform:uppercase}.header:after{content:"✦  ✦  ✦";font-family:Playfair Display,serif;font-size:.8rem;color:var(--accent-dark);display:block;margin-top:10px}.granny-house{display:block;max-width:1320px;margin:16px auto 0;border-radius:20px;overflow:hidden;text-decoration:none;color:inherit;background-image:url(/granny-house.jpg);background-size:cover;background-position:center;position:relative;min-height:180px}.granny-house-overlay{background:linear-gradient(to right,#0000008c,#00000040);height:100%;padding:22px 26px;display:flex;flex-direction:column;justify-content:center;color:#fdf8f0}.granny-house-overlay h2{font-family:Playfair Display,serif;font-size:1.6rem;margin-bottom:6px}.granny-house-overlay p{font-size:.95rem}.products,.cart{background:#faf6effa;border-radius:24px;padding:24px 24px 20px;box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.products h2,.cart h2{font-size:.95rem;text-transform:uppercase;letter-spacing:.18em;color:var(--text-muted);margin-bottom:16px;font-family:Playfair Display,serif}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}@media(min-width:1100px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.product-card{background:var(--bg-alt);border-radius:18px;padding:16px 16px 18px;border:1px solid var(--border-soft);display:flex;flex-direction:column;justify-content:flex-start;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;min-height:260px}.product-card:hover{transform:translateY(-2px);box-shadow:0 10px 20px #0000000d;border-color:var(--accent-soft)}.product-card h3{font-size:1rem;margin-bottom:6px;font-family:Playfair Display,serif}.product-card p{font-size:.95rem;color:var(--text-muted);margin-bottom:10px}.product-link{text-decoration:none;color:inherit}.product-image{width:100%;height:210px;object-fit:cover;border-radius:12px;margin-bottom:12px;border:1px solid var(--border-soft)}.product-image-large{display:block;width:70%;max-width:320px;height:auto;object-fit:cover;margin:0 auto 16px;border-radius:12px;border:1px solid var(--border-soft)}.button-row{display:flex;justify-content:space-between;gap:10px;margin-top:10px}.add-to-cart-btn{flex:1;padding:7px 10px;border-radius:999px;border:none;cursor:pointer;background:linear-gradient(135deg,var(--accent-soft),var(--accent));color:#fff;font-size:.85rem;text-transform:uppercase;letter-spacing:.07em;transition:transform .15s,box-shadow .15s}.add-to-cart-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px #0000001f}.buy-now-btn{flex:1;padding:7px 10px;border-radius:999px;text-decoration:none;text-align:center;background:linear-gradient(135deg,#b89270,#6c4f32);color:#fff;font-size:.85rem;text-transform:uppercase;letter-spacing:.07em;transition:transform .15s,box-shadow .15s}.buy-now-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px #0000001f}.checkout-button{display:inline-block;margin-top:10px;padding:10px 18px;background:linear-gradient(135deg,var(--accent-soft),var(--accent));color:#fff;border-radius:999px;text-decoration:none;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase}.checkout-button:hover{filter:brightness(1.05)}.cart p{color:var(--text-muted);font-size:.95rem}.cart ul{list-style:none;margin-top:8px;display:flex;flex-direction:column;gap:10px;max-height:360px;overflow-y:auto;padding-right:4px}.cart-item{display:grid;grid-template-columns:1.7fr auto auto;gap:10px;align-items:center;padding:10px;border-radius:12px;background:#f6efe3;border:1px solid #e1d5c2}.cart-item>div:first-child{min-width:0}.cart-item strong{font-size:.95rem}.cart-item div div{font-size:.8rem;color:var(--text-muted)}.cart-controls{display:inline-flex;align-items:center;gap:6px}.cart-controls button{width:24px;height:24px;border-radius:999px;border:1px solid var(--border-soft);background:#fdf8f0;cursor:pointer;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;transition:background .1s ease,border-color .1s ease}.cart-controls button:hover{background:#f2e2cd;border-color:var(--accent-soft)}.cart-controls span{min-width:18px;text-align:center;font-size:.9rem}.cart-line-total{font-weight:600;font-size:.95rem}.remove-btn{margin-left:6px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;border:none;background:transparent;color:var(--danger);cursor:pointer}.totals{margin-top:12px;padding-top:10px;border-top:1px dashed #d1c3b1;display:flex;flex-direction:column;gap:4px;font-size:.9rem}.totals>div{display:flex;justify-content:space-between}.total-row{margin-top:6px;font-size:1rem}.cart ul::-webkit-scrollbar{width:6px}.cart ul::-webkit-scrollbar-thumb{background:#cbb79b;border-radius:999px}@media(max-width:600px){.header h1{font-size:1.7rem}.header p{font-size:.85rem}}.checkout-main-btn{margin-top:14px;width:100%;padding:10px 14px;border-radius:999px;border:none;cursor:pointer;background:linear-gradient(135deg,var(--accent-soft),var(--accent-dark));color:#fff;font-size:.95rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;box-shadow:0 8px 18px #0000001f;transition:transform .12s ease,box-shadow .12s ease}.checkout-main-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px #00000029}.checkout-main-btn:disabled{opacity:.5;cursor:not-allowed}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
