/* Load IBM Plex Sans Regular Font */
@font-face {
    font-family: 'IBMPlexSans';
    src: url('./fonts/IBMPlexSans-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'IBMPlexSans';
    src: url('./fonts/IBMPlexSans-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

/* General Reset and Layout */
html, body {
    margin: 0;
    padding: 0;
    font-family: 'IBMPlexSans'; /* Use the custom font */
    background-color: #DBDDEDFF;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%; /* Use full height */
    overflow: hidden; /* Prevent body scrolling */
}
/* Container for positioning */
.container {
    width: 100vw; /* Full viewport width */
    height: 100vh; /* Full viewport height */
    position: relative; /* Enable absolute positioning for child elements */
}

/* Corner styles with dynamic content */
.top-left, .top-right, .bottom-left, .bottom-right {
    position: absolute;
    font-size: clamp(2vh, 4vw, 4vh); /* Dynamic size: min 2vh, preferred 4vw, max 4vh */
    font-weight: bold;
}

.top-left {
    top: 2vh; /* 2% of viewport height from the top */
    left: 2vh; /* 2% of viewport height from the left */
}

.top-right {
    top: 2vh; /* 2% of viewport height from the top */
    right: 2vh; /* 2% of viewport height from the right */
}

.bottom-left {
    bottom: 2vh; /* 2% of viewport height from the bottom */
    left: 2vh; /* 2% of viewport height from the left */
}

.bottom-right {
    bottom: 2vh; /* 2% of viewport height from the bottom */
    right: 2vh; /* 2% of viewport height from the right */
}

/* Links inside the corners */
.top-left a, .top-right a, .bottom-left a, .bottom-right a {
    text-decoration: none; /* Remove underline */
    color: #333; /* Dark gray for readability */
    transition: color 0.3s; /* Smooth color transition */
}

.top-left a:hover, .top-right a:hover, .bottom-left a:hover, .bottom-right a:hover {
    color: #007BFF; /* Change color on hover */
}

/* Centered content */
.center {
    position: absolute;
    top: 50%; /* Center vertically */
    left: 50%; /* Center horizontally */
    transform: translate(-50%, -50%); /* Perfectly center content */
    text-align: center;
}

/* Main title style */
.title {
    font-size: clamp(10vh, 15vw, 20vh); /* Dynamic size: min 10vh, preferred 15vw, max 20vh */
    font-weight: bold;
    color: #333; /* Dark gray for readability */
    margin: 0;
}

/* Subtitle style */
.subtitle {
    color: #333; /* Dark gray for readability */
    font-size: clamp(1vh, 1.2vw, 2vh); /* Dynamic size: min 1.5vh, preferred 2.5vw, max 2.5vh */
    font-weight: bold;
    margin-top: calc(-0.2 * clamp(10vh, 15vw, 20vh)); /* Dynamically calculate based on .title font size */
    margin-bottom: 0; /* Ensure no bottom margin is added */
}
