/* Custom CSS for the header layout */

:root {
  --header-height: 240px;
  --left-col-width: 25%;
  --right-col-width: 75%;
  --mobile-breakpoint: 992px; /* Pico's large breakpoint */
}

.region--content {
	margin: 2rem 0;
}

#block-jtarleton-content {
	margin-bottom: 200px;
  	border-bottom: 1px dotted #CCC;
  	padding-bottom: 200px; 
}

header {

        /* Header container */
        .header-container {
            width: 100%;
            max-width: 100%;
            margin: 0;
            padding: 0;
            background-color: white;
        }

        /* Grid for desktop layout */
        .header-grid {
            display: grid;
            grid-template-columns: var(--left-col-width) var(--right-col-width);
            width: 100%;
            max-width: 100%;
            margin: 0;
            padding: 0;
        }

        /* Left column styling */
        .left-column {
            background-color: #010101;
            height: var(--header-height);
            max-height: var(--header-height);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1rem;
            overflow: hidden;
        }

        .logo-container {
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .logo {
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
        }

	/* Right column styling */
        .right-column {
            background-color: #010101;
            padding: 2rem;
            height: var(--header-height);
            max-height: var(--header-height);
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }

        .right-column-inner {
            height: 100%;
            display: flex;
            flex-direction: column;
        }

        .top-row, .bottom-row {
            height: 50%;
            display: flex;
            align-items: center;
        }

        .top-row {
            justify-content: flex-end;
        }

        .bottom-row {
            justify-content: center;
            align-items: center;
        }

        /* Navigation styling */
        .nav-links {
            display: flex;
            gap: 1.5rem;
            list-style: none;
            margin: 0;
            padding: 0;
        }

        .nav-links a {
            color: white;
            text-decoration: none;
            font-weight: 600;
            font-size: 1.1rem;
            padding: 0.5rem 1rem;
            border-radius: 4px;
            transition: background-color 0.3s;
        }

        .nav-links a:hover {
            background-color: rgba(255, 255, 255, 0.2);
        }

        .bottom-content {
            color: white;
            font-size: 1.2rem;
            font-weight: 600;
            text-align: center;
            width: 100%;
        }

	/* Mobile menu styles */
        .mobile-header {
            display: none;
            width: 100%;
            background-color: #010101;
            padding: 1rem;
            position: relative;
        }

        .mobile-logo-container {
            display: flex;
            align-items: center;
            justify-content: space-between;
        }

        .mobile-logo {
            max-height: 60px;
            max-width: 80%;
        }

        .hamburger {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            width: 30px;
            height: 24px;
            cursor: pointer;
            z-index: 1001;
        }

        .hamburger span {
            display: block;
            height: 3px;
            width: 100%;
            background-color: #333;
            border-radius: 3px;
            transition: all 0.3s ease;
        }

        .hamburger.active span:nth-child(1) {
            transform: translateY(10px) rotate(45deg);
        }

        .hamburger.active span:nth-child(2) {
            opacity: 0;
        }

        .hamburger.active span:nth-child(3) {
            transform: translateY(-10px) rotate(-45deg);
        }

        .mobile-menu {
            display: none;
            position: absolute;
            top: 100%;
            left: 0;
            width: 100%;
            background-color: violet;
            padding: 1rem;
            z-index: 1000;
            box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
        }

        .mobile-menu.active {
            display: block;
        }

        .mobile-nav-links {
            list-style: none;
            margin: 0;
            padding: 0;
        }

        .mobile-nav-links li {
            margin-bottom: 1rem;
        }

        .mobile-nav-links a {
            color: white;
            text-decoration: none;
            font-weight: 600;
            font-size: 1.2rem;
            display: block;
            padding: 0.8rem 1rem;
            border-radius: 4px;
        }

        .mobile-nav-links a:hover {
            background-color: rgba(255, 255, 255, 0.2);
        }

        /* Responsive styles */
        @media (max-width: 991px) {
            .header-grid {
                display: none;
            }

            .mobile-header {
                display: block;
            }

            .bottom-row {
                display: none;
            }
        }

        @media (min-width: 992px) {
            .mobile-header {
                display: none;
            }
        }

        /* Demo content for context */
        .demo-content {
            padding: 2rem;
            max-width: 1200px;
            margin: 0 auto;
        }

        .demo-content h2 {
            margin-top: 2rem;
        } 
}










/********** ************/


/* Footer Base Styles */
footer.container {
    width: 100%;
    background-color: #010101; // #f8f9fa;
    color: #333;
    padding: 2rem 1rem;
    border-top: 1px solid #eaeaea;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.footer-container {
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
}

/* Left Column Styling */
.narrow-sidebar {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1rem;
}

.tight-grid {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 1.5rem;
    width: 100%;
}

.column-box {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.narrow-sidebar img {
    max-height: 50px;
    margin-bottom: 0.5rem;
    width: auto;
}

.narrow-sidebar p {
    margin: 0.5rem 0;
    line-height: 1.4;
}

address {
    font-style: normal;
    line-height: 1.5;
    margin: 0.5rem 0;
}

.trademark {
    font-size: 0.7em;
    vertical-align: super;
}

/* Social Links */
.social-links {
    display: flex;
    gap: 1rem;
    justify-content: center;
    margin-top: 1rem;
}

.social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #e9ecef;
    color: #495057;
    transition: all 0.2s ease;
}

.social-icon:hover {
    background-color: #007bff;
    color: white;
    transform: translateY(-2px);
}

.social-icon svg {
    width: 18px;
    height: 18px;
    fill: currentColor;
}

/* Right Column Styling */
.footer-container > div:last-child {
    padding: 1rem;
}

/* Link Grid Styling */
.grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    width: 100%;
}

