﻿/* https://webfonts.ffonts.net/BigNoodleTitling.font.download# */
@font-face {
    font-family: 'BigNoodleTitling';
    src: url('BigNoodleTitling.ttf.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

:root {
    --viewport-width: 1024px; /* Fallback values */
    --viewport-height: 768px;
    --regular-font-size: 24px;
    --tooltip-font-size: 16px;
    --small-font-size: calc(var(--regular-font-size) * 0.5);
    --big-font-size: calc(var(--regular-font-size) * 1.25);
    --huge-font-size: calc(var(--regular-font-size) * 1.5);
    --dark-green-theme: rgb(24, 106, 59);
    --heading-font-family: 'BigNoodleTitling', 'Arial Narrow', Tahoma, Geneva, Verdana, sans-serif;
}

@media (min-width: 1024px) and (max-width: 4000px) {
    :root {
        --regular-font-size: 30px;
    }
}

@media (min-width: 540px) and (max-width: 1023px) {
    :root {
        --regular-font-size: 16px;
    }
}

@media (min-width: 390px) and (max-width: 539px) {

    :root {
        --regular-font-size: 15px;
    }
}

@media (min-width: 300px) and (max-width: 389px) {

    :root {
        --regular-font-size: 15px;
    }
}

@media (min-width: 320px) and (max-width: 389px) {

    :root {
        --regular-font-size: 14px;
        --large-shadow-size: 2px;
        --small-shadow-size: 1px;
    }
}

body, html {
    margin: 0;
    padding: 0;
    height: 100%;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: #fefeff;
}

    body.cursorwait {
        cursor: wait;
    }

    body.cursordefault {
        cursor: default;
    }

.alignlist {
    text-align: left;
}

.image-container {
    position: relative;
    min-height: 100vh;
    background-image: url('../img/ThumbNails.jpg');
    background-repeat: repeat;
    background-size: auto;
    background-position: top left;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1%;
    box-sizing: border-box;
    /* filter removed */
}

    /* Semi-transparent overlay to reduce background intensity */
    .image-container::before {
        content: '';
        position: absolute;
        inset: 0; /* top/right/bottom/left = 0 */
        background: inherit; /* copies the same image */
        z-index: 0; /* behind everything */
    }

    .image-container::after {
        content: '';
        position: absolute;
        inset: 0;
        background: rgba(255,255,255,0.75); /* white tint */
        pointer-events: none;
        z-index: 1;
    }

/* Overlay text box – BLACK text, fully transparent background */
#maintext {
    position: relative; /* stays in normal flow, but above ::after */
    z-index: 2; /* above the white overlay */
    width: 92%;
    max-width: 1200px;
    max-height: 92%;
    padding: 4%;
    background: rgba(255,255,255,0.75); /* solid white behind text */
    color: #000;
    border: 2px solid rgba(0,0,0,0.15);
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
    overflow-y: auto;
    font-size: var(--big-font-size);
    line-height: 1.2;
    text-align: center;
    box-sizing: border-box;
}

    /* Keep links visible */
    #maintext a {
        color: #1a0dab; /* classic link blue */
        text-decoration: underline;
        font-weight: 500;
    }

        #maintext a:hover {
            color: #000;
        }

/* Responsive font scaling */
@media (max-width: 768px) {
    #maintext {
        padding: 1%;
        width: 98%;
        max-height: 98%;
    }

        #maintext p {
            font-size: var(--big-font-size);
        }
}

@media (max-width: 480px) {
    #maintext {
        padding: 1%;
        width: 98%;
        max-height: 98%;
    }
}

.centerchildren {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.hidden {
    display: none !important
}

.shown {
    display: block !important
}

.pageheader {
    margin: 0 0.5rem 0.5rem 0.5rem;
    font-size: var(--big-font-size);
    z-index: 2; /* above the white overlay */
}

.hometitletext, .copyrighttitle {
    font-family: var(--heading-font-family);
    color: var(--dark-green-theme);
}

.hometitletext {
    font-size: var(--huge-font-size);
    font-weight: bold;
    /*letter-spacing: calc(var(--huge-font-size) / 12);*/
}

.copyrighttitle {
    font-size: var(--big-font-size);
    /* letter-spacing: calc(var(--regular-font-size) / 12);*/
}

.boldredtext {
    color: red;
    font-weight: bold;
    border: dashed 6px red;
    text-align: center;
    padding: 8px;
}

p {
    opacity: 1.0;
    margin: 4px 6px 16px 4px;
    text-align: left;
    font-size: var(--big-font-size);
    font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}

.disabled-link {
    color: grey;
    cursor: none;
    pointer-events: none;
    text-decoration: none;
}

.enabled-link {
    color: black;
    cursor: default;
}
