:root {
    /* Theme: LIGHT */
    --infuso-botanico-bg: #FFFFFF;
    --infuso-botanico-surface: #F9FAFB;
    --infuso-botanico-accent: #16A34A; /* Saturated Green for Herbal theme */
    --infuso-botanico-accent-hover: #15803D;
    --infuso-botanico-text: #111827;
    --infuso-botanico-subtext: #4B5563;
    
    /* Typography */
    --font-heading: 'Playfair Display', serif;
    --font-body: 'Lato', sans-serif;
    --heading-transform: uppercase;
    
    /* Shapes */
    --radius-shape: 999px; /* Pill */
}

/* Base resets */
* {
    box-sizing: border-box;
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Gallery Logic (Pure CSS) */
.infuso-slide {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out;
    z-index: 1;
}

#vis-1:checked ~ .infuso-stage-wrap .infuso-slide-1,
#vis-2:checked ~ .infuso-stage-wrap .infuso-slide-2,
#vis-3:checked ~ .infuso-stage-wrap .infuso-slide-3,
#vis-4:checked ~ .infuso-stage-wrap .infuso-slide-4 {
    opacity: 1;
    visibility: visible;
    z-index: 10;
}

/* Thumbnail Selection State */
.infuso-thumb-trigger {
    border-color: #E5E7EB;
    transition: border-color 0.2s ease;
}

#vis-1:checked ~ .infuso-thumb-strip label[for="vis-1"],
#vis-2:checked ~ .infuso-thumb-strip label[for="vis-2"],
#vis-3:checked ~ .infuso-thumb-strip label[for="vis-3"],
#vis-4:checked ~ .infuso-thumb-strip label[for="vis-4"] {
    border-color: var(--infuso-botanico-accent);
}

/* CTA Button Interaction (Preset A specifics) */
.infuso-buy-trigger {
    box-shadow: none; /* Flat base as requested */
}

.infuso-buy-trigger:hover {
    background-color: var(--infuso-botanico-accent-hover) !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); /* Hover shadow from Preset A */
    transform: translateY(-2px);
}

/* Review Item hover effect */
.infuso-opinion-item {
    transition: background-color 0.3s ease;
}
.infuso-opinion-item:hover {
    background-color: #F3F4F6;
}