.title {
    font-size: 11.5vw;
}

.banner-container {
    display: flex;
    justify-content: space-between;
    width: 90vw;
    gap: 5vw;
}

.banner-content {
    color: white;
    background-color: var(--primary-color);
    width: 30vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 1.5vw;
}

.banner-img {
    width: 55vw;
}

.banner-subtitle {
    font-size: 3vw;
    line-height: 1vw;
    transition: transform 0.5s ease-in-out;
}

.banner-content:hover .banner-subtitle {
    transform: translateX(2vw) scale(1);
}

.banner-title {
    font-size: 1.6vw;
}

.ready-container {
    display: flex;
    justify-content: space-between;
    margin: 5vw 0;
    width: 90vw;
}

.ready-img {
    width: 45vw;
}

.ready-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.ready-title {
    font-size: 3vw;
    line-height: 3vw;
}

.ready-p {
    margin: 3vw 0 0 3vw;
    font-size: 1.5vw;
}

.contact {
    padding: 10vw 5vw 5vw;
    background-color: black;
    width: 100%;
    color: white;
}

.contact-container {
    display: flex;
}

.contact-content {
    margin: 3vw 0;
    width: 50%;
}

.contact-form {
    display: flex;
    flex-direction: column;
    gap: 1vw;
    padding: 3vw 5vw;
    width: 50%;
}

.contact-title {
    font-size: 3vw;
}

.contact-subtitle {
    font-size: 1.3vw;
}

.contact-p {
    font-size: 1.4vw;
    margin: 3vw 0 3vw 3vw;
    line-height: 2.3vw;
}

.contact-form>input {
    font-size: 1.2vw;
    padding: 0.4vw 1vw;
}

.contact-form>textarea {
    font-size: 1.2vw;
    padding: 0.4vw 1vw;
    height: 8vw;
}

.contact-form>button {
    cursor: pointer;
    font-size: 1.3vw;
    padding: 0.5vw 0;
    text-align: center;
    width: 7.5vw;
    background-color: black;
    color: white;
    border: 0.1vw solid white;
}

.contact-form>input.disabled,
.contact-form>textarea.disabled {
    background-color: var(--input-color);
}

.contact-form>button.disabled {
    cursor: default;
    background-color: var(--light-color);
}

.read-watch-listen {
    font-size: 9vw;
}

.hub-container {
    display: flex;
    justify-content: space-between;
    width: 90vw;
    gap: 1vw;
    margin: 5vw 0;
}

.hub-img {
    width: 55vw;
}

.hub-content {
    display: flex;
    flex-direction: column;
    background-color: black;
    width: 34vw;
    color: white;
    padding: 3vw 2vw;
}

.hub-subtitle {
    font-size: 1.8vw;
    margin-bottom: 1vw;
}

.hub-title {
    font-size: 2.4vw;
    line-height: 3vw;
}

.hub-p {
    margin: 3vw 0 6vw;
    font-size: 1.2vw;
    line-height: 2vw;
}

.hub-button {
    padding: 1vw;
    border: 0.1vw solid white;
    color: white;
    width: 10vw;
    text-align: center;
    transition: transform 0.5s ease-in-out;
}

.hub-button:hover {
    transform: translateX(0vw) scale(1.1);
}