/* =========================================================
   cataloniahosting.css — Catalunya Hosting .net
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');

/* === BASE === */
body {
    font-family: 'Poppins', sans-serif;
    background-color: #ffffff;
    margin: 0;
    padding: 0;
}

/* === JUMP TO FORM LINKS === */
.jump-to-form {
    display: block;
    text-align: center;
    padding: 9px 24px;
    background: #198754;
    color: #fff;
    text-decoration: none;
    font-size: 0.88rem;
    font-weight: 500;
    letter-spacing: 0.3px;
    border-radius: 6px;
    margin: 10px auto 4px;
    width: fit-content;
}

.jump-to-form:hover {
    background: #157347;
    color: #fff;
}

/* Mobile: show per-panel links, hide full-width row links */
@media (max-width: 991px) {
    .jump-mobile  { display: block; }
    .jump-desktop { display: none; }
}

/* Desktop: hide per-panel links, show centred button after rows 1 and 2 */
@media (min-width: 992px) {
    .jump-mobile  { display: none; }
    .jump-desktop {
        display: block;
        width: fit-content;
        margin: 0 auto 24px;
        padding: 10px 28px;
        border-radius: 6px;
        font-size: 0.9rem;
    }
}

/* === CONTENT BOXES === */
.fixed-text-box {
    text-align: justify;
    padding: 20px;
}

@media (min-width: 768px) {
    /* Equal height columns so images line up at the bottom */
    .row.text-center {
        display: flex;
        flex-wrap: wrap;
    }

    .row.text-center .col-md-4 {
        display: flex;
        flex-direction: column;
    }

    .fixed-text-box {
        height: 420px;
        overflow: auto;
        flex-shrink: 0;
    }

    .img-box {
        margin-top: auto;
    }
}

.img-box img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

/* === CONTACT SECTION === */
.contact-section {
    background-color: #f8f9fa;
    padding: 50px 20px;
    margin-top: 40px;
}

.contact-form {
    max-width: 600px;
    margin: 0 auto;
}

/* === FOOTER === */
footer {
    border-top: 1px solid #dee2e6;
    margin-top: 40px;
    padding-top: 10px;
}
