.home-wrapper{min-height:100vh}.hero{background:linear-gradient(135deg, var(--color-cream) 0%, var(--color-cream-dark) 100%);padding:80px 0 120px;position:relative;overflow:hidden}.hero-container{grid-template-columns:1fr;align-items:center;gap:60px;display:grid}@media (min-width:992px){.hero-container{grid-template-columns:1fr 1fr}}.badge{background-color:var(--color-brown-light);color:var(--color-cream);border-radius:var(--border-radius-xl);text-transform:uppercase;letter-spacing:1px;margin-bottom:24px;padding:6px 14px;font-size:.85rem;font-weight:600;display:inline-block}.hero-title{color:var(--color-brown-dark);margin-bottom:24px;font-size:clamp(2.5rem,5vw,4rem);font-weight:800;line-height:1.1}.hero-title span{color:var(--color-brown);display:block}.hero-subtitle{color:var(--color-brown-light);max-width:500px;margin-bottom:40px;font-size:1.125rem}.hero-actions{flex-wrap:wrap;gap:16px;display:flex}.hero-image-wrapper{position:relative}.hero-image-placeholder{aspect-ratio:4/5;border-radius:var(--border-radius-lg);width:100%;box-shadow:var(--shadow-lg);background-color:#e4d8c5;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.placeholder-content{text-align:center;color:var(--color-brown);opacity:.5}.placeholder-content p{margin-top:12px;font-weight:600}.floating-card{border-radius:var(--border-radius-md);max-width:250px;box-shadow:var(--shadow-lg);padding:20px;animation:6s ease-in-out infinite float;position:absolute;bottom:-20px;left:-20px}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-15px)}to{transform:translateY(0)}}.rating{gap:4px;margin-bottom:8px;display:flex}.review{color:var(--color-brown-dark);margin-bottom:8px;font-size:.9rem;font-style:italic}.reviewer{color:var(--color-brown);font-size:.85rem;font-weight:600}.categories-preview{padding:80px 0}.section-header{justify-content:space-between;align-items:flex-end;margin-bottom:40px;display:flex}.section-header h2{color:var(--color-brown-dark);font-size:clamp(2rem,3vw,2.5rem)}.link-arrow{color:var(--color-brown);align-items:center;gap:8px;font-weight:600;display:inline-flex}.link-arrow:hover{color:var(--color-accent)}.category-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;display:grid}.category-card{background:var(--color-cream);border-radius:var(--border-radius-md);text-align:center;border:1px solid var(--border-color);transition:all var(--transition-normal);opacity:0;padding:16px;animation:.6s forwards fadeInUp;display:block}.category-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-brown-light);transform:translateY(-8px)}.category-image{aspect-ratio:1;background-color:var(--color-cream-dark);border-radius:var(--border-radius-sm);width:100%;margin-bottom:16px;padding:24px}.category-card h3{color:var(--color-brown-dark);font-size:1.25rem}.testimonials-section{background-color:var(--color-cream);border-top:1px solid var(--border-color);padding:80px 0}.section-header.center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.section-header.center p{color:var(--color-brown-light);max-width:600px;margin-top:16px}.testimonials-grid{grid-template-columns:1fr;gap:30px;margin-top:40px;display:grid}@media (min-width:768px){.testimonials-grid{grid-template-columns:repeat(3,1fr)}}.testimonial-card{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);background:#fff;padding:32px;transition:transform .3s;position:relative}.testimonial-card:hover{transform:translateY(-5px)}.quote-icon{color:#d843151a;position:absolute;top:24px;right:24px}.testimonial-card .rating{gap:4px;margin-bottom:16px;display:flex}.review-text{color:var(--color-brown-dark);margin-bottom:24px;font-size:1.1rem;font-style:italic;line-height:1.6}.reviewer-info h4{color:var(--color-brown);font-size:1rem;font-weight:700}.reviewer-info span{color:var(--color-brown-light);font-size:.875rem}.no-testimonials{text-align:center;color:var(--color-brown-light);border-radius:var(--border-radius-md);background:#fff;grid-column:1/-1;padding:40px}
