.site-icon {
    display: inline-block;
    flex-shrink: 0;
    width: 1.05em;
    height: 1.05em;
    color: var(--logo-purple);
    vertical-align: -0.12em;
}

.site-icon svg {
    display: block;
    width: 100%;
    height: 100%;
}

.site-icon--sm {
    width: 0.95rem;
    height: 0.95rem;
}

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

.site-icon--lg {
    width: 1.35em;
    height: 1.35em;
}

.site-icon--on-brand {
    color: currentColor;
}

.site-heading--icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5em;
    flex-wrap: wrap;
}

.site-heading--icon.site-module__title,
.site-heading--icon.closing-block__title,
.site-heading--icon.intro-format__title,
.site-heading--icon.ilsg-members__title,
.site-heading--icon.register__follow-title {
    width: 100%;
}

.site-nav__menu a {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.site-nav__menu .site-icon,
.site-nav__legacy-group .site-icon {
    display: none;
}

.intro-format__when {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    flex-wrap: wrap;
}

.galen-copy__when,
.galen-copy__quote {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
}

.galen-copy__when .site-icon,
.galen-copy__quote .site-icon {
    margin-top: 0.15em;
    color: var(--logo-purple);
}

.closing-quote {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
}

.closing-quote .site-icon {
    margin-top: 0.15em;
    flex-shrink: 0;
}

.story-seasons__label {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.schedule-timezones__table th,
.schedule-timezones__table td {
    vertical-align: middle;
}

.schedule-timezones__table th {
    display: table-cell;
}

.schedule-timezones__table th .site-icon,
.schedule-timezones__table td .site-icon {
    margin-right: 0.4rem;
    vertical-align: -0.15em;
}

.schedule-timezones__table thead .site-icon {
    color: currentColor;
    opacity: 0.95;
}

.galen-copy .site-heading--icon {
    justify-content: flex-start;
}

.schedule-session__name,
.schedule-session__date,
.schedule-session__time {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.register-form__label {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.register-form__submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

.schedule-board__head span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.schedule-board__head .site-icon {
    color: currentColor;
    opacity: 0.95;
}

.register__instagram-link {
    gap: 0.55rem;
}

.closing-signoff {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

@media (max-width: 767px) {
    .schedule-timezones__table th .site-icon,
    .schedule-timezones__table td .site-icon {
        margin-right: 0.3rem;
    }
}

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