/* Header Improvements */
.nnsdp__masthead {
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    padding: 1rem 0;
    border-bottom: 2px solid #e0e0e0;
}

.nnsdp__wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.nnsdp__brand-block {
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 1rem;
    justify-content: flex-start;
    /* Align left */
}

.nnsdp__brand-mark {
    height: 80px;
    /* Adjusted for row layout */
    width: auto;
    flex-shrink: 0;
    transition: height 0.2s;
    object-fit: contain;
}

.nnsdp__identity {
    flex: 1;
    max-width: 600px;
    /* Prevent text from stretching too wide */
}

.nnsdp__identity h1 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #059669;
    margin-bottom: 0.25rem;
    line-height: 1.3;
    text-align: left;
}

.nnsdp__identity p {
    font-size: 0.875rem;
    color: #047857;
    opacity: 0.9;
    line-height: 1.4;
}

.nnsdp__name-full {
    display: none;
}

.nnsdp__name-short {
    display: inline;
}

@media (min-width: 768px) {
    .nnsdp__masthead {
        padding: 1rem 0;
    }

    .nnsdp__wrapper {
        padding: 0 2rem;
    }

    .nnsdp__brand-block {
        flex-direction: row;
        align-items: center;
        text-align: left;
        gap: 1.5rem;
        justify-content: flex-start;
    }

    .nnsdp__brand-mark {
        height: 100px;
        object-position: center;
        margin-left: 0;
    }

    .nnsdp__identity {
        white-space: nowrap;
        /* Prevent text wrapping */
    }

    .nnsdp__identity h1 {
        font-size: 1.85rem;
        font-weight: 700;
        background: linear-gradient(135deg, #059669 0%, #047857 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        letter-spacing: -0.02em;
        white-space: nowrap;
        /* Keep title on one line */
    }

    .nnsdp__identity p {
        font-size: 1rem;
        font-weight: 500;
        color: #047857;
        opacity: 0.95;
        letter-spacing: 0.01em;
    }

    .nnsdp__name-full {
        display: inline;
    }

    .nnsdp__name-short {
        display: none;
    }
}