.yj-home {--yj-cream:#fff2d3;--yj-blue:#32afd4;--yj-surface:#262627;--yj-muted:#b8b8bd;--yj-heading:38px;--yj-subheading:24px;--yj-body:16px;--yj-label:13px;--yj-art-width:240px;--yj-row-gap:34px;font-size:var(--yj-body);line-height:1.8;padding-bottom:56px}
.yj-home section+section{margin-top:88px}
/* Primary homepage sections share one rhythm, including optional admin blocks. */
.yj-homepage{--yj-heading:34px;--yj-subheading:22px;--yj-body:16px;--yj-label:13px;--yj-link:14px;--yj-section-gap:80px;line-height:1.6;padding-bottom:80px}
.yj-home.yj-homepage>section+section{margin-top:var(--yj-section-gap)}
.yj-homepage .yj-section-heading{margin-bottom:24px}
.yj-section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin:0 0 28px}
.yj-section-heading h2,.yj-section-heading h1{font-size:var(--yj-heading);line-height:1.22;font-weight:600;color:var(--yj-cream);margin:0}
.yj-section-heading>a,.yj-section-heading>span{font-size:var(--yj-label)}
.yj-section-heading>span{color:var(--yj-muted)}
.yj-carousel{background:var(--yj-surface);border-radius:5px;overflow:hidden}
.yj-slide{display:grid;grid-template-columns:58% 42%;min-height:340px}
.yj-slide[hidden],.yj-carousel-controls[hidden]{display:none!important}
.yj-slide-art{display:block;overflow:hidden;background:#202123;min-height:340px}
.yj-slide-art img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:16/9}
.yj-no-art{height:100%;display:grid;place-items:center;color:var(--yj-cream);font-size:32px}
.yj-slide-copy{padding:36px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.yj-eyebrow{font-size:var(--yj-label);line-height:1.8;color:var(--yj-muted);margin-bottom:14px}
.yj-eyebrow span{padding:0 6px;color:var(--yj-blue)}
.yj-slide h3{font-size:32px;line-height:1.3;margin:0 0 14px;font-weight:600}
.yj-slide h3 a{color:var(--yj-cream)}
.yj-slide-copy p{font-size:var(--yj-body);line-height:1.8;color:#c7c7cd;margin:0 0 24px}
.yj-slide-copy .btn{padding:11px 19px;font-size:var(--yj-label)}.yj-slide-copy .btn span{margin-left:14px}
.yj-carousel-controls{display:flex;align-items:center;gap:18px;min-height:60px;padding:10px 22px;border-top:1px solid #ffffff0d}
.yj-carousel-progress{height:4px;background:#ffffff20;overflow:hidden}
.yj-carousel-progress span{display:block;width:100%;height:100%;background:var(--yj-blue);transform:scaleX(0);transform-origin:left}
.yj-dots{display:flex;gap:4px;margin-right:auto}
.yj-carousel button{background:none;border:1px solid transparent;border-radius:3px;color:var(--yj-cream);cursor:pointer;min-width:36px;min-height:36px}
.yj-dots button{min-width:30px;padding:8px}
.yj-dots button span{display:block;height:4px;width:16px;border-radius:2px;background:#ffffff35}
.yj-dots button[aria-pressed=true] span{background:var(--yj-blue)}
.yj-arrow-controls{display:flex;gap:7px}.yj-arrow-controls button{border-color:#ffffff20}.yj-arrow-controls [data-pause]{font-size:var(--yj-label);padding:0 10px;min-width:66px}
.yj-home a:focus-visible,.yj-home button:focus-visible,.yj-home summary:focus-visible{outline:2px solid var(--yj-blue);outline-offset:4px}
.yj-forum-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.yj-forum-columns.yj-columns-1{grid-template-columns:1fr}
.yj-topic-panel{border-radius:5px;background:var(--yj-surface);padding:25px 26px 0;min-width:0}
.yj-topic-panel h3{font-size:var(--yj-subheading);line-height:1.3;color:var(--yj-cream);margin:0 0 6px;font-weight:600}
.yj-panel-description{font-size:var(--yj-label);color:var(--yj-muted);margin:0 0 18px}
.yj-topics{padding:0;margin:0;list-style:none}
.yj-topics li{display:flex;justify-content:space-between;gap:18px;border-top:1px solid #ffffff0d;padding:19px 0}
.yj-topic-main{display:flex;flex-direction:column;gap:5px;min-width:0}.yj-topic-category{font-size:var(--yj-label);text-transform:uppercase;letter-spacing:.07em;color:var(--yj-blue)}
.yj-topic-main>a{font-size:18px;color:#eeeeef;line-height:1.5;overflow-wrap:anywhere}
.yj-topic-date{font-size:var(--yj-label);color:var(--yj-muted)}
.yj-topic-stats{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;justify-content:center;font-size:var(--yj-label);color:var(--yj-muted);min-width:48px}
.yj-topic-stats strong{font-size:var(--yj-subheading);font-weight:500;color:var(--yj-cream)}.yj-topic-stats small{font-size:var(--yj-label);margin-top:5px}
.yj-topics .yj-topics-empty{color:var(--yj-muted);font-size:var(--yj-body);line-height:1.8;min-height:95px;align-items:center}
.yj-faq-list{background:var(--yj-surface);border-radius:5px;padding:0 26px}
.yj-faq details+details{border-top:1px solid #ffffff12}.yj-faq summary{list-style:none;display:flex;justify-content:space-between;gap:20px;padding:23px 0;font-size:var(--yj-subheading);font-weight:600;line-height:1.4;color:var(--yj-cream);cursor:pointer}
.yj-faq summary::-webkit-details-marker{display:none}.yj-faq summary span{color:var(--yj-blue);font-size:26px;line-height:1.3}
.yj-faq details[open] summary span{transform:rotate(45deg)}.yj-faq-answer{padding:0 30px 24px 0;font-size:var(--yj-body);line-height:1.9;color:#c7c7cd;overflow-wrap:anywhere}
.yj-custom h2{font-size:var(--yj-heading);line-height:1.22;font-weight:600;color:var(--yj-cream)}.yj-custom p{margin-bottom:0;line-height:1.9;overflow-wrap:anywhere}
.yj-community-intro{display:grid;grid-template-columns:var(--yj-art-width) minmax(0,1fr);gap:var(--yj-row-gap);align-items:center;margin-bottom:40px}
.yj-community-intro h2{font-size:var(--yj-heading);line-height:1.22;font-weight:600;color:var(--yj-cream);margin:0;overflow-wrap:anywhere}
.yj-community-intro h2 span{display:block;color:var(--yj-blue)}
.yj-community-intro>p{font-size:var(--yj-body);line-height:1.9;color:#c7c7cd;margin:0;max-width:650px;overflow-wrap:anywhere}
.yj-community-row{display:grid;grid-template-columns:var(--yj-art-width) minmax(0,1fr);gap:var(--yj-row-gap);padding:24px 0;align-items:center}
.yj-community-row+.yj-community-row{border-top:1px solid #ffffff25}
.yj-community-row:first-child{padding-top:0}
.yj-community-row:last-child{padding-bottom:0}
.yj-community-art{height:160px;overflow:hidden;background:var(--yj-surface);border-radius:3px}
.yj-community-art img{width:100%;height:100%;display:block;object-fit:cover}
.yj-community-art.yj-art-contain img{object-fit:contain;padding:15px}
.yj-community-copy h3{font-size:var(--yj-subheading);line-height:1.3;color:var(--yj-cream);font-weight:600;margin:0 0 12px;overflow-wrap:anywhere}
.yj-community-copy p{font-size:var(--yj-body);line-height:1.9;color:#c7c7cd;max-width:760px;margin:0 0 19px;overflow-wrap:anywhere}
.yj-community-copy>a{display:inline-flex;align-items:center;gap:15px;font-size:var(--yj-label);font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--yj-cream);padding:5px 0}
.yj-community-copy>a span{color:var(--yj-blue);font-size:19px;font-weight:400;line-height:1}
.yj-community-copy>a:hover{color:var(--yj-blue)}
.yj-community-row.yj-community-no-image{grid-template-columns:1fr}
@media(max-width:767px){.yj-community-intro{grid-template-columns:1fr;gap:17px;margin-bottom:25px}.yj-home{--yj-heading:32px;--yj-art-width:160px;--yj-row-gap:23px}.yj-community-row{grid-template-columns:160px minmax(0,1fr);gap:23px}.yj-community-art{height:140px}}
@media(max-width:480px){.yj-community-row{grid-template-columns:1fr;gap:22px;padding:25px 0}.yj-community-art{height:190px}}
@media(max-width:991px){.yj-slide{grid-template-columns:1fr}.yj-slide-art{min-height:0}.yj-slide-art img{max-height:360px}.yj-slide-copy{padding:26px}.yj-forum-columns{gap:18px}}
@media(max-width:650px){.yj-section-heading{align-items:flex-start;flex-direction:column;gap:8px}.yj-home{--yj-heading:30px;--yj-subheading:23px}.yj-forum-columns{grid-template-columns:1fr}.yj-slide-copy{padding:23px}.yj-slide h3{font-size:28px}.yj-carousel-controls{padding:8px 13px;gap:8px}.yj-topic-panel{padding:22px 20px 0}.yj-faq-list{padding:0 20px}.yj-home section+section{margin-top:60px}}


/* Small accents and a shared spacing rhythm retain the existing theme. */
.yj-section-heading h2 span,.yj-section-heading h1 span,.yj-topic-panel h3 span,.yj-faq-intro h2 span{color:var(--yj-blue)}
.yj-section-heading>a,.yj-faq-intro>a,.yj-text-link{display:inline-flex;align-items:center;gap:12px;line-height:1.6}
.yj-section-heading>a{flex-shrink:0}
.yj-carousel.yj-image-right .yj-slide{grid-template-columns:42% 58%}
.yj-carousel.yj-image-right .yj-slide-art{grid-column:2;grid-row:1}
.yj-carousel.yj-image-right .yj-slide-copy{grid-column:1;grid-row:1}
.yj-faq{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:64px;align-items:start}
.yj-faq-intro h2{font-size:var(--yj-heading);font-weight:600;line-height:1.22;color:var(--yj-cream);margin:0 0 22px;overflow-wrap:anywhere}
.yj-faq-intro h2 span{display:block}
.yj-faq-intro p{font-size:var(--yj-body);line-height:1.9;color:#c7c7cd;margin:0 0 24px;max-width:320px}
.yj-faq-intro>a{font-size:var(--yj-label)}
.yj-faq-list{border-top:2px solid var(--yj-blue)}
.yj-faq summary{font-size:var(--yj-subheading);padding:28px 0;align-items:baseline}
.yj-faq summary span{flex-shrink:0}
.yj-faq details[open] summary{padding-bottom:16px}
.yj-archive-intro{color:var(--yj-muted);margin-bottom:36px}
.yj-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.yj-archive-card{background:var(--yj-surface);border-radius:5px;overflow:hidden;display:flex;flex-direction:column}
.yj-archive-card>a img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.yj-archive-copy{padding:26px;display:flex;flex-direction:column;align-items:start;flex:1}
.yj-archive-copy h2{font-size:var(--yj-subheading);line-height:1.4;font-weight:600;margin:0 0 16px}
.yj-archive-copy h2 a{color:var(--yj-cream)}
.yj-archive-copy p{color:#c7c7cd;font-size:var(--yj-body);line-height:1.8;margin:0 0 24px}
.yj-archive-copy>.yj-text-link{font-size:var(--yj-label);margin-top:auto}
.yj-archive-pagination{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;margin-top:44px;font-size:var(--yj-label)}
@media(max-width:991px){.yj-carousel.yj-image-right .yj-slide{grid-template-columns:1fr}.yj-carousel.yj-image-right .yj-slide-art,.yj-carousel.yj-image-right .yj-slide-copy{grid-column:auto;grid-row:auto}.yj-faq{gap:30px;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.yj-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.yj-faq{grid-template-columns:1fr;gap:28px}.yj-faq-intro p{max-width:560px}.yj-faq-intro h2 span{display:inline}.yj-faq summary{font-size:var(--yj-subheading)}}
@media(max-width:650px){.yj-carousel-controls{flex-wrap:wrap;gap:8px 12px}.yj-dots{margin-right:auto;flex-wrap:wrap;gap:0}.yj-dots button{min-width:26px;width:26px;padding:5px}.yj-arrow-controls{margin-left:auto}.yj-archive-grid{grid-template-columns:1fr}.yj-archive-copy{padding:23px}}


/* Homepage typography: 34/28 section headings, 22/20 card headings,
   18 list headers, 16 body, 14 actions and 13 supporting labels. Spacing uses an 8px rhythm. */
.yj-homepage :is(.yj-section-heading h2,.yj-community-intro h2,.yj-faq-intro h2,.yj-custom h2){font-size:var(--yj-heading);line-height:1.25;font-weight:600;margin:0}
.yj-homepage :is(.yj-slide h3,.yj-topic-panel h3,.yj-community-copy h3,.yj-faq summary){font-size:var(--yj-subheading);line-height:1.35;font-weight:600}
.yj-homepage :is(.yj-slide h3,.yj-topic-panel h3,.yj-community-copy h3){margin:0 0 8px}
.yj-homepage :is(.yj-slide-copy p,.yj-panel-description,.yj-community-intro>p,.yj-community-copy p,.yj-faq-intro p,.yj-faq-answer,.yj-custom p){font-size:var(--yj-body);line-height:1.6;color:#c7c7cd}
.yj-homepage :is(.yj-slide-copy p,.yj-community-copy p,.yj-faq-intro p){margin:0 0 16px}
.yj-homepage :is(.yj-section-heading>a,.yj-slide-copy .btn,.yj-community-copy>a,.yj-faq-intro>a){font-size:var(--yj-link);line-height:1.5;font-weight:500}
.yj-homepage :is(.yj-section-heading>a,.yj-community-copy>a,.yj-faq-intro>a){gap:12px;color:var(--yj-blue)}
.yj-homepage .yj-community-copy>a{text-transform:none;letter-spacing:normal;padding:0}
.yj-homepage .yj-eyebrow{font-size:var(--yj-label);line-height:1.5;margin-bottom:8px}
.yj-homepage .yj-slide-copy{padding:24px}
.yj-homepage .yj-forum-columns{gap:24px}
.yj-homepage .yj-topic-panel{display:flex;flex-direction:column;padding:0;background:transparent;border-radius:0}
.yj-homepage .yj-panel-description{margin:0}
/* Keep list labels visually subordinate to the section title, in their own strips. */
.yj-homepage .yj-forum .yj-section-heading{margin-bottom:32px}
.yj-homepage .yj-topic-panel-heading{padding:12px 23px;margin-bottom:8px;background:#1a2225;border:1px solid #32afd426;border-right:2px solid #32afd480;border-radius:5px}
.yj-homepage .yj-topic-panel-heading h3{font-size:18px;line-height:1.4;margin:0 0 4px}
.yj-homepage .yj-topic-panel-heading h3 span{color:inherit}
.yj-homepage .yj-topic-panel-heading .yj-panel-description{font-size:13px;line-height:1.5;color:var(--yj-muted)}
.yj-homepage .yj-topic-list{flex:1;padding:4px 24px;background:var(--yj-surface);border-radius:5px}
.yj-homepage .yj-topics li{display:block;padding:12px 0}
.yj-homepage .yj-topics li:first-child{border-top:0}
.yj-homepage .yj-topic-main{gap:4px}
.yj-homepage .yj-topic-main>a{font-size:var(--yj-body);line-height:1.5}
.yj-homepage .yj-topic-category{font-size:var(--yj-label);line-height:1.5;letter-spacing:.04em}
.yj-homepage .yj-topic-meta{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 16px;margin-top:8px}
.yj-homepage :is(.yj-topic-date,.yj-topic-stats,.yj-topic-stats strong){font-size:var(--yj-label);line-height:1.5}
.yj-homepage .yj-topic-stats{flex-direction:row;align-items:baseline;justify-content:flex-end;gap:6px;min-width:0}
.yj-homepage .yj-topics .yj-topics-empty{font-size:var(--yj-body);line-height:1.6;min-height:0;padding:16px 0 24px}
.yj-homepage .yj-community-intro{grid-template-columns:1fr;gap:12px;margin-bottom:24px}
.yj-homepage .yj-community-intro h2 span{display:inline}
.yj-homepage .yj-community-intro>p{margin:0;max-width:760px}
.yj-homepage .yj-community-row{gap:32px}
.yj-homepage .yj-faq{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px}
.yj-homepage .yj-faq-intro h2{margin-bottom:12px}
.yj-homepage .yj-faq-intro p{max-width:360px;margin-left:auto}
.yj-homepage .yj-faq-list{padding:0 24px}
.yj-homepage .yj-faq summary{font-size:18px;line-height:1.4;padding:14px 0;gap:16px;align-items:baseline;min-height:48px}
.yj-homepage .yj-faq summary span{font-size:20px;line-height:1.25}
.yj-homepage .yj-faq details[open] summary{padding-bottom:8px}
.yj-homepage .yj-faq-answer{padding:0 0 16px 28px}
.yj-homepage .yj-custom h2{margin-bottom:12px}
.yj-homepage .yj-custom .card-body{padding:24px}

/* Mirror alternate sections while keeping their type scale and spacing shared. */
.yj-homepage .yj-forum,.yj-homepage .yj-faq{text-align:right}
.yj-homepage .yj-forum .yj-section-heading{flex-direction:row-reverse}
.yj-homepage .yj-faq-intro{grid-column:2;grid-row:1}
.yj-homepage .yj-faq-list{grid-column:1;grid-row:1}
.yj-homepage .yj-faq summary{flex-direction:row-reverse}

/* The welcome card follows the same heading, body and action sizes. */
.top-container.yj-home-welcome-container .yj-welcome-frame{margin-bottom:80px}
.yj-home-welcome-container .welcome-title{font-size:22px;line-height:1.35}
.yj-home-welcome-container .welcome-text{font-size:16px;line-height:1.6}
.yj-home-welcome-container .welcome-lr-col .btn{font-size:14px;line-height:1.5}

@media(max-width:991px){
 .yj-homepage .yj-faq{gap:32px}
}
@media(max-width:767px){
 .yj-homepage{--yj-heading:28px;--yj-subheading:20px;--yj-section-gap:56px;padding-bottom:56px}
 .yj-homepage .yj-slide-copy{padding:24px}
 .yj-homepage .yj-community-row{gap:24px}
 .yj-homepage .yj-faq{grid-template-columns:1fr;gap:24px}
 .yj-homepage .yj-faq-intro{grid-column:1;grid-row:1}
 .yj-homepage .yj-faq-list{grid-column:1;grid-row:2}
 .yj-homepage .yj-faq-intro p{max-width:560px}
 .yj-homepage .yj-faq summary{font-size:17px;padding:12px 0}
 .top-container.yj-home-welcome-container .yj-welcome-frame{margin-bottom:56px}
 .yj-home-welcome-container .welcome-title{font-size:20px}
}
@media(max-width:650px){
 .yj-homepage .yj-section-heading{gap:12px}
 .yj-homepage .yj-forum .yj-section-heading{flex-direction:column;align-items:flex-end}
 .yj-homepage .yj-forum-columns{gap:24px}
 .yj-homepage .yj-faq-list{padding:0 24px}
}
