/* Local Tabler Icons shared by the public website and administration. */
.site-icon {
    display: block;
    width: 1em;
    height: 1em;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.site-header__menu-icon.site-icon {
    width: 1.1rem;
    height: 1.1rem;
}

.trust-bar__icon,
.stat-card__icon,
.service-card__icon,
.feature-row__icon,
.expertise-badge__mark,
.services-catalog-card__mark,
.service-feature-card__icon,
.faq-popular__mark,
.service-refusal__mark,
.trust-reasons__mark,
.contact-information__icon,
.contact-social__icon,
.site-footer__social-icon,
.site-footer__contact-icon,
.contact-success__mark,
.lead-thank-you__mark,
.consultation-modal__success-mark,
.legal-page__aside-mark {
    display: grid;
    place-items: center;
}

.trust-bar__icon > .site-icon {
    width: 1.2rem;
    height: 1.2rem;
    color: var(--color-navy-700);
}

.stat-card__icon > .site-icon,
.service-card__icon > .site-icon,
.feature-row__icon > .site-icon {
    width: 1.55rem;
    height: 1.55rem;
    color: var(--color-navy-700);
}

/* Public statistic, service, and expertise icons use the line icon itself;
   neutral gradient circles are reserved for real media placeholders. */
.stat-card__icon {
    width: 2.65rem;
    height: 2.65rem;
    background: transparent;
    color: var(--color-navy-700);
}

.service-card__icon,
.feature-row__icon {
    width: 2.55rem;
    height: 2.55rem;
    background: transparent;
    color: var(--color-accent);
}

.expertise-badge__mark > .site-icon {
    width: 1.8rem;
    height: 1.8rem;
    color: var(--color-surface);
}

.expertise-badge__mark {
    background: transparent;
}

.services-catalog-card__mark > .site-icon,
.service-feature-card__icon > .site-icon {
    width: 1.15rem;
    height: 1.15rem;
    color: currentColor;
}

.faq-popular__mark > .site-icon,
.service-refusal__mark > .site-icon,
.trust-reasons__mark > .site-icon {
    width: 1rem;
    height: 1rem;
}

.service-refusal__mark > .site-icon,
.trust-reasons__mark > .site-icon {
    width: 1.3rem;
    height: 1.3rem;
    color: var(--color-accent);
}

.trust-reasons__mark {
    width: 2.55rem;
    height: 2.55rem;
    background: transparent;
}

.resource-download-card__icon > .site-icon,
.service-resource-card__icon > .site-icon,
.article-pdf-card__icon > .site-icon {
    width: 1.45rem;
    height: 1.65rem;
    color: currentColor;
}

.contact-information__icon {
    color: var(--color-surface);
}

.contact-information__icon > .site-icon {
    width: 1.2rem;
    height: 1.2rem;
}

.contact-social__icon {
    width: 1.25rem;
    height: 1.25rem;
    background: none;
}

.site-footer__social-icon {
    width: 1rem;
    height: 1rem;
    background: none;
}

.site-footer__contact-icon {
    width: .85rem;
    height: .85rem;
    margin-top: .15rem;
    background: none;
}

.contact-success__mark > .site-icon,
.lead-thank-you__mark > .site-icon,
.consultation-modal__success-mark > .site-icon {
    width: 1.35rem;
    height: 1.35rem;
}

.legal-page__aside-mark > .site-icon {
    width: 1.15rem;
    height: 1.15rem;
}

.about-story__signature-mark > .site-icon {
    width: 1.2rem;
    height: 1.2rem;
    color: var(--color-accent);
}

.about-story__signature-mark {
    display: grid;
    flex: 0 0 2.8rem;
    place-items: center;
}

.faq-item__icon::before,
.faq-item__icon::after {
    display: none;
}

.faq-item__icon > .site-icon {
    transition: transform var(--transition-fast);
}

.faq-item[open] .faq-item__icon > .site-icon {
    transform: rotate(45deg);
}

.admin-sidebar__icon > .admin-icon {
    width: .9rem;
    height: .9rem;
}

.admin-sidebar__brand-mark > .site-icon {
    width: 1.2rem;
    height: 1.2rem;
    color: #fff;
}

.admin-auth-page__minimal-mark {
    display: grid;
    place-items: center;
    transform: none;
}

.admin-auth-page__minimal-mark > .site-icon {
    width: .95rem;
    height: .95rem;
    color: #fff;
}

.admin-media-picker__file-mark > .site-icon {
    width: .95rem;
    height: .95rem;
}

.admin-sidebar__brand-mark::before {
    display: none;
}

.admin-sidebar__group-chevron > .site-icon {
    width: .85rem;
    height: .85rem;
}

.admin-topbar__site-link > .site-icon {
    width: .85rem;
    height: .85rem;
}

.admin-module-card__icon > .site-icon,
.admin-dashboard__quick > a > .site-icon {
    width: 1.25rem;
    height: 1.25rem;
    color: var(--admin-accent);
}

.admin-module-card__arrow > .site-icon {
    width: .9rem;
    height: .9rem;
}

.admin-alert__icon > .site-icon {
    width: .78rem;
    height: .78rem;
}

.faq-item__icon > .site-icon {
    width: 1rem;
    height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
    .site-icon {
        transition: none;
    }
}
