.znf3-feed{
    position:relative;
    overflow-anchor: none;
    --znf3-text:var(--znm-ui-color-text,#16293d);
    --znf3-muted:var(--znm-ui-color-text-secondary,#667789);
    --znf3-line:var(--znm-ui-color-border,#d9e1e8);
    --znf3-soft:var(--znm-ui-color-surface-soft,#f1f4f6);
    --znf3-blue:var(--znm-ui-color-accent,#1f5fae);
    --znf3-blue-dark:var(--znm-ui-color-accent-hover,#184d8e);
    width:100%;
    min-width:0;
    color:var(--znf3-text);
    font-family:var(--znm-ui-font-family,"Segoe UI Variable","Aptos","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif);
    /* Let the standard font-weight axis remain authoritative. A low-level inherited
       wght axis made the same heading resolve differently between responsive/browser contexts. */
    font-variation-settings:normal;
    font-weight:var(--znm-ui-font-weight-body,550);
}

.znf3-feed,.znf3-feed *{
    box-sizing: border-box;
}

.znf3-visually-hidden{
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Public feed introduction: emphasis belongs to the heading itself, not to decorative stripes. */
.znf3-member-note{
    display:grid;
    gap:0;
    margin:0 0 15px;
    padding:5px 2px 9px;
    border:0;
    border-radius:0;
    background:transparent;
}

.znf3-member-note__copy{
    display:grid;
    gap:7px;
}

.znf3-member-note__copy > strong{
    display:block;
    margin:0;
    color:#F3F7FD;
    font-size:34px;
    font-weight:860;
    line-height:1.06;
    letter-spacing:-.025em;
}


.znf3-member-note p{
    max-width:880px;
    margin:0;
    color:#44576a;
    font-size:16px;
    font-weight:500;
    line-height:1.4;
}

/*
 * Masonry without absolute positioning.
 * JavaScript creates independent vertical columns and places each next card
 * into the currently shortest one. The grid itself never receives a fixed height.
 * One visual row is the canonical first-page unit: 1 phone / 2 tablet / 3 desktop.
 */
.znf3-grid{
    --znf3-column-count: 1;
    display: grid;
    grid-template-columns: repeat(var(--znf3-column-count), minmax(0, 1fr));
    gap: 14px;
    align-items: start;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    scroll-margin-top: 24px;
}

.znf3-grid__column{
    display: flex;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: 14px;
}

/* Before Feed JS builds masonry columns, suppress the server-rendered overflow
   from the three-card home lookahead window. JS keeps those cards as a buffer,
   so they are never skipped and become part of the first +7 expansion. */
.znf3-feed[data-responsive-initial="1"]:not(.znf3-responsive-initial-ready) > .znf3-grid > .znf3-card:nth-child(n/**/+3){display:none;}

/* Geometry contract: Kadence controls the themed outer container; UI Foundation
   supplies znm-ui-workspace-shell. Feed owns only the shared 1180px inner canvas.
   The summary and cards have exactly the same border-box width, at every zoom
   and column count. */
.znf3-home-feeds .znf3-home-feed-section > .znf3-section-accordion > .znf3-home-feed-heading,
.znf3-home-feeds .znf3-feed--front-section > .znf3-grid{
    position:static;
    left:auto;
    width:min(100%,1180px);
    max-width:100%;
    margin-inline:auto;
    transform:none;
}

/* Stand-alone public feeds retain their existing viewport alignment contract. */
.znf3-feed[data-author-id="0"]:not(.znf3-feed--front-section) > .znf3-grid{
    position:relative;
    left:50%;
    width:calc(100vw - var(--znm-ui-space-5,24px));
    max-width:calc(100vw - var(--znm-ui-space-5,24px));
    transform:translateX(-50%);
}

@media (max-width: 767px){
    .znf3-feed[data-responsive-initial="1"]:not(.znf3-responsive-initial-ready) > .znf3-grid > .znf3-card:nth-child(n/**/+2){display:none;}
}

@media (min-width: 681px){
    .znf3-grid{ gap: 24px; }
    .znf3-grid__column{ gap: 24px; }

    .znf3-feed[data-author-id="0"]:not(.znf3-feed--front-section) > .znf3-grid{
        position:static;
        left:auto;
        width:min(100%,1180px);
        max-width:1180px;
        margin-right:auto;
        margin-left:auto;
        transform:none;
    }
}

@media (min-width: 768px){
    .znf3-grid{ --znf3-column-count: 2; }
    .znf3-feed[data-responsive-initial="1"]:not(.znf3-responsive-initial-ready) > .znf3-grid > .znf3-card:nth-child(n/**/+3){display:none;}
}

@media (min-width: 1180px){
    .znf3-grid{ --znf3-column-count: 3; }
    .znf3-feed[data-responsive-initial="1"]:not(.znf3-responsive-initial-ready) > .znf3-grid > .znf3-card:nth-child(3){display:flex;}
}

.znf3-feed.is-loading:not(.is-appending) .znf3-grid{
    opacity: .55;
}

.znf3-feed.is-loading > *:not(.znf3-loading-guard){pointer-events:none;}
.znf3-loading-guard[hidden]{display:none !important;}
.znf3-loading-guard{position:sticky;top:14px;z-index:120;display:flex;justify-content:center;pointer-events:none;margin:-6px 0 10px;}
.znf3-loading-guard__panel{display:inline-flex;align-items:center;gap:14px;min-height:72px;padding:12px 16px;border:1px solid rgba(23,77,123,.12);border-radius:16px;background:rgba(255,255,255,.95);box-shadow:0 16px 34px rgba(27,60,92,.16),0 2px 8px rgba(27,60,92,.08);backdrop-filter:blur(6px);}
.znf3-loading-guard__visual{position:relative;width:66px;height:44px;flex:0 0 66px;}
.znf3-loading-guard__card{position:absolute;left:50%;top:50%;width:40px;height:28px;border-radius:10px;border:1px solid rgba(31,95,174,.2);background:linear-gradient(180deg,#fafdff 0%,#eaf2f9 100%);box-shadow:0 6px 14px rgba(24,77,142,.12);transform-origin:center;}
.znf3-loading-guard__card::before{content:"";position:absolute;left:8px;right:8px;top:8px;height:3px;border-radius:999px;background:rgba(31,95,174,.25);box-shadow:0 7px 0 rgba(31,95,174,.16),0 14px 0 rgba(31,95,174,.1);}
.znf3-loading-guard__card--back{margin-left:-26px;margin-top:-12px;opacity:.4;transform:translate(-10px,-3px) scale(.88);animation:znf3-loading-card-back 1.25s ease-in-out infinite;}
.znf3-loading-guard__card--mid{margin-left:-20px;margin-top:-14px;opacity:.72;transform:translate(0,0) scale(.94);animation:znf3-loading-card-mid 1.25s ease-in-out infinite;}
.znf3-loading-guard__card--front{margin-left:-16px;margin-top:-16px;transform:translate(10px,3px);animation:znf3-loading-card-front 1.25s ease-in-out infinite;}
.znf3-loading-guard__spark{position:absolute;display:block;width:6px;height:6px;border-radius:50%;background:#2d79c7;opacity:0;transform:scale(.4);}
.znf3-loading-guard__spark--one{left:5px;top:5px;animation:znf3-loading-spark 1.25s ease-in-out .05s infinite;}
.znf3-loading-guard__spark--two{right:7px;top:2px;animation:znf3-loading-spark 1.25s ease-in-out .28s infinite;}
.znf3-loading-guard__spark--three{right:11px;bottom:4px;animation:znf3-loading-spark 1.25s ease-in-out .5s infinite;}
.znf3-loading-guard__copy{display:grid;gap:4px;min-width:0;}
.znf3-loading-guard__copy strong{display:block;color:#17364f;font-size:15px;font-weight:860;line-height:1.15;}
.znf3-loading-guard__copy span{display:block;color:#617386;font-size:13px;font-weight:500;line-height:1.25;}
@keyframes znf3-loading-card-front{0%{transform:translate(6px,5px) scale(.98)}50%{transform:translate(13px,0) scale(1.03)}100%{transform:translate(6px,5px) scale(.98)}}
@keyframes znf3-loading-card-mid{0%{transform:translate(0,0) scale(.94)}50%{transform:translate(4px,-4px) scale(.98)}100%{transform:translate(0,0) scale(.94)}}
@keyframes znf3-loading-card-back{0%{transform:translate(-10px,-3px) scale(.88)}50%{transform:translate(-4px,-7px) scale(.92)}100%{transform:translate(-10px,-3px) scale(.88)}}
@keyframes znf3-loading-spark{0%,100%{opacity:0;transform:scale(.3)}45%{opacity:.95;transform:scale(1)}65%{opacity:0;transform:scale(.75)}}

/* Controls. */
.znf3-empty{
    margin: 18px 0;
    padding: 14px 16px;
    border-radius: 12px;
    background: #f3f7fb;
    color: #5d6d80;
    text-align: center;
}

.znf3-controls{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    justify-content: center;
    margin: 38px 0 22px;
}

.znf3-status:empty{ display: none; }

.znf3-status{
    color: #6a7889;
    font-size: 13px;
}

/* Filters. */
.znf3-filters-panel{
    margin-top: 22px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.znf3-filters-head{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    text-align:left;
    gap:12px;
    margin:0 0 10px;
    padding:13px 16px;
    border:1px solid #bdd2e5;
    border-radius:12px;
    background:#e3eef9;
    box-shadow:0 2px 8px rgba(31,70,106,.045);
}

.znf3-filters-head h3{
    margin:0;
    color:#124f82;
    font-size:clamp(20px,2.7vw,24px);
    font-weight:820;
    line-height:1.12;
    letter-spacing:-.012em;
}


.znf3-reset{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 14px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .74);
    color: #0f4b96;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
}

.znf3-feed select{
    width: 100%;
    min-height: 48px;
    padding: 0 42px 0 18px;
    border: 1px solid #bfd0e6;
    border-radius: 14px;
    background-color: #fff;
    background-image: linear-gradient(45deg, transparent 50%, #7891b3 50%), linear-gradient(135deg, #7891b3 50%, transparent 50%);
    background-position: calc(100% - 22px) calc(50% - 2px), calc(100% - 16px) calc(50% - 2px);
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    color: #163f76;
    font: inherit;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: none;
    appearance: none;
}

.znf3-feed select:focus{
    outline: none;
    border-color: #7ea1d1;
    box-shadow: 0 0 0 3px rgba(17, 75, 150, .10);
}


.znf3-solution-option{
    position: relative;
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
    cursor: pointer;
}

.znf3-solution-option input{
    position: absolute;
    opacity: 0;
    pointer-events: none;
}


.znf3-solution-group > summary{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    list-style: none;
    cursor: pointer;
}

.znf3-solution-group > summary::-webkit-details-marker{
    display: none;
}


.znf3-solution-group > summary span{
    display: grid;
    gap: 3px;
    min-width: 0;
}


.znf3-solution-group > summary i{
    display: block;
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-right: 2px solid #728db1;
    border-bottom: 2px solid #728db1;
    transform: rotate(45deg);
    transition: transform .18s ease;
}

.znf3-solution-group[open] > summary i{
    transform: rotate(-135deg);
}


.znf3-solution-groups{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.znf3-solution-group{
    padding: 0;
    border-radius: 16px;
    background: #dfe8f6;
}

.znf3-solution-group > summary{
    min-height: 62px;
    padding: 14px 18px;
}

.znf3-solution-group > summary strong{
    color: var(--znm-ui-color-text, #16293d);
    font-size: 14px;
    font-weight: 850;
}

.znf3-solution-group > summary small{
    color: #6380a5;
    font-size: 13px;
}

.znf3-solution-options{
    display: grid;
    gap: 8px;
    padding: 0 14px 14px;
}

.znf3-solution-option{
    min-height: 42px;
    padding: 8px 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .82);
    color: var(--znm-ui-color-text, #16293d);
    font-size: 13px;
}

.znf3-solution-option.is-active{
    background: #eef4fd;
    color: #0f4b96;
}

.znf3-filter-check{
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    border: 1px solid #9eb2cc;
    border-radius: 4px;
    background: #fff;
}

.znf3-solution-option.is-active .znf3-filter-check{
    border-color: #0f4b96;
    background: #0f4b96;
    box-shadow: inset 0 0 0 3px #fff;
}

.znf3-filter-option-label{
    min-width: 0;
    flex: 1;
    line-height: 1.3;
}

.znf3-filter-option-count{
    color: #6c84a3;
    font-size: 11px;
    font-weight: 700;
}


.znf3-filter-result-actions{
    display: grid;
    justify-items: center;
    gap: 12px;
    width: 100%;
    margin-top: 24px;
    padding-bottom: 40px;
    text-align: center;
}
.znf3-filter-result-actions[hidden]{
    display: none;
}
.znf3-view-results{
    min-width: 220px;
}


@media (max-width: 780px){
    .znf3-filters-head{
        margin-bottom: 10px;
        border-radius: 10px;
        align-items: center;
        justify-content: flex-start;
        gap: 8px;
        padding: 11px 13px;
    }

    .znf3-filters-head h3{
        font-size: 19px;
    }

    .znf3-solution-groups{
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .znf3-solution-group > summary{
        min-height: 58px;
        padding: 14px 16px;
    }}

/* Modal and image viewer. */
body.znf3-modal-open{
    overflow: hidden;
}

.znf3-content-modal,.znf3-lightbox{
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: grid;
    place-items: center;
    padding: 24px;
}

.znf3-content-modal__backdrop,.znf3-lightbox__backdrop{
    position: absolute;
    inset: 0;
    background: rgba(17, 20, 24, .66);
    backdrop-filter: blur(5px);
}

.znf3-content-modal__dialog{
    /* The fallback viewer's close control gets its own row above the title. */
    --znc-article-header-inset: 44px;
    position: relative;
    width: min(1080px, 100%);
    max-height: calc(100vh - 42px);
    overflow: auto;
    border: 1px solid rgba(255,255,255,.7);
    border-radius: 24px;
    background: #fbfbfa;
    box-shadow: 0 30px 90px rgba(0,0,0,.24);
}

.znf3-content-modal__close,.znf3-lightbox__close{
    position: absolute;
    top: 11px;
    right: 11px;
    z-index: 4;
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    padding: 0;
    border: 1px solid #e2e4e6;
    border-radius: 50%;
    background: rgba(255,255,255,.94);
    color: #20262c;
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
}

.znf3-feed--profile .znf3-content-modal__close,.znf3-feed--profile .znf3-lightbox__close{width:auto;min-width:76px;padding:0 12px;border-radius:8px;font-size:13px}

.znf3-content-modal__body{
    padding: 0;
}

.znf3-content-modal__loading{
    padding: 60px 24px;
    color: #637286;
    text-align: center;
}

.znf3-detail{
    padding-bottom: 28px;
}

.znf3-detail__header,.znf3-detail__content,.znf3-detail__rubrics{
    width: min(820px, calc(100% - 36px));
    margin-right: auto;
    margin-left: auto;
}

.znf3-detail__header{
    margin-top: 28px;
    padding: 18px 22px;
    border-radius: 16px;
    background: #f2f3f3;
}

.znf3-detail__header h2{
    margin: 0;
    color: #171a1f;
    font-size: clamp(30px, 4.6vw, 50px);
    font-weight: 720;
    letter-spacing: -.03em;
    line-height: 1.08;
}

.znf3-detail__rubrics{
    display: grid;
    gap: 12px;
    margin-top: 22px;
    padding: 18px 20px;
    border-radius: 14px;
    background: #f7f9fd;
}

.znf3-detail__rubric-group{
    display: grid;
    grid-template-columns: minmax(120px, 180px) minmax(0, 1fr);
    gap: 10px;
    align-items: start;
}

.znf3-detail__rubric-group h3{
    margin: 0;
    color: #455870;
    font-size: 13px;
}

.znf3-detail__rubric-values{
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.znf3-detail__rubric-values span{
    padding: 5px 8px;
    border-radius: 8px;
    background: #eef4fb;
    color: #40536b;
    font-size: 12px;
}

.znf3-detail__content{
    margin-top: 30px;
    padding: 0;
    color: #2c3d53;
    line-height: 1.62;
}

.znf3-detail__media-section{
    margin-right: auto;
    margin-left: auto;
    padding-top: 18px;
}

.znf3-detail__media-section--videos{
    width: min(820px, calc(100% - 36px));
}

.znf3-detail__media-section--images{
    width: min(900px, calc(100% - 36px));
}

.znf3-detail__videos{
    display: grid;
    gap: 16px;
    justify-items: center;
}

.znf3-detail__video-item{
    width: min(100%, 820px);
    margin: 0;
    text-align: center;
}

.znf3-detail__video-item video{
    display: block;
    width: 100%;
    height: auto;
    max-height: min(72vh, 760px);
    margin: 0 auto;
    border-radius: 12px;
    background: #111;
}

.znf3-detail__video-item figcaption,.znf3-detail__media-item figcaption{
    padding: 7px 2px 0;
    color: #6a7888;
    font-size: 12px;
    line-height: 1.35;
}

.znf3-detail__gallery{
    columns: 2 320px;
    column-gap: 12px;
}

.znf3-detail__media-item{
    break-inside: avoid;
    margin: 0 0 12px;
}

.znf3-detail__media-item button{
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    line-height: 0;
    cursor: zoom-in;
}

.znf3-detail__media-item img{
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.znf3-detail__author{
    width: min(500px, calc(100% - 36px));
    margin: 40px auto 0;
    padding-top: 12px;
    text-align: center;
}

.znf3-detail__author-link{
    display: grid;
    justify-items: center;
    gap: 11px;
    color: inherit;
    text-decoration: none;
}

.znf3-detail__author-avatar-wrap{
    position: relative;
    display: block;
    width: min(100%, 420px);
    padding-top: 4px;
}

.znf3-detail__author-avatar{
    position: relative;
    z-index: 2;
    display: block;
    width: 112px;
    height: 112px;
    margin: 0 auto;
    overflow: hidden;
    border-radius: 50%;
    background: #fff;
}

.znf3-detail__author-avatar img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.znf3-detail__author-avatar-line{
    position: absolute;
    top: 82px;
    width: calc(50% - 74px);
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(161, 185, 218, .18) 0%, rgba(144, 169, 205, .95) 42%, rgba(144, 169, 205, .95) 58%, rgba(161, 185, 218, .18) 100%);
}

.znf3-detail__author-avatar-line--left{
    left: 0;
}

.znf3-detail__author-avatar-line--right{
    right: 0;
}

.znf3-detail__author-name{
    color: #174f91;
    font-size: 19px;
    line-height: 1.2;
}

.znf3-detail__author-about{
    color: #52657c;
    font-size: 14px;
    line-height: 1.55;
}

.znf3-detail__author-location{
    color: #6a7d95;
    font-size: 13px;
    line-height: 1.45;
}

.znf3-detail__author-link:hover .znf3-detail__author-name,.znf3-detail__author-link:focus-visible .znf3-detail__author-name{
    text-decoration: underline;
}

.znf3-detail__author-close{
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid #e2e8f0;
    text-align: center;
}

.znf3-detail__close-link{
    display: inline-block;
    padding: 0;
    border: 0;
    background: transparent;
    color: #4a6486;
    font: inherit;
    font-size: 15px;
    line-height: 1.4;
    text-decoration: underline;
    cursor: pointer;
}

.znf3-detail__close-link:hover,.znf3-detail__close-link:focus-visible{
    color: #174f91;
}

.znf3-lightbox__figure{
    position: relative;
    z-index: 2;
    display: grid;
    max-width: min(96vw, 1400px);
    max-height: 94vh;
    margin: 0;
    place-items: center;
}

.znf3-lightbox img{
    display: block;
    width: auto;
    height: auto;
    max-width: 96vw;
    max-height: 88vh;
    object-fit: contain;
}

.znf3-lightbox figcaption{
    max-width: 900px;
    padding: 8px 12px;
    color: #fff;
    text-align: center;
}

/* Author feed navigation. The author page is already scoped to one participant, so filters are replaced by one clear exit. */
.znf3-author-home{
    display: flex;
    justify-content: center;
    margin: 22px 0 0;
}

.znf3-author-home__link{
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 9px 18px;
    border: 1px solid #b9c9db;
    border-radius: 10px;
    background: #eef3f8;
    color: #24415f;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    transition: border-color .16s ease, background-color .16s ease, transform .16s ease;
}

.znf3-author-home__link:hover{
    border-color: #3c6189;
    background: #e4edf6;
    color: #183755;
    transform: translateY(-1px);
}

.znf3-author-home__link:focus-visible{
    outline: 3px solid rgba(31, 95, 174, .42);
    outline-offset: 3px;
}

.znf3-card__media-link:focus-visible,.znf3-reset:focus-visible,.znf3-content-modal__close:focus-visible,.znf3-lightbox__close:focus-visible,.znf3-detail__media-item button:focus-visible{
    outline: 3px solid rgba(31, 95, 174, .42);
    outline-offset: 3px;
}

@media (max-width: 760px){    .znf3-content-modal{
        padding: 0;
    }

    .znf3-content-modal__dialog{
        width: 100%;
        min-height: 100vh;
        max-height: 100vh;
        border-radius: 0;
    }

    .znf3-detail__gallery{
        columns: 1;
    }

    .znf3-detail__header{
        margin-top: 18px;
        padding: 16px;
        border-radius: 14px;
    }

    .znf3-detail__rubrics{
        margin-top: 18px;
        padding: 15px 16px;
    }

    .znf3-detail__content{
        margin-top: 24px;
    }}

@media (max-width: 520px){.znf3-detail__header,.znf3-detail__content,.znf3-detail__rubrics,.znf3-detail__media-section--videos,.znf3-detail__media-section--images,.znf3-detail__author{
        width: calc(100% - 28px);
    }

    .znf3-detail__rubric-group{
        grid-template-columns: 1fr;
        gap: 5px;
    }}

@media (max-width: 520px){.znf3-detail__author{
        margin-top: 32px;
        padding-top: 8px;
    }

    .znf3-detail__author-avatar-wrap{
        width: min(100%, 300px);
    }

    .znf3-detail__author-avatar-line{
        top: 82px;
        width: calc(50% - 66px);
    }

    .znf3-detail__author-close{
        margin-top: 18px;
        padding-top: 16px;
    }}


/* Inline owner editing inside the existing content modal. */
.znf3-detail__header-row{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.znf3-detail__header-row h2{
    min-width: 0;
    flex: 1;
}

.znf3-detail__edit{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 15px;
    border: 1px solid #b8cce5;
    border-radius: 12px;
    background: #fff;
    color: #15549a;
    font: inherit;
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap;
    cursor: pointer;
}

.znf3-detail__edit:hover,.znf3-detail__edit:focus-visible{
    border-color: #7fa5d1;
    background: #f6f9fd;
}

@media (max-width: 620px){.znf3-detail__header-row{
        display: grid;
        gap: 14px;
    }

    .znf3-detail__edit{
        width: 100%;
    }

    }

/* Profile search: the shared Feed controls stay subordinate to the materials. */
.znf3-archive-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}
.znf3-profile-return{display:inline-flex;align-items:center;min-width:0;min-height:44px;padding:6px;color:#496577;font-size:14px;text-decoration:none;line-height:1.4;border-radius:6px;overflow-wrap:anywhere}
.znf3-profile-return:hover{background:#f0f4f6;color:#28495f}
.znf3-profile-return:focus-visible{outline:2px solid #7593a6;outline-offset:2px}
.znf3-archive-sticky{display:none}
@media (max-width:760px){
  .znf3-archive-sticky:not([hidden]){position:fixed;z-index:90;bottom:12px;bottom:max(12px,env(safe-area-inset-bottom));left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:540px;margin:0 auto;padding:4px 10px;border:1px solid #dce3e7;border-radius:12px;background:#fafcfd;box-shadow:0 3px 12px rgba(35,55,66,.08)}
  .znf3-archive-sticky .znf3-profile-return{max-width:75%;font-size:13px}
}
.znf3-feed--profile .znf3-controls{align-items:stretch;margin:20px 0 0;gap:6px}
.znf3-feed--profile .znf3-primary-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px 12px}
.znf3-profile-browse,.znf3-profile-show{display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;padding:10px 14px;border:1px solid #d3dfe5;border-radius:8px;background:#f6f8fa;color:#344f60;font:inherit;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;box-shadow:none;cursor:pointer}
.znf3-profile-browse:hover,.znf3-profile-show:hover{background:#eaf0f4;border-color:#a6bac8;color:#28495f}
.znf3-profile-search,.znf3-profile-hide{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:10px 6px;border:0;border-radius:6px;background:transparent;color:#4e6a7c;font:inherit;font-size:14px;font-weight:600;line-height:1.4;box-shadow:none;cursor:pointer}
.znf3-profile-search:hover,.znf3-profile-hide:hover{background:#f0f4f6;color:#28495f}
.znf3-profile-search[aria-expanded="true"]{color:#294d63;background:#edf2f5}
.znf3-profile-search small{padding:1px 6px;border-radius:8px;background:#e3ebf0;color:#496577;font-size:11px}
.znf3-profile-search small[hidden]{display:none}
.znf3-profile-browse:focus-visible,.znf3-profile-search:focus-visible,.znf3-profile-hide:focus-visible,.znf3-profile-show:focus-visible{outline:2px solid #7593a6;outline-offset:3px}
.znf3-refinement-filters{display:grid;gap:18px;margin:0 0 24px;padding:20px;min-width:0;border:1px solid #dfe7ec;border-radius:10px;background:#fafcfd;box-sizing:border-box}
.znf3-refinement-filters[hidden]{display:none}
.znf3-refinement-filters>h3{margin:0;color:#304b5c;font-size:18px;font-weight:650;line-height:1.35}
.znf3-profile-filter-label,.znf3-refinement-filters .znf3-interest-tags__group>span{display:block;margin:0 0 9px;color:#526775;font-size:13px;font-weight:600;line-height:1.4}

.znf3-refinement-filters .znf3-interest-tags{margin:0;gap:18px}
.znf3-profile-filter-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.znf3-refinement-filters .znf3-reset{min-height:44px;margin:0;padding:8px;color:#6c7f8c}
.znf3-profile-hide{justify-self:start;font-size:13px;font-weight:500}
@media (max-width:480px){.znf3-refinement-filters{padding:14px;gap:16px}.znf3-feed--profile .znf3-primary-actions{gap:6px 10px}}

.znf3-filter-sections{display:grid;gap:12px;width:100%;min-width:0;}
.znf3-filter-static{width:100%;min-width:0;margin:0;padding:0;border:0;background:transparent;}

.znf3-reset--text{padding:0 8px;border:0;border-radius:0;background:transparent;font-weight:500;text-decoration:underline;text-underline-offset:3px;cursor:pointer;}
.znf3-interest-tags{display:grid;gap:10px;margin-top:14px;margin-bottom:4px;}
.znf3-filter-accordion{--znf3-accordion-radius:10px;--znf3-accordion-surface:#eaf3fc;--znf3-heading-border:#c5d8ea;--znf3-heading-arrow:#66829d;width:100%;min-width:0;box-sizing:border-box;margin:0;padding:0;background:transparent;border:0;border-radius:0;}
.znf3-filter-accordion>summary{display:flex;align-items:center;gap:14px;list-style:none;cursor:pointer;position:relative;justify-content:flex-start;min-height:78px;padding:14px 56px 14px 16px;box-sizing:border-box;text-align:left;color:#203f5d;border:1px solid var(--znf3-heading-border);border-radius:var(--znf3-accordion-radius);background:var(--znf3-accordion-surface);box-shadow:0 4px 14px rgba(31,70,106,.08);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease;}
.znf3-filter-accordion>summary::before{content:"";display:block;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background-color:#d7e8f8;background-repeat:no-repeat;background-position:center;background-size:22px 22px;box-shadow:inset 0 0 0 1px rgba(62,104,143,.08);}
.znf3-filter-sections>[data-znf3-filter-section="content"]>summary::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23315f8c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='7' height='7' rx='1.4'/%3E%3Crect x='13' y='4' width='7' height='7' rx='1.4'/%3E%3Crect x='4' y='13' width='7' height='7' rx='1.4'/%3E%3Crect x='13' y='13' width='7' height='7' rx='1.4'/%3E%3C/svg%3E");}

.znf3-filter-accordion[data-znf3-filter-section="where"]>summary::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23315f8c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 20V4l9-2v20l-9-2Zm9-15h5v14h-5M10 11v2'/%3E%3C/svg%3E");}
.znf3-filter-accordion[data-znf3-filter-section="additional"]>summary::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23315f8c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16'/%3E%3Ccircle cx='8' cy='6' r='2' fill='%23d7e8f8'/%3E%3Ccircle cx='16' cy='12' r='2' fill='%23d7e8f8'/%3E%3Ccircle cx='10' cy='18' r='2' fill='%23d7e8f8'/%3E%3C/svg%3E");}
.znf3-filter-accordion[data-znf3-filter-section="where"]>.znf3-filter-accordion__body{display:grid;gap:20px;}
.znf3-filter-accordion>summary>span{display:flex;align-items:center;justify-content:flex-start;flex:1 1 auto;min-width:0;text-align:left;flex-wrap:wrap;gap:3px 7px;}
.znf3-filter-accordion>summary strong{color:inherit;font-size:18px;font-weight:760;line-height:1.2;letter-spacing:0;}
.znf3-filter-accordion>summary>i{position:absolute;right:18px;border-color:var(--znf3-heading-arrow);}
.znf3-filter-accordion>summary:hover{background:#e2eef9;border-color:#abc6dd;box-shadow:0 6px 18px rgba(31,70,106,.11);}
.znf3-filter-accordion[open]>summary{background:#e1edf8;border-color:#aac4da;box-shadow:0 5px 16px rgba(31,70,106,.09);}
.znf3-filter-accordion>summary:active{background:#dce9f5;transform:translateY(1px);}
.znf3-filter-accordion>summary:focus-visible{outline:2px solid #5f7f9d;outline-offset:3px;}
.znf3-filter-accordion__body{display:flow-root;margin:0;padding:14px 12px;min-width:0;box-sizing:border-box;text-align:left;border:0;border-radius:0;background:transparent;}
.znf3-filter-sections>[data-znf3-filter-section="content"]>.znf3-filter-accordion__body{padding-top:14px;}

.znf3-filter-sections [data-znf3-filter-group]{background:#f5f8fb;}
.znf3-filter-sections [data-znf3-filter-group]>summary strong{color:#526b7e;font-weight:650;}
.znf3-filter-sections [data-znf3-filter-group]>.znf3-solution-options{padding-bottom:30px;}
@media (max-width:480px){
    .znf3-filter-accordion__body{padding-inline:6px;}
    .znf3-filter-accordion>summary{min-height:72px;padding:12px 44px 12px 12px;gap:11px;}
    .znf3-filter-accordion>summary::before{flex-basis:38px;width:38px;height:38px;background-size:20px 20px;}
    .znf3-filter-accordion>summary strong{font-size:17px;}
    .znf3-filter-accordion>summary>i{right:14px;}
}
.znf3-interest-tags[hidden],.znf3-interest-tags__group[hidden]{display:none;}

.znf3-feed .is-unavailable{opacity:.45;cursor:not-allowed;}

@media (max-width:430px){.znf3-view-results{width:min(100%,260px);}}

/* Card content metadata stays with the content; footer is reserved for author and technical metrics. */

.znf3-feed article.znf3-card[data-znf3-card]{
  display:flex;
  width:100%;
  max-width:100%;
  min-width:0;
  height:auto;
  min-height:0;
  margin:0;
  overflow:hidden;
  flex-direction:column;
  align-self:start;
  /* Outer geometry belongs to the shared .znm-ui-surface primitive.
     Feed adds only the background-separation shadow required on the photographic page. */
  border:1px solid #DDE4EB;
  border-radius:8px;
  box-shadow:0 5px 14px rgba(18,55,86,.055);
}
.znf3-feed .znf3-card__media-link{
  display:block;
  overflow:hidden;
  /* Internal media is not a second rounded card. The outer surface clips only
     the actual card corners, so the media/body seam stays geometrically straight. */
  background:var(--znm-ui-color-surface-soft,#f1f4f6);
  color:inherit;
  line-height:0;
  text-decoration:none;
  border-radius:0;
}
.znf3-feed .znf3-card__media{
  position:relative;
  display:block;
  height:auto;
  isolation:isolate;
}
/* Card cover carousel. */
.znf3-feed .znf3-card__media-link--carousel{position:relative;display:block;overflow:hidden;touch-action:pan-y}
.znf3-feed .znf3-card__media-link--carousel .znf3-card__media{overflow:hidden}
.znf3-card__carousel-track{display:flex;width:100%;transition:transform .28s ease;will-change:transform}
.znf3-card__carousel-slide{display:block;flex:0 0 100%;min-width:0;color:inherit;line-height:0;text-decoration:none}
.znf3-card__carousel-slide .znf3-card__image{width:100%}
.znf3-feed--front .znf3-card__media--portrait-capped .znf3-card__carousel-track,.znf3-feed--front .znf3-card__media--portrait-capped .znf3-card__carousel-slide{height:100%}
@media (prefers-reduced-motion:reduce){.znf3-card__carousel-track{transition:none}}
.znf3-feed .znf3-card__media--with-meta::after{
  content:"";
  position:absolute;
  z-index:1;
  top:0;
  right:0;
  left:0;
  height:min(34%,108px);
  pointer-events:none;
  background:linear-gradient(to bottom,rgba(8,18,27,.34),rgba(8,18,27,.09) 58%,rgba(8,18,27,0));
}
.znf3-feed img.znf3-card__image{display:block;width:100%;height:auto;aspect-ratio:var(--znf3-media-ratio,4 / 3);object-fit:contain;border-radius:0;}

/* Front-page guard for exceptionally tall media. The original image/video
   stays complete; only the presentation box is capped at width × 1.382. */
.znf3-feed--front .znf3-card__media--portrait-capped{
  width:100%;
  aspect-ratio:1 / 1.382;
  overflow:hidden;
  background:var(--znm-ui-color-surface-soft,#f1f4f6);
}
.znf3-feed--front .znf3-card__media--portrait-capped::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:-22px;
  pointer-events:none;
  background-image:var(--znf3-media-bg);
  background-position:center;
  background-size:cover;
  filter:blur(18px);
  opacity:.40;
  transform:scale(1.05);
}
.znf3-feed--front .znf3-card__media--portrait-capped img.znf3-card__image{
  position:relative;
  z-index:1;
  display:block;
  width:auto;
  max-width:100%;
  height:100%;
  margin:0 auto;
  aspect-ratio:auto;
  object-fit:contain;
  box-shadow:-7px 0 14px -10px rgba(7,18,28,.46),7px 0 14px -10px rgba(7,18,28,.46);
}
.znf3-card__video-play{position:absolute;z-index:4;top:50%;left:50%;display:grid;width:clamp(56px,10vw,68px);height:clamp(56px,10vw,68px);place-items:center;margin:0;padding:0;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.94);border-radius:50%;background:rgba(10,25,38,.74);color:#fff;box-shadow:0 7px 24px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.14);cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.znf3-card__video-play:hover{background:rgba(10,44,72,.86);transform:translate(-50%,-50%) scale(1.04)}
.znf3-card__video-play>span{width:0;height:0;margin-left:7%;border-top:12px solid transparent;border-bottom:12px solid transparent;border-left:19px solid currentColor}
@media (max-width:680px){.znf3-card__video-play{width:60px;height:60px}.znf3-card__video-play>span{border-top-width:11px;border-bottom-width:11px;border-left-width:18px}}
.znf3-card__media-meta{position:absolute;z-index:2;top:9px;right:9px;display:flex;justify-content:flex-end;max-width:78%;pointer-events:none;}
.znf3-card__type{--znf3-type-icon-bg:rgba(31,77,112,.78);display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:28px;padding:5px 7px 5px 9px;border:1px solid rgba(255,255,255,.32);border-radius:8px;background:rgba(20,44,62,.46);color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.znf3-card__type--context{min-height:0;padding:4px 8px;border-color:rgba(255,255,255,.26);background:rgba(12,29,42,.42);}
.znf3-card__type-copy{display:flex;flex-direction:column;align-items:flex-end;min-width:0;gap:2px;}
.znf3-card__type-mainline{display:flex;min-width:0;align-items:baseline;justify-content:flex-end;gap:5px;max-width:100%;}
.znf3-card__type-label{display:block;min-width:0;color:rgba(255,255,255,.9);font-size:11px;font-weight:650;line-height:1.1;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.znf3-card__type-icon{display:grid;width:22px;height:22px;flex:0 0 22px;place-items:center;border-radius:6px;background:var(--znf3-type-icon-bg);color:#fff;}
.znf3-card__type-icon svg{display:block;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.znf3-card__placeholder{
  display:grid;
  min-height:180px;
  place-items:center;
  background:var(--znm-ui-color-surface-soft,#f1f4f6);
  color:#B8C6D8;
  font-size:28px;
  font-weight:var(--znm-ui-font-weight-strong,700);
  line-height:1;
}
.znf3-feed .znf3-card__body{
  display:flex;
  min-height:0;
  flex:1 1 auto;
  flex-direction:column;
  padding:8px 13px 11px;
  background:var(--znm-ui-color-surface,#fff);
  color:var(--znm-ui-color-text,#16293d);
}
.znf3-feed .znf3-card__body--with-labels{padding-bottom:0;}
.znf3-feed .znf3-card > .znf3-card__title-shell{position:relative;z-index:3;min-width:0;margin:0;padding:12px 13px 0;background:#fff;}
.znf3-feed .znf3-card__title{box-sizing:border-box;margin:0;padding:0;background:transparent;color:#10243A;font-size:17px;font-variation-settings:"wght" 735;font-weight:735;line-height:1.2;overflow-wrap:anywhere;}
.znf3-card__title a{color:inherit;text-decoration:none;}
.znf3-feed .znf3-card__title a:hover{color:#2F6397;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;}
.znf3-card__content-stack{display:flex;min-width:0;flex-direction:column;align-items:stretch;}
/* Component boundary: theme rules such as .single-content p must not inject block spacing into feed cards. */
.znf3-card__footer{
  container-type:inline-size;
  display:block;
  min-width:0;
  margin-top:12px;
  padding:0;
  border-top:0;
  border-radius:0;
  background:transparent;
}
.znf3-card__labels{
  display:block;
  width:100%;
  min-width:0;
  box-sizing:border-box;
  margin-top:10px;
  padding:6px 13px 7px;
  background:#F5F8FA;
  color:#738396;
  font-size:9.5px;
  font-weight:500;
  line-height:1.45;
  text-align:left;
  white-space:normal;
  overflow-wrap:normal;
  word-break:normal;
}
/* Keep one taxonomy label together whenever it fits. A label longer than
   the entire card can still wrap safely; neighbours wrap between labels. */
.znf3-card__label{
  display:inline-block;
  width:max-content;
  max-width:100%;
  vertical-align:baseline;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:none;
}
.znf3-card__label:not(:last-child)::after{
  content:" · ";
  color:#AAB6C1;
  font-weight:400;
  white-space:pre;
}
.znf3-card__labels > .znf3-card__stats{
  display:inline-flex;
  margin-right:6px;
  vertical-align:baseline;
}
.znf3-card__stats{
  display:flex;
  flex:0 0 auto;
  min-width:max-content;
  max-width:100%;
  align-items:center;
  flex-wrap:nowrap;
  gap:7px;
  white-space:nowrap;
  opacity:.56;
}
.znf3-card__stat{
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  gap:3px;
  margin:0;
  font-size:9.5px;
  font-weight:500;
  line-height:1;
  white-space:nowrap;
}
.znf3-card__stat svg{
  flex:0 0 auto;
  width:13px;
  height:13px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.znf3-card__author-compact{
  display:flex;
  flex:1 1 auto;
  min-width:0;
  max-width:100%;
  align-items:center;
  justify-content:flex-start;
  gap:6px;
  color:#738396;
}
.znf3-card__author-avatar{
  display:block;
  flex:0 0 18px;
  width:18px;
  height:18px;
  overflow:hidden;
  border-radius:50%;
  line-height:0;
}
.znf3-card__author-avatar-image{
  display:block;
  width:18px;
  height:18px;
  border-radius:50%;
  object-fit:cover;
}
.znf3-card__author-text{
  display:flex;
  flex:1 1 auto;
  min-width:0;
  max-width:100%;
  align-items:baseline;
  justify-content:flex-start;
  flex-wrap:wrap;
  column-gap:4px;
  row-gap:1px;
}
.znf3-card__author-name{
  display:-webkit-box;
  flex:0 0 auto;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  color:var(--znm-ui-color-text,#16293d);
  font-size:11px;
  font-weight:680;
  font-variation-settings:"wght" 680;
  line-height:1.2;
  text-decoration:none;
  overflow-wrap:normal;
  word-break:normal;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.znf3-card__author-name:hover,.znf3-card__author-name:focus-visible{color:var(--znm-ui-color-link,#1f6fa8);text-decoration:none;}
.znf3-card__author-location{
  display:inline-flex;
  flex:0 0 auto;
  min-width:0;
  max-width:100%;
  align-items:baseline;
  gap:4px;
  overflow:hidden;
  color:#738396;
  font-size:10.25px;
  line-height:1.2;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.znf3-card__author-separator{flex:0 0 auto;color:#A2AFBA;}
.znf3-card__author-location-value{
  display:block;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

@container (max-width:290px){
  .znf3-card__author-location{white-space:normal;}
  .znf3-card__author-location-value{
    display:-webkit-box;
    overflow:hidden;
    white-space:normal;
    overflow-wrap:normal;
    word-break:normal;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }
}
@container (max-width:220px){
  .znf3-card__author-location{flex-basis:100%;}
  .znf3-card__author-separator{display:none;}
}
.znf3-card__signals--quality{
  display:flex;
  min-height:18px;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  column-gap:14px;
  row-gap:7px;
  margin-top:10px;
  margin-right:-12px;
  margin-bottom:-12px;
  margin-left:-12px;
  padding:8px 12px;
  border-top:1px solid rgba(102,119,137,.12);
  background:rgba(102,119,137,.07);
  color:#738396;
}
.znf3-card__feed-state{flex:1 1 100%;min-width:0;line-height:1.45;overflow-wrap:anywhere;}
.znf3-card__signals-start,.znf3-card__signals-end{display:flex;min-width:0;align-items:center;}
.znf3-card__signals-start{flex:0 0 auto;max-width:100%;flex-wrap:wrap;justify-content:flex-start;gap:7px;margin-left:0;}
.znf3-card__signals-end{flex:0 0 auto;justify-content:flex-end;gap:5px;margin-left:auto;max-width:100%;}
.znf3-card__signal{
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  gap:3px;
  margin:0;
  font-size:13px;
  font-weight:500;
  line-height:1;
  white-space:nowrap;
}
.znf3-card__product-summary{
  display:flex;
  width:auto;
  max-width:100%;
  align-self:flex-start;
  align-items:baseline;
  justify-content:flex-start;
  flex-wrap:wrap;
  column-gap:5px;
  row-gap:2px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#2F6397;
  font-size:13.5px;
  font-weight:620;
  line-height:1.3;
  text-decoration:none;
}
.znf3-feed a.znf3-card__product-summary,.znf3-feed a.znf3-card__product-summary:visited{
  color:#2F6397;
  text-decoration:none;
  border-bottom:1px dashed currentColor;
  padding-bottom:2px;
}
.znf3-feed a.znf3-card__product-summary:hover,.znf3-feed a.znf3-card__product-summary:focus-visible{color:#1F4F7F;}
.znf3-feed a.znf3-card__product-summary:active{color:#173E63;}
.znf3-card__product-summary > span,.znf3-card__product-summary > strong{white-space:nowrap;}
.znf3-card__product-summary strong{
  color:#1F4F7F;
  font:inherit;
  font-weight:760;
}
.znf3-feed a.znf3-card__product-summary strong{color:#1F4F7F;}
.znf3-card__product-summary-separator{color:#8b98a4;font-weight:500;}
@media (min-width:681px){
  .znf3-card__signals--quality{margin-right:-14px;margin-bottom:-16px;margin-left:-14px;padding-right:14px;padding-left:14px;}
}

@media (max-width:680px){
  .znf3-card__media-meta{top:6px;right:6px;max-width:82%;}
  .znf3-card__type{min-height:24px;padding:4px 6px;border-radius:7px;}
  .znf3-card__type-icon{width:18px;height:18px;flex-basis:18px;}
  .znf3-card__type-icon svg{width:12px;height:12px;}
  .znf3-card__type-label{font-size:10px;}
  .znf3-feed .znf3-card__body{padding:7px 10px 10px;}
  .znf3-feed .znf3-card__body--with-labels{padding-bottom:0;}
  .znf3-card__labels{padding-right:10px;padding-left:10px;}
  .znf3-feed .znf3-card > .znf3-card__title-shell{padding:10px 10px 0;}
  .znf3-card__signals--quality{margin-right:-14px;margin-bottom:-9px;margin-left:-14px;padding-right:14px;padding-left:14px;}
  
  .znf3-card__product-summary{font-size:13px;}
  .znf3-feed .znf3-card__title{font-size:16px;line-height:1.2;}
  .znf3-card__footer{margin-top:14px;}
}

@media (max-width:700px){
  .znf3-content-modal,.znf3-lightbox{padding:8px}
  .znf3-content-modal__dialog{max-height:calc(100dvh - 16px);border-radius:18px}
  .znf3-content-modal__close,.znf3-lightbox__close{top:8px;right:8px;width:36px;height:36px;font-size:23px}
}

/* Administrator actions reuse the existing card and viewing dialog. */
.znf3-feed .znf3-card--admin{position:relative;}
.znf3-feed article.znf3-card[data-znf3-card]:has(.znf3-admin-menu[open]){overflow:visible;z-index:10;}
.znf3-feed .znf3-card>.znf3-admin-menu[open]{right:8px;z-index:10;}
.znf3-feed .znf3-card>.znf3-admin-menu{position:absolute;top:8px;left:8px;z-index:6;}

.znf3-admin-classification{display:grid;gap:16px;max-width:600px;margin:0 auto;padding:24px;}
.znf3-admin-classification h2{margin:0;padding-right:40px;font-size:22px;}
.znf3-content-modal__body--editor{box-sizing:border-box;padding:54px clamp(12px,2vw,24px) 16px;}
.znf3-admin-editor{display:block;width:100%;height:calc(100vh - 140px);height:calc(100dvh - 140px);min-height:240px;border:0;background:#fff;}

/* Must stay after component display declarations. */
.znf3-feed [hidden]{
    display: none!important;
}

/* Semantic refinement accordions. */
/* Secondary refinement groups share one calm palette. Colour is not a category code. */

/* Any grouped semantic subtype is one full-width row at every viewport. */

@media (max-width:480px){
 .znf3-filter-accordion__body{padding:12px 4px;}

}

/* Profile refinements use the same pill primitives as the public detailed switch. */
.znf3-feed--profile[data-profile-embed="1"] .znf3-controls{margin-top:14px;}
.znf3-profile-inline-filters{display:grid;gap:10px;min-width:0;margin:12px 0 0;padding:12px 0 0;border-top:1px solid #e8eef2;background:transparent;}
.znf3-profile-inline-refinements{display:grid;gap:8px;min-width:0;justify-items:center;}
.znf3-profile-inline-refinements .znf3-refinement-pills{justify-content:center;}
.znf3-profile-inline-traits{display:flex;justify-content:center;min-width:0;}
.znf3-profile-inline-traits .znf3-traits{justify-content:center;}
.znf3-profile-inline-filters>[data-znf3-filter-section="additional"]{margin:0;}
@media (max-width:560px){.znf3-profile-inline-filters{gap:8px;margin-top:10px;padding-top:10px}}

/* Applied-filter chips and return action. */
.znf3-active-filter-tags{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:6px;
    width:100%;
    min-width:0;
}
.znf3-active-filter-tags[hidden]{display:none;}
.znf3-active-filter-tag{
    display:inline-flex;
    align-items:center;
    min-height:27px;
    max-width:100%;
    box-sizing:border-box;
    padding:4px 8px;
    border:1px solid #b9dff4;
    border-radius:999px;
    background:#edf8ff;
    color:#146b98;
    font-size:11px;
    font-weight:700;
    line-height:1.2;
    overflow-wrap:anywhere;
}
.znf3-filter-action-buttons,.znf3-profile-inline-filter-buttons{
    display:grid;
    justify-items:center;
    gap:8px;
    width:100%;
}
.znf3-profile-inline-filter-actions{
    display:grid;
    justify-items:center;
    gap:8px;
    width:100%;
    margin-top:2px;
}
.znf3-profile-inline-filter-actions .znf3-reset{
    min-height:34px;
    margin:0;
    padding:6px 9px;
    font-size:11px;
}
.znf3-view-results--compact{
    min-width:132px;
}
@media (max-width:560px){
    .znf3-active-filter-tags{gap:5px;}
    .znf3-active-filter-tag{min-height:26px;padding:4px 7px;font-size:11px;}
    .znf3-profile-inline-filter-buttons{gap:8px;}
}

/* Owner moderation states and profile Top ordering. */
.znf3-card--nonpublic{
  position:relative;
  opacity:.40;
  filter:saturate(.55) grayscale(.18);
  background:var(--znm-ui-color-surface-muted,#f4f6f7);
}
.znf3-card--nonpublic:hover{opacity:.72;}
.znf3-card__diagnostic{padding-bottom:10px;margin-bottom:8px;border-bottom:var(--znm-ui-border);font-size:12px;line-height:1.45;color:var(--znf3-muted)}
.znf3-card__diagnostic>span{display:block;margin-bottom:4px}
.znf3-card__diagnostic>strong{display:block;font-weight:var(--znm-ui-font-weight-strong);color:var(--znf3-text)}
.znf3-card__diagnostic ul{padding:0 0 0 16px;margin:6px 0 8px}
.znf3-card__diagnostic .znm-ui-button{min-height:36px;padding:6px 10px;font-size:12px}
.znf3-card__diagnostic [data-znc-inventory-delete]{display:inline-flex;align-items:center;min-height:36px;border:0;background:transparent;padding:4px 8px;font:inherit;color:var(--znm-ui-color-danger);cursor:pointer}

.znf3-card__moderation-state{
  position:absolute;
  top:9px;
  right:9px;
  z-index:7;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border:1px solid var(--znm-ui-color-border,#cfd8df);
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:var(--znm-ui-color-text-secondary,#5f6f7d);
  font-size:10.5px;
  font-weight:800;
  line-height:1.1;
  box-shadow:0 1px 3px rgba(25,43,60,.08);
}
.znf3-admin-publication{
  display:grid;
  gap:6px;
  margin:0 0 6px;
  padding:0 0 6px;
  border-bottom:1px solid var(--znm-ui-color-border,#e1e7eb);
}
.znf3-admin-publication__row{display:grid;gap:4px;}
.znf3-admin-publication__row>strong{font-size:10.5px;color:var(--znm-ui-color-text-secondary,#607180);}
.znf3-admin-publication__status{display:flex;flex-wrap:wrap;gap:4px;}
.znf3-admin-publication__status>button{flex:1 1 70px;min-width:0;}
.znf3-admin-publication__state-note{display:block;padding:5px 7px;border:1px solid var(--znm-ui-color-border,#d9e1e8);border-radius:5px;background:var(--znm-ui-color-surface-muted,#f6f8fa);color:var(--znm-ui-color-text,#26323c);font-size:11px;font-weight:750;line-height:1.25;}
.znf3-admin-publication__status button.is-active{
  background:var(--znm-ui-color-accent-soft,#e7f2ee);
  color:var(--znm-ui-color-accent,#176b63);
  font-weight:800;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--znm-ui-color-accent,#176b63) 45%,transparent);
}
.znf3-admin-top-slots{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;}
.znf3-admin-top-slots button{
  min-width:0!important;
  padding:5px 2px!important;
  border:1px solid var(--znm-ui-color-border,#d9e1e8)!important;
  border-radius:5px!important;
  background:var(--znm-ui-color-surface,#fff)!important;
  font-size:10.5px!important;
}
.znf3-admin-top-slots button.is-occupied{
  border-color:#d39a24!important;
  background:#fff3cc!important;
  color:#7a4d00!important;
  font-weight:900!important;
}
.znf3-admin-top-slots button.is-current{
  border-color:var(--znm-ui-color-accent,#176b63)!important;
  background:var(--znm-ui-color-accent-soft,#e7f2ee)!important;
  color:var(--znm-ui-color-accent,#176b63)!important;
  font-weight:900!important;
}
.znf3-admin-top-clear{justify-self:start!important;padding-inline:4px!important;color:var(--znm-ui-color-text-secondary,#657583)!important;}
@container znf3-card-menu (max-width:240px){
  .znf3-admin-top-slots{grid-template-columns:repeat(4,minmax(0,1fr));}
}


@media (max-width:680px){
    .znf3-member-note{margin-bottom:10px;padding:3px 1px 8px;}
    .znf3-member-note__copy{gap:5px;}
    .znf3-member-note__copy>strong{font-size:27px;line-height:1.08;letter-spacing:-.02em;}
    .znf3-member-note p{font-size:14px;line-height:1.38;}
}

@media (max-width: 680px){.znf3-loading-guard{top:10px;margin:-2px 0 8px;}.znf3-loading-guard__panel{gap:10px;min-height:64px;padding:10px 12px;border-radius:14px;}.znf3-loading-guard__visual{width:56px;height:40px;flex-basis:56px;}.znf3-loading-guard__copy strong{font-size:14px;}.znf3-loading-guard__copy span{font-size:12px;}}

/* Shared loading spinner. */
@keyframes znf3-video-spin{to{transform:rotate(360deg)}}


.znf3-filters-panel--lazy{min-height:88px;cursor:pointer;contain:layout paint;}
.znf3-lazy-filters-status{display:flex;align-items:center;justify-content:center;gap:9px;min-height:42px;color:#607487;font-size:13px;line-height:1.35;}
.znf3-lazy-filters-status[hidden]{display:none;}
.znf3-lazy-filters-status.is-error{color:#7b4f39;}
.znf3-lazy-filters-spinner{display:inline-block;flex:0 0 17px;width:17px;height:17px;box-sizing:border-box;border:2px solid rgba(58,99,133,.18);border-top-color:#376f9f;border-radius:50%;animation:znf3-video-spin .75s linear infinite;}
.znf3-lazy-filters-retry{display:block;margin:0 auto 12px;padding:7px 12px;border:1px solid #b7c9d8;border-radius:8px;background:#fff;color:#285476;font:inherit;font-size:13px;font-weight:700;cursor:pointer;}
.znf3-lazy-filters-retry:hover{border-color:#7fa2c1;background:#f7fafc;}

.znf3-traits{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
}
.znf3-traits--global{justify-content:center;}
.znf3-trait{
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:31px;
    margin:0;
    padding:5px 10px 5px 7px;
    border:1px solid #cfd6dc;
    border-radius:999px;
    background:#f2f4f6;
    color:#596875;
    font-size:12.5px;
    font-weight:720;
    line-height:1.2;
    cursor:pointer;
    user-select:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
    transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease,opacity .16s ease;
}
.znf3-trait:hover{
    border-color:#aebcc7;
    background:#eceff2;
    color:#3f5362;
}
.znf3-trait input{
    position:absolute;
    width:1px;
    height:1px;
    margin:0;
    opacity:0;
    pointer-events:none;
}
.znf3-trait__check{
    display:inline-grid;
    place-items:center;
    flex:0 0 18px;
    width:18px;
    height:18px;
    border:1px solid #aeb9c2;
    border-radius:50%;
    background:#fff;
    color:transparent;
    font-size:11px;
    font-weight:900;
    line-height:1;
    transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.znf3-trait__label{min-width:0;}
.znf3-trait.is-active,.znf3-trait:has(input:checked){
    border-color:#5f96c2;
    background:#e8f2fa;
    color:#173f61;
    box-shadow:0 0 0 1px rgba(79,143,197,.06),inset 0 1px 0 rgba(255,255,255,.9);
}
.znf3-trait.is-active .znf3-trait__check,.znf3-trait:has(input:checked) .znf3-trait__check{
    border-color:#397caf;
    background:#397caf;
    color:#fff;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);
}
.znf3-trait.is-unavailable,.znf3-trait:has(input:disabled){
    opacity:.48;
    cursor:default;
}
.znf3-trait.is-unavailable:hover,.znf3-trait:has(input:disabled):hover{
    border-color:#cfd6dc;
    background:#f2f4f6;
    color:#596875;
}
.znf3-trait:focus-within{
    outline:2px solid rgba(47,115,180,.24);
    outline-offset:2px;
}
@media (max-width:560px){
    .znf3-traits{gap:6px;}
    .znf3-trait{min-height:30px;padding:5px 9px 5px 6px;font-size:12px;}
    .znf3-trait__check{flex-basis:17px;width:17px;height:17px;font-size:10px;}
}

/* One current feed view + two compact alternatives. */
.znf3-view-switch{
    display:flex;
    align-items:stretch;
    gap:3px;
    width:100%;
    min-width:0;
    min-height:90px;
    margin:0 0 14px;
    padding:4px;
    border:1px solid var(--znf3-line);
    border-radius:16px;
    background:linear-gradient(180deg,#f6f9fb 0%,#edf3f7 100%);
    overflow:hidden;
    box-shadow:0 5px 18px rgba(31,67,96,.05);
}
.znf3-view-switch__segment{
    position:relative;
    flex:.78 1 0;
    min-width:0;
    min-height:82px;
    overflow:hidden;
    border-radius:11px;
    background-color:#edf3f7;
    background-image:linear-gradient(rgba(247,250,252,.86),rgba(247,250,252,.86)),var(--znf3-view-bg,none);
    background-position:center;
    background-size:cover;
    transition:flex .22s ease,box-shadow .18s ease,background-image .18s ease,filter .18s ease;
}
.znf3-view-switch__segment.is-active{
    flex:2.15 1 0;
    z-index:1;
    background-image:linear-gradient(rgba(245,249,252,.34),rgba(245,249,252,.34)),var(--znf3-view-bg,none);
    box-shadow:inset 0 0 0 1.5px #2f73b4,0 2px 8px rgba(30,80,124,.08);
}
.znf3-view-switch__segment.is-unavailable:not(.is-active){
    opacity:.5;
    filter:grayscale(.25);
}
.znf3-view-switch__control{
    position:relative;
    display:grid;
    grid-template-columns:36px minmax(0,1fr) 22px;
    align-items:center;
    gap:10px;
    width:100%;
    min-height:82px;
    height:100%;
    padding:10px 11px;
    color:#40566a;
    cursor:pointer;
    user-select:none;
}
.znf3-view-switch__segment:not(.is-active) .znf3-view-switch__control{
    grid-template-columns:32px minmax(0,1fr);
    gap:8px;
}
.znf3-view-switch__input{
    position:absolute;
    width:1px;
    height:1px;
    margin:-1px;
    padding:0;
    border:0;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
    overflow:hidden;
    white-space:nowrap;
}
.znf3-view-switch__icon{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    border:1px solid rgba(57,121,205,.25);
    border-radius:10px;
    background:rgba(255,255,255,.87);
    color:#2f6fbe;
    box-shadow:0 1px 0 rgba(255,255,255,.7) inset;
}
.znf3-view-switch__icon svg{
    display:block;
    width:22px;
    height:22px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.znf3-view-switch__segment--installation .znf3-view-switch__icon{color:#176f86;background:rgba(232,247,251,.9);border-color:#add8e2;}
.znf3-view-switch__segment--pulse .znf3-view-switch__icon{color:#2f766c;background:rgba(233,247,244,.9);border-color:#b7dbd3;}
.znf3-view-switch__copy{display:grid;gap:4px;min-width:0;align-content:center;}
.znf3-view-switch__title{
    display:block;
    min-width:0;
    color:#3f5365;
    font-size:14px;
    font-weight:760;
    line-height:1.18;
    overflow-wrap:normal;
}
.znf3-view-switch__description{
    display:none;
    color:#4e6376;
    font-size:12px;
    font-weight:500;
    line-height:1.28;
}
.znf3-view-switch__segment.is-active .znf3-view-switch__title{
    color:#102f4b;
    font-size:17px;
    font-weight:860;
}
.znf3-view-switch__segment.is-active .znf3-view-switch__description{display:block;}
.znf3-view-switch__check{
    display:none;
    place-items:center;
    width:21px;
    height:21px;
    border-radius:50%;
    background:#2f73b4;
    color:#fff;
    font-size:13px;
    font-weight:900;
    line-height:1;
    box-shadow:0 0 0 2px rgba(255,255,255,.9);
}
.znf3-view-switch__segment.is-active .znf3-view-switch__check{display:grid;}
.znf3-view-switch__control:hover .znf3-view-switch__title{color:#143e64;}
.znf3-view-switch__input:focus-visible + .znf3-view-switch__icon{
    outline:2px solid #2f73b4;
    outline-offset:3px;
}
.znf3-feed.is-loading .znf3-view-switch{cursor:progress;}

@media (max-width:680px){
    .znf3-view-switch{
        gap:2px;
        min-height:88px;
        margin-bottom:11px;
        padding:3px;
        border-radius:14px;
    }
    .znf3-view-switch__segment{flex:.64 1 0;min-height:80px;border-radius:10px;}
    .znf3-view-switch__segment.is-active{flex:2.35 1 0;}
    .znf3-view-switch__control{min-height:80px;padding:8px;grid-template-columns:32px minmax(0,1fr) 19px;gap:8px;}
    .znf3-view-switch__segment:not(.is-active) .znf3-view-switch__control{
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:5px;
        padding:6px 3px;
        text-align:center;
    }
    .znf3-view-switch__icon{width:31px;height:31px;border-radius:9px;}
    .znf3-view-switch__icon svg{width:19px;height:19px;}
    .znf3-view-switch__segment:not(.is-active) .znf3-view-switch__title{font-size:10.5px;line-height:1.12;font-weight:720;}
    .znf3-view-switch__segment.is-active .znf3-view-switch__title{font-size:15px;line-height:1.15;}
    .znf3-view-switch__segment.is-active .znf3-view-switch__description{font-size:11px;line-height:1.22;}
    .znf3-view-switch__check{width:18px;height:18px;font-size:11px;}
}

@media (max-width:390px){
    .znf3-view-switch__segment{flex:.58 1 0;}
    .znf3-view-switch__segment.is-active{flex:2.55 1 0;}
    .znf3-view-switch__segment:not(.is-active) .znf3-view-switch__title{font-size:10px;}
}


/* Detailed view-switch: refinements and traits belong to the active stream. */
.znf3-view-switch--filter{
    align-items:flex-start;
    min-height:0;
    margin:0 0 14px;
    overflow:visible;
}
.znf3-view-switch--filter .znf3-view-switch__segment{
    min-height:82px;
    align-self:flex-start;
}
.znf3-view-switch--filter .znf3-view-switch__segment.is-active{
    flex:2.35 1 0;
}
.znf3-view-switch--filter .znf3-view-switch__control{
    height:auto;
}
.znf3-view-switch__details{
    display:grid;
    gap:9px;
    padding:0 10px 11px;
}
.znf3-view-switch__details[hidden]{display:none!important;}
.znf3-refinement-pills{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
    min-width:0;
}
.znf3-refinement-pill{
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:6px;
    min-height:35px;
    margin:0;
    padding:7px 12px;
    border:1px solid rgba(166,193,214,.96);
    border-radius:999px;
    background:rgba(255,255,255,.82);
    color:#203f59;
    font-size:13.5px;
    font-weight:760;
    line-height:1.15;
    cursor:pointer;
    user-select:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.86);
    transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.znf3-refinement-pill:hover{border-color:#78a8cb;background:#f7fbfe;}
.znf3-refinement-pill input{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none;}
.znf3-refinement-pill.is-active,.znf3-refinement-pill:has(input:checked){
    border-color:#3f82bd;
    background:#e7f2fb;
    color:#123f66;
    box-shadow:0 0 0 1px rgba(63,130,189,.08),inset 0 1px 0 rgba(255,255,255,.92);
}
.znf3-refinement-pill:has(input:disabled){opacity:.48;cursor:default;}
.znf3-refinement-pill:focus-within{outline:2px solid rgba(47,115,180,.24);outline-offset:2px;}
.znf3-refinement-pill__label{min-width:0;}
.znf3-refinement-pill small{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:20px;
    height:20px;
    padding:0 6px;
    border-radius:999px;
    background:rgba(44,96,137,.09);
    color:#526d82;
    font-size:10.5px;
    font-weight:760;
}
.znf3-view-switch--filter .znf3-view-switch__segment:not(.is-active) .znf3-view-switch__details{
    display:none!important;
}
/* The old Rubrics three-card public selector is no longer part of the front-page
   detailed filter. These rules intentionally scope only the new Feed-owned switch. */
@media (max-width:680px){
    .znf3-view-switch--filter .znf3-view-switch__segment{flex:.58 1 0;}
    .znf3-view-switch--filter .znf3-view-switch__segment.is-active{flex:2.55 1 0;}
    .znf3-view-switch__details{gap:7px;padding:0 7px 8px;}
    .znf3-refinement-pills{gap:6px;}
    .znf3-refinement-pill{min-height:32px;padding:6px 10px;font-size:12px;}
    .znf3-refinement-pill small{min-width:18px;height:18px;padding:0 5px;font-size:10px;}
}


/* One pill language for section refinements and cross-cutting traits. */

/* 0.4.255: three semantic home feeds are compact previews first, deep feeds on demand. */
.znf3-home-feeds{
    display:block;
    width:100%;
    min-width:0;
}
.znf3-home-feed-section{
    width:100%;
    min-width:0;
    scroll-margin-top:24px;
}
.znf3-home-feed-section + .znf3-home-feed-section{
    margin-top:44px;
}

/* Section header: one full-width chapter intro aligned to the public card grid.
   Feed owns layout; Rubrics owns only the canonical illustration. */
.znf3-home-feed-heading{
    box-sizing:border-box;
    position:relative;
    display:block;
    min-width:0;
    margin:0 0 20px;
    padding:11px 16px;
    overflow:hidden;
    /* The photograph must not show through a translucent 1px outline:
       one opaque, muted 2px contour for all section heading placements. */
    border:2px solid #344359;
    border-bottom-color:#D9C37A;
    border-radius:8px;
    background-color:#18263A;
    background-image:
        linear-gradient(90deg,rgba(20,32,51,.97) 0%,rgba(24,38,58,.92) 46%,rgba(27,43,66,.62) 72%,rgba(28,45,69,.30) 100%),
        var(--znf3-home-heading-bg,none);
    background-position:center right;
    background-size:cover;
    box-shadow:0 7px 18px rgba(3,9,20,.22);
}
.znf3-home-feed-heading__copy{
    display:flex;
    max-width:min(68%,880px);
    flex-direction:column;
    gap:var(--znm-ui-space-1,4px);
    min-width:0;
}
/*
 * Theme/article typography often targets wrapper + element (for example
 * .entry-content h2 / p). Reset the direct children at the component boundary
 * so Kadence can own article typography without owning this Feed component.
 */
.znf3-home-feed-heading .znf3-home-feed-heading__title{
    display:block;
    margin:0;
    padding:0;
    color:#F5F7FA;
    font-size:28px;
    font-weight:700;
    line-height:1.08;
    letter-spacing:-.022em;
    overflow-wrap:anywhere;
}
.znf3-home-feed-heading .znf3-home-feed-heading__description{
    margin:0;
    padding:0;
    color:#C3CFDD;
    font-size:14px;
    font-weight:500;
    line-height:1.34;
}
.znf3-home-feed-heading .znf3-home-feed-heading__description p{
    margin:0;
    font:inherit;
    color:inherit;
}
.znf3-home-feed-heading .znf3-home-feed-heading__description p + p{
    margin-top:var(--znm-ui-space-2,8px);
}
.znf3-home-feed-heading .znf3-home-feed-heading__description > :first-child{margin-top:0;}
.znf3-home-feed-heading .znf3-home-feed-heading__description > :last-child{margin-bottom:0;}

/* Category intro uses the same heading component and Foundation palette.
   There is no illustration to reserve space for, so the copy can fill it. */
.znf3-home-feed-heading--category .znf3-home-feed-heading__copy{max-width:none;}
.znf3-home-feed-heading--category .znf3-home-feed-heading__title{
    color:#F4F7FB;
}
.znf3-home-feed-heading--category .znf3-home-feed-heading__description{
    color:#B8C6D8;
    font-weight:500;
}

.znf3-home-feed-section .znf3-controls{
    margin:24px 0 0;
    padding-bottom:12px;
}
.znf3-home-feed-section .znf3-status{
    display:block;
    min-height:0;
    text-align:center;
}
.znf3-home-feed-section .znf3-status:empty{display:none;}

/* Public feed action is intentionally calmer than the generic action primitive. */
.znf3-feed--front-section .znf3-more.znm-ui-button--action{
    min-height:50px;
    padding:11px 27px;
    border-color:#2F6397;
    border-radius:9px;
    background:#2F6397;
    color:#fff;
    box-shadow:0 3px 9px rgba(27,67,106,.12);
    font-size:15.5px;
    font-weight:750;
}
.znf3-feed--front-section .znf3-more.znm-ui-button--action:hover,
.znf3-feed--front-section .znf3-more.znm-ui-button--action:focus-visible{
    border-color:#3975AF;
    background:#3975AF;
    color:#fff;
}

/* Home refinement: one disclosure and a separate, honest applied-state summary.
   The selection panel is 61.8% on large screens; compact applied chips stay
   outside <details> so they remain visible after the successful apply closes it. */
.znf3-home-filter{
    width:61.8%;max-width:980px;min-width:0;
    margin:0 auto;padding:0;border:0;background:transparent;
}
.znf3-home-filter>summary.znf3-home-filter__summary{
    display:flex;align-items:center;justify-content:center;
    width:max-content;max-width:100%;min-height:44px;
    margin:0 auto;padding:10px 19px;
    border:1px solid #2e6399;border-radius:11px;
    background:#2f6397;box-shadow:0 5px 15px rgba(25,63,103,.13);
    color:#fff;cursor:pointer;list-style:none;text-align:center;
}
.znf3-home-filter>summary.znf3-home-filter__summary:hover{
    background:#3975af;color:#fff;
}
.znf3-home-filter>summary.znf3-home-filter__summary:focus-visible{
    outline:3px solid rgba(44,113,180,.45);outline-offset:3px;
}
.znf3-home-filter>summary.znf3-home-filter__summary::-webkit-details-marker{display:none;}
.znf3-home-filter>summary.znf3-home-filter__summary::marker{content:'';}
.znf3-home-filter__summary-center{
    display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:0;
}
.znf3-home-filter__summary-copy{color:inherit;font-size:14px;font-weight:800;line-height:1.25;}
.znf3-home-filter__summary-icon{
    width:11px;height:11px;flex:0 0 11px;
    margin:0 2px 5px 0;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
    transform:rotate(45deg);transition:transform .18s ease,margin .18s ease;
}
.znf3-home-filter[open] .znf3-home-filter__summary-icon{
    margin:5px 2px 0 0;transform:rotate(225deg);
}
.znf3-home-filter__count{
    display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;
    border-radius:999px;background:rgba(255,255,255,.18);color:#fff;
    font-size:10.5px;font-weight:800;line-height:1;
}
.znf3-home-filter__count[hidden]{display:none!important;}
.znf3-home-filter__body{
    display:grid;gap:13px;margin-top:12px;padding:18px 22px 22px;
    border:1px solid rgba(180,199,217,.88);border-radius:17px;
    background:rgba(255,255,255,.68);box-shadow:0 10px 28px rgba(28,62,95,.07);
}
.znf3-home-filter__primary{
    display:flex;align-items:center;justify-content:center;flex-wrap:wrap;
    gap:8px 13px;min-width:0;
}
.znf3-home-filter__primary>.znf3-home-filter__traits{display:contents;}
.znf3-home-filter__primary .znf3-refinement-pills,
.znf3-home-filter__primary .znf3-traits{justify-content:center;gap:8px;}
.znf3-home-filter__traits .znf3-trait,
.znf3-filter-inline-traits .znf3-trait{
    min-height:35px;padding:7px 12px;border:1px solid rgba(166,193,214,.96);
    background:rgba(255,255,255,.9);color:#203f59;font-size:13px;font-weight:760;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.86);
}
.znf3-home-filter__traits .znf3-trait:hover,
.znf3-filter-inline-traits .znf3-trait:hover{border-color:#78a8cb;background:#f7fbfe;}
.znf3-home-filter__traits .znf3-trait.is-active,
.znf3-home-filter__traits .znf3-trait:has(input:checked),
.znf3-filter-inline-traits .znf3-trait.is-active,
.znf3-filter-inline-traits .znf3-trait:has(input:checked){
    border-color:#3f82bd;background:#e7f2fb;color:#123f66;
}
.znf3-filter-inline-traits{display:flex;justify-content:center;min-width:0;margin:2px 0 4px;}
.znf3-filter-inline-traits .znf3-traits{justify-content:center;gap:8px;}
.znf3-home-filter__actions{
    display:grid;justify-items:center;gap:11px;margin-top:4px;
}
.znf3-home-filter__actions .znf3-reset,
.znf3-filter-result-actions>.znf3-reset{
    min-height:36px;margin:0;padding:6px 10px;border:0;
    border-radius:0;background:transparent;box-shadow:none;color:#2b618c;
    font-size:14px;font-weight:650;line-height:1.25;
    text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;
    cursor:pointer;
}
.znf3-home-filter__actions .znf3-reset:hover,
.znf3-filter-result-actions>.znf3-reset:hover{
    border:0;background:transparent;color:#17486e;
    text-decoration-thickness:2px;
}
.znf3-home-filter__actions .znf3-reset:focus-visible,
.znf3-filter-result-actions>.znf3-reset:focus-visible{
    outline:2px solid #2f73b4;outline-offset:3px;
}
.znf3-view-results{min-width:220px;min-height:44px;}
.znf3-home-filter__error{margin:0;color:#995039;font-size:12px;line-height:1.4;text-align:center;}
.znf3-home-filter__error[hidden]{display:none!important;}
.znf3-home-filter .znf3-filter-accordion,
.znf3-home-filter .znf3-interest-tags{margin-top:0;}
.znf3-applied-filters{
    display:flex;justify-content:center;align-items:center;flex-wrap:wrap;
    gap:6px;width:61.8%;max-width:980px;min-width:0;
    margin:9px auto 0;padding:0 10px;color:#3d607c;
}
.znf3-applied-filters[hidden]{display:none!important;}
.znf3-applied-filter-tag{
    display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:28px;
    padding:4px 7px 4px 10px;border:1px solid rgba(160,191,214,.74);
    border-radius:999px;background:rgba(240,247,253,.88);
    color:#356582;font-size:11px;font-weight:650;line-height:1.2;
    overflow-wrap:anywhere;cursor:pointer;
    transition:background .16s ease,border-color .16s ease;
}
.znf3-applied-filter-tag:hover,.znf3-applied-filter-tag:focus-visible{
    border-color:#78a7ce;background:#e8f4ff;color:#195986;outline:2px solid rgba(45,111,168,.18);outline-offset:1px;
}
.znf3-applied-filter-tag__remove{display:grid;place-items:center;flex:0 0 16px;width:16px;height:16px;
    border-radius:50%;background:rgba(34,103,152,.11);font-size:13px;line-height:1;color:inherit;
}
/* The applied summary belongs to collapsed feed state; open filters have
   their own editable draft chips and searched selections. */
.znf3-home-filter[open]+.znf3-applied-filters{display:none!important;}
/* Chosen tags are quiet editable chips directly above their search box.
   The confirmed state is shown separately after the filter has been applied. */
.znf3-interest-pinned{
    display:flex;flex-wrap:wrap;align-items:center;gap:5px;
    margin:0 0 8px;padding:0;border:0;background:transparent;
}
.znf3-interest-pinned[hidden]{display:none!important;}
.znf3-interest-pinned__item{
    display:inline-flex;align-items:center;gap:5px;max-width:100%;
    min-height:28px;padding:4px 7px 4px 10px;
    border:1px solid rgba(173,195,210,.78);border-radius:999px;
    background:rgba(255,255,255,.62);color:#47667c;
    font:inherit;font-size:11.5px;font-weight:600;line-height:1.25;
    cursor:pointer;transition:border-color .16s ease,background .16s ease;
}
.znf3-interest-pinned__item:hover{
    border-color:#92b9d3;background:rgba(243,249,254,.94);color:#235b83;
}
.znf3-interest-pinned__item:focus-visible{
    outline:2px solid #397caf;outline-offset:2px;
}
.znf3-interest-pinned__icon{
    display:grid;place-items:center;flex:0 0 16px;width:16px;height:16px;
    border-radius:50%;background:rgba(80,123,156,.11);
    font-size:14px;font-weight:700;line-height:1;color:inherit;
}
.znf3-active-filter-tags{gap:7px;}
.znf3-active-filter-tag{
    display:inline-flex;align-items:center;gap:8px;min-height:30px;
    padding:6px 9px;border:1px solid #bad7ea;border-radius:999px;
    background:#eaf5fc;color:#175d88;font-size:11.5px;font-weight:700;line-height:1.2;
    cursor:pointer;transition:background .16s ease,border-color .16s ease;
}
.znf3-active-filter-tag:hover,.znf3-active-filter-tag:focus-visible{
    border-color:#7baecf;background:#f4fbff;outline:2px solid rgba(56,127,183,.16);outline-offset:1px;
}
.znf3-active-filter-tag__label{min-width:0;}
.znf3-active-filter-tag__remove{
    display:inline-grid;place-items:center;flex:0 0 17px;width:17px;height:17px;
    border-radius:50%;background:rgba(20,107,152,.10);
    color:#2b6e98;font-size:14px;font-weight:800;line-height:1;
}
.znf3-filter-action-buttons{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;}
.znf3-solution-group{background:rgba(223,232,246,.92);}
.znf3-solution-group[open]{background:rgba(236,243,249,.96);box-shadow:0 8px 20px rgba(26,55,86,.06);}
.znf3-solution-group>summary strong{color:#264158;}
.znf3-filter-sections [data-znf3-filter-group]>summary strong{color:#264158;}
.znf3-filters-panel--after-content{width:61.8%;max-width:980px;margin-inline:auto;}
@media (max-width:980px){
    .znf3-home-filter,.znf3-applied-filters,.znf3-filters-panel--after-content{width:min(100%,820px);}
}
@media (max-width:680px){
    .znf3-home-filter,.znf3-applied-filters,.znf3-filters-panel--after-content{width:100%;}
    .znf3-home-filter__body{gap:10px;margin-top:10px;padding:13px 12px 16px;border-radius:14px;}
    .znf3-home-filter>summary.znf3-home-filter__summary{min-height:44px;padding:9px 16px;}
    .znf3-applied-filters{gap:5px;padding:0 4px;}
    .znf3-applied-filter-tag{font-size:10.5px;padding:4px 8px;}
}
/* Inner groups are subordinate to the outer section refinement. */
.znf3-home-filter .znf3-filter-accordion>summary{
    min-height:52px;
    padding-top:9px;
    padding-bottom:9px;
    border-color:#d6e1e9;
    background:#f4f8fa;
    box-shadow:none;
}
.znf3-home-filter .znf3-filter-accordion>summary:hover,.znf3-home-filter .znf3-filter-accordion[open]>summary{
    border-color:#c5d6e2;
    background:#eef4f7;
    box-shadow:none;
}
.znf3-home-filter .znf3-filter-accordion>summary::before{
    flex-basis:32px;
    width:32px;
    height:32px;
    background-size:18px 18px;
}
.znf3-home-filter .znf3-filter-accordion>summary strong{
    font-size:14px;
}

/* Content first, refinement second. The physical gap lives on controls as
   padding so adjacent block margins cannot collapse back to 8px. */
.znf3-home-feed-section .znf3-controls + .znf3-home-filter{
    margin-top:0;
}

@media (max-width:680px){
    .znf3-home-feed-section + .znf3-home-feed-section{
        margin-top:34px;
    }
    .znf3-home-feed-heading{
        margin-bottom:var(--znm-ui-space-4,16px);
        padding:9px 12px;
        border-radius:8px;
        background-position:center right;
    }
    .znf3-home-feed-heading__copy{max-width:84%;gap:var(--znm-ui-space-1,4px);}
    .znf3-home-feed-heading--category{padding:12px 14px;}
    .znf3-home-feed-heading--category .znf3-home-feed-heading__copy{max-width:none;}
    .znf3-home-feed-heading .znf3-home-feed-heading__title{
        font-size:22px;
        line-height:1.1;
        letter-spacing:-.018em;
    }
    .znf3-home-feed-heading .znf3-home-feed-heading__description{
        font-size:13px;
        line-height:1.34;
    }
    .znf3-home-filter{max-width:none;}
    .znf3-home-filter__summary-copy{font-size:14px;}
    .znf3-home-filter .znf3-filter-accordion>summary{
        min-height:49px;
        padding-top:8px;
        padding-bottom:8px;
    }
    .znf3-home-feed-section .znf3-controls{margin:21px 0 0;padding-bottom:11px;}
}


/* Shared disclosure presentation for the three main homepage sections. */
.znf3-section-accordion{display:block;min-width:0;width:100%;}
.znf3-section-accordion > summary.znf3-home-feed-heading{
    display:flex;align-items:center;justify-content:space-between;
    gap:14px;min-width:0;cursor:pointer;list-style:none;text-align:left;
}
.znf3-section-accordion > summary.znf3-home-feed-heading::-webkit-details-marker{display:none;}
.znf3-section-accordion > summary.znf3-home-feed-heading::marker{content:'';}
.znf3-section-accordion > summary.znf3-home-feed-heading:focus-visible{outline:2px solid #f8c95b;outline-offset:2px;}
.znf3-section-accordion:not([open]) > summary.znf3-home-feed-heading{margin-bottom:0;}
.znf3-section-accordion > summary .znf3-home-feed-heading__copy{
    display:flex;flex:1 1 auto;min-width:0;max-width:none;align-items:flex-start;
    text-align:left;
}
.znf3-section-accordion > summary .znf3-home-feed-heading__title,
.znf3-section-accordion > summary .znf3-home-feed-heading__description{text-align:left;}
.znf3-section-accordion__action{
    display:inline-flex;align-items:center;justify-content:space-between;
    flex:0 0 auto;gap:16px;min-width:120px;min-height:52px;
    padding:8px 12px;border:1px solid rgba(245,205,123,.78);border-radius:10px;
    background:rgba(19,35,56,.68);color:#fff5e0;
    font-size:13px;line-height:1.16;font-weight:800;text-align:center;
    box-shadow:none;transition:background-color .16s ease,border-color .16s ease;
}
/* The closed section is the primary invitation to browse; an open section
   retains a quieter control. Both use the same layout and real image remains
   visible through the tinted surface, without a second CSS override layer. */
.znf3-section-accordion[open] .znf3-section-accordion__action{
    background:rgba(19,35,56,.30);
    border-color:rgba(245,205,123,.52);
    color:#f4f6fa;
}
.znf3-section-accordion__action-open,.znf3-section-accordion__action-close{
    display:flex;flex:1 1 auto;flex-direction:column;align-items:center;
    gap:1px;min-width:0;text-align:center;
}
.znf3-section-accordion__action-close,
.znf3-section-accordion[open] .znf3-section-accordion__action-open{display:none;}
.znf3-section-accordion[open] .znf3-section-accordion__action-close{display:flex;}
.znf3-section-accordion:not([open]) > summary:hover .znf3-section-accordion__action{
    background:rgba(19,35,56,.82);border-color:rgba(245,205,123,.94);
}
.znf3-section-accordion[open] > summary:hover .znf3-section-accordion__action{
    background:rgba(19,35,56,.43);border-color:rgba(245,205,123,.70);
}
.znf3-section-accordion__chevron{
    display:block;flex:0 0 11px;width:11px;height:11px;
    border-right:2px solid currentColor;border-bottom:2px solid currentColor;
    transform:translateY(-2px) rotate(45deg);
}
.znf3-section-accordion[open] .znf3-section-accordion__chevron{
    transform:translateY(3px) rotate(225deg);
}
@media(max-width:680px){
    .znf3-section-accordion > summary.znf3-home-feed-heading{gap:10px;}
    .znf3-section-accordion__action{
        min-width:105px;min-height:48px;padding:7px 9px;
        gap:12px;font-size:12px;border-radius:9px;
    }
    .znf3-section-accordion__chevron{width:9px;height:9px;flex-basis:9px;}
}

/* Trait disclosures reuse Foundation's surface and chevron. Feed owns layout. */
.znf3-interest-tags{display:grid;gap:8px;min-width:0;text-align:left;}
.znf3-trait-section{min-width:0;margin:0;}
.znf3-trait-section>summary{min-height:46px;padding:10px 12px;font-size:15px;line-height:1.25;}
.znf3-trait-section__title{display:flex;align-items:center;gap:8px;min-width:0;}
.znf3-trait-section__title>small{display:inline-flex;min-width:18px;height:18px;align-items:center;justify-content:center;padding:0 5px;border-radius:999px;background:var(--znm-ui-chip-selected);color:var(--znm-ui-chip-ink);font-size:10px;font-weight:700;line-height:1;}
.znf3-trait-section.has-selection>summary{color:var(--znm-ui-color-accent);}
.znf3-trait-section>.znf3-interest-tags__group{padding:10px 4px 4px;}

/* Inside one tag category only subgroup headings are visible at first. */
.znf3-trait-group{margin:0;min-width:0;}
.znf3-trait-group>summary{min-height:34px;padding:6px 2px;color:var(--znm-ui-color-text-secondary);font-size:13px;font-weight:600;}
.znf3-trait-group>summary::after{margin-right:4px;}
.znf3-trait-subgroup__title{text-decoration:underline;text-decoration-color:#b8c7d3;text-decoration-thickness:1px;text-underline-offset:4px;}
.znf3-trait-group>summary:hover .znf3-trait-subgroup__title,.znf3-trait-group[open]>summary .znf3-trait-subgroup__title{color:var(--znm-ui-color-accent);text-decoration-color:currentColor;}
.znf3-trait-group.has-selection>summary{color:var(--znm-ui-color-accent);}
.znf3-trait-group>summary>[data-znf3-semantic-summary]{display:inline-flex;min-width:18px;height:18px;align-items:center;justify-content:center;margin-left:auto;margin-right:7px;padding:0 5px;border-radius:999px;background:var(--znm-ui-chip-selected);color:var(--znm-ui-chip-ink);font-size:10px;font-weight:700;line-height:1;}
.znf3-trait-group>.znf3-trait-choices{padding:5px 2px 8px;}
.znf3-trait-choices{display:flex;align-items:flex-start;gap:4px;flex-wrap:wrap;min-width:0;}
.znf3-trait-choices>*{flex:0 1 auto;max-width:100%;white-space:normal;}

.znf3-interest-tags__group input[data-znf3-interest-search]{box-sizing:border-box;width:100%;max-width:320px;min-width:0;margin:0 0 7px;padding:6px 8px;border:1px solid var(--znm-ui-color-border);border-radius:var(--znm-ui-radius);font:inherit;font-size:12px;background:var(--znm-ui-color-surface)}
.znf3-interest-tags__group [data-znf3-interest-status]{margin:5px 0;color:var(--znm-ui-color-text-secondary);font-size:12px}
.znf3-interest-tags__group [data-znf3-interest-status]:empty{display:none}

/* Context refresh is a small status inside the existing tag-list component. */
.znf3-facet-refresh-status{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin:2px 0 9px;color:#416783;font-size:12px;line-height:1.4;text-align:center;}
.znf3-facet-refresh-status[hidden]{display:none!important;}
.znf3-facet-refresh-retry{border:0;background:transparent;color:#1b6699;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer;}
.znf3-facet-refresh-retry:focus-visible{outline:2px solid #2673a7;outline-offset:2px;}
