* {
    box-sizing: border-box;
}

body {
    margin: 0;
    background-color: #121212;
    color: #e0e0e0;
    font-family: Inter, system-ui, sans-serif;
    line-height: 1.6;
}

.site-header {
    position: relative; /* allows overlay */
    text-align: left;
    padding-left: 5%; /* space from left edge */
    padding-right: 1rem; /* keeps right padding intact */
    background-image: url('images/gleehavenbanner.webp');
    background-size: cover;       /* image covers full area */
    background-position: center top;  /* keep focus centered */
    background-repeat: no-repeat;
    color: #f0f0f0;               /* text color */
    overflow: hidden;             /* keeps overlay contained */
    min-height: 250px;            /* ensures banner has minimum height on very small screens */
}

/* subtle dark overlay so text is readable */
.site-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.2); /* 20% black overlay */
    z-index: 0; /* behind text */
    pointer-events: none;
}

/* ensure text is above overlay */
.site-header h1,
.site-header .tagline {
    position: relative;
    z-index: 1;
}

/* Header title */
.site-header h1 {
    font-family: 'Segoe UI Black', sans-serif;
    color: #92f4ff;
    -webkit-text-stroke: 1px rgba(0, 0, 0, 0.8);
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
    margin: 0;
    padding: 0;
    font-size: clamp(2rem, 6.5vw, 3rem); /* scales with viewport */
}

/* Tagline */
.site-header .tagline {
    font-family: 'Segoe UI', serif;
    color: #f0f0f0;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
    margin: 0.25rem 0 0; /* very small gap below title */
    font-size: clamp(1rem, 2.5vw, 1.2rem);
}

}

.site-header h1 {
    font-size: 2.5rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.tagline {
    font-size: 1.1rem;
    color: #b5b5b5;
}

.site-nav {
    text-align: left;
    margin-top: .5rem; /* space between tagline and nav */
}

.site-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 2rem; /* space between links */
}

/* Nav Links */
.site-nav a {
    font-family: 'Segoe UI Black', sans-serif;
    color: #cbf9ff;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
    text-decoration: none;
    font-weight: 500;
    font-size: 1rem;
    transition: color 0.3s;
}

.site-nav a:hover {
    color: #92f4ff; /* subtle highlight on hover */
}

/* responsive adjustments */
@media (max-width: 600px) {
    .site-nav ul {
        flex-direction: column;
        gap: 1rem;
    }
    .site-nav a {
        font-size: 0.95rem;
    }
}

.content {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 1.5rem 4rem;
}

/* intro blurb */
.intro {
    font-family: 'Segoe UI', sans-serif;
    color: #e0e0e0
    max-width: 700px;
    margin: 0 auto 4rem;
    font-size: 1.05rem;
}

/* Selected Work */
.featured h2 {
    font-family: 'Segoe UI Black', sans-serif;
    color: #e0e0e0
    font-size: 1.6rem;
    font-weight: 600;
    margin-bottom: 2rem;
}

.work-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}

.work-item img {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
    margin-bottom: 0.75rem;
}

/* h3: Book Covers & Print, Creatures & Illustration, World-building Visuals */
.work-item h3 {
    font-family: 'Segoe UI Black', sans-serif;
    color: #e0e0e0
    font-size: 1.1rem;
    margin: 0.25rem 0;
}

/* Descriptions for h3 */
.work-item p {
    font-family: 'Segoe UI', sans-serif;
    color: #e0e0e0
    font-size: 0.95rem;
    color: #c0c0c0;
}

/* h4: credibility section */
.credibility {
    border-left: 3px solid #92f4ff;
    padding-left: 1.25rem;

    font-family: 'Segoe UI Light', sans-serif;
    color: #dcdcdc;
    font-size: 1rem;
    line-height: 1.7;
    max-width: 700px;

    margin-top: 3rem;
    margin-bottom: 3rem;
    margin-left: 0;
}

.credibility p {
    margin: 0;
}
/* WORK PAGE STUFF */
/* Smaller header for inner pages */
.small-header {
    min-height: 220px;
    padding-bottom: 2rem;
}

/* Work page layout */
.work-page {
    padding: 4rem 5%;
}

/* Individual project block */
.project {
    margin-bottom: 4rem;
}

/* Clickable project */
.project-link {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 2rem;
    text-decoration: none;
    color: inherit;
}

