/* =========================================================
   GRUPPO GERARDI — Lucide Icons + Social
   @file    assets/css/icons-lucide-svg.css
   @version 2.1.0
   @date    2026-06-13

   Icone SVG locali con tecnica CSS mask.
   Lucide: https://lucide.dev/icons
   Social: https://simpleicons.org/ (via CDN)

   STRUTTURA FILE SVG ATTESA:
   assets/icons/lucide/[nome-icona].svg

   USO NEL PHP:
   <span class="icon icon-phone lg white"></span>
   ========================================================= */

/* ---------- BASE ---------- */
.icon {
    display: inline-block;
    background-color: currentColor;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    flex-shrink: 0;
}


/* Contenitore a cerchio per icone */
.icon-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 35px;          /* diametro esterno del cerchio */
    height: 35px;
    border-radius: 50%;
    background-color: transparent;
    border: 0.2px solid #5c5d5e !important;  /* bordo del colore dell'icona (es. bianco) */
    transition: all 0.2s ease;
}

/* Opzionale: al passaggio mouse */
.icon-circle:hover {
    background-color: rgba(90, 89, 89, 0.151);
    transform: scale(1.05);
}

/* Assicura che l'icona interna sia centrata e grande quanto vuoi */
.icon-circle .icon {
    width: 20px;
    height: 20px;
}

/* ---------- DIMENSIONI ---------- */
.icon.xs  { width: 12px !important; height: 12px !important; }
.icon.sm  { width: 16px !important; height: 16px !important; }
.icon.md  { width: 20px !important; height: 20px !important; }
.icon.lg  { width: 24px !important; height: 24px !important; }
.icon.xl  { width: 32px !important; height: 32px !important; }
.icon.xxl { width: 48px !important; height: 48px !important; }