.grid h6 {
    margin: 0 0 1rem 0;
    font-size: 1rem;
    font-weight: 600;
    color: #212529;
}

.grid ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.grid li {
    margin-bottom: 0.5rem;
}

.grid a {
    text-decoration: none;
    color: #6c757d;
    transition: color 0.2s ease;
    font-size: 0.9rem;
}

.grid a:hover {
    color: #007bff;
}

/* Footer Divider */
.footer-divider {
    border: none;
    border-top: 1px solid #dee2e6;
    margin: 1.5rem 0;
}

/* Copyright Section */
.grid[style*="--pico-grid-spacing-vertical: 0;"] {
    text-align: center;
}

small {
    font-size: 0.85rem;
    color: #6c757d;
}
footer { 
font-size:70%;
}
/* Desktop Layout */
@media (min-width: 768px) {
    .footer-container {
        display: grid;
        grid-template-columns: 33% 67%;
        gap: 2rem;
        align-items: start;
    }

    .narrow-sidebar {
        align-items: flex-start;
        text-align: left;
        padding: 0;
    }

    .column-box {
        align-items: flex-start;
    }

    .tight-grid {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }

    .tight-grid .column-box:first-child {
        flex: 1;
    }

    .tight-grid .column-box:last-child {
        flex: 1;
    }

    .social-links {
        justify-content: flex-start;
    }

    /* Right column inner layout */
    .footer-container > div:last-child {
        display: flex;
        flex-direction: column;
        height: 100%;
        padding: 0;
    }

    .footer-container > div:last-child > .grid:first-child {
        flex: 1;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: auto;
        align-items: start;
    }

    .footer-container > div:last-child > .grid:last-child {
        flex: 1;
        display: flex;
        align-items: flex-end;
    }

    .footer-divider {
        margin: 1rem 0;
    }
}

/* Tablet and Larger Mobile */
@media (min-width: 480px) and (max-width: 767px) {
    .tight-grid {
        flex-direction: row;
        justify-content: space-around;
    }
}

/* Mobile Layout */
@media (max-width: 479px) {
    .footer-container {
        display: flex;
        flex-direction: column;
    }

    .narrow-sidebar {
        order: 1;
        margin-bottom: 2rem;
    }

    .footer-container > div:last-child {
        order: 2;
    }

    .grid {
        text-align: center;
    }

    .social-links {
        justify-content: center;
    }
}






/********** ************/












.right-column {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.links-grid {
    flex: 1;
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
}

.copyright-section {
    flex: 1;
    display: flex;
    align-items: flex-end;
}

@media (min-width: 768px) {
    .links-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .right-column {
        padding-left: 1rem;
    }
}
.about-drupal {
display:inline;
}
.drupal-logo {
width:85px !important;
height:auto !important;
display:inline;
margin:0 3px;
}
