/* RJX Zones 1.0 — original modular WordPress design system. */
:root {
  --rjx-accent: #da653e;
  --rjx-container: 1280px;
  --rjx-bg: #fafaf8;
  --rjx-card: #fff;
  --rjx-ink: #191b1c;
  --rjx-muted: #74787b;
  --rjx-line: #e9e9e5;
  --rjx-soft: #f1f1ed;
  --rjx-shadow: 0 12px 50px rgba(16, 20, 24, .055);
  --rjx-radius: 14px;
  --rjx-font: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
}
body.rjx-scheme-dark {
  --rjx-bg: #101214;
  --rjx-card: #1b1e21;
  --rjx-ink: #f3f4f4;
  --rjx-muted: #acb0b3;
  --rjx-line: #303438;
  --rjx-soft: #25292d;
  --rjx-shadow: 0 12px 50px rgba(0, 0, 0, .20);
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--rjx-bg); color: var(--rjx-ink); font: 16px/1.65 var(--rjx-font); -webkit-font-smoothing: antialiased; }
body, button, input, textarea, select { font-family: var(--rjx-font); }
img, video { max-width: 100%; height: auto; }
img { vertical-align: middle; }
a { color: inherit; text-decoration: none; transition: color .18s ease, background-color .18s ease, border-color .18s ease; }
a:hover { color: var(--rjx-accent); }
button, input, textarea, select { font: inherit; }
button, select { cursor: pointer; }
button { color: inherit; }
:focus-visible { outline: 3px solid var(--rjx-accent); outline-offset: 3px; }
::selection { background: var(--rjx-accent); color: #fff; }
.rjx-container { max-width: calc(var(--rjx-container) + 64px); width: 100%; padding-inline: 32px; margin-inline: auto; }
.rjx-site { min-height: 100vh; display: flex; flex-direction: column; }
.rjx-site > .rjx-footer { margin-top: auto; }
.screen-reader-text { border: 0; clip: rect(1px,1px,1px,1px); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal!important; clip-path: inset(50%); }
.rjx-skip { position: absolute; z-index: 300; top: -120px; left: 12px; background: #fff; color: #000; padding: 10px; }
.rjx-skip:focus { top: 12px; }
/* Header */
.rjx-announcement { background: #202326; color: #fff; padding: 7px 0; text-align: center; font-size: 12px; font-weight: 600; letter-spacing: .035em; }
.rjx-announcement a { color: #fff; }
.rjx-header { background: var(--rjx-card); border-bottom: 1px solid var(--rjx-line); z-index: 100; }
.rjx-sticky-header .rjx-header { position: sticky; top: 0; }
.admin-bar.rjx-sticky-header .rjx-header { top: 32px; }
.rjx-header-inner { min-height: 89px; display: flex; align-items: center; gap: 28px; }
.rjx-header-brand { flex: 0 0 auto; min-width: 130px; }
.rjx-brand-text, .rjx-footer-brand { color: var(--rjx-ink); font-weight: 850; font-size: 26px; letter-spacing: -.065em; line-height: 1.1; }
.rjx-brand-dot { color: var(--rjx-accent); }
.rjx-header-brand .custom-logo-link { display: inline-flex; align-items: center; }
.rjx-header-brand .custom-logo { max-width: 200px; max-height: 66px; width: auto; height: auto; object-fit: contain; }
.rjx-search-desktop { flex: 1; min-width: 155px; max-width: 380px; }
.rjx-header-search { width: 100%; }
.rjx-search-form, .rjx-header-search .woocommerce-product-search { display: flex; align-items: center; position: relative; width: 100%; min-height: 44px; margin: 0; background: var(--rjx-soft); border: 1px solid var(--rjx-line); border-radius: 7px; overflow: hidden; }
.rjx-search-form input, .rjx-header-search .search-field { width: 100%; border: 0!important; box-shadow: none!important; outline: none; min-height: 42px; min-width: 0; background: transparent; color: var(--rjx-ink); padding: 0 48px 0 14px; font-size: 13px; }
.rjx-search-form button, .rjx-header-search button { position: absolute; right: 0; top: 0; bottom: 0; padding: 0 13px; border: 0; background: transparent; font-size: 12px; }
.rjx-search-form svg { width: 20px; height: 20px; }
.rjx-primary-nav { flex: 1; min-width: 0; }
.rjx-menu, .rjx-footer-menu { list-style: none; margin: 0; padding: 0; }
.rjx-primary-nav > .rjx-menu { display: flex; align-items: center; justify-content: center; gap: clamp(12px, 1.55vw, 26px); }
.rjx-menu li { position: relative; margin: 0; }
.rjx-primary-nav > .rjx-menu > li > a { display: inline-flex; align-items: center; min-height: 44px; font-size: 13px; font-weight: 700; white-space: nowrap; }
.rjx-menu .current-menu-item > a, .rjx-menu .current_page_item > a { color: var(--rjx-accent); }
.rjx-primary-nav .sub-menu { list-style: none; position: absolute; top: 100%; left: -15px; background: var(--rjx-card); box-shadow: var(--rjx-shadow); border: 1px solid var(--rjx-line); min-width: 220px; z-index: 101; padding: 8px; border-radius: 9px; opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity .16s, transform .16s, visibility .16s; }
.rjx-primary-nav .sub-menu .sub-menu { top: -8px; left: calc(100% + 8px); }
.rjx-primary-nav .menu-item:hover > .sub-menu, .rjx-primary-nav .menu-item:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.rjx-primary-nav .sub-menu a { display: block; padding: 10px 12px; font-size: 13px; border-radius: 5px; }
.rjx-primary-nav .sub-menu a:hover { background: var(--rjx-soft); }
.rjx-header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 14px; flex: 0 0 auto; }
.rjx-header-cta, .rjx-button { color: #fff!important; background: var(--rjx-accent); padding: 11px 18px; border-radius: 6px; border: 1px solid var(--rjx-accent); font-size: 13px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.rjx-header-cta:hover, .rjx-button:hover { background: #bc4f2e; border-color: #bc4f2e; }
.rjx-icon-button { width: 25px; height: 28px; position: relative; display: inline-flex; align-items: center; justify-content: center; }
.rjx-icon-button svg { width: 23px; height: 23px; }
.rjx-cart-count { position: absolute; display: grid; place-items: center; min-width: 17px; height: 17px; padding: 0 3px; line-height: 1; background: var(--rjx-accent); border-radius: 12px; color: #fff; top: -5px; right: -9px; font-size: 10px; font-weight: 700; }
.rjx-menu-toggle { display: none; background: transparent; border: 0; width: 34px; height: 35px; padding: 8px 4px; flex-direction: column; justify-content: space-between; }
.rjx-menu-toggle span { width: 100%; height: 2px; background: var(--rjx-ink); display: block; border-radius: 2px; }
.rjx-mobile-panel[hidden] { display: none!important; }
.rjx-mobile-panel { background: var(--rjx-card); z-index: 99; box-shadow: var(--rjx-shadow); border-bottom: 1px solid var(--rjx-line); padding: 20px 0 26px; }
.rjx-mobile-panel .rjx-header-search { margin-bottom: 18px; }
.rjx-mobile-panel .rjx-menu > li > a { display: block; font-size: 16px; font-weight: 700; padding: 12px 4px; border-bottom: 1px solid var(--rjx-line); }
.rjx-mobile-panel .sub-menu { list-style: none; padding: 0 0 0 18px; }
.rjx-mobile-panel .sub-menu a { display: block; font-size: 14px; padding: 8px 0; }
.rjx-header-centered .rjx-header-inner { min-height: 110px; flex-wrap: wrap; justify-content: space-between; padding-top: 16px; }
.rjx-header-centered .rjx-primary-nav { flex: 0 0 100%; order: 5; border-top: 1px solid var(--rjx-line); }
.rjx-header-centered .rjx-search-desktop { max-width: 460px; }
.rjx-header-compact .rjx-header-inner { min-height: 66px; }
.rjx-header-compact .rjx-header-brand .custom-logo { max-height: 45px; }
/* Page, typography, article */
h1, h2, h3, h4, h5, h6 { font-weight: 760; line-height: 1.2; letter-spacing: -.035em; color: var(--rjx-ink); }
h1 { font-size: clamp(33px, 4vw, 56px); }
h2 { font-size: clamp(26px, 2.7vw, 36px); }
h3 { font-size: 22px; }
p { margin: 0 0 1.2em; }
.rjx-main-shell { padding-top: 30px; padding-bottom: 76px; }
.rjx-front-content { min-height: 220px; padding: 38px 0 72px; }
.rjx-fullwidth-content { min-height: 220px; }
.rjx-landing-content { min-height: 200px; padding-block: 34px 65px; }
.rjx-breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; color: var(--rjx-muted); font-size: 12px; margin-bottom: 36px; }
.rjx-breadcrumbs a { color: var(--rjx-muted); }
.rjx-breadcrumbs a:hover { color: var(--rjx-accent); }
.rjx-breadcrumbs span[aria-current] { color: var(--rjx-ink); }
.rjx-site-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 46px; }
.rjx-sidebar-right:has(> .rjx-sidebar) { grid-template-columns: minmax(0, 1fr) 280px; }
.rjx-sidebar-left:has(> .rjx-sidebar) { grid-template-columns: 280px minmax(0, 1fr); }
.rjx-sidebar-left .rjx-sidebar { order: -1; }
.rjx-content { min-width: 0; }
.rjx-overline { color: var(--rjx-accent); font-size: 11px; font-weight: 780; letter-spacing: .16em; text-transform: uppercase; }
.rjx-section-heading { margin: 14px 0 34px; }
.rjx-section-heading h1 { margin: 10px 0 0; }
.rjx-page-title { margin: 8px 0 30px; }
.entry-content { overflow-wrap: break-word; }
.entry-content > :first-child { margin-top: 0; }
.entry-content p, .entry-content li { line-height: 1.82; }
.entry-content a:not(.wp-block-button__link):not(.button):not(.rjx-button) { color: var(--rjx-accent); text-decoration: underline; text-underline-offset: 3px; }
.entry-content .wp-block-image img { border-radius: 9px; }
.entry-content figure, .entry-content iframe { max-width: 100%; }
.entry-content blockquote { border-left: 4px solid var(--rjx-accent); padding: 12px 25px; background: var(--rjx-soft); margin-inline: 0; }
.entry-content pre { max-width: 100%; overflow: auto; background: var(--rjx-soft); padding: 20px; border-radius: 8px; }
.entry-content table { width: 100%; border-collapse: collapse; margin-bottom: 20px; }
.entry-content td, .entry-content th { border: 1px solid var(--rjx-line); padding: 10px; }
.rjx-featured { margin: 20px 0 32px; }
.rjx-featured img { width: 100%; border-radius: var(--rjx-radius); }
.rjx-meta { text-transform: uppercase; font-size: 11px; font-weight: 700; letter-spacing: .075em; color: var(--rjx-muted); }
.rjx-post-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-bottom: 28px; }
.rjx-post-card { min-width: 0; overflow: hidden; border-radius: var(--rjx-radius); background: var(--rjx-card); border: 1px solid var(--rjx-line); transition: box-shadow .2s, transform .2s; }
.rjx-post-card:hover { transform: translateY(-3px); box-shadow: var(--rjx-shadow); }
.rjx-post-thumb { display: block; background: var(--rjx-soft); }
.rjx-post-thumb img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.rjx-post-card-body { padding: 27px; }
.rjx-post-title { font-size: 23px; margin: 10px 0 13px; }
.rjx-excerpt { color: var(--rjx-muted); font-size: 14px; }
.rjx-excerpt p:last-child { margin-bottom: 0; }
.rjx-read-more { font-size: 13px; color: var(--rjx-accent); font-weight: 750; display: inline-block; margin-top: 20px; }
.rjx-sidebar .rjx-widget { padding: 23px; background: var(--rjx-card); border: 1px solid var(--rjx-line); border-radius: 9px; margin-bottom: 20px; }
.rjx-widget-title { font-size: 16px; letter-spacing: -.02em; margin: 0 0 17px; }
.rjx-sidebar ul { list-style: none; padding: 0; margin: 0; }
.rjx-sidebar li { padding: 8px 0; border-bottom: 1px solid var(--rjx-line); font-size: 14px; }
.rjx-sidebar li:last-child { border-bottom: none; }
.pagination .nav-links { display: flex; flex-wrap: wrap; gap: 7px; }
.pagination .page-numbers { display: inline-flex; min-width: 39px; min-height: 39px; align-items: center; justify-content: center; padding: 0 10px; border: 1px solid var(--rjx-line); border-radius: 6px; background: var(--rjx-card); }
.pagination .page-numbers.current, .pagination .page-numbers:hover { background: var(--rjx-accent); color: #fff; border-color: var(--rjx-accent); }
.rjx-search-grid { margin-top: 30px; }
.rjx-error-page { display: flex; align-items: flex-start; justify-content: center; min-height: 520px; flex-direction: column; }
.rjx-error-code { font-size: clamp(80px, 12vw, 160px); letter-spacing: -.09em; font-weight: 850; line-height: 1; color: var(--rjx-accent); }
.rjx-error-page h1 { margin-bottom: 12px; }
.rjx-error-page p { color: var(--rjx-muted); }
.rjx-empty { padding: 40px; border: 1px solid var(--rjx-line); border-radius: 10px; }
/* Footer */
.rjx-footer { border-top: 1px solid var(--rjx-line); background: var(--rjx-card); padding-top: 63px; }
.rjx-footer-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; min-height: 150px; padding-bottom: 35px; }
.rjx-footer-col { color: var(--rjx-muted); font-size: 14px; }
.rjx-footer-col .rjx-widget { margin-bottom: 25px; }
.rjx-footer-col .rjx-widget-title { color: var(--rjx-ink); }
.rjx-footer-col p { max-width: 290px; }
.rjx-footer-brand { margin-bottom: 14px; }
.rjx-footer ul { list-style: none; margin: 0; padding: 0; }
.rjx-footer li { margin-bottom: 9px; }
.rjx-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 0 26px; border-top: 1px solid var(--rjx-line); color: var(--rjx-muted); font-size: 12px; }
/* WooCommerce */
.rjx-commerce { padding-top: 38px; padding-bottom: 78px; }
.woocommerce .woocommerce-breadcrumb { font-size: 12px; color: var(--rjx-muted); margin-bottom: 35px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--rjx-muted); }
.woocommerce .woocommerce-products-header__title { margin: 0 0 15px; }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin: 0 0 28px; font-size: 13px; color: var(--rjx-muted); }
.woocommerce .woocommerce-ordering select { background: var(--rjx-card); color: var(--rjx-ink); border: 1px solid var(--rjx-line); border-radius: 6px; padding: 9px 12px; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 19px; padding: 0!important; margin: 0 0 30px!important; clear: both; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none!important; }
.woocommerce ul.products[class*=columns-2] { grid-template-columns: repeat(2, minmax(0,1fr)); }
.woocommerce ul.products[class*=columns-3] { grid-template-columns: repeat(3, minmax(0,1fr)); }
.woocommerce ul.products[class*=columns-4] { grid-template-columns: repeat(4, minmax(0,1fr)); }
.woocommerce ul.products[class*=columns-5] { grid-template-columns: repeat(5, minmax(0,1fr)); }
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { float: none!important; width: auto!important; margin: 0!important; padding: 0 0 18px!important; min-width: 0; background: var(--rjx-card); border: 1px solid var(--rjx-line); border-radius: 10px; overflow: hidden; position: relative; transition: transform .2s, box-shadow .2s; }
.woocommerce ul.products li.product:hover { transform: translateY(-3px); box-shadow: var(--rjx-shadow); }
.woocommerce ul.products li.product a img { aspect-ratio: 1 / 1.08; object-fit: cover; margin: 0 0 16px!important; background: var(--rjx-soft); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0 15px!important; font-size: 14px!important; line-height: 1.45; font-weight: 680; min-height: 2.9em; }
.woocommerce ul.products li.product .price { padding: 0 15px; color: var(--rjx-ink)!important; font-size: 15px!important; font-weight: 780!important; }
.woocommerce ul.products li.product .price del { color: var(--rjx-muted); font-size: 12px; }
.woocommerce ul.products li.product .button { margin: 5px 15px 0!important; }
.woocommerce span.onsale { background: var(--rjx-accent); font-size: 11px; padding: 0 8px; min-width: auto; min-height: 28px; line-height: 28px; border-radius: 4px; top: 12px; left: 12px; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce .button.alt, .woocommerce button.button.alt, .woocommerce a.button.alt { background: var(--rjx-accent)!important; color: #fff!important; font-size: 12px; font-weight: 750; border-radius: 6px; border: none; padding: 13px 17px; line-height: 1.3; }
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover { filter: brightness(.9); }
.woocommerce div.product .product_title { font-size: clamp(31px, 3.3vw, 45px); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--rjx-accent); font-size: 27px; font-weight: 780; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: var(--rjx-soft); border-color: var(--rjx-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--rjx-ink); }
.woocommerce .quantity .qty { min-height: 41px; border: 1px solid var(--rjx-line); border-radius: 5px; color: var(--rjx-ink); background: var(--rjx-card); }
.woocommerce table.shop_table { border-color: var(--rjx-line); border-radius: 8px; }
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info { border-top-color: var(--rjx-accent); background: var(--rjx-soft); color: var(--rjx-ink); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce .input-text { background: var(--rjx-card); border: 1px solid var(--rjx-line); color: var(--rjx-ink); padding: 12px; border-radius: 5px; }
.rjx-is-shop .rjx-content { min-width: 0; }
/* WordPress, builders and zones */
.rjx-zone { width: 100%; }
.rjx-zone::after { content: ''; display: table; clear: both; }
.rjx-zone > .vc_row { margin-left: 0; margin-right: 0; }
.rjx-zone img { max-width: 100%; height: auto; }
.rjx-editor-content > .vc_row { margin-left: 0; margin-right: 0; }
.rjx-fullwidth-content > .vc_row { margin-left: 0; margin-right: 0; }
.wp-block-button__link { background: var(--rjx-accent); }
.rjx-post-tax, .post-navigation { margin: 25px 0; }
.post-navigation .nav-links { display: flex; justify-content: space-between; gap: 16px; }
.rjx-comments { margin-top: 50px; padding-top: 26px; border-top: 1px solid var(--rjx-line); }
.rjx-comments .comment-list { padding-left: 22px; }
.rjx-comments li { margin-bottom: 25px; }
.rjx-comments textarea, .rjx-comments input[type=text], .rjx-comments input[type=email], .rjx-comments input[type=url] { display: block; width: 100%; max-width: 650px; padding: 12px; border: 1px solid var(--rjx-line); background: var(--rjx-card); color: var(--rjx-ink); border-radius: 6px; }
.rjx-comments .submit { color: #fff; background: var(--rjx-accent); border: 0; border-radius: 6px; padding: 13px 20px; font-weight: 700; }
/* Responsive */
@media(max-width: 1250px) {
  .rjx-header-inner { gap: 20px; }
  .rjx-search-desktop { max-width: 260px; }
  .rjx-primary-nav > .rjx-menu { gap: 12px; }
}
@media(max-width: 1050px) {
  .rjx-search-desktop, .rjx-primary-nav { display: none; }
  .rjx-header-inner { min-height: 76px; justify-content: space-between; }
  .rjx-header-centered .rjx-header-inner { min-height: 76px; padding-top: 0; }
  .rjx-menu-toggle { display: flex; }
  .rjx-header-actions { margin-left: auto; }
  .rjx-header-cta { display: none; }
  .rjx-sidebar-right:has(> .rjx-sidebar), .rjx-sidebar-left:has(> .rjx-sidebar) { grid-template-columns: minmax(0, 1fr) 240px; gap: 25px; }
  .woocommerce ul.products[class*=columns-5] { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media(max-width: 768px) {
  .rjx-container { padding-inline: 20px; }
  .rjx-header-brand .custom-logo { max-width: 155px; max-height: 50px; }
  .rjx-brand-text { font-size: 23px; }
  .rjx-header-inner { min-height: 68px; }
  .rjx-site-layout, .rjx-sidebar-left:has(> .rjx-sidebar), .rjx-sidebar-right:has(> .rjx-sidebar) { display: block; }
  .rjx-sidebar { margin-top: 35px; }
  .rjx-post-grid { gap: 18px; }
  .rjx-post-card-body { padding: 20px; }
  .rjx-post-title { font-size: 19px; }
  .rjx-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
  .rjx-main-shell { padding-block: 24px 54px; }
  .rjx-commerce { padding-block: 26px 55px; }
  .woocommerce ul.products[class*=columns-4], .woocommerce ul.products[class*=columns-5], .woocommerce ul.products[class*=columns-3] { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 2px 4px 0; }
}
@media(max-width: 500px) {
  .rjx-container { padding-inline: 16px; }
  .rjx-account { display: none; }
  .rjx-post-grid { grid-template-columns: minmax(0, 1fr); }
  .rjx-footer-grid { grid-template-columns: minmax(0, 1fr); }
  .rjx-footer-bottom { flex-direction: column; align-items: flex-start; gap: 4px; }
  .rjx-footer { padding-top: 40px; }
  .woocommerce ul.products[class*=columns-2], .woocommerce ul.products[class*=columns-3], .woocommerce ul.products[class*=columns-4], .woocommerce ul.products[class*=columns-5] { gap: 14px 10px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0 10px!important; font-size: 12px!important; }
  .woocommerce ul.products li.product .price { padding: 0 10px; }
  .woocommerce ul.products li.product .button { margin: 4px 10px 0!important; padding: 10px!important; font-size: 11px; }
  .rjx-page-title { font-size: 31px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition-duration: .01ms!important; animation-duration: .01ms!important; } }
/* Opt-in starter showcase (only shown on the manually created demo page). */
.rjx-demo-hero { overflow: hidden; background: #e9e9e4; color: #181b1d; }
.rjx-demo-hero-inner { min-height: 540px; display: grid; grid-template-columns: 1fr 43%; gap: 40px; align-items: center; }
.rjx-demo-kicker { color: #9b6a52; font-size: 11px; letter-spacing: .2em; font-weight: 800; }
.rjx-demo-hero h1 { color: #171a1c; font-size: clamp(45px, 5vw, 76px); line-height: 1.02; letter-spacing: -.07em; margin: 22px 0; }
.rjx-demo-hero h1 em { font-style: normal; color: #d26340; }
.rjx-demo-hero p { font-size: 16px; max-width: 485px; color: #5c605f; line-height: 1.75; margin-bottom: 25px; }
.rjx-demo-art { position: relative; height: 430px; display: grid; place-items: center; }
.rjx-demo-disc { position: absolute; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle at 35% 33%, #faf9f7 0%, #d0d2cd 60%, #a1a49e 100%); box-shadow: 26px 28px 60px #92938b3b; }
.rjx-demo-panel { position: relative; transform: rotate(-11deg); width: 260px; height: 340px; padding: 25px; background: #292d30; border: 1px solid #3a4043; color: #fff; display: flex; flex-direction: column; justify-content: space-between; box-shadow: 15px 25px 40px #1c20214f; border-radius: 5px; }
.rjx-demo-panel > span, .rjx-demo-panel > i { font-size: 10px; color: #b8bfc2; font-style: normal; font-weight: 800; letter-spacing: .16em; }
.rjx-demo-panel > strong { font-size: 36px; letter-spacing: -.075em; line-height: 1.1; }
.rjx-demo-catalog { padding: 65px 0 80px; }
.rjx-demo-catalog h2 { margin: 14px 0; }
.rjx-demo-catalog > .rjx-container > p { color: var(--rjx-muted); margin-bottom: 30px; }
.rjx-demo-cards { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.rjx-demo-cards > div { border: 1px solid var(--rjx-line); border-radius: 12px; background: var(--rjx-card); padding: 35px; }
.rjx-demo-cards span { color: var(--rjx-accent); font-size: 12px; }
.rjx-demo-cards h3 { font-size: 22px; margin: 45px 0 10px; }
.rjx-demo-cards p { color: var(--rjx-muted); font-size: 14px; }
@media(max-width: 768px) { .rjx-demo-hero-inner { min-height: auto; grid-template-columns: 1fr; padding-top: 65px; padding-bottom: 35px; gap: 10px; } .rjx-demo-art { height: 285px; } .rjx-demo-disc { width: 255px; height: 255px; } .rjx-demo-panel { width: 180px; height: 245px; } .rjx-demo-panel > strong { font-size: 25px; } .rjx-demo-cards { grid-template-columns: 1fr; } }

/* RJX Zones 1.1 — opt-in visual header / footer / section layouts. */
.rjx-builder-region { width: 100%; }
.rjx-builder-region > .rjx-container { min-width: 0; }
.rjx-builder-wide { width: 100%; }
.rjx-builder-strip > .rjx-container,
.rjx-builder-strip > .rjx-builder-wide { display: flex; align-items: center; flex-wrap: wrap; justify-content: center; gap: 16px; }
.rjx-builder-strip .rjx-builder-unit { min-width: 0; }
.rjx-builder-strip .rjx-builder-unit--zone { flex: 1 1 100%; }
.rjx-builder-announcement { font-size: 12px; font-weight: 650; letter-spacing: .02em; text-align: center; padding: 9px 0; }
.rjx-builder-region--header_top { background: var(--rjx-soft); }
.rjx-builder-region--header_top .rjx-builder-announcement a { color: inherit; }
.rjx-builder-header .rjx-builder-columns { min-height: 84px; display: grid; grid-template-columns: minmax(150px, 1fr) minmax(160px, 2fr) minmax(150px, 1.3fr); gap: 26px; align-items: center; }
.rjx-builder-col { display: flex; align-items: center; gap: 19px; min-width: 0; flex-wrap: wrap; }
.rjx-builder-header .rjx-builder-col--center { justify-content: center; }
.rjx-builder-header .rjx-builder-col--right { justify-content: flex-end; }
.rjx-builder-col .rjx-builder-unit { min-width: 0; }
.rjx-builder-header .rjx-builder-unit--search { flex: 1 1 150px; min-width: 135px; max-width: 340px; }
.rjx-builder-header .rjx-builder-unit--menu { min-width: 0; }
.rjx-builder-header .rjx-primary-nav > .rjx-menu { display: flex; gap: 16px; align-items: center; }
.rjx-builder-header .rjx-header-brand { min-width: 0; }
.rjx-builder-header .rjx-builder-mobile { display: none; }
.rjx-builder-unit--image img { display: block; max-width: 100%; height: auto; }
.rjx-builder-unit--text .rjx-builder-text { margin: 0; }
.rjx-builder-unit--heading .rjx-builder-heading { margin: 0; }
.rjx-builder-unit--zone { width: 100%; }
.rjx-builder-home-section { padding-block: 30px; }
.rjx-builder-home-section .rjx-container,
.rjx-builder-home-section .rjx-builder-wide { display: flex; flex-direction: column; gap: 25px; }
.rjx-builder-home-section .rjx-builder-unit--products { width: 100%; }
.rjx-builder-home-section .rjx-builder-heading { font-size: clamp(29px, 3.6vw, 52px); }
.rjx-builder-footer .rjx-builder-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px; align-items: start; padding-block: 42px; }
.rjx-builder-footer .rjx-builder-col { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 14px; }
.rjx-builder-footer .rjx-builder-col--center { align-items: center; text-align: center; }
.rjx-builder-footer .rjx-builder-col--right { align-items: flex-end; text-align: right; }
.rjx-builder-footer .rjx-builder-col .rjx-builder-unit { max-width: 100%; }
.rjx-builder-footer .rjx-primary-nav { width: auto; }
.rjx-builder-footer .rjx-primary-nav > .rjx-menu { display: flex; gap: 16px; flex-wrap: wrap; }
.rjx-builder-footer .rjx-primary-nav > .rjx-menu > li > a { color: inherit; }
.rjx-builder-footer .rjx-footer-menu li { margin-bottom: 7px; }
.rjx-builder-footer .rjx-footer-menu a { color: inherit; }
.rjx-builder-footer .rjx-builder-region--footer_bottom { border-top: 1px solid var(--rjx-line); padding-block: 18px; }
.rjx-builder-copyright { font-size: 12px; color: var(--rjx-muted); }
.rjx-builder-footer .rjx-builder-region--footer_top { padding-top: 12px; }
@media(max-width: 1050px) {
  .rjx-builder-header .rjx-builder-desktop { display: none; }
  .rjx-builder-header .rjx-builder-mobile { display: flex; min-height: 76px; justify-content: space-between; align-items: center; gap: 16px; }
  .rjx-builder-header .rjx-builder-mobile .rjx-menu-toggle { display: flex; }
  .rjx-builder-footer .rjx-builder-columns { gap: 20px; }
}
@media(max-width: 768px) {
  .rjx-builder-header .rjx-builder-mobile { min-height: 68px; }
  .rjx-builder-footer .rjx-builder-columns { grid-template-columns: 1fr; gap: 30px; }
  .rjx-builder-footer .rjx-builder-col,
  .rjx-builder-footer .rjx-builder-col--center,
  .rjx-builder-footer .rjx-builder-col--right { align-items: flex-start; text-align: left; }
  .rjx-builder-home-section { padding-block: 20px; }
}

/* RJX Zones 1.2 — desktop mega menus and controlled mobile navigation. */
.rjx-primary-nav { position: relative; }
.rjx-menu-badge { display: inline-block; margin-left: 5px; position: relative; top: -9px; background: var(--rjx-accent); color: #fff; font-weight: 800; font-size: 9px; letter-spacing: .04em; padding: 1px 5px; border-radius: 3px; pointer-events: none; }
.rjx-primary-nav > .rjx-menu > .rjx-mega-columns,
.rjx-primary-nav > .rjx-menu > .rjx-mega-zone { position: static; }
.rjx-primary-nav > .rjx-menu > .rjx-mega-columns > .sub-menu,
.rjx-primary-nav > .rjx-menu > .rjx-mega-zone > .rjx-mega-panel {
  position: absolute; top: 100%; left: 50%; right: auto; z-index: 155;
  width: min(1050px, calc(100vw - 50px)); max-width: none;
  padding: 28px; background: var(--rjx-card); color: var(--rjx-ink);
  border: 1px solid var(--rjx-line); border-radius: 12px;
  box-shadow: 0 25px 55px rgba(12,17,20,.14);
  opacity: 0; visibility: hidden; pointer-events: none;
  transform: translate(-50%, 12px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s;
}
.rjx-primary-nav > .rjx-menu > .rjx-mega-columns > .sub-menu {
  display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px 28px;
}
.rjx-primary-nav > .rjx-menu > .rjx-mega-cols-2 > .sub-menu { grid-template-columns: repeat(2, minmax(0,1fr)); }
.rjx-primary-nav > .rjx-menu > .rjx-mega-cols-4 > .sub-menu { grid-template-columns: repeat(4, minmax(0,1fr)); }
.rjx-primary-nav > .rjx-menu > .rjx-mega-cols-5 > .sub-menu { grid-template-columns: repeat(5, minmax(0,1fr)); }
.rjx-primary-nav > .rjx-menu > .rjx-mega-width-contained > .sub-menu,
.rjx-primary-nav > .rjx-menu > .rjx-mega-width-contained > .rjx-mega-panel { width: min(720px, calc(100vw - 50px)); }
.rjx-primary-nav > .rjx-menu > .rjx-mega-width-wide > .sub-menu,
.rjx-primary-nav > .rjx-menu > .rjx-mega-width-wide > .rjx-mega-panel { width: min(1050px, calc(100vw - 50px)); }
.rjx-primary-nav > .rjx-menu > .rjx-mega-width-full > .sub-menu,
.rjx-primary-nav > .rjx-menu > .rjx-mega-width-full > .rjx-mega-panel { width: calc(100vw - 32px); }
.rjx-primary-nav > .rjx-menu > .rjx-mega-columns:hover > .sub-menu,
.rjx-primary-nav > .rjx-menu > .rjx-mega-columns:focus-within > .sub-menu,
.rjx-primary-nav > .rjx-menu > .rjx-mega-zone:hover > .rjx-mega-panel,
.rjx-primary-nav > .rjx-menu > .rjx-mega-zone:focus-within > .rjx-mega-panel {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 0);
}
.rjx-primary-nav > .rjx-menu > .rjx-mega-dismissed > .sub-menu,
.rjx-primary-nav > .rjx-menu > .rjx-mega-dismissed > .rjx-mega-panel {
  opacity: 0!important; visibility: hidden!important; pointer-events: none!important;
}
/* Zone mega menus have their own content panel, not a second native dropdown. */
.rjx-primary-nav > .rjx-menu > .rjx-mega-zone > .sub-menu { display: none; }
.rjx-primary-nav > .rjx-menu > .rjx-mega-columns > .sub-menu > li { min-width: 0; }
.rjx-primary-nav > .rjx-menu > .rjx-mega-columns > .sub-menu > li > a {
  font-size: 13px; font-weight: 800; padding: 4px 10px 12px;
  border-bottom: 1px solid var(--rjx-line); border-radius: 0;
}
.rjx-primary-nav > .rjx-menu > .rjx-mega-columns > .sub-menu > li > .sub-menu {
  position: static; display: block; opacity: 1; visibility: visible; transform: none;
  width: auto; min-width: 0; border: 0; box-shadow: none;
  padding: 7px 0 0; background: transparent;
}
.rjx-mega-panel .rjx-zone { width: 100%; }
.rjx-mega-panel .vc_row { max-width: 100%; }
.rjx-submenu-toggle { display: none; }

/* A non-invasive default: the old dropdown remains until drawer mode is chosen. */
.rjx-mobile-panel:not(.is-drawer) { position: relative; z-index: 135; padding: 18px 0 26px; }
.rjx-mobile-panel:not(.is-drawer) .rjx-mobile-drawer { width: min(100%, calc(var(--rjx-container) + 64px)); padding-inline: 32px; margin-inline: auto; }
.rjx-mobile-panel:not(.is-drawer) .rjx-mobile-drawer-head { display: none; }
.rjx-mobile-drawer-body { min-width: 0; }
.rjx-mobile-panel .rjx-header-search { max-width: 100%; }
.rjx-mobile-panel .rjx-header-search form { max-width: 100%; }
.rjx-mobile-panel .rjx-menu { list-style: none; margin: 0; padding: 0; }
.rjx-mobile-panel .rjx-menu li { position: relative; }
.rjx-mobile-panel .rjx-menu > li > a { padding-right: 48px; }
.rjx-mobile-panel .sub-menu { display: none; padding: 4px 0 6px 18px; margin: 0; }
.rjx-mobile-panel .rjx-submenu-open > .sub-menu { display: block; }
.rjx-mobile-panel .rjx-submenu-toggle {
  display: grid; place-items: center; position: absolute; right: 2px; top: 5px;
  width: 42px; height: 42px; background: transparent; border: 0;
  border-radius: 5px; color: var(--rjx-ink); font-size: 22px; line-height: 1;
}
.rjx-mobile-panel .sub-menu .rjx-submenu-toggle { top: 0; width: 38px; height: 38px; }
.rjx-mobile-panel .rjx-submenu-toggle[aria-expanded="true"] span { transform: rotate(180deg); }
.rjx-mobile-actions { display: flex; flex-wrap: wrap; gap: 10px; padding-top: 18px; }
.rjx-mobile-action { display: inline-flex; border: 1px solid var(--rjx-line); padding: 8px 14px; font-size: 12px; font-weight: 700; border-radius: 8px; }

/* Offcanvas panel, selectable left/right, scrollable and keyboard accessible. */
.rjx-mobile-panel.is-drawer { position: fixed; inset: 0; z-index: 9999; padding: 0; background: transparent; border: 0; box-shadow: none; }
.rjx-mobile-backdrop { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; background: rgba(4,8,12,.58); cursor: default; }
.rjx-mobile-panel.is-drawer .rjx-mobile-drawer {
  position: absolute; top: 0; bottom: 0; right: 0; width: min(var(--rjx-mobile-width), 94vw);
  display: flex; flex-direction: column; overflow: hidden;
  color: var(--rjx-ink); background: var(--rjx-card); box-shadow: 0 0 70px rgba(0,0,0,.23);
}
.rjx-mobile-side-left .rjx-mobile-panel.is-drawer .rjx-mobile-drawer { left: 0; right: auto; }
.rjx-mobile-drawer-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 82px; padding: 18px 22px; border-bottom: 1px solid var(--rjx-line); }
.rjx-mobile-drawer-head .rjx-header-brand { min-width: 0; }
.rjx-mobile-drawer-head .custom-logo { max-width: 160px; max-height: 46px; }
.rjx-mobile-close { display: inline-grid; flex: 0 0 38px; place-items: center; width: 38px; height: 38px; border-radius: 50%; border: 1px solid var(--rjx-line); background: var(--rjx-soft); font-size: 25px; }
.rjx-mobile-panel.is-drawer .rjx-mobile-drawer-body { overflow-y: auto; overscroll-behavior: contain; padding: 20px 22px 38px; }
body.rjx-mobile-open-drawer { overflow: hidden; }

/* Sticky/reveal behavior is optional; old always-sticky semantics preserved. */
.rjx-header { transition: transform .18s ease, box-shadow .18s ease; }
.rjx-sticky-reveal .rjx-header.rjx-sticky-hidden { transform: translateY(calc(-100% - 4px)); }
.rjx-sticky-shadow.rjx-has-scrolled .rjx-header { box-shadow: 0 8px 28px rgba(0,0,0,.12); }
@media (max-width: 1050px) {
  .rjx-sticky-mobile-disabled .rjx-header, .admin-bar.rjx-sticky-mobile-disabled .rjx-header { position: relative; top: 0; }
  .rjx-primary-nav > .rjx-menu > .rjx-mega-columns > .sub-menu,
  .rjx-primary-nav > .rjx-menu > .rjx-mega-zone > .rjx-mega-panel { display: none; }
}
@media (max-width: 782px) {
  .admin-bar.rjx-sticky-header .rjx-header { top: 46px; }
}
@media (max-width: 768px) {
  .rjx-mobile-panel:not(.is-drawer) .rjx-mobile-drawer { padding-inline: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .rjx-header, .rjx-mega-panel, .rjx-primary-nav .sub-menu { transition: none; }
}

/* RJX 1.6 — opt-in dynamic sections; existing page styles remain untouched. */
.rjx-dynamic-template{min-width:0}
.rjx-dynamic-template:empty{display:none}
.rjx-dynamic--single_before,.rjx-dynamic--archive_before{margin-bottom:24px}
.rjx-dynamic--single_after,.rjx-dynamic--archive_after{margin-top:24px}
.rjx-dynamic-image,.rjx-dynamic-featured{max-width:100%;height:auto}
