.featured main { display: inline-block; vertical-align: top; } .featured hgroup { display: flex; flex-direction: column; justify-content: center; align-items: center; } .featured header { display: flex; align-items: center; } .featured img { width: auto; height: auto; max-width: 40%; max-height: 30vh; } .featured hgroup { flex-grow: 1; padding-left: 20px; } /* Responsive adjustments */ @media (max-width: 768px) { .featured header { flex-direction: column; align-items: center; } .featured hgroup { padding-left: 0; padding-top: 20px; } }