﻿        :root {
            --usgs-blue: #00264c;
            --border-light: #ddd;
            --bg-light: #f4f4f4;
            --white: #ffffff;
            /* CHANGE THIS TO ADJUST CAROUSEL HEIGHT */
            --carousel-height: 400px; 
        }

        body { margin: 0; padding: 0; font-family: sans-serif; background-color: #fff; }

        .banner2 {
            height: 65px;
            background-color: var(--usgs-blue);
            display: flex;
            align-items: center;
            padding: 0 20px;
        }

        .logo2 { height: 40px; }
        h1 { color: var(--usgs-blue); text-align: center; margin: 25px 0; }

        /* HERO SECTION */
        .hero-wrapper {
            display: grid;
            grid-template-columns: 3fr 1fr; 
            gap: 20px;
            max-width: 1200px;
            margin: 0 auto 40px auto;
            padding: 0 15px;
            align-items: stretch; /* Forces sidebar to match carousel height */
        }

        .carousel-container {
            position: relative;
            background: #000;
            border-radius: 4px;
            overflow: hidden;
            height: var(--carousel-height); /* HARD LOCKED HEIGHT */
        }

        .carousel-slides {
            display: flex;
            transition: transform 0.5s ease-in-out;
            height: 100%;
        }

        .slide-link {
            min-width: 100%;
            height: 100%;
            text-decoration: none;
            display: block;
            position: relative;
        }

        .slide { height: 100%; }

        .slide img {
            width: 100%;
            height: 100%;
            /* This prevents the image from stretching the container */
            object-fit: cover; 
            display: block;
			object-position: top;
        }

        .text-overlay {
            position: absolute;
            bottom: 0; left: 0; right: 0;
            background: rgba(0, 38, 76, 0.85);
            color: white;
            padding: 15px 20px;
            z-index: 2;
        }

        .text-overlay h2 { margin: 0; font-size: 1.3rem; color: #fff; }
        .text-overlay p { margin: 5px 0 0; font-size: 0.95rem; }

        /* SIDEBAR - MATCHES CAROUSEL */
        .sidebar-links {
            background-color: var(--bg-light);
            border: 1px solid var(--border-light);
            border-radius: 4px;
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }

        .sidebar-header {
            background-color: var(--usgs-blue);
            color: var(--white);
            padding: 12px 15px;
            font-weight: bold;
        }

        .sidebar-content { margin: 0; padding: 0; list-style: none; }
        .sidebar-content a {
            display: block;
            padding: 18px 15px;
            color: var(--usgs-blue);
            text-decoration: none;
            font-weight: 600;
            border-bottom: 1px solid var(--border-light);
        }
        .sidebar-content a:hover { background-color: #e9e9e9; }

        /* NAV BUTTONS */
        .nav-btn {
            position: absolute;
            top: 50%; transform: translateY(-50%);
            background: rgba(0,0,0,0.5);
            color: white; border: none;
            width: 40px; height: 40px;
            cursor: pointer; z-index: 10;
            border-radius: 50%;
        }
        .next { right: 10px; }
        .prev { left: 10px; }

        /* PROJECT ROW - 4 BOXES */
        .project-row-wrap {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
            max-width: 1200px;
            margin: 0 auto 50px auto;
            padding: 0 15px;
        }

        .project-box {
            background: var(--white);
            border: 1px solid var(--border-light);
            border-radius: 4px;
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }

        .box-header {
            background-color: var(--usgs-blue);
            padding: 10px;
            text-align: center;
        }

        .box-header h2 {
            margin: 0;
            font-size: 0.95rem;
            color: var(--white) !important;
        }

        .box-image img {
            width: 100%;
            height: 140px;
            object-fit: cover;
            display: block;
        }

        .box-body { padding: 12px; font-size: 0.85rem; flex-grow: 1; }
        .box-link { color: var(--usgs-blue); font-weight: bold; text-decoration: none; }

        @media (max-width: 900px) {
            .project-row-wrap { grid-template-columns: repeat(2, 1fr); }
            .hero-wrapper { grid-template-columns: 1fr; }
            .carousel-container { height: 300px; }
        }