/* ---------- COLORI ---------- */
.icon.orange { color: #c85c2e; }
.icon.white  { color: #ffffff; }
.icon.gray   { color: #aab0b5; }
.icon.dark   { color: #39414c; }

/* =========================================================
   NAVIGAZIONE
   ========================================================= */
.icon-phone  { -webkit-mask: url('/assets/icons/lucide/phone.svg') no-repeat center; mask: url('/assets/icons/lucide/phone.svg') no-repeat center; }
.icon-mail   { -webkit-mask: url('/assets/icons/lucide/mail.svg') no-repeat center; mask: url('/assets/icons/lucide/mail.svg') no-repeat center; }
.icon-menu   { -webkit-mask: url('/assets/icons/lucide/menu.svg') no-repeat center; mask: url('/assets/icons/lucide/menu.svg') no-repeat center; }
.icon-close  { -webkit-mask: url('/assets/icons/lucide/x.svg') no-repeat center; mask: url('/assets/icons/lucide/x.svg') no-repeat center; }
.icon-home   { -webkit-mask: url('/assets/icons/lucide/home.svg') no-repeat center; mask: url('/assets/icons/lucide/home.svg') no-repeat center; }
.icon-arrow-right { -webkit-mask: url('/assets/icons/lucide/arrow-right.svg') no-repeat center; mask: url('/assets/icons/lucide/arrow-right.svg') no-repeat center; }
.icon-arrow-left  { -webkit-mask: url('/assets/icons/lucide/arrow-left.svg') no-repeat center; mask: url('/assets/icons/lucide/arrow-left.svg') no-repeat center; }
.icon-chevron-right { -webkit-mask: url('/assets/icons/lucide/chevron-right.svg') no-repeat center; mask: url('/assets/icons/lucide/chevron-right.svg') no-repeat center; }
.icon-chevron-up  { -webkit-mask: url('/assets/icons/lucide/chevron-up.svg') no-repeat center; mask: url('/assets/icons/lucide/chevron-up.svg') no-repeat center; }
.icon-search   { -webkit-mask: url('/assets/icons/lucide/search.svg') no-repeat center; mask: url('/assets/icons/lucide/search.svg') no-repeat center; }

/* =========================================================
   SERVIZI
   ========================================================= */
.icon-cloud       { -webkit-mask: url('/assets/icons/lucide/cloud.svg') no-repeat center; mask: url('/assets/icons/lucide/cloud.svg') no-repeat center; }
.icon-headset     { -webkit-mask: url('/assets/icons/lucide/headset.svg') no-repeat center; mask: url('/assets/icons/lucide/headset.svg') no-repeat center; }
.icon-bolt        { -webkit-mask: url('/assets/icons/lucide/zap.svg') no-repeat center; mask: url('/assets/icons/lucide/zap.svg') no-repeat center; }
.icon-health      { -webkit-mask: url('/assets/icons/lucide/heart-pulse.svg') no-repeat center; mask: url('/assets/icons/lucide/heart-pulse.svg') no-repeat center; }
.icon-construction{ -webkit-mask: url('/assets/icons/lucide/hard-hat.svg') no-repeat center; mask: url('/assets/icons/lucide/hard-hat.svg') no-repeat center; }
.icon-electrical  { -webkit-mask: url('/assets/icons/lucide/wrench.svg') no-repeat center; mask: url('/assets/icons/lucide/wrench.svg') no-repeat center; }
.icon-computer    { -webkit-mask: url('/assets/icons/lucide/computer.svg') no-repeat center; mask: url('/assets/icons/lucide/computer.svg') no-repeat center; }
.icon-code        { -webkit-mask: url('/assets/icons/lucide/code.svg') no-repeat center; mask: url('/assets/icons/lucide/code.svg') no-repeat center; }
.icon-shield      { -webkit-mask: url('/assets/icons/lucide/shield.svg') no-repeat center; mask: url('/assets/icons/lucide/shield.svg') no-repeat center; }
.icon-trending-up { -webkit-mask: url('/assets/icons/lucide/trending-up.svg') no-repeat center; mask: url('/assets/icons/lucide/trending-up.svg') no-repeat center; }
.icon-database    { -webkit-mask: url('/assets/icons/lucide/database.svg') no-repeat center; mask: url('/assets/icons/lucide/database.svg') no-repeat center; }
.icon-server      { -webkit-mask: url('/assets/icons/lucide/server.svg') no-repeat center; mask: url('/assets/icons/lucide/server.svg') no-repeat center; }
.icon-calendar    { -webkit-mask: url('/assets/icons/lucide/calendar.svg') no-repeat center; mask: url('/assets/icons/lucide/calendar.svg') no-repeat center; }
.icon-file-text   { -webkit-mask: url('/assets/icons/lucide/file-text.svg') no-repeat center; mask: url('/assets/icons/lucide/file-text.svg') no-repeat center; }
.icon-mic         { -webkit-mask: url('/assets/icons/lucide/mic.svg') no-repeat center; mask: url('/assets/icons/lucide/mic.svg') no-repeat center; }
.icon-sun         { -webkit-mask: url('/assets/icons/lucide/sun.svg') no-repeat center; mask: url('/assets/icons/lucide/sun.svg') no-repeat center; }
.icon-gauge       { -webkit-mask: url('/assets/icons/lucide/gauge.svg') no-repeat center; mask: url('/assets/icons/lucide/gauge.svg') no-repeat center; }
.icon-network     { -webkit-mask: url('/assets/icons/lucide/network.svg') no-repeat center; mask: url('/assets/icons/lucide/network.svg') no-repeat center; }
.icon-video       { -webkit-mask: url('/assets/icons/lucide/video.svg') no-repeat center; mask: url('/assets/icons/lucide/video.svg') no-repeat center; }
.icon-pill        { -webkit-mask: url('/assets/icons/lucide/pill.svg') no-repeat center; mask: url('/assets/icons/lucide/pill.svg') no-repeat center; }
.icon-activity    { -webkit-mask: url('/assets/icons/lucide/activity.svg') no-repeat center; mask: url('/assets/icons/lucide/activity.svg') no-repeat center; }
.icon-stethoscope { -webkit-mask: url('/assets/icons/lucide/stethoscope.svg') no-repeat center; mask: url('/assets/icons/lucide/stethoscope.svg') no-repeat center; }
.icon-building-2  { -webkit-mask: url('/assets/icons/lucide/building-2.svg') no-repeat center; mask: url('/assets/icons/lucide/building-2.svg') no-repeat center; }
.icon-hammer      { -webkit-mask: url('/assets/icons/lucide/hammer.svg') no-repeat center; mask: url('/assets/icons/lucide/hammer.svg') no-repeat center; }
.icon-ruler       { -webkit-mask: url('/assets/icons/lucide/ruler.svg') no-repeat center; mask: url('/assets/icons/lucide/ruler.svg') no-repeat center; }
.icon-factory     { -webkit-mask: url('/assets/icons/lucide/factory.svg') no-repeat center; mask: url('/assets/icons/lucide/factory.svg') no-repeat center; }
.icon-cable       { -webkit-mask: url('/assets/icons/lucide/cable.svg') no-repeat center; mask: url('/assets/icons/lucide/cable.svg') no-repeat center; }
.icon-flame       { -webkit-mask: url('/assets/icons/lucide/flame.svg') no-repeat center; mask: url('/assets/icons/lucide/flame.svg') no-repeat center; }
.icon-router      { -webkit-mask: url('/assets/icons/lucide/router.svg') no-repeat center; mask: url('/assets/icons/lucide/router.svg') no-repeat center; }
.icon-thermometer { -webkit-mask: url('/assets/icons/lucide/thermometer.svg') no-repeat center; mask: url('/assets/icons/lucide/thermometer.svg') no-repeat center; }
.icon-camera      { -webkit-mask: url('/assets/icons/lucide/camera.svg') no-repeat center; mask: url('/assets/icons/lucide/camera.svg') no-repeat center; }

/* =========================================================
   CONTATTI
   ========================================================= */
.icon-map-pin     { -webkit-mask: url('/assets/icons/lucide/map-pin.svg') no-repeat center; mask: url('/assets/icons/lucide/map-pin.svg') no-repeat center; }
.icon-clock       { -webkit-mask: url('/assets/icons/lucide/clock.svg') no-repeat center; mask: url('/assets/icons/lucide/clock.svg') no-repeat center; }
.icon-send        { -webkit-mask: url('/assets/icons/lucide/send.svg') no-repeat center; mask: url('/assets/icons/lucide/send.svg') no-repeat center; }

/* =========================================================
   VALORI / LINEE GUIDA
   ========================================================= */
.icon-star        { -webkit-mask: url('/assets/icons/lucide/star.svg') no-repeat center; mask: url('/assets/icons/lucide/star.svg') no-repeat center; }
.icon-lightbulb   { -webkit-mask: url('/assets/icons/lucide/lightbulb.svg') no-repeat center; mask: url('/assets/icons/lucide/lightbulb.svg') no-repeat center; }
.icon-leaf        { -webkit-mask: url('/assets/icons/lucide/leaf.svg') no-repeat center; mask: url('/assets/icons/lucide/leaf.svg') no-repeat center; }
.icon-headphones  { -webkit-mask: url('/assets/icons/lucide/headphones.svg') no-repeat center; mask: url('/assets/icons/lucide/headphones.svg') no-repeat center; }
.icon-settings    { -webkit-mask: url('/assets/icons/lucide/settings.svg') no-repeat center; mask: url('/assets/icons/lucide/settings.svg') no-repeat center; }

/* =========================================================
   SOCIAL (SimpleIcons)
   ========================================================= */
.icon-linkedin   { -webkit-mask: url('/assets/icons/lucide/linkedin.svg') no-repeat center; mask: url('/assets/icons/lucide/linkedin.svg') no-repeat center; }
.icon-facebook   { -webkit-mask: url('/assets/icons/lucide/facebook.svg') no-repeat center; mask: url('/assets/icons/lucide/facebook.svg') no-repeat center; }
.icon-instagram  { -webkit-mask: url('/assets/icons/lucide/instagram.svg') no-repeat center; mask: url('/assets/icons/lucide/instagram.svg') no-repeat center; }
.icon-twitter    { -webkit-mask: url('/assets/icons/lucide/twitter.svg') no-repeat center; mask: url('/assets/icons/lucide/twitter.svg') no-repeat center; }
.icon-youtube    { -webkit-mask: url('/assets/icons/lucide/youtube.svg') no-repeat center; mask: url('/assets/icons/lucide/youtube.svg') no-repeat center; }

/* =========================================================
   UTILITY
   ========================================================= */
.icon-check-circle { -webkit-mask: url('/assets/icons/lucide/check-circle.svg') no-repeat center; mask: url('/assets/icons/lucide/check-circle.svg') no-repeat center; }
.icon-info         { -webkit-mask: url('/assets/icons/lucide/info.svg') no-repeat center; mask: url('/assets/icons/lucide/info.svg') no-repeat center; }
.icon-alert-triangle { -webkit-mask: url('/assets/icons/lucide/alert-triangle.svg') no-repeat center; mask: url('/assets/icons/lucide/alert-triangle.svg') no-repeat center; }
.icon-users        { -webkit-mask: url('/assets/icons/lucide/users.svg') no-repeat center; mask: url('/assets/icons/lucide/users.svg') no-repeat center; }
.icon-briefcase    { -webkit-mask: url('/assets/icons/lucide/briefcase.svg') no-repeat center; mask: url('/assets/icons/lucide/briefcase.svg') no-repeat center; }
.icon-handshake    { -webkit-mask: url('/assets/icons/lucide/handshake.svg') no-repeat center; mask: url('/assets/icons/lucide/handshake.svg') no-repeat center; }
.icon-award        { -webkit-mask: url('/assets/icons/lucide/award.svg') no-repeat center; mask: url('/assets/icons/lucide/award.svg') no-repeat center; }
.icon-sprout       { -webkit-mask: url('/assets/icons/lucide/sprout.svg') no-repeat center; mask: url('/assets/icons/lucide/sprout.svg') no-repeat center; }
.icon-globe        { -webkit-mask: url('/assets/icons/lucide/globe.svg') no-repeat center; mask: url('/assets/icons/lucide/globe.svg') no-repeat center; }
.icon-mail-open    { -webkit-mask: url('/assets/icons/lucide/mail-open.svg') no-repeat center; mask: url('/assets/icons/lucide/mail-open.svg') no-repeat center; }
.icon-quote        { -webkit-mask: url('/assets/icons/lucide/quote.svg') no-repeat center; mask: url('/assets/icons/lucide/quote.svg') no-repeat center; }

.icon-check_box_outline_blank { -webkit-mask: url('/assets/icons/lucide/square.svg') no-repeat center; mask: url('/assets/icons/lucide/square.svg') no-repeat center; }
.icon-check_box { -webkit-mask: url('/assets/icons/lucide/check-square.svg') no-repeat center; mask: url('/assets/icons/lucide/check-square.svg') no-repeat center; }
.icon-autorenew { -webkit-mask: url('/assets/icons/lucide/refresh-cw.svg') no-repeat center; mask: url('/assets/icons/lucide/refresh-cw.svg') no-repeat center; }
.icon-verified { -webkit-mask: url('/assets/icons/lucide/verified.svg') no-repeat center; mask: url('/assets/icons/lucide/verified.svg') no-repeat center; }


/* ---------- FORZA mask-size ---------- */
.icon {
    -webkit-mask-size: cover !important;
    mask-size: cover !important;
}