/* =====================================
   COLORADO FILM BANK
   Smithsonian / Library Archive Theme
======================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:Baskerville,"Baskerville Old Face","Hoefler Text",Georgia,serif;
    background:#f4f1e8;
    color:#1d1d1d;
    line-height:1.6;
}

/* Hero */

.hero{

    min-height:100vh;

background:
linear-gradient(
rgba(5,14,24,.70),
rgba(5,14,24,.80)
),
url("IMG_7232.JPG");

    background-size:cover;
    background-position:center;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    text-align:center;

    padding:40px;

}

/* Logo */

.logo{

    color:#d1b16d;

    font-size:18px;

    letter-spacing:6px;

    text-transform:uppercase;

    margin-bottom:80px;

}

/* Hero Content */

.hero-content{

    max-width:950px;

}

.hero-content h1{
font-size:72px;
max-width:1000px;
line-height:1.05;
}

.hero-content p{

    color:#f5f5f5;

    font-size:28px;

    max-width:820px;

    margin:auto;

    margin-bottom:45px;

}

/* Search */

input{

    width:100%;

    max-width:1000px;

    padding:26px;

    font-size:24px;

    background:white;

    border:none;

    border-radius:6px;

    outline:none;

    transition:.3s;

    box-shadow:0 10px 30px rgba(0,0,0,.20);

}

input:focus{

    transform:translateY(-2px);

    box-shadow:0 18px 40px rgba(0,0,0,.35);

}

/* Archive Stats */

.hero::after{

    content:"";

    display:block;

    width:80%;

    max-width:1000px;

    height:1px;

    background:rgba(255,255,255,.25);

    margin-top:70px;

}

.stats{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

    padding:80px 10%;

    background:white;

}

.stats div{

    text-align:center;

}

.stats strong{

    display:block;

    font-size:42px;

    color:#a88439;

    margin-bottom:10px;

}

.stats span{

    text-transform:uppercase;

    letter-spacing:2px;

    font-size:13px;

    color:#777;

}

/* Sections */

section{

    padding:80px 10%;

}

h2{

    font-size:44px;

    font-weight:400;

    margin-bottom:40px;

    color:#14233a;

}

/* Cards */

.grid{
    display:grid;
    grid-template-columns:
    repeat(auto-fill,minmax(180px,1fr));
    gap:20px;
}

.card{
    min-width:auto;
}

.card{

    background:white;

    border-radius:10px;

    overflow:hidden;

    transition:.4s;

    cursor:pointer;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.card:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 40px rgba(0,0,0,.18);

}

.card img{

    width:100%;

    height:240px;

    object-fit:cover;

}

.card h3{
    font-size:20px;
    padding:12px;
}

.card p{
    padding:0 12px 12px;
    font-size:14px;
}

/* =====================================
   TIMELINE EXPLORER
======================================*/

.timeline-section{

    background:#f4f1e8;

    padding:90px 10%;

}

.timeline-section h2{

    text-align:center;

    margin-bottom:20px;

}

.timeline-intro{

    text-align:center;

    max-width:700px;

    margin:0 auto 50px;

    color:#666;

}


.timeline-slider-wrap{

    max-width:900px;

    margin:0 auto 60px;

}

#timelineSlider{

    width:100%;

}

#timelineLabel{

    text-align:center;

    margin-top:15px;

    font-size:24px;

    color:#14233a;

}

.timeline-preview{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:30px;

}

.timeline-card{

    background:white;

    border-radius:10px;

    overflow:hidden;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.3s;

}

.timeline-card:hover{

    transform:translateY(-6px);

}

.timeline-card img{

    width:100%;

    height:180px;

    object-fit:cover;

}

.timeline-card-content{

    padding:20px;

}

.timeline-card-content h3{

    margin-bottom:10px;

    color:#14233a;

}

.timeline-card-content p{

    color:#666;

}

.recent{
    background:white;
}

.stats{

    background:#13253d;

    color:white;

}

.stats strong{

    color:#d1b16d;

}

.stats span{

    color:#d7d7d7;

}

/* =====================================
   TIMELINE IMAGE CARDS
====================================== */

.timeline-cards{

    display:flex;

    gap:20px;

    overflow-x:auto;

    padding-bottom:20px;

    margin-bottom:60px;

    scroll-behavior:smooth;

}

