.showMore {
    display: block;
    text-decoration: underline;
    cursor: pointer;
}
.showMore + input {
    display:none;
}
.showMore + input + * {
 
    max-height: 0;
    /*and eventually delay an overflow:auto; */
    overflow:hidden;
    transition: max-height 0.5s, overflow 0s;
}
.showMore + input:checked + * { 
    /* here comes the compromise, set a max-height that would for your usual contents*/
    max-height: 55em;
    overflow:auto;
    transition: max-height 1.2s, overflow 0.5s 0.5s;
}
