/* Content headings only. Navigation and homepage are deliberately outside this scope. */
@media screen {
body:not(.page-home) {
    /* Vedic hero measured before this change: 280.426px at 1280px viewport, plus 100px. */
    --inner-hero-height: 380.426px;
    --inner-photo: url('/img/inner-header-lake.jpg');
    --inner-position: center 55%;
}
body:not(.page-home) :is(.page-header,.ns-inner-hero) {
    box-sizing: border-box;
    min-height: var(--inner-hero-height) !important;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
/* Quiet dunes for divination, Vedic practice, and symbolic systems. */
body:is(.page-tarot,.page-tarot-card,.page-palmistry,.page-numerology,
.page-angel-number,.page-angel-numbers,.page-chinese-zodiac,.page-human-design,
.page-vedic-home,.page-vedic-natal-chart,.page-vedic-natal-result,.page-vedic-dasha,
.page-vedic-nakshatra,.page-compare,.page-draconic,.page-horary) {
    --inner-photo: url('/img/inner-header-dunes.jpg');
}
/* Airy woodland for reading, wellbeing and the people behind the site. */
body:is(.page-learn,.page-learn-topic,.page-blog,.page-blog-post,.page-about,
.page-contact,.page-gemstones,.page-gemstone,.page-crystals,.page-chakras,
.page-meditation,.page-spirit-animals,.page-dream-dictionary,.page-baby-names,
.page-celebrities,.page-celebrity,.page-privacy,.page-terms) {
    --inner-photo: url('/img/inner-header-forest.jpg');
}
body:not(.page-home):not(.page-horoscope) :is(.page-header,.ns-inner-hero) {
    box-sizing: border-box;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    max-width: none;
    margin: 0 0 20px !important;
    padding: 48px max(24px, calc((100% - 1328px) / 2)) 44px !important;
    border: 0;
    border-radius: 0;
    background: #f8faf9 !important;
    text-align: center !important;
    color: #10172c;
}
body:not(.page-home):not(.page-horoscope) :is(.page-header,.ns-inner-hero)::before {
    content: '';
    position: absolute;
    display: block;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: linear-gradient(90deg,#ffffff30,#ffffff55 50%,#ffffff22), var(--inner-photo) var(--inner-position) / cover no-repeat;
    opacity: 1;
    border: 0;
    border-radius: 0;
    transform: none;
    animation: none;
    pointer-events: none;
}
body:not(.page-home):not(.page-horoscope) :is(.page-header,.ns-inner-hero)::after {
    content: none;
}
body:not(.page-home):not(.page-horoscope) :is(.page-header,.ns-inner-hero) > .container {
    width: 100%;
    max-width: 1328px;
    margin: 0 auto;
    padding: 0;
}
body:not(.page-home):not(.page-horoscope) :is(.page-header,.ns-inner-hero) h1 {
    font-family: var(--font-display);
    font-size: clamp(32px,3.7vw,54px) !important;
    font-weight: 500;
    line-height: 1.12;
    letter-spacing: -.035em;
    color: #10172c !important;
    max-width: 1100px;
    margin: 0 auto 12px !important;
    overflow-wrap: anywhere;
    text-shadow: 0 1px 12px #fff;
}
body:not(.page-home):not(.page-horoscope) :is(.page-header,.ns-inner-hero) :is(p,.content-meta) {
    max-width: 820px;
    margin-left: auto !important;
    margin-right: auto !important;
    color: #18181b !important;
    font-size: clamp(16px,1.5vw,20px);
    line-height: 1.5;
}
body:not(.page-home) :is(.page-header,.ns-inner-hero) :is(.tabs,.hero-system-selector) {
    justify-content: center;
    flex-wrap: wrap;
}
/* Existing symbols stay readable, without becoming large decorative graphics. */
body:not(.page-home):not(.page-horoscope) :is(.page-header,.ns-inner-hero) > .container > span,
body:not(.page-home) .ns-inner-hero > span {
    font-size: 30px !important;
    color: #98703e;
}
/* Account, admin and access-gate headings remain within their working layout. */
body:not(.page-home) main h1:not(.page-header h1):not(.ns-inner-hero h1):not(.report-cover-name),
body.page-panel-natal-report .panel-main > .panel-card > h3 {
    box-sizing: border-box;
    padding: 22px 20px !important;
    border-radius: 10px;
    background: linear-gradient(90deg,#ffffff70,#ffffff90),var(--inner-photo) center / cover;
    color: #10172c !important;
    overflow-wrap: anywhere;
}
body.page-panel-natal-report .report-cover-name {
    background: linear-gradient(90deg,#ffffff70,#ffffff90),var(--inner-photo) center / cover;
    color: #10172c;
}
@media(max-width:640px) {
    body:not(.page-home):not(.page-horoscope) :is(.page-header,.ns-inner-hero) {
        padding: 32px 20px 28px !important;
        margin-bottom: 12px !important;
    }
    body:not(.page-home) main h1:not(.page-header h1):not(.ns-inner-hero h1):not(.report-cover-name) {
        padding: 18px 14px !important;
    }
}
}
