html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    background: #FFF;
    text-align: center;
    font-family: arial, helvetica, sans-serif;
    font-size: 12pt;
}

a {color: black; text-decoration: none;}
a:hover {color: black}

.nounder a:hover {
    text-decoration: none;
}
.under a {
    text-decoration: underline;
}
.under a:hover {
    text-decoration: none;
}

p {line-height: 1.4;}
p1 {letter-spacing: 0.12ex; font-size: 38pt; color: black;}
p2 {letter-spacing: 0.3ex; font-size: 9pt; color: black; line-height: 0.5; vertical-align: 120%; font-family: arial, helvetica, sans-serif;}
p3 {letter-spacing: 0.1ex; line-height: 0.5; font-size: 14pt; color: black; vertical-align: 120%; font-family: arial, helvetica, sans-serif;}
p4 {letter-spacing: 0.2ex; font-size: 11pt; color: black; text-align: center; vertical-align: 120%; font-family: arial, helvetica, sans-serif;}

img {
    max-width: 100%;
    height: auto;
    border-color: #f4f4f4;
}

#wrapper { /* full screen window */
    min-height: 88%;
    height: auto !important;
    height: 100%;
}

#top {
    width: 94%;
    padding-top: 3%;
    padding-left: 4.8%;
    text-align: left;
    color: #848284;
    font-family: 'Kaushan Script', cursive;
    box-sizing: border-box;
}

#menu {padding-bottom: 2%; padding-left: 5%; text-align: left; box-sizing: border-box;}

#center {padding-left: 11.5%; padding-right: 11.5%; padding-top: 1.1%; padding-bottom: 2%; text-align: center; font-family: georgia, serif; font-size: 12pt; box-sizing: border-box;}
#center1 {padding-left: 11.5%; padding-right: 11.5%; padding-top: 1.1%; padding-bottom: 2%; text-align: left; font-family: georgia, serif; font-size: 14pt; box-sizing: border-box;}

#television {float: left; padding-top: 4%;}
#promo {float: left;}
#etc {float: left; padding-top: 4%;}

.f-carousel__slide {
    display: flex;
    justify-content: center;
    align-items: center;
}
#myCarousel_Rapa_Nui,
#myCarousel_Rano_Raraku,
#myCarousel_Ahu_Tongariki,
#myCarousel_Anakena,
#myCarousel_Ahu_Tepeu,
#myCarousel_Rano_Kau,
#myCarousel_Ahu_Vai_Uri {
    max-width: 1000px;
    margin: 0 auto;
}

figure { /* television */
    display: inline-block;
    background: #FFF;
    padding: 0px;
    margin: 0 0.5em 0 0;
    vertical-align: top;
}

figcaption {
    text-align: center;
}

#footer_correct { /* full screen window */
    height: 110px;
    clear: both;
}

#footer {
    width: 100%;
    height: 0.1px;
    padding-top: 1px;
    padding-bottom: 10px;
    margin-top: -60px;
    background: #FFF;
    text-align: center;
    color: gray;
    font-size: 11pt;
}

.up {vertical-align: 6px;}
.up1 {vertical-align: 7.5px;}

.switch {position: absolute; top: 1.8em; right: 1.8em;}

.film {float: left;}

.foto {width: 300px; height: 200px; margin: 5px 5px 0px 0px;}
.foto1 {width: 133px; height: 200px; margin: 5px 5px 0px 0px;}
.foto3 {width: 1000px; height: 666px;}

.text {padding-left: 0%; padding-right: 0%; text-align: left; line-height: 1.6; font-family: georgia, serif; font-size: 12pt;}
.text_video {padding-left: 0%; padding-right: 0%; text-align: center; line-height: 1.5; font-family: georgia, serif; font-size: 12pt;}
.select {font-family: arial, helvetica, sans-serif;}

.leftfoto {float: left; margin: 0px 18px 18px 0px;}
.rightfoto {float: right; margin: 0px 10px 4px 10px;}

.name { /* full screen window */
    padding: 1.2% 0; text-align: center;
}

.verse_outer {display: flex;}
.verse_inner {width: 20em; margin: auto;}

.app-container {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    width: 100%;
}

.app-image {
    flex-shrink: 0;
    width: 300px;
}

.app-content {
    flex: 1;
    min-width: 0;
}

.download-btn {
    display: inline-block;
    padding: 8px 16px;
    margin: 0 10px 10px 0;
    font-size: 11pt;
    font-weight: normal;
    text-decoration: none;
    border: 1px solid #ddd;
    border-radius: 4px;
    background: #f8f9fa;
    color: #333;
    transition: all 0.2s ease;
    font-family: Arial, sans-serif;
    box-sizing: border-box;
}

.download-btn:hover {
    background: #e9ecef;
    border-color: #ccc;
    text-decoration: none;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.download-btn:active {
    transform: translateY(0);
    box-shadow: none;
}

.download-github {
    border-color: #24292e;
    background: #24292e;
    color: white;
}

.download-github:hover {
    background: #2b3137;
    border-color: #2b3137;
    color: white;
}

.download-website {
    border-color: #007bff;
    background: #007bff;
    color: white;
}

.download-website:hover {
    background: #0056b3;
    border-color: #0056b3;
    color: white;
}

.button-container {
    margin: 20px 0;
}

.download-btn span {
    font-size: 10pt;
    opacity: 0.8;
    margin-right: 4px;
}

.download-support {
    border-color: #28a745;
    background: #28a745;
    color: white;
}

.download-support:hover {
    background: #218838;
    border-color: #1e7e34;
    color: white;
}

.download-btn.small {
    padding: 6px 12px;
    font-size: 10pt;
}

/* Mobile adaptation */
@media (max-width: 768px) {
    * {
        box-sizing: border-box;
    }
    
    #top {
        width: 100%;
        padding: 5% 4% 0 4%;
    }

    #menu {
        padding: 0 4% 2% 4%;
        width: 100%;
    }

    #center, #center1 {
        width: 100%;
        padding-left: 4%;
        padding-right: 4%;
        padding-top: 2%;
        padding-bottom: 2%;
    }

    .app-container {
        flex-direction: column;
        gap: 20px;
        padding: 0 4%;
    }

    .app-image {
        width: 100%;
        text-align: center;
    }

    .download-btn {
        display: block;
        width: 100%;
        margin: 0 0 10px 0;
        text-align: center;
        box-sizing: border-box;
    }

    .button-container,
    div[style*="margin: 20px 0"] {
        margin-left: 0;
        margin-right: 0;
        width: 100%;
        box-sizing: border-box;
    }

    .switch {
        position: static;
        text-align: right;
        margin-top: 10px;
        padding-right: 4%;
    }

    .foto, .foto1, .foto3 {
        max-width: 100%;
        height: auto;
    }

    .leftfoto, .rightfoto {
        float: none;
        margin: 10px auto;
        display: block;
        max-width: 100%;
    }

    .app-content > div {
        width: 100%;
        box-sizing: border-box;
    }
    
    .donate-grid {
        grid-template-columns: 1fr !important;
    }
}