/* =========================================================
   ZUSS Welcome Page
   Loaded AFTER style.css. Everything is scoped to
   body.welcome-page, so no other page is affected and no
   value in style.css is changed. Colors use the same
   variables as the rest of the site (light + dark).
   ========================================================= */

.welcome-page {
    --head-h: 150px;          /* height of the blue band */
    --logo-size: clamp(190px, 24vw, 340px);

    display: flex;
    flex-direction: column;
    min-height: 100vh;
}


/* ---------- Top bar: transparent, scrolls away with the page ---------- */

.welcome-page .topbar {
    position: absolute;
    background: transparent;
}


/* ---------- Header: blue band, logo overlapping its bottom edge ---------- */

.welcome-page header {
    /* blue only for the first --head-h px, then the page background shows */
    background: linear-gradient(
        to bottom,
        var(--main-color) var(--head-h),
        transparent var(--head-h)
    );
    padding: 28px 20px 0;
}

.welcome-page .brand-logo {
    display: block;
    width: var(--logo-size);
    height: var(--logo-size);
    margin: 0 auto;

    border-radius: 50%;
    background: #fff;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.25);
}

.welcome-page .brand-name {
    margin-top: 18px;

    color: var(--sub-text-color);
    font-size: clamp(18px, 2.4vw, 32px);
    font-weight: 400;
    font-style: normal;
    letter-spacing: 1px;
    text-decoration: none;
}


/* ---------- Hero (Arabic) ---------- */

.welcome-page .hero {
    text-align: center;
    margin: 10px 0 35px;
    font-family: "Segoe UI", Tahoma, "Noto Sans Arabic", Arial, sans-serif;
}

.welcome-page .hero h1 {
    font-size: clamp(24px, 3vw, 40px);
    font-weight: 600;
    line-height: 1.6;
}

.welcome-page .hero p {
    font-size: clamp(18px, 2.4vw, 32px);
    line-height: 1.6;
    color: var(--text-color);
}


/* ---------- Main wrapper: let the footer sit at the bottom ---------- */

.welcome-page main {
    flex: 1;
    margin-top: 20px;
    margin-bottom: 30px;
}


/* ---------- Year of Study ---------- */

/* Specificity is intentionally higher than the card rules in style.css */
.welcome-page main > section.years {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 20px;
}

.welcome-page main > section.years > h2 {
    grid-column: 1 / -1;
    margin-bottom: 5px;
    font-size: clamp(22px, 2.4vw, 30px);
}

.welcome-page main > section.years > a {
    width: 100%;
    margin: 0;
}

.welcome-page main > section.years > a img {
    height: clamp(100px, 13vw, 150px);
}

.welcome-page main > section.years > a:focus-visible {
    outline: 3px solid var(--sub-text-color);
    outline-offset: 3px;
}


/* ---------- Footer: uses the site's standard blue footer from style.css ---------- */

/* Line between the motto and the signature (same look as the other pages) */
.welcome-page .footer-divider {
    margin: 15px auto;
    border-bottom: 3px solid var(--footer-border);
}


.welcome-page footer .motto {
    font-family: Georgia, "Times New Roman", serif;  /* font */
    font-style: italic;                              /* italic on/off: italic / normal */
    font-weight: 400;                                /* boldness */
    color: #FFD166;                                  /* text color */
    font-size: 22px;                                 /* optional: size */
    letter-spacing: 0.5px;                           /* optional: spacing between letters */
}



/* ---------- Tablets: 2 x 2 cards ---------- */

@media (max-width: 900px) {
    .welcome-page main > section.years {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* ---------- Phones ---------- */

@media (max-width: 600px) {
    .welcome-page {
        --head-h: 120px;
    }

    .welcome-page header {
        padding-top: 22px;
    }

    .welcome-page main > section.years {
        gap: 12px;
        padding: 14px;
    }

    .welcome-page main > section.years > a {
        border-width: 4px;
    }

    .welcome-page main > section.years > a h3 {
        font-size: 14px;
        padding: 10px 4px;
    }


    .welcome-page footer .motto{
        font-size: 20px;
    }

    .welcome-page footer .signature{
        font-size: 17px;
    }

    .welcome-page footer .signature > a {
        font-size: 18px;
    }


}

@media (max-width: 360px) {
    .welcome-page main > section.years > a img {
        height: 90px;
    }

    .welcome-page footer .motto{
        font-size: 18px;
    }

    .welcome-page footer .signature{
        font-size: 16px;
    }

    .welcome-page footer .signature > a {
        font-size: 17px;
    }

}


@media (prefers-reduced-motion: reduce) {
    .welcome-page * {
        transition: none !important;
    }
}