/* JHHY 1.1.0 — locked brand roles. Reuses foundation fonts, no external font calls.
   Presentation overrides only. No blanket uppercase or black text on dark cards. */
body.jrv-on {
  --jrv-orange:#F18E0D; --jrv-ink:#001826; --jrv-footer:#1A1A1A;
  --jrv-body:JIUrbanist,Urbanist,Arial,sans-serif;
  --jrv-display:JIBarlow,'Barlow Condensed',Arial,sans-serif;
}
body.jrv-on :is(.ji-scope,.jhhy-article-content,.jrv-page) {
  --e-global-color-primary:#001826; --e-global-color-secondary:#001826;
  --e-global-color-text:#333; --e-global-color-accent:#F18E0D;
  --e-global-typography-primary-font-family:JIUrbanist;
  --e-global-typography-secondary-font-family:JIUrbanist;
  --e-global-typography-text-font-family:JIUrbanist;
  font-family:var(--jrv-body)!important; color:#333;
}
body.jrv-on :is(.ji-scope,.jhhy-article-content) :is(h1,h2,h3,h4,.elementor-heading-title) {
  color:var(--jrv-ink)!important; font-family:var(--jrv-body)!important;
  font-weight:700!important; text-transform:none!important; line-height:1.3;
}
body.jrv-on :is(.ji-scope,.jhhy-article-content) :is(p,li,.elementor-widget-text-editor) {
  font-family:var(--jrv-body)!important; color:#333;
}
body.jrv-on :is(.ji-scope,.jhhy-article-content) :is(h1,h2,h3,h4) :is(a,span,strong) {color:inherit!important; font-family:inherit!important}
body.jrv-on .jh-section>.elementor-widget-heading h2.elementor-heading-title {
  font-family:var(--jrv-display)!important; color:var(--jrv-ink)!important;
}
body.jrv-on .jh-footer {background:var(--jrv-footer)!important}
body.jrv-on .jh-footer :is(h2,h3,.elementor-heading-title) {color:#fff!important}
body.jrv-on .jh-footer :is(p,.elementor-widget-text-editor,.elementor-button) {color:#c8c8c8!important}
body.jrv-on .jh-footer a:hover {color:var(--jrv-orange)!important}
/* Keep the existing editor-owned header, no second header or logo. */
body.jrv-on .jh-main-menu :is(a,.hfe-menu-item,.hfe-sub-menu-item) {
  font-family:var(--jrv-body)!important; color:#111!important;
}
body.jrv-on .jh-main-menu .sub-menu a {text-transform:none!important; white-space:normal}
body.jrv-on .jh-main-menu .sub-menu a:is(:hover,:focus-visible),
body.jrv-on .jh-main-menu :is(.current-menu-item,.current-menu-ancestor)>a {color:var(--jrv-orange)!important}
body.jrv-on .jh-main-menu .hfe-nav-menu>li>a {white-space:nowrap!important}
body.jrv-on .jh-main-menu .hfe-nav-menu {flex-wrap:nowrap!important}
body.jrv-on .jh-head-contact .elementor-button {white-space:nowrap!important}
body.jrv-on .jh-logo img {object-fit:contain!important;height:auto!important}
body.jrv-on .jh-head-contact .elementor-heading-title,
body.jrv-on .jh-brand .elementor-heading-title {color:var(--jrv-orange)!important}
body.jrv-on .jh-search {min-width:0}
.jrv-search {display:flex; align-items:center; gap:0; position:relative; width:100%;margin:0}
.jrv-search input[type=search] {width:100%;min-width:0;min-height:40px; padding:8px 46px 8px 16px;border:1px solid #eee;border-radius:24px!important;background:#fff;color:#333!important;font:16px var(--jrv-body)!important}
.jrv-search button {position:absolute;right:5px;top:0;bottom:0;display:grid;place-items:center;width:40px;padding:0;border:0;background:transparent!important;color:var(--jrv-orange)!important;border-radius:50%}
body.jrv-on .ji-scope .elementor-button {background:var(--jrv-orange)!important;color:#fff!important;font-family:var(--jrv-body)!important}
body.jrv-on .ji-scope .elementor-button:hover {background:#d67d08!important}
body.jrv-on .ji-scope .ji-hero {background:#f5f5f5!important;border-color:var(--jrv-orange)!important}
body.jrv-on .ji-scope .jrv-breadcrumb {font-size:14px;color:#777}
body.jrv-on .ji-scope .jrv-breadcrumb a {color:#777!important}
body.jrv-on.woocommerce-page main {font-family:var(--jrv-body)!important;color:#333}
body.jrv-on.woocommerce-page main :is(h1,h2,h3,h4) {font-family:var(--jrv-body)!important;color:var(--jrv-ink)!important;text-transform:none!important;font-weight:700}
body.jrv-on.woocommerce-page .product_title {font-size:clamp(28px,3vw,38px)!important;line-height:1.25!important}
body.jrv-on.woocommerce-page .woocommerce-breadcrumb {font-family:var(--jrv-body)!important;color:#777}
body.jrv-on.woocommerce-page :is(.ji-product-cta,.jhhy-rich-cta a,.jhhy-cat-cta a) {font-family:var(--jrv-body)!important;background:var(--jrv-orange)!important;color:#fff!important}
body.jrv-on.woocommerce-page .jhhy-detail-images img {width:auto!important;max-width:100%!important;height:auto!important}
body.jrv-on.woocommerce-page .woocommerce-tabs ul.tabs li a {font-family:var(--jrv-body)!important;color:#111!important}
/* Dynamic archive/list/detail templates. Native post/product data; no snapshot HTML. */
.jrv-page,.jrv-page * {box-sizing:border-box}
.jrv-page {width:100%;background:#fff;font-family:var(--jrv-body);color:#333;font-size:17px;line-height:1.7}
.jrv-page :is(h1,h2,h3,h4) {font-family:var(--jrv-body)!important;color:var(--jrv-ink)!important;line-height:1.3!important;letter-spacing:0!important;text-transform:none!important;font-weight:700!important}
.jrv-page a {color:inherit;text-decoration:none}
.jrv-page a:hover {color:var(--jrv-orange)}
.jrv-page :is(a,button):focus-visible {outline:3px solid var(--jrv-orange);outline-offset:3px}
.jrv-container {width:calc(100% - 48px);max-width:1200px;margin-inline:auto}
.jrv-crumb-band {background:#f5f5f5;padding:10px 0;color:#888;font-size:14px}
.jrv-breadcrumb ol {display:flex;flex-wrap:wrap;gap:6px;list-style:none!important;margin:0!important;padding:0!important;line-height:1.6}
.jrv-breadcrumb li {padding:0!important;margin:0!important;color:#777!important;display:flex;gap:6px;align-items:baseline}
.jrv-breadcrumb li+li:before {content:'›';color:#888}
.jrv-breadcrumb a {color:#777}
.jrv-two-column {display:grid;grid-template-columns:minmax(230px,1fr) minmax(0,3fr);gap:40px;align-items:start;padding-block:50px 65px}
.jrv-two-column>* {min-width:0}
.jrv-sidebar {border:1px solid #eee;background:#fff;font-size:17px;line-height:1.6}
.jrv-sidebar h2 {margin:0!important;padding:14px 20px;background:var(--jrv-orange);color:white!important;font-size:24px!important;border-radius:8px 8px 0 0}
.jrv-sidebar h3 {border-top:2px solid var(--jrv-orange);padding:16px;margin:32px 0 0;font-size:24px!important}
.jrv-sidebar ul {list-style:none!important;padding:0 12px!important;margin:0!important}
.jrv-sidebar li {margin:0!important;padding:0!important}
.jrv-sidebar li a {display:block;padding:15px 0;border-bottom:1px solid #eee;color:#111}
.jrv-sidebar ul ul {padding-left:15px!important}
.jrv-sidebar a[aria-current=page],.jrv-sidebar a:hover {color:var(--jrv-orange)!important}
.jrv-rule-title {font-size:34px!important;border-left:3px solid var(--jrv-orange);padding-left:14px;margin:0 0 25px!important}
.jrv-archive-description {font-size:19px;margin-bottom:24px}
.jrv-archive-description .term-description p {margin-top:0}
.jrv-catalog .jrv-view-toolbar {background:#f8f8f8;padding:4px;gap:5px;margin:0 0 24px}
.jrv-catalog .jrv-view-toolbar:not([hidden]) {display:flex}
.jrv-view {min-width:36px;min-height:36px;font-size:23px;line-height:1;padding:4px;background:none;color:#999;border:0;border-radius:0}
.jrv-view[aria-pressed=true] {background:var(--jrv-orange);color:#fff}
body.jrv-on .jrv-catalog ul.products {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;padding:0;margin:0 0 28px}
body.jrv-on .jrv-catalog ul.products:before,body.jrv-on .jrv-catalog ul.products:after {display:none!important}
body.jrv-on .jrv-catalog ul.products li.product {float:none;width:100%!important;min-width:0;margin:0!important;padding:16px;background:#fff;border:1px solid #eee;box-shadow:0 2px 18px #d9e3ed80;border-radius:9px;text-align:center;display:flex;flex-direction:column}
body.jrv-on .jrv-catalog ul.products li.product>a.woocommerce-LoopProduct-link {display:block}
body.jrv-on .jrv-catalog ul.products li.product img {display:block;width:100%!important;height:auto!important;aspect-ratio:1;object-fit:contain;border-radius:7px;margin:0 0 14px;padding:0}
body.jrv-on .jrv-catalog ul.products li.product h2 {font:600 20px/1.4 var(--jrv-body)!important;color:#111!important;margin:0!important;padding:0!important}
body.jrv-on .jrv-catalog .jrv-product-link {display:inline-block;align-self:center;border:1px solid var(--jrv-orange);color:var(--jrv-orange)!important;background:#fff!important;border-radius:24px;padding:8px 18px;font:500 15px/1.4 var(--jrv-body)!important;margin:16px 0 0}
body.jrv-on .jrv-catalog .jrv-product-link:hover {background:var(--jrv-orange)!important;color:#fff!important}
body.jrv-on .jrv-catalog-main.jrv-list-view ul.products {grid-template-columns:1fr!important}
body.jrv-on .jrv-list-view ul.products li.product {display:block;text-align:left}
body.jrv-on .jrv-list-view ul.products li.product img {width:180px!important;max-width:35%!important;float:left;margin-right:20px}
.jrv-listing-area {padding-block:50px 65px}
.jrv-center-title {font-size:36px!important;text-align:center;margin:0 0 38px!important}
.jrv-center-title:after {content:'';display:block;width:32px;height:4px;margin:12px auto 0;background:var(--jrv-orange)}
.jrv-news-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
.jrv-news-grid .jrv-list-item {padding:14px;display:flex;align-items:flex-start;gap:16px;min-width:0;box-shadow:0 5px 22px #d6e3efc0}
.jrv-list-image {width:35%;flex:0 0 35%}
.jrv-list-image img {width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}
.jrv-list-copy {min-width:0}
.jrv-list-item h2 {font-size:21px!important;margin:0 0 10px!important;color:#111!important}
.jrv-list-item p {margin:0 0 10px!important;font-size:16px;line-height:1.65}
.jrv-list-item time,.jrv-article time {display:block;font-size:14px;color:#888;margin:12px 0}
.jrv-blog-list .jrv-list-item {border-bottom:1px solid #ddd;padding:0 0 26px;margin-bottom:28px}
.jrv-tags {display:flex;flex-wrap:wrap;gap:7px;font-size:14px}
.jrv-tags a {background:#eee;padding:2px 8px;color:#555}
.jrv-pagination {display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.jrv-pagination :is(a,span),body.jrv-on .woocommerce-pagination .page-numbers li>* {padding:6px 12px;border:1px solid #e5e5e5;color:#555}
.jrv-pagination .current,body.jrv-on .woocommerce-pagination .page-numbers .current {background:var(--jrv-orange);color:#fff;border-color:var(--jrv-orange)}
.jrv-article-main {min-width:0;overflow-wrap:break-word}
.jrv-article-body {margin-top:24px}
.jrv-article-body :is(img,iframe,video) {max-width:100%;height:auto}
.jrv-article-body iframe {aspect-ratio:16/9;width:100%}
.jrv-article-body .jhhy-article-content {max-width:none;padding:0;margin:0}
.jrv-article-body h2 {font-size:28px!important;margin-block:32px 18px}
.jrv-article-body h3 {font-size:23px!important;margin-block:26px 12px}
.jrv-article-body table {max-width:100%;width:100%;overflow-wrap:anywhere;border-collapse:collapse}
.jrv-article-body td,.jrv-article-body th {padding:10px;border:1px solid #ddd}
/* Existing forms/headers/data remain untouched. New compact form is scoped here. */
#jrv-inquiry-panel[hidden] {display:none!important}
#jrv-inquiry-panel {position:fixed;right:24px;bottom:85px;width:330px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 135px);z-index:100050;background:#fff;box-shadow:0 4px 22px #0003;font:14px/1.5 var(--jrv-body);color:#333;border:1px solid #eee;display:flex;flex-direction:column;border-radius:4px;overflow:hidden}
#jrv-inquiry-panel header {display:flex;gap:15px;align-items:center;justify-content:space-between;flex:0 0 auto;padding:10px 12px;background:var(--jrv-orange);color:#fff}
#jrv-inquiry-panel .jrv-panel-close {background:none;border:0;color:#fff;font-size:25px;line-height:1;min-width:32px;min-height:32px;padding:0}
#jrv-inquiry-panel .jrv-panel-body {padding:14px;overflow-y:auto;overscroll-behavior:contain}
#jrv-inquiry-panel .jrv-panel-body>p {font-size:12px;color:#666;margin:0 0 12px}
#jrv-inquiry-panel .wpforms-container {margin:0!important;font:14px/1.5 var(--jrv-body)!important}
#jrv-inquiry-panel .wpforms-field {padding:7px 0!important;clear:both}
#jrv-inquiry-panel .wpforms-field-label {font:500 13px/1.4 var(--jrv-body)!important;color:#333!important}
#jrv-inquiry-panel :is(input[type=email],input[type=text],textarea) {font:14px/1.5 var(--jrv-body)!important;border:1px solid #ddd!important;border-radius:0!important;padding:8px 10px!important;background:#fff!important;color:#333!important;width:100%!important;max-width:100%!important;min-height:38px}
#jrv-inquiry-panel textarea {height:90px;resize:vertical}
#jrv-inquiry-panel .wpforms-submit {font:600 14px/1.4 var(--jrv-body)!important;background:var(--jrv-orange)!important;border:0!important;border-radius:3px!important;color:#fff!important;padding:10px 22px!important}
#jrv-inquiry-panel .wpforms-confirmation-container-full {color:#333!important;background:#f5f5f5!important;font:14px/1.5 var(--jrv-body)!important;border:1px solid #ddd!important;margin:0}
.jrv-panel-contact {text-align:center;background:var(--jrv-orange);color:#fff;padding:7px}
.jrv-panel-contact a {color:#fff!important;text-decoration:none}
/* No fake CSS translation or artificial HTML placeholders. */
@media(max-width:1100px) {
 .jrv-two-column {grid-template-columns:220px minmax(0,1fr);gap:24px}
 body.jrv-on .jrv-catalog ul.products {grid-template-columns:repeat(2,minmax(0,1fr))}
 .jrv-news-grid {gap:22px}
}
@media(max-width:767px) {
 .jrv-container {width:calc(100% - 32px)}
 .jrv-two-column {grid-template-columns:1fr;gap:28px;padding-block:28px 40px}
 .jrv-sidebar {font-size:16px}
 .jrv-sidebar h2 {font-size:22px!important}
 .jrv-sidebar li a {padding:10px 0}
 .jrv-sidebar nav>ul {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}
 .jrv-rule-title {font-size:28px!important}
 .jrv-news-grid {grid-template-columns:1fr}
 .jrv-listing-area {padding-block:30px 40px}
 .jrv-center-title {font-size:30px!important}
 .jrv-list-item h2 {font-size:20px!important}
 body.jrv-on .jrv-catalog ul.products {grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 body.jrv-on .jrv-catalog ul.products li.product {padding:10px}
 body.jrv-on .jrv-catalog ul.products li.product h2 {font-size:17px!important}
 #jrv-inquiry-panel {right:12px;bottom:78px;max-height:calc(100dvh - 125px)}
 body.jrv-on .jh-head-contact .elementor-button {white-space:normal!important}
}
@media(max-width:380px){body.jrv-on .jrv-catalog ul.products{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#jrv-inquiry-panel{scroll-behavior:auto}}
/* Existing Elementor navigation widget still selects the same WP menu.
   This render path supplies an accessible compact menu instead of forced wrapping. */
body.jrv-on .jh-main-menu .jrv-menu {position:relative;width:100%;padding:8px 0;min-width:0}
body.jrv-on .jh-main-menu .jrv-main-menu {display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:4px;list-style:none;margin:0;padding:0;min-width:0}
body.jrv-on .jh-main-menu .jrv-main-menu li {position:relative;list-style:none;padding:0;margin:0;min-width:0}
body.jrv-on .jh-main-menu .jrv-main-menu>li {flex:0 0 auto;display:flex;align-items:center}
body.jrv-on .jh-main-menu .jrv-main-menu>li>a {display:block;color:#111!important;padding:8px 12px!important;border-radius:22px;font:700 16px/1.4 var(--jrv-body)!important;white-space:nowrap;text-transform:uppercase!important}
body.jrv-on .jh-main-menu .jrv-main-menu>li:is(:hover,.current-menu-item,.current-menu-ancestor)>a,
body.jrv-on .jh-main-menu .jrv-main-menu>li>a:focus-visible {background:var(--jrv-orange)!important;color:#fff!important}
body.jrv-on .jh-main-menu .jrv-main-menu .sub-menu {display:none;position:absolute;top:100%;left:0;background:#fff;min-width:250px;width:max-content;max-width:min(330px,90vw);border:1px solid #eee;box-shadow:0 5px 18px #0002;padding:4px 0;margin:0;z-index:9999}
body.jrv-on .jh-main-menu .jrv-main-menu>li:nth-last-child(-n+2)>.sub-menu {left:auto;right:0}
body.jrv-on .jh-main-menu .jrv-main-menu .sub-menu .sub-menu {top:0;left:100%}
body.jrv-on .jh-main-menu .jrv-main-menu .sub-menu a {display:block;font:500 16px/1.5 var(--jrv-body)!important;color:#111!important;padding:10px 18px!important;text-transform:none!important;white-space:normal}
body.jrv-on .jh-main-menu .jrv-main-menu .sub-menu a:hover {background:#f5f5f5!important;color:var(--jrv-orange)!important}
body.jrv-on .jh-main-menu .jrv-main-menu li:is(:hover,:focus-within,.jrv-open)>.sub-menu {display:block}
.jrv-subtoggle {padding:0!important;border:0;background:none!important;color:#111!important;font:16px/1 Arial!important;min-width:24px;min-height:32px;cursor:pointer}
.jrv-menu-toggle {display:none;margin-left:auto;padding:10px 12px;border:1px solid #eee;background:#fff;color:#111;font:600 16px var(--jrv-body)}
body.jrv-on .jh-main-menu .jrv-menu.jrv-compact .jrv-menu-toggle {display:block}
body.jrv-on .jh-main-menu .jrv-menu.jrv-compact>.jrv-main-menu {display:none;position:relative;width:100%;flex-direction:column;margin-top:8px}
body.jrv-on .jh-main-menu .jrv-menu.jrv-compact.jrv-expanded>.jrv-main-menu {display:flex}
body.jrv-on .jh-main-menu .jrv-menu.jrv-compact .jrv-main-menu>li {display:flex;flex-wrap:wrap;width:100%}
body.jrv-on .jh-main-menu .jrv-menu.jrv-compact li>a {flex:1;min-width:0;white-space:normal!important}
body.jrv-on .jh-main-menu .jrv-menu.jrv-compact .sub-menu {display:none!important;position:static!important;width:100%;max-width:100%;min-width:0;box-shadow:none;border:0;border-left:2px solid var(--jrv-orange);margin-left:14px;padding-left:0}
body.jrv-on .jh-main-menu .jrv-menu.jrv-compact li.jrv-open>.sub-menu {display:block!important}
body.jrv-on .jh-main-menu .jrv-menu.jrv-compact .sub-menu>li {display:flex;flex-wrap:wrap}
@media(max-width:1024px){
 body.jrv-on .jh-main-menu .jrv-menu:not([data-jrv-ready]) .jrv-main-menu {flex-direction:column}
 body.jrv-on .jh-main-menu .jrv-menu:not([data-jrv-ready]) .sub-menu {position:static;display:block;box-shadow:none}
}
/* Original list layouts use compact previews; full titles/text remain in the DOM. */
.jrv-news-grid .jrv-list-copy h2 {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:2.6em}
.jrv-news-grid .jrv-list-copy p {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:3.3em}
body.jrv-on .jrv-catalog ul.products li.product h2 {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:4.2em;max-height:4.2em}
body.jrv-on .jrv-catalog ul.products li.product>a.woocommerce-LoopProduct-link {margin-bottom:16px}
body.jrv-on .jrv-catalog ul.products li.product>a.jrv-product-link {margin-top:auto!important}
body.jrv-on .jh-footer h2.elementor-heading-title {font-family:var(--jrv-display)!important}
body.jrv-on .jh-footer h3.elementor-heading-title {font-family:var(--jrv-body)!important}
