*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#16a34a;--primary-hover:#15803d;--text-color:#333;--bg-color:#fff;--footer-bg:#1f2937;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--border-color:#374151}body,html{height:100%;width:100%;overflow-x:hidden}body{font-family:Arial,Helvetica,sans-serif;line-height:1.6;color:var(--text-color);background-color:var(--bg-color)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.min-h-screen{min-height:100vh}.flex-grow{flex-grow:1}h1{font-size:2.5rem;margin-bottom:1.5rem}h2{font-size:2rem;margin-bottom:1.25rem}h3{font-size:1.75rem;margin-bottom:1rem}h4{font-size:1.5rem;margin-bottom:.75rem}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}p{margin-bottom:1rem;font-size:1.125rem}@media (max-width:768px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{font-size:1rem}}a{color:var(--primary-color);transition:all .2s ease}a,a:hover{text-decoration:none}a:hover{color:var(--primary-hover)}header{background-color:var(--bg-color);box-shadow:0 2px 4px rgba(0,0,0,.1);padding:1rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}nav{display:flex;gap:2rem;align-items:center}.mobile-menu{display:none}@media (max-width:768px){nav{display:none}nav.active{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--bg-color);padding:1rem;box-shadow:0 2px 4px rgba(0,0,0,.1)}.mobile-menu{display:block}}footer{background-color:var(--footer-bg);color:var(--bg-color);padding:3rem 0}.grid{display:grid;grid-gap:2rem;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.button{display:inline-block;padding:.75rem 1.5rem;background-color:var(--primary-color);color:var(--bg-color);border-radius:.375rem;border:none;cursor:pointer;font-weight:600;transition:all .2s ease;text-align:center}.button:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.button:active{transform:translateY(0)}.product-card{border:1px solid #e5e7eb;border-radius:.5rem;overflow:hidden;transition:transform .2s ease;background:var(--bg-color)}.product-card:hover{transform:translateY(-4px);box-shadow:0 4px 6px rgba(0,0,0,.1)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.text-gray-300{color:var(--gray-300)}.text-gray-400{color:var(--gray-400)}.text-gray-500{color:var(--gray-500)}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.space-y-2>*+*{margin-top:.5rem}.space-y-4>*+*{margin-top:1rem}.border-t{border-top:1px solid var(--border-color)}.border-b{border-bottom:1px solid var(--border-color)}.star{color:#fbbf24;font-size:1.5rem;display:inline-block}.product-image{background-color:#f3f4f6;width:100%;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;color:var(--gray-500);margin-bottom:1rem;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.prose{max-width:65ch;margin:0 auto;line-height:1.75}.prose p{margin-bottom:1.5rem}.review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:2rem;gap:2rem;padding:2rem 0}@media (max-width:640px){.container{padding:0 1rem}.review-grid{grid-template-columns:1fr;gap:1.5rem}.product-image{aspect-ratio:4/3}}.hero{padding:4rem 0;background:linear-gradient(to right,var(--primary-color),var(--primary-hover));color:var(--bg-color);text-align:center}@media (max-width:768px){.hero{padding:3rem 0}}.form-group{margin-bottom:1.5rem}.input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:.375rem;font-size:1rem;transition:border-color .2s ease}.input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(22,163,74,.2)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .3s ease-in}