/* ============================================
   ICON SYSTEM - Sobres et Minimalistes
   Style inspiré de melaniemessier.ca
   ============================================ */

:root {
    --icon-color-primary: #62665B;
    --icon-color-secondary: #7C9885;
    --icon-color-accent: #C77D5C;
    --icon-size-small: 24px;
    --icon-size-medium: 40px;
    --icon-size-large: 60px;
}

/* Base Icon Container */
.icon-wrapper {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.icon-wrapper svg {
    width: 100%;
    height: 100%;
    fill: currentColor;
}

/* Icon Sizes */
.icon-small {
    width: var(--icon-size-small);
    height: var(--icon-size-small);
}

.icon-medium {
    width: var(--icon-size-medium);
    height: var(--icon-size-medium);
}

.icon-large {
    width: var(--icon-size-large);
    height: var(--icon-size-large);
}

/* Icon in Circles (like reference site) */
.icon-circle {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(222, 226, 218, 0.3);
    margin: 0 auto 1.5rem;
}

.icon-circle svg {
    width: 30px;
    height: 30px;
    fill: var(--icon-color-primary);
}

/* Icon in Square Container */
.icon-square {
    width: 60px;
    height: 60px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(222, 226, 218, 0.3);
    margin: 0 auto 1.5rem;
}

.icon-square svg {
    width: 30px;
    height: 30px;
    fill: var(--icon-color-primary);
}

/* Hover Effects */
.icon-circle:hover,
.icon-square:hover {
    background: rgba(222, 226, 218, 0.5);
    transform: translateY(-2px);
    transition: all 0.3s ease;
}

/* Specific Icon Styles */
.icon-primary svg {
    fill: var(--icon-color-primary);
}

.icon-secondary svg {
    fill: var(--icon-color-secondary);
}

.icon-accent svg {
    fill: var(--icon-color-accent);
}
