/* Heading Block Styles */
.heading-block {
    padding: 60px 0;
}

.heading-block__container {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
    min-height: 400px; /* Increased minimum height */
}

.heading-block__left {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-height: 350px; /* Increased minimum height */
}

.heading-block__left-content {
    padding-right: 30px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.heading-block__heading {
    font-size: 45px;
    font-weight: 400;
    line-height: 1.2;
    margin-bottom: 30px;
    color: #000;
}

.heading-block__subheading {
    font-size: 1.2rem;
    line-height: 1.6;
    color: #000;
    margin-bottom: 0;
    flex-grow: 1;
}

.heading-block__subheading p {
    margin-bottom: 15px;
}

.heading-block__subheading p:last-child {
    margin-bottom: 0;
}

.heading-block__subheading ul,
.heading-block__subheading ol {
    margin: 15px 0;
    padding-left: 20px;
}

.heading-block__subheading li {
    margin-bottom: 8px;
}

.heading-block__subheading strong {
    font-weight: 600;
    color: #000;
}

.heading-block__subheading a {
    color: #0970B8;
    text-decoration: none;
    transition: color 0.3s ease;
}

.heading-block__subheading a:hover {
    color: #F7931D;
    text-decoration: underline;
}

/* Button Styles */
.heading-block__button-wrapper {
    margin-top: 30px;
    display: flex;
    justify-content: flex-start;
}

.heading-block__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: clamp(50px, 10vh, 70px);
    padding: 0 clamp(15px, 2vw, 25px);
    background-color: #0970B8;
    color: #fff !important;
    font-family: 'Urbano', sans-serif;
    font-size: clamp(14px, 1.5vw, 25px);
    font-weight: 400;
    text-decoration: none;
    border-radius: 100px;
    border: 3px solid transparent;
    transition: all 0.3s ease;
    white-space: nowrap;
    box-sizing: border-box;
}

.heading-block__button:hover {
    background-color: #fff;
    border: 3px solid #F7931D;
    color: #000 !important;
    text-decoration: none;
}

.heading-block__button-arrow {
    margin-left: clamp(5px, 1vw, 10px);
    display: inline-flex;
    align-items: center;
    transition: transform 0.3s ease;
}

.heading-block__arrow-svg {
    fill: #F7931D;
    transition: fill 0.3s ease;
}

.heading-block__button:hover .heading-block__button-arrow {
    transform: translateX(4px);
}

.heading-block__button:hover .heading-block__arrow-svg {
    fill: #F7931D;
}

.heading-block__right {
    display: flex;
    flex-direction: column;
    min-height: 350px; /* Increased minimum height */
}

.heading-block__html-content {
    padding-left: 30px;
    min-height: 300px; /* Increased minimum height */
    height: 100%;
    display: flex;
    flex-direction: column;
}

.heading-block__html-content iframe {
    max-width: 100%;
    height: auto;
    min-height: 450px; /* Increased iframe height */
    border-radius: 8px;
    border: none;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.heading-block__placeholder {
    background: #f8f9fa;
    border: 2px dashed #dee2e6;
    border-radius: 8px;
    padding: 60px 30px; /* Increased padding */
    text-align: center;
    color: #000;
    min-height: 250px; /* Minimum height for placeholder */
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.heading-block__placeholder p {
    margin: 0;
    font-style: italic;
    font-size: 1.1rem;
}

/* Enhanced styling for HTML content */
.heading-block__html-content h1,
.heading-block__html-content h2,
.heading-block__html-content h3,
.heading-block__html-content h4,
.heading-block__html-content h5,
.heading-block__html-content h6 {
    margin-top: 0;
    margin-bottom: 20px;
    line-height: 1.3;
}

.heading-block__html-content p {
    margin-bottom: 15px;
    line-height: 1.6;
}

.heading-block__html-content ul,
.heading-block__html-content ol {
    margin: 15px 0;
    padding-left: 25px;
}

.heading-block__html-content li {
    margin-bottom: 8px;
    line-height: 1.5;
}

.heading-block__html-content img {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
    margin: 15px 0;
}

.heading-block__html-content a {
    color: #0970B8;
    text-decoration: none;
    transition: all 0.3s ease;
}

.heading-block__html-content a:hover {
    color: #F7931D;
    text-decoration: underline;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .heading-block__container {
        gap: 30px;
        min-height: 350px;
    }

    .heading-block__left,
    .heading-block__right {
        min-height: 300px;
    }

    .heading-block__html-content {
        min-height: 250px;
    }
}

@media (max-width: 768px) {
    .heading-block {
        padding: 40px 0;
    }

    .heading-block__container {
        flex-direction: column;
        gap: 30px;
        min-height: auto;
    }

    .heading-block__left,
    .heading-block__right {
        width: 100% !important;
        min-height: auto;
    }

    .heading-block__left-content {
        padding-right: 0;
    }

    .heading-block__html-content {
        padding-left: 0;
        min-height: auto;
    }

    .heading-block__heading {
        font-size: 2rem;
        margin-bottom: 20px;
    }

    .heading-block__button {
        height: clamp(45px, 8vh, 60px);
        padding: 0 clamp(12px, 1.8vw, 20px);
        font-size: clamp(13px, 1.4vw, 20px);
        gap: 0.4rem;
    }

    .heading-block__button-arrow {
        margin-left: clamp(4px, 0.8vw, 8px);
    }

    .heading-block__html-content iframe {
        min-height: 300px;
    }

    .heading-block__placeholder {
        padding: 40px 20px;
        min-height: 200px;
    }
}

@media (max-width: 480px) {
    .heading-block {
        padding: 30px 0;
    }

    .heading-block__container {
        padding: 0 15px;
    }

    .heading-block__heading {
        font-size: 1.8rem;
    }

    .heading-block__subheading {
        font-size: 1rem;
    }

    .heading-block__button {
        height: clamp(40px, 7vh, 55px);
        padding: 0 clamp(10px, 1.5vw, 18px);
        font-size: clamp(12px, 1.3vw, 18px);
        gap: 0.3rem;
    }

    .heading-block__button-arrow {
        margin-left: clamp(3px, 0.6vw, 6px);
    }

    .heading-block__html-content iframe {
        min-height: 250px;
    }
}