Membership structure with 2 renewal cycles?
This is a strong point of CiviCRM - there's no system out there that supports all of the MANY different quirky membership structures that exist in the world - but CiviCRM makes it easy to write an extension to implement your particular structure.  That said, it DOES require that you write custom code, or hire someone who does.  You can use civix to create a CiviCRM extension.  Most times, you can use hook_civicrm_post, in some special cases you might want to use hook_civicrm_alterCalculatedMembershipStatus.