/* Living Is So Big — Elegant Editorial theme
   Drop this stylesheet in after the main page CSS. Layout, logo, and content stay as they are.
   Cream paper, deep navy, and refined serif typography with a magazine cadence. */

@import url("https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,600;0,6..72,700;1,6..72,400;1,6..72,500&family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,600;0,8..60,700;1,8..60,400;1,8..60,500&display=swap");

:root {
    --navy: #152238;
    --blue: #152238;
    --gold: #b08948;
    --sun: #d4c09a;
    --coral: #7a3040;
    --rose: #7a3040;
    --plum: #152238;
    --ink: #1a2230;
    --muted: #5c6570;
    --cream: #f6f0e4;
    --paper: #fbf7ef;
    --line: #e0d6c4;
    --sunrise: linear-gradient(90deg, #152238, #152238);
    --shadow: 0 12px 28px -16px rgba(21, 34, 56, .28);
    --radius: 8px;
}

html { background: var(--cream); }

body {
    font-family: "Source Serif 4", Lora, Georgia, "Times New Roman", serif;
    color: var(--ink);
    background:
        radial-gradient(900px 500px at 100% 0%, rgba(176, 137, 72, .1), transparent 60%),
        var(--cream);
    line-height: 1.7;
}

h1, h2, h3,
.brand span,
.card h2,
.cta h2,
.home-sec-head h2,
.home-player-title {
    font-family: Newsreader, "Playfair Display", Georgia, serif;
    color: var(--navy);
    letter-spacing: -.02em;
}

a { color: #3a4a68; }
a:hover { color: #7a3040; }
a:focus-visible, button:focus-visible, input:focus-visible {
    outline: 2px solid #b08948;
    outline-offset: 3px;
}

/* Header — quiet masthead */
.site-header {
    background: rgba(251, 247, 239, .96);
    box-shadow: none;
    border-bottom: 1px solid var(--line);
}
.site-header::after {
    height: 3px;
    background: #152238;
}
.brand span {
    font-family: Newsreader, Georgia, serif;
    font-weight: 600;
    font-size: 1.2rem;
    letter-spacing: -.01em;
    color: #152238;
}
.nav a {
    color: #152238;
    font-family: "Source Serif 4", Georgia, serif;
    font-weight: 600;
    font-size: .88rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.nav a:hover { color: #7a3040; }
.nav a[aria-current="page"] {
    color: #152238;
    box-shadow: inset 0 -2px 0 #b08948;
}
.nav .share-link {
    background: #152238;
    color: #f6f0e4;
    border-radius: 4px;
    box-shadow: none;
    letter-spacing: .08em;
}
.nav .share-link:hover { color: #f6f0e4; filter: none; background: #7a3040; }
.nav-toggle-bars,
.nav-toggle-bars::before,
.nav-toggle-bars::after { background: #152238; }

/* Buttons — typographic, slightly squared */
.btn {
    border-radius: 6px;
    font-family: "Source Serif 4", Georgia, serif;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    font-size: .82rem;
}
.btn-sun {
    background: #152238;
    color: #f6f0e4;
    box-shadow: none;
}
.btn-sun:hover { color: #f6f0e4; background: #7a3040; }
.btn-ghost {
    background: transparent;
    color: #152238;
    border: 1px solid #152238;
}
.btn-ghost:hover { color: #152238; border-color: #152238; background: rgba(21, 34, 56, .05); }
.btn-light { background: #f6f0e4; color: #152238; }
.btn-light:hover { color: #7a3040; }
.btn-outline { color: #f6f0e4; border: 1px solid rgba(246, 240, 228, .8); border-radius: 6px; }
.btn-outline:hover { color: #152238; background: #f6f0e4; }
.btn-teal { background: #7a3040; color: #f6f0e4; border-radius: 6px; }
.btn-teal:hover { color: #f6f0e4; }

/* Hero — cream cover, navy type, restrained light */
.home-hero {
    color: #152238;
    background-color: #f3ead8;
    background-image:
        radial-gradient(ellipse 70% 50% at 80% 0%, rgba(176, 137, 72, .22), transparent 60%),
        radial-gradient(ellipse 50% 40% at 10% 100%, rgba(21, 34, 56, .1), transparent 55%),
        linear-gradient(180deg, #f8f2e6 0%, #f3ead8 55%, #ebe1cc 100%);
    background-size: 100% 100%;
    animation: none;
}
.home-hero::after {
    background: linear-gradient(180deg, transparent, #f6f0e4);
}
.home-hero-orb-gold {
    background: radial-gradient(circle, rgba(176, 137, 72, .28) 0%, transparent 68%);
}
.home-hero-orb-coral,
.home-hero-orb-crimson {
    background: radial-gradient(circle, rgba(122, 48, 64, .16) 0%, transparent 68%);
}
.home-hero-orb-teal {
    background: radial-gradient(circle, rgba(21, 34, 56, .08) 0%, transparent 68%);
}
.home-hero-orb-sun {
    background: radial-gradient(circle, rgba(176, 137, 72, .18) 0%, transparent 70%);
}
.home-hero-rays {
    background: repeating-conic-gradient(from 0deg at 50% 50%,
        rgba(255,255,255,0) 0deg,
        rgba(176, 137, 72, .06) 8deg,
        rgba(255,255,255,0) 16deg);
    opacity: .7;
}
.home-hero-sparkles { opacity: .22; }
.home-hero-heart { color: rgba(122, 48, 64, .45); text-shadow: none; }
.home-hero-heart-2,
.home-hero-heart-3,
.home-hero-heart-4 { color: rgba(176, 137, 72, .5); }
.home-hero .eyebrow {
    color: #7a3040;
    letter-spacing: .24em;
    text-shadow: none;
    font-family: "Source Serif 4", Georgia, serif;
    font-weight: 600;
}
.home-hero h1 {
    color: #152238;
    font-family: Newsreader, "Playfair Display", Georgia, serif;
    font-weight: 600;
    text-shadow: none;
    letter-spacing: -.03em;
}
.home-hero .hero-lede {
    color: #3a4554;
    font-family: "Source Serif 4", Georgia, serif;
    font-style: italic;
    text-shadow: none;
}
.home-hero-btn-warm {
    background: #152238;
    color: #f6f0e4;
    border: 0;
    border-radius: 6px;
    box-shadow: none;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.home-hero-btn-warm:hover { color: #f6f0e4; background: #7a3040; filter: none; }
.home-hero-btn-glass {
    background: transparent;
    color: #152238;
    border: 1px solid #152238;
    border-radius: 6px;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    box-shadow: none;
}
.home-hero-btn-glass:hover { color: #152238; background: rgba(21, 34, 56, .06); }
.home-hero-side .hero-brand::before {
    background: radial-gradient(circle, rgba(255, 255, 255, .85) 0%, rgba(246, 240, 228, .4) 42%, transparent 70%);
}
.home-hero-side .hero-brand {
    animation: none;
    filter: drop-shadow(0 10px 24px rgba(21, 34, 56, .16));
}
@keyframes home-glow {
    0%, 100% { filter: drop-shadow(0 10px 24px rgba(21, 34, 56, .16)); }
    50% { filter: drop-shadow(0 10px 24px rgba(21, 34, 56, .16)); }
}

/* Section bands */
.home-band-mist {
    background:
        linear-gradient(180deg, #f6f0e4 0%, #efe6d4 100%);
}
.home-band-paper { background: #fbf7ef; }
.home-band-sky {
    background: linear-gradient(180deg, #fbf7ef 0%, #efe6d4 100%);
}
.home-band-dusk {
    color: #f6f0e4;
    background:
        radial-gradient(ellipse at 85% 0%, rgba(176, 137, 72, .16), transparent 48%),
        linear-gradient(165deg, #101828 0%, #152238 48%, #1c2e4a 100%);
}
.home-band-dusk .home-sec-eyebrow,
.home-band-dusk .home-sec-heart,
.home-band-dusk .home-player-kicker,
.home-band-dusk .home-track.is-on .n { color: #d4c09a; }
.home-band-dusk .home-sec-head h2,
.home-band-dusk .home-player-title { color: #f6f0e4; }
.home-band-dusk .home-sec-head p,
.home-band-dusk .home-player-artist,
.home-band-dusk .home-player-time { color: #d5dbe4; }
.home-band-dusk .home-sec-rule::before {
    background: linear-gradient(90deg, transparent, rgba(212, 192, 154, .6) 40%, #d4c09a);
}
.home-band-dusk .home-sec-rule::after {
    background: linear-gradient(90deg, #d4c09a, rgba(212, 192, 154, .6) 60%, transparent);
}
.home-band-dusk .home-player {
    background: rgba(10, 16, 28, .55);
    border: 1px solid rgba(212, 192, 154, .22);
    box-shadow: 0 22px 50px -18px rgba(0, 0, 0, .5);
    border-radius: 8px;
}
.home-band-dusk .home-player-controls input[type=range] { accent-color: #d4c09a; }
.home-band-dusk .home-track {
    background: rgba(255, 255, 255, .05);
    border-color: rgba(212, 192, 154, .18);
    color: #f6f0e4;
    border-radius: 6px;
}
.home-band-dusk .home-track .n { color: #d4c09a; }
.home-band-dusk .home-track em { color: #c5ced8; }
.home-band-dusk .home-track.is-on {
    background: rgba(212, 192, 154, .12);
    border-color: rgba(212, 192, 154, .45);
}
.home-band-dusk .btn-light {
    background: #f6f0e4;
    color: #152238;
    box-shadow: none;
}

.home-band-navy {
    background: #152238;
}
.home-band-navy .home-sec-eyebrow,
.home-band-navy .cta-kicker { color: #d4c09a; }
.home-band-navy .home-sec-head p,
.home-band-navy .home-sec-head h2,
.home-band-navy .cta h2 { color: #f6f0e4; }

.home-sec-eyebrow {
    color: #7a3040;
    font-family: "Source Serif 4", Georgia, serif;
    font-weight: 600;
    letter-spacing: .2em;
}
.home-sec-head h2 { color: #152238; }
.home-sec-head p { color: #3a4554; }
.home-sec-rule::before { background: linear-gradient(90deg, transparent, #d4c09a 40%, #b08948); }
.home-sec-rule::after { background: linear-gradient(90deg, #b08948, #d4c09a 60%, transparent); }
.home-sec-heart { color: #7a3040; }

/* Cards — typographic, no candy orbs */
.card {
    --acc: #152238;
    --acc-soft: transparent;
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 8px;
    box-shadow: none;
}
.card::before { height: 2px; background: #152238; }
.card::after { opacity: 0; }
.card.accent-1 { --acc: #7a3040; }
.card.accent-2 { --acc: #b08948; }
.card.accent-3 { --acc: #152238; }
.card.accent-4 { --acc: #7a3040; }
.card.accent-5 { --acc: #b08948; }
.card:hover { box-shadow: 0 10px 24px -16px rgba(21, 34, 56, .25); border-color: #c8bdA8; }
.card h2 a { color: #152238; }
.card .meta {
    font-family: "Source Serif 4", Georgia, serif;
    letter-spacing: .12em;
}
.card .summary {
    font-family: "Source Serif 4", Lora, Georgia, serif;
    font-style: italic;
    color: #3a4554;
}

.cta::before { background: #b08948; height: 2px; }
.home-quote, .home-quotes, .home-video-card {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 8px;
}
.home-slider-btn, .home-quotes-btn {
    background: #fffdf8;
    color: #152238;
    border-color: #e0d6c4;
    border-radius: 6px;
}
.home-slider-dot.is-on, .home-quotes-dot.is-on { background: #152238; }

/* Sponsor as a refined advertorial */
.home-sponsor {
    --myn-onyx: #152238;
    --myn-gold: #d4c09a;
    --myn-champagne: #f6f0e4;
    --myn-ink: #f6f0e4;
    --myn-muted: rgba(246, 240, 228, .78);
    --myn-crimson: #7a3040;
    background-color: #152238;
    background-image:
        radial-gradient(50% 60% at 12% 40%, rgba(176, 137, 72, .16), transparent 62%),
        linear-gradient(165deg, #101828 0%, #152238 55%, #1c2e4a 100%);
}
.home-sponsor-name,
.home-sponsor-tagline {
    font-family: Newsreader, "Cormorant Garamond", Georgia, serif;
}
.home-sponsor-btn {
    border-radius: 6px;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-size: .78rem;
}

/* Footer */
.site-footer {
    color: #e8e4da;
    background: #152238;
}
.footer-accent { background: #b08948; height: 3px; }
.footer-wave { color: #152238; }
.footer-col h2 {
    color: #d4c09a;
    font-family: "Source Serif 4", Georgia, serif;
    letter-spacing: .16em;
}
.footer-tagline, .site-footer .quote { color: #e8e4da; }
.footer-nav a { color: #e8e4da; }
.footer-nav a:hover, .footer-nav a[aria-current="page"] { color: #d4c09a; }
.footer-bottom { border-top-color: rgba(246, 240, 228, .12); background: rgba(0, 0, 0, .2); }
.footer-bottom p { color: #b8c0cc; }
.footer-cta .btn { border-radius: 6px; }


/* Sponsor name must stay cream on the navy advertorial band */
.home-sponsor-name { color: #f6f0e4; }
.home-sponsor-tagline { color: rgba(246, 240, 228, .82); }

.cta h2 em { color: #d4c09a; }
.home-quotes {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    box-shadow: none;
    border-radius: 8px;
}
.home-quotes-track { background: #fffdf8; }
.home-quote blockquote p { color: #1a2230; font-family: "Source Serif 4", Lora, Georgia, serif; }
.home-quote blockquote::before { color: #7a3040; font-family: Newsreader, Georgia, serif; }
.home-quote figcaption strong { color: #152238; font-family: "Source Serif 4", Georgia, serif; }
.home-quote figcaption span,
.home-quote figcaption time { color: #5c6570; font-family: "Source Serif 4", Georgia, serif; }
.card .more, .more {
    background: #f6f0e4;
    color: #152238;
    border: 1px solid #e0d6c4;
    border-radius: 6px;
    font-weight: 600;
    letter-spacing: .04em;
}
.more:hover { background: #152238; color: #f6f0e4; }
.home-text-image-copy h2, .home-prose h2 {
    color: #152238;
    font-family: Newsreader, "Playfair Display", Georgia, serif;
}
.home-text-image-media figcaption strong,
.home-image-figure figcaption strong { color: #152238; }
.home-text-image-media figcaption span,
.home-image-figure figcaption span { color: #3a4554; }
.home-text-image-media img,
.home-image-figure img {
    border-radius: 8px;
    box-shadow: 0 16px 32px -18px rgba(21, 34, 56, .28), 0 0 0 1px #e0d6c4;
    background: #fffdf8;
}
.home-video-card {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 8px;
    box-shadow: none;
}

/* ——— About, Stories, Share (same layout; palette and type only) ——— */
.hero h1 em,
.home-hero h1 em {
    color: #7a3040;
    font-style: italic;
}
.hero-lede,
.home-hero .hero-lede { color: #3a4554; }
.hero-lede strong,
.home-hero .hero-lede strong {
    color: #152238;
    border-bottom: 2px solid #b08948;
}

.hero-stats span {
    background: rgba(21, 34, 56, .06);
    border: 1px solid #e0d6c4;
    color: #152238;
    border-radius: 6px;
}
.hero-stats strong { color: #152238; }

.search {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 8px;
    box-shadow: 0 12px 28px -16px rgba(21, 34, 56, .28);
}
.search input { border-radius: 6px; color: #1a2230; }
.search input::placeholder { color: #5c6570; }
.search button {
    background: #152238;
    color: #f6f0e4;
    border-radius: 6px;
    font-family: "Source Serif 4", Georgia, serif;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    font-size: .82rem;
}
.search button:hover { background: #7a3040; color: #f6f0e4; }
.search-clear { background: #efe6d4; color: #152238; }
.search-clear:hover { background: #152238; color: #f6f0e4; }

/* Featured story + list */
.featured {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 8px;
    box-shadow: none;
}
.featured::after {
    font-family: Newsreader, "Playfair Display", Georgia, serif;
    color: rgba(21, 34, 56, .08);
}
.featured-badge {
    background: #152238;
    color: #f6f0e4;
    border-radius: 4px;
    font-family: "Source Serif 4", Georgia, serif;
    font-weight: 600;
    letter-spacing: .14em;
}
.featured h2 a:hover { color: #7a3040; }
.featured .summary {
    font-family: "Source Serif 4", Lora, Georgia, serif;
    color: #3a4554;
    border-left-color: #7a3040;
}

.inspired-pill {
    color: #7a3040;
    background: #f6f0e4;
    border: 1px solid #e0d6c4;
    border-radius: 4px;
    font-family: "Source Serif 4", Georgia, serif;
    font-weight: 600;
    letter-spacing: .1em;
}
.inspired-note {
    background: #f6f0e4;
    border: 1px dashed #e0d6c4;
    border-radius: 8px;
    color: #5c6570;
}
.inspired-note span { color: #7a3040; }

.pager a, .pager .current, .pager .ellipsis { border-radius: 6px; font-weight: 600; }
.pager a { background: #fffdf8; border: 1px solid #e0d6c4; color: #152238; }
.pager a:hover { border-color: #152238; color: #152238; background: #f6f0e4; }
.pager .current { background: #152238; color: #f6f0e4; }

/* Story letter */
.letter {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 8px;
    box-shadow: 0 16px 36px -20px rgba(21, 34, 56, .22);
    background-image: none;
}
.letter-ribbon {
    height: 3px;
    background: #152238;
    border-radius: 8px 8px 0 0;
}
.letter h1 { font-family: Newsreader, "Playfair Display", Georgia, serif; color: #152238; }
.story-body {
    font-family: "Source Serif 4", Lora, Georgia, serif;
    color: #1a2230;
}
.story-body .quote-mark {
    font-family: Newsreader, "Playfair Display", Georgia, serif !important;
    color: #7a3040;
}
.story-body a { color: #3a4a68; }
.story-body a:hover { color: #7a3040; }
.story-body p:first-of-type::first-letter {
    font-family: Newsreader, "Playfair Display", Georgia, serif;
    color: #7a3040;
}
.story-figure img {
    border-radius: 8px;
    box-shadow: 0 16px 32px -18px rgba(21, 34, 56, .28);
    background: #f6f0e4;
}
.story-figure figcaption { font-family: "Source Serif 4", Lora, Georgia, serif; }
.story-figure figcaption::before { background: #b08948; }
.signoff { font-family: Newsreader, "Playfair Display", Georgia, serif; }

/* Share form */
.form-card {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 8px;
    box-shadow: 0 16px 36px -20px rgba(21, 34, 56, .22);
}
.form-card::before {
    height: 3px;
    background: #152238;
    border-radius: 8px 8px 0 0;
}
.form-card h2 { font-family: Newsreader, "Playfair Display", Georgia, serif; color: #152238; }
main .field label { color: #152238; font-weight: 600; }
main .field input[type=text],
main .field input[type=email],
main .field input[type=password],
main .field input[type=search],
main .field input[type=date],
main .field input[type=number],
main .field textarea {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 6px;
    color: #1a2230;
    font-family: "Source Serif 4", Lora, Georgia, serif;
}
main .field textarea { font-family: "Source Serif 4", Lora, Georgia, serif; }
main .field input:focus,
main .field textarea:focus {
    border-color: #152238;
    box-shadow: 0 0 0 3px rgba(176, 137, 72, .28);
}
main .check input { accent-color: #152238; }
.thanks p { color: #3a4554; }
.empty { background: #fffdf8; border-color: #e0d6c4; border-radius: 8px; }

/* About cards and sections */
.about-feature img {
    border-radius: 8px;
    box-shadow: 0 16px 32px -18px rgba(21, 34, 56, .28), 0 0 0 1px #e0d6c4;
}
.about-card,
.about-story,
.about-more,
.about-radio,
.about-close {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 8px;
    box-shadow: none;
}
.about-card h2,
.about-more h2,
.about-radio h2 { font-family: Newsreader, "Playfair Display", Georgia, serif; color: #152238; }
.about-story p,
.about-more p {
    font-family: "Source Serif 4", Lora, Georgia, serif;
    color: #1a2230;
}
.about-story a, .about-more a { color: #3a4a68; }
.about-story a:hover, .about-more a:hover { color: #7a3040; }
.about-card .cap small,
.about-radio figcaption,
.about-close cite,
.about-tm { color: #5c6570; }
.about-close p {
    font-family: Newsreader, "Playfair Display", Georgia, serif;
    color: #152238;
}
.realizations li {
    background: #fffdf8;
    border: 1px solid #e0d6c4;
    border-radius: 8px;
    color: #152238;
    font-family: "Source Serif 4", Georgia, serif;
}
.about-card .video,
.about-card img { border-radius: 8px; }

/* Quotes and typography leftovers on inner pages */
.quote, blockquote {
    font-family: "Source Serif 4", Lora, Georgia, serif;
}
.site-footer .quote {
    font-family: Newsreader, "Playfair Display", Georgia, serif;
    color: #e8e4da;
}
