/*
Theme Name: NexiaBloom
Theme URI: https://nexiamath.com/themes/nexia-bloom
Author: Wonder World Host Limited
Author URI: https://nexiamath.com
Description: A warm lifestyle theme for wellness, food, home, beauty, and calm creator publishing.
Version: 1.0.3
Requires at least: 6.0
Tested up to: 7.0.2
Requires PHP: 8.0
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nexia-bloom
Domain Path: /languages
Tags: blog, news, portfolio, custom-logo, custom-menu, featured-images, footer-widgets, editor-style, wide-blocks, translation-ready
*/

:root {
    --wp-shell: #fdf2f8;
    --wp-ink: #35201f;
    --wp-muted: color-mix(in srgb, #35201f 66%, white);
    --wp-primary: #db2777;
    --wp-secondary: #365314;
    --wp-accent: #fbbf24;
    --wp-card: #ffffff;
    --wp-line: color-mix(in srgb, #365314 16%, white);
    --wp-radius: 24px;
    --wp-shadow: 0 22px 70px color-mix(in srgb, #365314 16%, transparent);
    --wp-heading-font: Cormorant Garamond, Georgia, serif;
    --wp-body-font: Optima, Candara, Verdana, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--wp-ink); background: radial-gradient(circle at top left, color-mix(in srgb, var(--wp-primary) 18%, transparent), transparent 34rem), linear-gradient(135deg, var(--wp-shell), #fff 52%, color-mix(in srgb, var(--wp-accent) 13%, white)); font-family: var(--wp-body-font); font-size: 17px; line-height: 1.7; }
body.admin-bar .site-header { top: 32px; }
a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .22em; }
a:hover { color: var(--wp-primary); }
img { max-width: 100%; height: auto; vertical-align: middle; }
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; }
.skip-link:focus { clip: auto; clip-path: none; height: auto; left: 1rem; padding: .8rem 1rem; top: 1rem; width: auto; z-index: 100000; background: #fff; border: 2px solid var(--wp-primary); }
.site-shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.site-header { position: sticky; top: 0; z-index: 20; backdrop-filter: blur(18px); background: color-mix(in srgb, var(--wp-shell) 88%, white 12% / 92%); border-bottom: 1px solid var(--wp-line); }
.header-main { display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; padding: 1rem 0 .85rem; }
.brand-link { display: inline-flex; align-items: center; gap: .75rem; font-weight: 800; text-decoration: none; }
.custom-logo-link img { max-height: 54px; width: auto; }
.brand-mark { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 16px; color: #fff; background: linear-gradient(135deg, var(--wp-primary), var(--wp-secondary)); box-shadow: var(--wp-shadow); }
.brand-name { font-family: var(--wp-heading-font); font-size: clamp(1.35rem, 2.4vw, 2.15rem); letter-spacing: -.035em; }
.primary-nav ul, .footer-nav ul { display: flex; flex-wrap: wrap; align-items: center; gap: .3rem; margin: 0; padding: 0; list-style: none; }
.primary-nav a, .footer-nav a { display: inline-flex; padding: .58rem .78rem; border-radius: 999px; text-decoration: none; font-weight: 750; }
.primary-nav a:hover, .footer-nav a:hover { background: color-mix(in srgb, var(--wp-primary) 10%, white); }
.mobile-menu { display: none; }
.category-strip { display: flex; gap: .55rem; overflow-x: auto; padding: 0 0 1rem; scrollbar-width: thin; }
.category-strip a { flex: 0 0 auto; padding: .48rem .78rem; border: 1px solid var(--wp-line); border-radius: 999px; background: color-mix(in srgb, #fff 82%, var(--wp-accent)); text-decoration: none; font-size: .88rem; font-weight: 800; }
.hero-panel { margin: 2rem auto; padding: clamp(1.3rem, 3vw, 2.4rem); border-radius: calc(var(--wp-radius) + 14px); background: linear-gradient(135deg, color-mix(in srgb, var(--wp-primary) 13%, white), #fff 48%, color-mix(in srgb, var(--wp-accent) 18%, white)), #fff; border: 1px solid color-mix(in srgb, var(--wp-secondary) 12%, white); box-shadow: var(--wp-shadow); }
.hero-kicker, .entry-kicker { text-transform: uppercase; letter-spacing: .14em; font-size: .78rem; font-weight: 900; color: var(--wp-primary); }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr); gap: clamp(1.2rem, 3vw, 2.3rem); align-items: stretch; }
.hero-title, .page-title, .entry-title { font-family: var(--wp-heading-font); line-height: .98; letter-spacing: -.055em; margin: .35rem 0 1rem; }
.hero-title { font-size: clamp(2.45rem, 6vw, 5.7rem); }
.page-title { font-size: clamp(2.15rem, 4vw, 4.4rem); }
.entry-title { font-size: clamp(1.65rem, 3vw, 3.25rem); }
.entry-title a { text-decoration: none; }
.hero-copy { max-width: 62ch; font-size: clamp(1.03rem, 1.8vw, 1.2rem); color: var(--wp-muted); }
.hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.35rem; }
.button-link, .read-more, .search-submit, input[type='submit'] { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; border: 0; border-radius: 999px; padding: .75rem 1rem; background: var(--wp-secondary); color: #fff; font-weight: 850; text-decoration: none; cursor: pointer; }
.button-link.secondary { background: #fff; color: var(--wp-ink); border: 1px solid var(--wp-line); }
.main-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: clamp(1.5rem, 3vw, 2.5rem); align-items: start; margin: 2rem auto 4rem; }
.post-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.content-card { position: relative; min-height: 100%; overflow: hidden; border-radius: var(--wp-radius); background: var(--wp-card); border: 1px solid var(--wp-line); box-shadow: 0 14px 42px color-mix(in srgb, var(--wp-secondary) 9%, transparent); }
.content-card.is-featured { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); }
.card-media { display: block; min-height: 220px; background: linear-gradient(135deg, var(--wp-primary), var(--wp-secondary)); }
.card-media img { width: 100%; height: 100%; min-height: 220px; object-fit: cover; }
.card-fallback { min-height: 220px; display: grid; place-items: center; color: #fff; font-weight: 900; font-size: 2.5rem; background: linear-gradient(135deg, var(--wp-primary), var(--wp-secondary)); }
.card-body { padding: clamp(1rem, 2.5vw, 1.55rem); }
.card-meta, .entry-meta { display: flex; flex-wrap: wrap; gap: .55rem; color: var(--wp-muted); font-size: .88rem; font-weight: 700; }
.card-title { margin: .65rem 0; font-family: var(--wp-heading-font); font-size: clamp(1.35rem, 2.3vw, 2.15rem); line-height: 1.05; letter-spacing: -.035em; }
.card-title a { text-decoration: none; }
.card-excerpt { color: var(--wp-muted); margin-bottom: 1rem; }
.sidebar { display: grid; gap: 1rem; }
.widget, .sidebar-panel { padding: 1rem; border-radius: var(--wp-radius); border: 1px solid var(--wp-line); background: color-mix(in srgb, #fff 88%, var(--wp-shell)); }
.widget-title, .sidebar-title { margin: 0 0 .8rem; font-family: var(--wp-heading-font); font-size: 1.2rem; }
.side-list { display: grid; gap: .75rem; margin: 0; padding: 0; list-style: none; }
.side-list a { display: grid; grid-template-columns: 2.2rem 1fr; gap: .7rem; text-decoration: none; font-weight: 800; }
.side-rank { display: grid; place-items: center; width: 2.2rem; height: 2.2rem; border-radius: 50%; background: var(--wp-primary); color: #fff; font-size: .8rem; }
.site-main article.sticky .content-card, .sticky.content-card { outline: 3px solid color-mix(in srgb, var(--wp-accent) 60%, white); }
.entry-article, .page-content, .not-found { margin: 2rem auto 4rem; }
.entry-shell { width: min(840px, calc(100% - 40px)); margin: 0 auto; }
.entry-header { padding: 2.2rem 0 1.5rem; }
.featured-image { margin: 0 auto 2rem; border-radius: calc(var(--wp-radius) + 10px); overflow: hidden; box-shadow: var(--wp-shadow); }
.featured-image img { display: block; width: 100%; height: auto; margin-inline: auto; }
.entry-content { font-size: clamp(1.05rem, 1.6vw, 1.18rem); }
.entry-content > * { width: min(760px, calc(100% - 40px)); max-width: 760px; margin-left: auto; margin-right: auto; }
.entry-content > .alignwide { width: min(1040px, calc(100% - 40px)); max-width: 1040px; }
.entry-content > .alignfull { width: 100%; max-width: none; }
.entry-content img.alignnone,
.entry-content .wp-block-image:not(.alignleft):not(.alignright) img,
.entry-content p > img:only-child { display: block; margin-inline: auto; }
.entry-content h2, .entry-content h3 { font-family: var(--wp-heading-font); line-height: 1.08; letter-spacing: -.035em; }
.entry-footer { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--wp-line); }
.search-form { display: flex; gap: .55rem; }
.search-field { min-width: 0; width: 100%; border: 1px solid var(--wp-line); border-radius: 999px; padding: .8rem 1rem; font: inherit; }
.pagination, .nav-links { display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; margin-top: 1.5rem; }
.page-numbers, .post-page-numbers { padding: .5rem .75rem; border-radius: 999px; border: 1px solid var(--wp-line); background: #fff; text-decoration: none; font-weight: 800; }
.site-footer { border-top: 1px solid var(--wp-line); background: color-mix(in srgb, var(--wp-secondary) 94%, black); color: #fff; }
.footer-grid { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.4rem; align-items: start; padding: 2rem 0; }
.footer-brand { max-width: 46rem; }
.footer-brand strong { display: block; font-family: var(--wp-heading-font); font-size: 1.6rem; letter-spacing: -.035em; }
.footer-brand p { color: color-mix(in srgb, white 72%, var(--wp-accent)); margin-bottom: 0; }
.footer-nav a { color: #fff; }
.footer-widgets { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-bottom: 1.5rem; }
.comment-navigation, .posts-navigation, .post-navigation { margin: 2rem 0; }
.comments-area { margin-top: 2.5rem; }
.comment-list { padding-left: 1.25rem; }
.no-results, .not-found { padding: 2rem; border-radius: var(--wp-radius); background: #fff; border: 1px solid var(--wp-line); }
/* Nexia usability polish: clearer focus, softer motion, and calmer reading rhythm. */
:where(a, button, input, summary, textarea, select):focus-visible {
    outline: 3px solid color-mix(in srgb, var(--wp-accent) 75%, white);
    outline-offset: 3px;
}
.content-card,
.button-link,
.read-more,
.category-strip a,
.primary-nav a {
    transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease;
}
.content-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 54px color-mix(in srgb, var(--wp-secondary) 13%, transparent);
}
.card-title,
.entry-title,
.page-title {
    text-wrap: balance;
}
.card-excerpt,
.hero-copy,
.entry-content p {
    text-wrap: pretty;
}
.entry-content p {
    margin-bottom: 1.15rem;
}
.button-link:hover,
.read-more:hover,
.search-submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--wp-secondary) 18%, transparent);
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Nexia dynamic template system v1.0.1 */
.topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
    padding: .55rem 0 0;
    font-size: .8rem;
    color: var(--wp-muted);
}
.topline-label {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    color: var(--wp-secondary);
    font-weight: 950;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.topline-label::before {
    content: '';
    width: .55rem;
    height: .55rem;
    border-radius: 999px;
    background: var(--wp-primary);
    box-shadow: 0 0 0 .3rem color-mix(in srgb, var(--wp-primary) 13%, transparent);
}
.nav-frame {
    padding-bottom: .3rem;
}
.header-main {
    min-height: 74px;
    padding: .75rem 0;
}
.brand-copy {
    display: grid;
    gap: .05rem;
}
.brand-subtitle {
    color: var(--wp-muted);
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.primary-menu,
.mobile-menu-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.primary-nav {
    min-width: 0;
}
.primary-nav .primary-menu {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: .28rem;
}
.primary-nav li {
    position: relative;
}
.primary-nav .sub-menu {
    position: absolute;
    left: 0;
    top: calc(100% + .45rem);
    z-index: 50;
    min-width: 220px;
    display: grid;
    gap: .2rem;
    padding: .65rem;
    margin: 0;
    list-style: none;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-6px);
    border: 1px solid var(--wp-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--wp-shadow);
    transition: opacity .18s ease, transform .18s ease;
}
.primary-nav li:hover > .sub-menu,
.primary-nav li:focus-within > .sub-menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}
.header-tools {
    display: flex;
    align-items: center;
    gap: .55rem;
}
.header-search {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: .58rem .82rem;
    border: 1px solid var(--wp-line);
    border-radius: 999px;
    background: color-mix(in srgb, #fff 84%, var(--wp-shell));
    font-size: .86rem;
    font-weight: 900;
    text-decoration: none;
}
.mobile-menu summary {
    list-style: none;
}
.mobile-menu summary::-webkit-details-marker {
    display: none;
}
.menu-bars {
    display: inline-grid;
    gap: 4px;
}
.menu-bars span {
    display: block;
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
}
.mobile-menu-panel {
    position: absolute;
    right: 20px;
    top: calc(100% + .6rem);
    z-index: 60;
    width: min(420px, calc(100vw - 32px));
    padding: 1rem;
    border: 1px solid var(--wp-line);
    border-radius: 24px;
    background: color-mix(in srgb, #fff 92%, var(--wp-shell));
    box-shadow: var(--wp-shadow);
}
.mobile-menu-list {
    display: grid;
    gap: .35rem;
}
.mobile-menu-list a {
    display: flex;
    min-height: 44px;
    align-items: center;
    padding: .65rem .75rem;
    border-radius: 14px;
    background: #fff;
    text-decoration: none;
    font-weight: 900;
}
.mobile-category-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-top: .9rem;
    padding-top: .9rem;
    border-top: 1px solid var(--wp-line);
}
.mobile-category-cloud a {
    padding: .45rem .62rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--wp-accent) 22%, #fff);
    text-decoration: none;
    font-size: .84rem;
    font-weight: 850;
}
.hero-panel {
    position: relative;
    overflow: hidden;
}
.hero-panel::after {
    content: '';
    position: absolute;
    inset: auto -8% -22% auto;
    width: 34vw;
    height: 34vw;
    min-width: 260px;
    min-height: 260px;
    border-radius: 40% 60% 50% 50%;
    background: color-mix(in srgb, var(--wp-accent) 22%, transparent);
    pointer-events: none;
}
.hero-copy-block,
.hero-brief {
    position: relative;
    z-index: 1;
}
.hero-brief {
    align-self: stretch;
    display: grid;
    align-content: center;
    gap: .8rem;
    padding: clamp(1rem, 2vw, 1.35rem);
    border: 1px solid color-mix(in srgb, var(--wp-secondary) 12%, white);
    border-radius: var(--wp-radius);
    background: color-mix(in srgb, #fff 84%, var(--wp-shell));
}
.hero-brief-label,
.card-category {
    display: inline-flex;
    width: fit-content;
    padding: .28rem .52rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--wp-primary) 12%, white);
    color: var(--wp-primary);
    font-size: .72rem;
    font-weight: 950;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.hero-brief-title {
    margin: 0;
    font-family: var(--wp-heading-font);
    font-size: clamp(1.35rem, 2vw, 2.1rem);
    line-height: 1.02;
    letter-spacing: -.04em;
}
.hero-brief-title a {
    text-decoration: none;
}
.hero-metrics {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: 1.2rem;
}
.hero-metrics span {
    padding: .5rem .7rem;
    border: 1px solid var(--wp-line);
    border-radius: 999px;
    background: color-mix(in srgb, #fff 72%, var(--wp-shell));
    font-size: .84rem;
    font-weight: 900;
}
.archive-hero {
    padding-block: clamp(1.4rem, 4vw, 3rem);
}
.card-variant-2 .card-media {
    min-height: 180px;
}
.card-variant-3 .card-body {
    background: linear-gradient(180deg, #fff, color-mix(in srgb, var(--wp-shell) 62%, #fff));
}
.card-variant-4 .read-more {
    background: var(--wp-primary);
}
.sidebar-panel-intro p {
    color: var(--wp-muted);
    margin-top: -.35rem;
}

/* Product-specific navigation and stream system. */
.topline-brand,
.topline-symbol,
.desktop-more summary,
.stream-heading,
.stream-heading > div {
    display: flex;
    align-items: center;
}
.topline-brand { gap: .7rem; }
.header-search,
.desktop-more-panel,
.desktop-more-list a,
.mobile-menu summary,
.mobile-menu-panel,
.mobile-menu-list a,
.mobile-category-cloud a,
.hero-metrics span {
    color: var(--wp-ink);
}
.topline { padding-top: .35rem; }
.header-main {
    min-height: 64px;
    padding-block: .45rem;
}
.custom-logo-link img { max-height: 44px; }
.category-strip { padding-bottom: .65rem; }
.category-strip a {
    padding: .35rem .65rem;
    font-size: .8rem;
}
.topline-symbol {
    min-height: 1.55rem;
    padding: .18rem .5rem;
    border: 1px solid var(--wp-line);
    border-radius: 999px;
    background: #fff;
    font-size: .68rem;
    font-weight: 950;
    letter-spacing: .12em;
}
.header-main { flex-wrap: nowrap; }
.site-branding { flex: 0 0 auto; }
.primary-nav { flex: 1 1 auto; overflow: hidden; }
.primary-nav .primary-menu { flex-wrap: nowrap; overflow: hidden; }
.primary-nav .primary-menu > li { flex: 0 0 auto; }
.primary-nav .primary-menu > li:nth-child(n+7) { display: none; }
.desktop-more { position: relative; }
.desktop-more summary {
    min-height: 42px;
    gap: .4rem;
    padding: .58rem .78rem;
    border: 1px solid var(--wp-line);
    border-radius: 999px;
    background: #fff;
    cursor: pointer;
    font-size: .84rem;
    font-weight: 900;
    list-style: none;
}
.desktop-more summary::-webkit-details-marker { display: none; }
.desktop-more summary::after { content: '+'; font-size: 1rem; }
.desktop-more[open] summary::after { content: '−'; }
.desktop-more-panel {
    position: absolute;
    top: calc(100% + .65rem);
    right: 0;
    z-index: 70;
    width: min(520px, calc(100vw - 40px));
    max-height: min(70vh, 620px);
    overflow: auto;
    padding: .85rem;
    border: 1px solid var(--wp-line);
    border-radius: 20px;
    background: color-mix(in srgb, #fff 94%, var(--wp-shell));
    box-shadow: var(--wp-shadow);
}
.desktop-more-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .4rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.desktop-more-list li { min-width: 0; }
.desktop-more-list a {
    display: flex;
    min-height: 44px;
    align-items: center;
    padding: .65rem .72rem;
    border-radius: 12px;
    background: #fff;
    text-decoration: none;
    font-weight: 850;
    overflow-wrap: anywhere;
}
.desktop-more-list .sub-menu {
    grid-column: 1 / -1;
    margin: .25rem 0 .4rem 1rem;
    padding: 0;
    list-style: none;
}
.content-stream,
.sidebar { min-width: 0; }
.stream-heading {
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    padding-bottom: .85rem;
    border-bottom: 1px solid var(--wp-line);
}
.stream-heading > div { gap: .8rem; }
.stream-heading h2 {
    margin: 0;
    font-family: var(--wp-heading-font);
    font-size: clamp(1.45rem, 2.5vw, 2.35rem);
    line-height: 1;
    letter-spacing: -.035em;
}
.stream-heading p {
    max-width: 34rem;
    margin: 0;
    color: var(--wp-muted);
    font-size: .9rem;
    text-align: right;
}
.stream-symbol,
.footer-signature {
    color: var(--wp-primary);
    font-size: .7rem;
    font-weight: 950;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.card-sequence {
    position: absolute;
    top: .8rem;
    right: .8rem;
    z-index: 3;
    display: none;
    min-width: 2rem;
    min-height: 2rem;
    place-items: center;
    border-radius: 999px;
    background: var(--wp-secondary);
    color: #fff;
    font-size: .7rem;
    font-weight: 950;
}
.pagination-wrap { grid-column: 1 / -1; }
.sidebar { align-content: start; }
.footer-signature { display: block; margin-bottom: .5rem; }
html,
body { overflow-x: clip; }
/* NexiaBloom: an organic lifestyle journal with soft editorial rhythm. */
body.nexia-layout-bloom-diary {
    background:
        radial-gradient(circle at 5% 10%, #fbcfe8 0, transparent 24rem),
        radial-gradient(circle at 92% 32%, #fef3c7 0, transparent 28rem),
        #fffafc;
}
.nexia-layout-bloom-diary .site-header {
    background: color-mix(in srgb, #fffafc 90%, transparent);
    border-bottom: 0;
    box-shadow: 0 1px 0 color-mix(in srgb, var(--wp-primary) 18%, transparent);
}
.nexia-layout-bloom-diary .custom-logo-link {
    display: inline-flex;
    padding: .4rem .7rem;
    border-radius: 18px 999px 999px 18px;
    background: #fff;
}
.nexia-layout-bloom-diary .primary-nav a {
    border-radius: 18px 999px 999px 18px;
    background: color-mix(in srgb, var(--wp-primary) 8%, #fff);
}
.nexia-layout-bloom-diary .primary-nav a:hover { background: var(--wp-primary); color: #fff; }
.nexia-layout-bloom-diary .desktop-more summary {
    border: 0;
    border-radius: 18px 999px 999px 18px;
    background: var(--wp-secondary);
    color: #fff;
}
.nexia-layout-bloom-diary .category-strip a {
    border: 0;
    background: color-mix(in srgb, var(--wp-accent) 18%, #fff);
}
.nexia-layout-bloom-diary .hero-panel {
    border: 0;
    border-radius: 70px 18px 70px 18px;
    background: linear-gradient(135deg, #fff, #fdf2f8 58%, #fef9c3);
    box-shadow: 0 28px 80px rgb(190 24 93 / .12);
}
.nexia-layout-bloom-diary .hero-panel::after {
    border-radius: 58% 42% 68% 32%;
    background: color-mix(in srgb, var(--wp-primary) 12%, transparent);
    transform: rotate(-15deg);
}
.nexia-layout-bloom-diary .hero-brief {
    border: 0;
    border-radius: 42px 12px 42px 12px;
    background: #fff;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--wp-primary) 16%, white);
}
.nexia-layout-bloom-diary .main-layout { grid-template-columns: minmax(0, 1fr) 290px; }
.nexia-layout-bloom-diary .stream-heading { border-bottom: 0; }
.nexia-layout-bloom-diary .stream-heading::after {
    content: '';
    width: 72px;
    height: 2px;
    align-self: stretch;
    background: var(--wp-primary);
}
.nexia-layout-bloom-diary .post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2rem; }
.nexia-layout-bloom-diary .content-card {
    border: 0;
    border-radius: 44px 14px 44px 14px;
    box-shadow: 0 18px 50px rgb(95 33 56 / .10);
}
.nexia-layout-bloom-diary .content-card.is-featured { grid-column: 1 / -1; }
.nexia-layout-bloom-diary .card-media,
.nexia-layout-bloom-diary .card-fallback { border-radius: 0 0 48% 0; }
.nexia-layout-bloom-diary .card-category { background: #fce7f3; }
.nexia-layout-bloom-diary .read-more { background: var(--wp-secondary); border-radius: 18px 999px 999px 18px; }
.nexia-layout-bloom-diary .sidebar { position: sticky; top: 138px; }
.nexia-layout-bloom-diary .widget,
.nexia-layout-bloom-diary .sidebar-panel {
    border: 0;
    border-radius: 42px 14px 42px 14px;
    background: color-mix(in srgb, #fff 88%, #fce7f3);
}
@media (max-width: 1260px) {
    .primary-nav .primary-menu > li:nth-child(n+5) { display: none; }
}
@media (max-width: 960px) {
    body.admin-bar .site-header { top: 46px; }
    .topline { display: none; }
    .nav-frame { position: relative; }
    .primary-nav,
    .desktop-more,
    .header-search { display: none; }
    .header-main {
        min-height: 66px;
        flex-wrap: nowrap;
        align-items: center;
    }
    .header-tools { margin-left: auto; }
    .mobile-menu { display: block; position: relative; }
    .mobile-menu summary {
        display: inline-flex;
        min-height: 46px;
        align-items: center;
        gap: .55rem;
        padding: .65rem .9rem;
        border: 1px solid var(--wp-line);
        border-radius: 999px;
        background: #fff;
        cursor: pointer;
        font-weight: 950;
    }
    .mobile-menu[open] summary { background: var(--wp-secondary); color: #fff; }
    .mobile-menu-panel {
        position: fixed;
        top: calc(env(safe-area-inset-top) + 76px);
        right: 16px;
        left: 16px;
        width: auto;
        max-height: calc(100dvh - 94px);
        overflow: auto;
        overscroll-behavior: contain;
    }
    body.admin-bar .mobile-menu-panel { top: calc(env(safe-area-inset-top) + 122px); }
    .mobile-menu-list .sub-menu {
        margin: .25rem 0 .4rem 1rem;
        padding: 0;
        list-style: none;
    }
    .category-strip-wrap {
        margin-inline: -14px;
        padding-inline: 14px;
        overflow: hidden;
    }
    .main-layout { grid-template-columns: 1fr !important; }
    .sidebar {
        position: static !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .footer-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
    .site-shell,
    .entry-shell { width: min(100% - 28px, 1180px); }
    .entry-content > * { width: min(760px, calc(100% - 28px)); }
    .entry-content > .alignwide { width: min(1040px, calc(100% - 28px)); }
    .entry-content > .alignfull { width: 100%; }
    .brand-subtitle,
    .topline-promise { display: none; }
    .custom-logo-link img { max-width: min(190px, 52vw); }
    .brand-name { font-size: 1.18rem; }
    .brand-mark { width: 38px; height: 38px; border-radius: 13px; }
    .hero-panel { margin-top: 1rem; padding: 1.05rem; }
    .hero-grid,
    .content-card.is-featured { grid-template-columns: 1fr !important; }
    .hero-title { font-size: clamp(2.15rem, 14vw, 3.35rem); }
    .hero-copy { font-size: 1rem; }
    .hero-actions { display: grid; grid-template-columns: 1fr; }
    .hero-actions a { width: 100%; }
    .hero-metrics { gap: .4rem; }
    .hero-metrics span { font-size: .76rem; }
    .stream-heading {
        align-items: flex-start;
        flex-direction: column;
    }
    .stream-heading p { text-align: left; }
    .post-grid { grid-template-columns: 1fr !important; }
    .content-card,
    .content-card.is-featured {
        grid-column: auto !important;
        grid-template-columns: 1fr !important;
    }
    .card-media,
    .card-media img,
    .card-fallback {
        min-height: 210px;
        aspect-ratio: 16 / 10;
    }
    .sidebar { grid-template-columns: 1fr; }
    .content-card:hover,
    .button-link:hover,
    .read-more:hover { transform: none; }
    .footer-widgets { grid-template-columns: 1fr; }
    .search-form { flex-direction: column; }
}
@media (max-width: 390px) {
    .site-shell,
    .entry-shell { width: min(100% - 22px, 1180px); }
    .entry-content > * { width: min(760px, calc(100% - 22px)); }
    .entry-content > .alignwide { width: min(1040px, calc(100% - 22px)); }
    .entry-content > .alignfull { width: 100%; }
    .header-main { gap: .55rem; }
    .mobile-menu summary { padding-inline: .72rem; }
    .hero-panel { border-radius: 18px; }
    .hero-brief { padding: .9rem; }
    .hero-brief-title { font-size: 1.3rem; }
}