/* Project images */
.project img {
    max-width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

/* Project text */
.project-text h2 {
    font-family: 'Segoe UI Black', sans-serif;
    margin: 0 0 0.5rem;
    font-size: 1.6rem;
}

.project-text p {
    font-family: 'Segoe UI', sans-serif;    
    margin: 0;
    line-height: 1.6;
    color: #d0d0d0;
}

/* Hover effect (subtle) */
.project-link:hover h2 {
    color: #92f4ff;
}

/* Responsive layout */
@media (max-width: 800px) {
    .project-link {
        grid-template-columns: 1fr;
    }
}

/* Project detail page (UNDER WORK STUFF) */
.project-page {
    padding: 4rem 5%;
    max-width: 900px;
}

/* Intro paragraph */
.project-intro p {
    font-family: 'Segoe UI', sans-serif;
    font-size: 1.05rem;
    line-height: 1.7;
    color: #e0e0e0;
    max-width: 700px;
    margin-bottom: 3rem;
}

/* Image + text blocks */
.project-block {
    margin-bottom: 3.5rem;
}

.project-block img {
    max-width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
    margin-bottom: 1.25rem;
}

/* Description under images */
.project-description p {
    font-family: 'Segoe UI', sans-serif;
    margin: 0;
    line-height: 1.6;
    color: #d0d0d0;
    max-width: 700px;
}

/* Closing reflection */
.project-reflection p {
    font-family: 'Segoe UI', sans-serif;
    font-style: italic;
    color: #c8c8c8;
    max-width: 700px;
}

/* Project next / previous navigation */

.project-nav {
    font-family: 'Segoe UI Light', sans-serif;
    display: flex;
    justify-content: space-between;
    margin-top: 2.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid #333;
}

.project-nav a {
    text-decoration: none;
    color: #d0d0d0;
    font-size: 0.95rem;
    transition: color 0.3s;
}

.project-nav a:hover {
    color: #92f4ff;
}

/* BOOKS STUFF */
.page-header {
    max-width: 800px;
    margin-bottom: 4rem;
}

/* books page intro text */
.page-intro {
    font-family: 'Segoe UI', sans-serif;
    max-width: 700px;
    margin-bottom: 1rem;
    color: #bbb;
    font-size: 1.1rem;
}

/* Links color on books intro */
.text-accent {
    color: #bbb; /* accent color */
}

.text-accent a {
    color: #cbf9ff;
    text-decoration: none;
}

.text-accent a:hover {
    color: #92f4ff;
}

.social-links {
    font-weight: bold;   /* optional, makes links stand out */
    margin-top: 0.5em;   /* space between intro paragraph and links */
}

/* individual book text */
.book-entry,
.series-book {
    font-family: 'Segoe UI', sans-serif;
    display: flex;
    gap: 2rem;
    margin-bottom: 3rem;
}

.book-entry img,
.series-book img {
    width: 160px;
    height: auto;
    border-radius: 4px;
}

.book-info h2,
.series-book h3 {
    margin-top: 0;
}

.book-description {
    margin: 0.75rem 0;
}

.book-links a {
    color: #92f4ff;
    text-decoration: none;
}

.book-links a:hover {
    text-decoration: underline;
}

/* gleehaven tales title */
.book-series {
    font-family: 'Segoe UI Black', sans-serif;
    margin: 5rem 0;
}

/* gleehaven tales series description */
.series-description {
    font-family: 'Segoe UI', sans-serif;
    max-width: 700px;
    margin-bottom: 1.5rem;
    color: #bbb;
}

.series-books {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.in-progress {
    opacity: 0.7;
}

.book-status {
    font-style: italic;
    color: #aaa;
}

/* About page */
.about-name {
    font-family: 'Segoe UI Black', sans-serif;
    color: #ddd;
}

.about-hero {
    margin-top: 3rem;
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    align-items: center;
    margin-bottom: 3rem;
}

.about-hero .portrait {
    width: 220px;
    height: auto;
    border-radius: 12px;
    flex-shrink: 0;
    box-shadow: 0 4px 10px rgba(0,0,0,0.5); /* subtle pop */
}

.about-hero .hero-text {
    font-family: 'Segoe UI Light', sans-serif;
    flex: 1;
    min-width: 250px;
    font-size: 1.25rem;
    line-height: 1.6;
    color: #ddd;
}

/* About - Additional paragraphs */
.about-text p {
    font-family: 'Segoe UI', sans-serif;
    margin-bottom: 1.5rem;
    line-height: 1.6;
    color: #ddd;
}

/* About - Skills */
.about-skills h2 {
    font-family: 'Segoe UI Black', sans-serif;
    margin-bottom: 1rem;
}

.skills-list {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem;
}

.skills-list li {
    font-family: 'Segoe UI Light', sans-serif;
    background-color: #222;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    font-size: 0.95rem;
    color: #bbb;
}

/* About - Links */
.about-connect {
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #333;
}

.about-connect h2 {
    font-family: 'Segoe UI Black', sans-serif;
    margin-bottom: 1rem;
}

.social-links {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem 2rem;
}

.social-links li a {
    font-family: 'Segoe UI', sans-serif;
    text-decoration: none;
    color: #bbb;
    font-weight: 500;
    transition: color 0.3s;
}

.social-links li a:hover {
    color: #92f4ff;
}

/* website footer */
.site-footer {
    background-color: #111; /* match your dark header */
    padding: 2rem 1.5rem;
    text-align: left;       /* can be center if you prefer */
    border-top: 1px solid #333;
}

.footer-nav ul {
    list-style: none;
    padding: 0;
    margin: 0 0 0.75rem 0;
    display: flex;
    gap: 1.5rem;
}

.footer-nav a {
    font-family: 'Segoe UI Black', sans-serif;
    text-decoration: none;
    color: #bbb;
    font-size: 0.95rem;
    transition: color 0.3s;
}

.footer-nav a:hover {
    color: #92f4ff;
}

.footer-copy {
    font-family: 'Segoe UI', sans-serif;
    font-size: 0.85rem;
    color: #666;
}
