.case-studies-container {
    width: 100%;
}

.case-study-card {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    margin-bottom: 2em;
    width: 100%;
}

.image-container {
    width: 100%;
}

img {
    width: 100%;
    border-radius: 12px;
    min-width:100%;
}

.case-study-description {
    font-size: 1.2em;
}

h1 {
    font-size: 1.8em;
    font-weight: 600;
    margin: 0;
}


h2 {
    font-weight: 400;
    font-size: 1.3em;
}

h3 {
    margin-top: 0.4em;
    margin-bottom: 0.1em;
    font-weight: 700;
    font-size: 1.24em;
}

.recent-work-label {
    color: #333333;
}

.introduction-container {
    max-width: 100%;
    margin-bottom: 4em;
}

.underline-text {
    box-shadow: inset 0 -0.4em 0 #F9DCE6;   
    transition: box-shadow 0.6s ease-in-out;
}

.underline-text:hover {
    box-shadow: inset 0 -1.2em 0 #F9DCE6;  
}

.underline-text-purple {
    box-shadow: inset 0 -0.4em 0 #d5b6f7;   
    transition: box-shadow 0.6s ease-in-out;
}
 
.underline-text-purple:hover {
    box-shadow: inset 0 -1.2em 0 #d5b6f7;  
}

.case-studies-container {
    margin-top: 1em;
}

a:hover .case-study-description {
    text-decoration: underline;
}

.case-study-tags {
    margin-top:0.8em;
    display:flex;
    flex-direction:row;
    gap:0.8em;
}

.case-study-tag {
    padding:0.4em;
    padding-left:0.6em;
    padding-right:0.6em;
    border:1px solid black;
    border-radius:12px;
}

.case-study-tag:hover {
    box-shadow: 0 .125rem .25rem #00000013!important;
}

@media (min-width: 1024px) {
    .case-studies-row {
        display:flex;
        flex-direction:row;
        gap: 4em;
        margin-bottom:3em;
    }

    .case-study-card-contents {
        height: 100%;
    }

    .case-study-description {
        height:2.6em;
        margin-top: 0.2em;
    }

    .image-container {
        height: 16em;
        overflow: hidden;
        border-radius: 12px;
    }

    .image-container img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .image-container.litfulo-thumbnail {
        background: #018266;
    }

    .image-container.litfulo-thumbnail img {
        background: #018266;
    }
}
.underline-text-yellow {
    box-shadow: inset 0 -0.4em 0 #ffe45e;
    transition: box-shadow 0.6s ease-in-out;
}
.underline-text-yellow:hover { box-shadow: inset 0 -1.2em 0 #ffe45e; }
@media (min-width:1024px) {
    .image-container.high-five-thumbnail { background:#ffe45e; }
    .image-container.high-five-thumbnail img { object-fit:cover; }
}

/* Global project-card image hover */
.image-container { overflow: hidden; }
.image-container img {
    transition: transform 300ms ease;
    transform-origin: center center;
}
.case-study-card a:hover .image-container img {
    transform: scale(1.04);
}
@media (prefers-reduced-motion: reduce) {
    .image-container img { transition: none; }
    .case-study-card a:hover .image-container img { transform: none; }
}
@media (min-width:1024px) {
    .image-container.ecm-thumbnail { background:#cbdadd; }
    .image-container.ecm-thumbnail img { object-fit:cover; }
}


/* Keep homepage project cards on a consistent two-column grid */
@media (min-width:1024px) {
    .case-studies-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4em; align-items:start; }
    .case-study-card { min-width:0; }
}

@media (min-width:1024px) {
    .image-container.music-thumbnail { background:#c6a9cd; }
    .image-container.music-thumbnail img { object-fit:cover; }
}

@media (min-width:1024px) {
    .image-container.music-thumbnail { background:#c9b7ff; }
    .image-container.music-thumbnail img { object-fit:contain; }
}

/* Music Industry App: solid lavender thumbnail treatment */
.image-container.music-thumbnail {
    background: #c9b7ff;
}
.image-container.music-thumbnail img {
    object-fit: contain;
}

/* Keep project-card links visually consistent before and after visiting */
.case-study-card a,
.case-study-card a:visited {
    color: #111;
}


/* Homepage navigation: keep the three primary links aligned right */
.site-nav-links {
    margin-left: auto;
}

@media (max-width:560px) {
    .introduction-container { max-width:100%; }
}
