/* ============================================
   16. RESPONSIVE: PAGE-SPECIFIC
   ============================================ */

/* --- Breakpoint: max-width 1400px, landscape (apply form) --- */
@media screen and (max-width: 1400px) and (orientation:landscape){
    .applyForm fieldset {
        max-width: 95%;
        padding: 1rem;
        margin-top: 1rem;
    }
    
    .organizationType button {
        width: 120px;
        padding: 1rem;
        margin: 0 0.5rem;
        font-size: 14px;
    }
    
    .organizationType button:hover, .organizationType button:visited {
        background-color: var(--logoCyan);
        color: white;
    }
    
    .organizationFocus {
        background-color: var(--logoCyan);
        color: white;
    }
}

/* --- Breakpoint: max-width 1400px, portrait (Home/Main responsive) --- */
@media screen and (max-width: 1400px)  , (orientation:portrait){

/* Main ----------- */

/* Removed conflicting margin-top:0 that was overriding the proper spacing */

.hero{
    flex-direction: column-reverse;
    height:fit-content;
    width:100vw;
    max-height: inherit;
}
.heroImage{
    top:inherit;
    width:100vw;
    height:40vw;
    min-height: initial;
    clip-path: ellipse(71% 58% at 49% 40%);
}
.attribution{
    display: none;
}
.heroText{
    width:100vw;
    margin:0;
}
.heroText h1, .heroText p,.heroText a{
    margin-left: 1rem;
}


.heroText a{
    margin-top: 1rem;
}

/* Removed conflicting styles that were overriding the centering behavior */

.services .learnMore{
    transform: translate(0);
}

.servicesListLogo{
    padding: 0;
    transform: translateY(-1rem);
    cursor: pointer;
}

.servicesList .servicesListText{
    padding:.5rem 0;

}

.announcements{
    padding-left:0;
    padding-right:0;
}
.announcements h2{
    margin:1rem auto;
    font-size:30px;
}
.announcementsList{
    width:90vw;
}
.partners{
    padding:0;
}
.partnerImages{
    width:90vw;
    padding:0;
}
.partnerImages img{
    max-width: 80vw;
}
.viewAllPartners{
    bottom:1rem;
}
/* ---------------- */



/* AdminPage -------*/

.adminPage ul{
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: scroll;
    
}

.newEntry:focus{
    background-color:var(--logoBlue) ;
    color:white;
}

/* ---------------- */




/* Footer ----------*/
footer{
    width:90vw;
    margin:auto;
}
.footerLinks{
    width: 100%;
}
footer .address{
    flex-wrap: wrap;
    /* justify-content: flex-start; */
}
/* ---------------- */

.internetForGood-imageDiv {
    flex-direction: column;
}



/* Old social media styles removed */



/* ---------------- */

}