.timeline-cards::-webkit-scrollbar{
    height:10px;
}

.timeline-cards::-webkit-scrollbar-thumb{
    background:#a88439;
    border-radius:10px;
}

.era-card{

    background:white;

    border-radius:12px;

    overflow:hidden;

    cursor:pointer;

    transition:.35s;

    box-shadow:
    0 10px 30px rgba(0,0,0,.08);

    border:3px solid transparent;

}

.era-card{

    min-width:180px;

    max-width:180px;

    flex-shrink:0;

}

.era-card.active{

    border-color:#a88439;

}

.era-card img{

    width:100%;

    height:120px;

    object-fit:cover;

}

.era-info{

    padding:20px;

}

.era-info h3{

    font-size:22px;

}

.era-info p{

    font-size:14px;

}

footer h3{

    color:#d1b16d;

    margin-bottom:20px;

    font-size:32px;

    font-weight:400;

}

footer p{

    max-width:700px;

    margin:auto;

    color:#d0d0d0;

}

.map-section{
padding:60px;
background:#0d1525;
}

.map-section h2{
font-size:36px;
margin-bottom:25px;
color:white;
}

#archive-map{
height:600px;
width:100%;
border-radius:12px;
overflow:hidden;
box-shadow:0 5px 20px rgba(0,0,0,.3);
}

.card{
text-decoration:none;
color:inherit;
}

.card h3{
color:#14233a;
}

.card:hover{
text-decoration:none;
}

.grid .card{
display:block;
text-decoration:none;
color:inherit;
}

.grid .card h3{
color:#14233a;
}

.grid .card:hover{
text-decoration:none;
}

.section-title{
font-size:52px;
font-weight:400;
color:#14233a;
margin-bottom:50px;
text-align:center;
letter-spacing:1px;
}

.featured-item{
display:grid;
grid-template-columns:1fr 1fr;
gap:50px;
align-items:center;
background:white;
}

.featured-image img{
width:100%;
border-radius:12px;
}

.featured-content h3{
font-size:42px;
margin:20px 0;
}

.topnav{
position:absolute;
top:0;
left:0;
width:100%;
padding:25px 60px;
display:flex;
justify-content:space-between;
z-index:1000;
}

.topnav a{
color:white;
text-decoration:none;
margin-left:30px;
}

.carousel-wrapper{
display:flex;
align-items:center;
gap:15px;
}

.collections-row{
    display:flex;
    overflow:hidden;
    gap:20px;
    width:100%;
}

.collection-card{
    flex:0 0 calc(20% - 16px);
    min-width:220px;
    height:auto;
    padding-bottom:10px;
}

.collection-card h3{
    font-size:16px;
    line-height:1.2;
    margin:8px;
    padding:0;
}

.collection-card{
    padding:0;
}

.arrow{
width:40px;
height:40px;
border:none;
border-radius:50%;
background:#14233a;
color:white;
font-size:28px;
cursor:pointer;
flex-shrink:0;
}

.arrow:hover{
background:#a88439;
}

h2::after{
    content:"";
    display:block;
    width:80px;
    height:3px;
    background:#a88439;
    margin-top:12px;
}

.collection-card{
    border:1px solid rgba(0,0,0,.08);
}

.featured-image img{
    transition:.4s;
}

.featured-image img:hover{
    transform:scale(1.02);
}

.nav-logo img{
    height:60px;
    width:auto;
    display:block;
}

.collection-card img{
    height:140px;
    object-fit:contain;
    background:#f4f1e8;
}

.collection-card:hover img{
transform:scale(1.05);
}

.hero::after{
background:#d1b16d;
height:2px;
}

html{
    scroll-behavior:smooth;
}

.nav-logo a{
    display:block;
}

.nav-logo img{
    cursor:pointer;
    transition:.3s;
}

.nav-logo img:hover{
    opacity:.85;
}

.all-collections-grid{
display:grid;
grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
gap:20px;
margin-top:30px;
}

.all-collections-grid{
display:grid;
grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
gap:20px;
margin:30px 0;
}

.nav-links{
    display:flex;
    gap:30px;
    align-items:center;
}

.nav-links a{
    color:white;
    text-decoration:none;
    font-size:18px;
    transition:.3s;
}

.nav-links a:hover{
    color:#d1b16d;
}
