/* Text-only extension of the existing Skole columns and location block. */
.cmsj-home-family .elementor-widget-text-editor { margin-bottom: 20px; }
#main .cmsj-home-family .cmsj-family-group h3 {
    margin: 0 0 8px;
    color: #0a303a;
    font: 700 20px/1.35 CMSJCatamaran, sans-serif;
    letter-spacing: 0;
}
#main .cmsj-home-family .elementor-widget-text-editor p {
    margin: 0;
    color: #0a303a;
    font: 400 19px/1.55 CMSJCatamaran, sans-serif;
}
#main :is(.cmsj-family-link, .cmsj-home-location-copy) a {
    display: inline-flex;
    align-items: center;
    min-height: 48px;
    padding: 8px 0;
    color: #0a303a;
    font: 700 19px/1.4 CMSJCatamaran, sans-serif;
    text-decoration: underline;
    text-underline-offset: 5px;
    text-decoration-thickness: 1px;
}
#main :is(.cmsj-family-link, .cmsj-home-location-copy) a:hover {
    color: #ad2a10;
    text-decoration-thickness: 2px;
}
#main :is(.cmsj-family-link, .cmsj-home-location-copy) a:focus-visible {
    outline: 3px solid #ad2a10;
    outline-offset: 5px;
}
/* The longer age-group copy needs the existing stacked layout on tablets too. */
@media (min-width: 768px) and (max-width: 1024px) {
    #main .elementor-container:has(> .cmsj-home-family) { flex-wrap: wrap; }
    #main .elementor-container:has(> .cmsj-home-family) > .elementor-column { width: 100%; }
}
