/* ########## Término padre ########## */
:is(.Category, .Subterm) hr {
    margin: 5rem auto;
    background-color: #5b606880;
}

.Category {
    max-width: 56rem;
}

.Category-hero {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    min-height: 22.5rem;
    padding: 0.625rem 1rem;
    margin-bottom: 2.5rem;
}

.Category-picture {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, rgba(40, 47, 56, 0.00) 60%, #282F38 90%);
}

.Category-picture img {
    position: absolute;
    z-index: -1;
    inset: 0;
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.Category-name {
    position: relative;
    width: 100%;
    padding-right: 15%;
    margin-bottom: 0;
}

.Category-info {
    display: grid;
    gap: 3.5rem;
}

.Category-certificate img {
    width: 10.2rem;
    height: auto;
    margin: 0 auto;
    aspect-ratio: 1;
    object-fit: contain;
}

.Category .Subterm {
    display: grid;
    gap: 5rem;
}

.Category .Subterm-card {
    display: grid;
    gap: 3.62rem;
}

.Category .Subterm-picture img {
    width: 19.375rem;
    height: auto;
    margin: 0 auto;
    aspect-ratio: 1;
}

.Category .Subterm-name {
    margin-bottom: 0.75rem;
}

.Category .Subterm-btn {
    margin-top: 2.5rem;
}

.Category .placeholder-img {
    margin-bottom: -2rem;
}

/* ########## Término hijo ########## */
.Subterm {
    max-width: 56rem;
    padding-top: 2.5rem;
    padding-bottom: 6.25rem;
}

.Subterm-data {
    display: grid;
    gap: 3.5625rem;
}

.Subterm-picture img {
    width: 19.375rem;
    height: auto;
    margin: auto;
    aspect-ratio: 1;
    object-fit: cover;
}

.Subterm-title {
    margin-bottom: 0.75rem;
}

.Subterm-fathersName {
    margin-bottom: 2rem;
}

.Subterm-description p:last-child {
    margin-bottom: 0;
}

.Product {
    display: grid;
    gap: 5rem;
}

.Product-card {
    display: grid;
    gap: 3rem;
}

.Product-card picture img {
    width: 100%;
    max-width: 15.9375rem;
    height: auto;
    object-fit: cover;
    aspect-ratio: 1;
}

.Product-shortDesc {
    margin-bottom: 0.5rem;
}

.Product-btn {
    margin-top: 2.5rem;    
}

@media (width > 48em) {
     /*########## Término padre ########## */
    :is(.Category, .Subterm) hr {
        margin: 6.25rem 0;
    }
    
    .Category .Category-hero {
        padding: 1.25rem 2rem;
        margin-bottom: 5rem;
    }
    
    .Category .Category-info {
        grid-template-columns: 1fr auto;
        gap: 5.69rem;
        align-items: center;
    }
    
    .Category .Subterm-card {
        grid-template-columns: 1fr 48.9%;
        align-items: center;
    }
    
    .Category .Subterm-card:nth-child(2n) {
        grid-template-columns: 48.9% 1fr;
    }
    
    .Category .Subterm-picture img {
        width: 100%;
    }
    
    .Category .Subterm-card:nth-child(2n) .Subterm-info {
        order: -1;
    }

    .Category .placeholder-img {
        margin-bottom: 0;
    }
    
    /* ########## Término hijo ########## */
    .Subterm-picture img {
        width: 25rem;
    }
    
    .Subterm-data {
        grid-template-columns: 1fr 48.9%;
    }
    
    .Product {
        gap: 6.25rem;
    }
    
    .Product-card {
        grid-template-columns: 28.5% 1fr;
        align-items: center;
    }
    
    .Subterm {
        padding-top: 5rem;
        padding-bottom: 7.5rem;
    }
}