/*
Theme Name:     Jahroc Galleries
Theme URI:      n/a
Template:       kadence
Author:         CloudPress
Author URI:     n/a
Description:    Child Theme Description
Version:        2.9.83
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/

/* JahRoc hero: Kadence parallax (jarallax) + slow settle-in zoom. scale composes with jarallax transform. */
@keyframes jr-hero-settle{from{scale:1.12}to{scale:1}}
.jr-hero > .jarallax-container > div{animation:jr-hero-settle 9s cubic-bezier(.2,.6,.2,1) both;transform-origin:50% 50%;will-change:transform}
@media (prefers-reduced-motion:reduce){.jr-hero > .jarallax-container > div{animation:none}}

/* JahRoc footer hairline: separates the footer now that page backgrounds are white. */
#colophon{border-top:1px solid rgba(36,31,28,.12)}

/* JahRoc artist credit ("Created by …" text comes from jahroc-site makers.php): small tracked caps, gallery-style. */
.product-brand-wrapper{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--global-palette5);margin:0 0 .5em}

/* JahRoc buttons: Kadence Blocks buttons follow the global Prestige scale (13px, 600, tracked caps, 13/26 padding, square), now set in Customizer > General > Buttons; only the icon size stays here. */
.wp-block-kadence-advancedbtn .kb-button .kb-svg-icon-wrap{font-size:14px}

/* JahRoc product cards: even 4:5 image frame, credit aligned with the title, no in-card buttons (the card is the link). */
ul.products:not(.jr-masonry) li.product .woocommerce-loop-image-link{display:flex!important;align-items:center;justify-content:center;aspect-ratio:4/5;overflow:hidden}
ul.products:not(.jr-masonry) li.product .woocommerce-loop-image-link img{width:auto;max-width:100%;max-height:100%;transition:transform .8s cubic-bezier(.2,.6,.2,1)}
ul.products li.product:hover .woocommerce-loop-image-link img{transform:scale(1.03)}
ul.products li.product .product-details{padding:0}
ul.products li.product .product-brand-wrapper{margin:18px 0 6px}
ul.products li.product .woocommerce-loop-product__title{margin:0 0 6px;padding:0} /* size + line height come from Customizer > WooCommerce > Product Catalog (v2.9.3) */
ul.products li.product .price{font-size:14px}
/* TEMP 2026-10-07: card buttons shown so Peter can review the Kadence Customizer settings. Restore to hide them again. */
/* ul.products li.product .product-action-wrap{display:none} */

/* JahRoc widget dock: small card bottom-right, hairline border, compact buttons. */
#kt-widget-dock{box-shadow:0 12px 32px rgba(36,31,28,.10)}
#kt-widget-dock .kb-buttons-wrap{gap:10px;justify-content:flex-start;flex-wrap:nowrap}
#kt-widget-dock .kb-button{padding:12px 18px;white-space:nowrap}
#kt-widget-dock .kt-btn-wrap-0,#kt-widget-dock .kb-button{margin:0}
#kt-widget-dock .kt-widget-dock-close{top:6px;right:10px;font-size:16px;line-height:1;color:var(--global-palette5)}

/* JahRoc post/page heroes: featured image behind the title (Kadence "above" title + featured image), white type. */
.post-hero-section .entry-header,.page-hero-section .entry-header,.post-archive-hero-section .entry-header{max-width:900px;margin-left:auto;margin-right:auto}
.post-hero-section .entry-title,.page-hero-section .entry-title,.post-archive-hero-section .entry-title{line-height:1.1;text-wrap:balance}
.post-hero-section .entry-meta,.post-hero-section .entry-meta a,.post-hero-section .entry-taxonomies a,.page-hero-section .kadence-breadcrumbs,.page-hero-section .kadence-breadcrumbs a{font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none}
.post-hero-section .entry-taxonomies{margin-bottom:14px}
.post-hero-section .posted-by{display:none}

/* JahRoc product template: Prestige proportions. */
.single-product .product_title{line-height:1.12}
.single-product .kadence-columnjr_pt_col2 .price{font-size:18px}
.single-product .kadence-columnjr_pt_col2 .yith-ywraq-add-to-quote .button,.single-product .kadence-columnjr_pt_col2 .wcwl_elements .button{width:100%;text-align:center}
/* JahRoc enquiry button: same colours as YITH Request a Quote > Add to quote button settings (kept here so it no longer depends on YITH's CSS variables). */
body.single-product .yith-ywraq-add-to-quote a.add-request-quote-button.button{background-color:rgba(255,255,255,0)!important;color:var(--jr-gold-dark)!important;border-color:var(--jr-gold-dark)!important}
body.single-product .yith-ywraq-add-to-quote a.add-request-quote-button.button:hover,body.single-product .yith-ywraq-add-to-quote a.add-request-quote-button.button:focus{background-color:var(--jr-gold-dark)!important;color:#fff!important;border-color:var(--jr-gold-dark)!important}
.single-product .kadence-columnjr_pt_col2 .iconic-ww-button{width:100%;justify-content:center;background:transparent;color:var(--global-palette3);border-color:var(--global-palette3)}
.single-product .kadence-columnjr_pt_col2 .iconic-ww-button:hover{background:var(--global-palette3);border-color:var(--global-palette3);color:#fff}
.single-product .kadence-columnjr_pt_col2 .wc-tabs-wrapper .woocommerce-Tabs-panel{font-size:15px}
.single-product .kadence-columnjr_pt_col2 .wc-tabs li a,.single-product .kadence-columnjr_pt_col2 .kwt-accordion-title,.single-product .kadence-columnjr_pt_col2 [class*="accordion"] > a{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.kadence-product-gallery-thumbnails .splide__arrow{display:none!important} /* Kadence's .kt_thumb_show_arrow styles outranked the plain rule; thumbnails still click, swipe and follow the main image */

/* JahRoc header icons, 24px for WCAG 2.2 target size. Desktop cart and search sizes are Customizer values (Header > Cart / Search > Icon Size). Kadence has no icon size setting for the account icon or the mobile-header cart, so only those two stay here. */
:is(#main-header,#mobile-header) .header-account-button .kadence-svg-iconset,#mobile-header .header-cart-button .kadence-svg-iconset{font-size:24px}
#main-header .site-header-main-section-right .site-header-item{margin-left:14px}
#main-header .header-account-button .kadence-svg-iconset.svg-baseline + .kadence-svg-iconset,#main-header .header-account-button .account-dropdown-icon{display:none}

/* JahRoc outline buttons on dark imagery (hero, pathway tiles): white hairline, fills white on hover. */
.jr-hero .kb-button,.jr-tile .kb-button{color:#fff;border-color:rgba(255,255,255,.85);background:transparent}
.jr-hero .kb-button:hover,.jr-tile .kb-button:hover{color:var(--global-palette3);background:#fff;border-color:#fff}

/* JahRoc pathway tiles: full-bleed image, bottom gradient, title + button; the whole tile is the link. */
.jr-tile > .kt-inside-inner-col{position:relative;min-height:clamp(320px,34vw,540px);justify-content:flex-end;overflow:hidden}
.jr-tile > .kt-inside-inner-col::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,17,15,0) 45%,rgba(20,17,15,.62) 100%);pointer-events:none}
.jr-tile > .kt-inside-inner-col > *{position:relative}
.jr-tile > .kt-inside-inner-col > .wp-block-kadence-advancedbtn,.jr-tile .kb-button{position:static}
.jr-tile .kb-button::after{content:"";position:absolute;inset:0;z-index:1}

/* JahRoc carousels: even image heights (landscape frame, cropped to fill), tighter text. */
/* Product carousels always fill their column (v2.9.4): a left-aligned Kadence column otherwise lets the slider grow to the width of all its slides */
.jr-carousel,.wp-block-kadence-productcarousel{width:100%;min-width:0;max-width:100%;align-self:stretch}
.jr-carousel ul.products li.product .woocommerce-loop-image-link{aspect-ratio:4/3}
.jr-carousel ul.products li.product .woocommerce-loop-image-link img{width:100%;height:100%!important;max-height:none;object-fit:cover}
.jr-carousel ul.products li.product .product-brand-wrapper{margin-top:14px}

/* JahRoc enquiry bar (header top row). */
.site-top-header-wrap .header-html,.site-top-header-wrap .mobile-html{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fff}
.site-top-header-wrap .header-html a,.site-top-header-wrap .mobile-html a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.site-top-header-wrap .header-html p,.site-top-header-wrap .mobile-html p{margin:0}

/* JahRoc drawer: serif menu, no dividers, search at the top. Top-level size (26px), line height, tracking and case are Customizer values now (Header > Mobile Navigation > Typography); the heading-font family, the 13px caps sub-menu level and the padding have no Customizer control and stay here. */
#mobile-drawer .drawer-content .mobile-navigation ul li a{font-family:var(--global-heading-font-family);padding-top:9px;padding-bottom:9px}
#mobile-drawer .drawer-content .mobile-navigation ul ul li a{font-family:var(--global-body-font-family);font-size:13px;letter-spacing:.14em;text-transform:uppercase;padding-top:7px;padding-bottom:7px}
#mobile-drawer .drawer-content .mobile-navigation ul li,#mobile-drawer .drawer-content .mobile-navigation ul li .drawer-nav-drop-wrap,#mobile-drawer .drawer-content .mobile-navigation ul li a{border:0}
#mobile-drawer .drawer-content .search-toggle-open-container{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(36,31,28,.12);width:100%}

/* JahRoc "Meet your contact": light band with a hairline. */
.jr-contact{border-top:1px solid rgba(36,31,28,.12)}

/* JahRoc footer: logo/tagline aligned with the Explore column; light, short bottom bar. */
#colophon .site-top-footer-inner-wrap{padding-left:0;padding-right:0}
#colophon .site-bottom-footer-wrap{border-top:1px solid rgba(36,31,28,.12)}
#colophon .site-bottom-footer-inner-wrap{min-height:0;padding-top:14px;padding-bottom:14px}
#colophon .site-bottom-footer-wrap,#colophon .site-bottom-footer-wrap a{color:var(--global-palette4);font-size:13px}

/* JahRoc widget dock: no bottom gap, room for the close mark, outline buttons. */
#kt-widget-dock{padding:26px 52px 26px 26px!important;width:auto!important}
#kt-widget-dock .kt-widget-dock-widget,#kt-widget-dock .wp-block-kadence-advancedbtn{margin:0}
#kt-widget-dock .kt-widget-dock-close{top:10px;right:14px}
#kt-widget-dock .kb-button{background:transparent;color:var(--global-palette3);border:1px solid var(--global-palette3)}
#kt-widget-dock .kb-button:hover{background:var(--global-palette3);color:#fff}

/* ===== v1.6 ===== */
:root{--jr-gold:#a78952;--jr-gold-dark:#8a6f3f;--jr-gap:32px}
@media(max-width:767px){:root{--jr-gap:16px}}

/* Calmer heading scale: hero headline readable over imagery (soft left gradient + shadow). */
.jr-hero h1.wp-block-kadence-advancedheading[data-kb-block]{font-size:clamp(32px,3.4vw,52px);line-height:1.12;max-width:880px;text-wrap:balance;text-shadow:0 1px 22px rgba(20,17,15,.35)}
.jr-hero p{text-shadow:0 1px 14px rgba(20,17,15,.35)}
.jr-hero > .kt-row-column-wrap{position:relative;z-index:2}
.jr-hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(20,17,15,.5) 0%,rgba(20,17,15,.18) 60%,rgba(20,17,15,0) 100%);pointer-events:none}
.post-hero-section .entry-title,.page-hero-section .entry-title,.post-archive-hero-section .entry-title{font-size:clamp(30px,3.2vw,46px)}
.single-product .product_title{font-size:clamp(26px,2.2vw,34px)}

/* Footer: columns aligned, bottom bar dark text, outline social buttons. */
#colophon .site-top-footer-wrap{padding-left:0;padding-right:0}

/* Product page: outline Purchase, gold Make an Enquiry, quieter Shipping & Delivery headings. */
.single-product form.cart .single_add_to_cart_button.button{width:100%;background:transparent!important;color:var(--global-palette3)!important;border-color:var(--global-palette3)!important;padding:14px 26px;text-align:center;justify-content:center}
.single-product form.cart .single_add_to_cart_button.button:hover{background:var(--global-palette3)!important;color:#fff!important}
.single-product .add-request-quote-button.button{width:100%;text-align:center;background:var(--jr-gold-dark)!important;border-color:var(--jr-gold-dark)!important;color:#fff!important;font-size:13px;letter-spacing:.15em}
.single-product .add-request-quote-button.button:hover{background:var(--global-palette3)!important;border-color:var(--global-palette3)!important}
.single-product .woocommerce-Tabs-panel h2{font-size:20px;line-height:1.3;font-weight:500;margin:0 0 .7em}
.single-product .woocommerce-Tabs-panel h3{font-family:var(--global-body-font-family);font-size:12px;line-height:1.4;font-weight:600;letter-spacing:.18em;text-transform:uppercase;text-align:left!important;margin:1.8em 0 .6em}
.single-product .woocommerce-Tabs-panel h4{font-family:var(--global-body-font-family);font-size:15px;line-height:1.4;font-weight:600;margin:1.2em 0 .4em}
.single-product .woocommerce-Tabs-panel hr{margin:1.6em 0;opacity:.25}
.single-product .woocommerce-Tabs-panel li{margin-bottom:.4em}

/* Archive grids: masonry (init in functions.php); natural image proportions. */
ul.products.jr-masonry{display:block!important;position:relative}
ul.products.jr-masonry li.product,ul.products.jr-masonry li.jr-sizer{width:calc((100% - 3*var(--jr-gap))/4);float:none}
@media(max-width:1280px){ul.products.jr-masonry li.product,ul.products.jr-masonry li.jr-sizer{width:calc((100% - 2*var(--jr-gap))/3)}}
ul.products.jr-masonry li.product{margin:0 0 calc(var(--jr-gap) + 8px)}
ul.products.jr-masonry li.jr-sizer{height:0;margin:0;padding:0;visibility:hidden;list-style:none}
@media(max-width:1024px){ul.products.jr-masonry li.product,ul.products.jr-masonry li.jr-sizer{width:calc((100% - var(--jr-gap))/2)}}
ul.products.jr-masonry li.product .woocommerce-loop-image-link{display:block!important;aspect-ratio:auto!important}
ul.products.jr-masonry li.product .woocommerce-loop-image-link img,ul.products.jr-masonry li.product > a img{width:100%!important;height:auto!important;max-height:none!important}

/* ===== About page (editorial layout) ===== */
.jr-about-hero{min-height:560px;padding:170px 32px 190px!important;text-align:center}
.jr-about-hero .jr-eyebrow{font-size:18px;letter-spacing:.2em;text-transform:uppercase;color:#fff;margin:0 0 14px}
.jr-about-hero .jr-about-title{color:#fff;font-size:clamp(34px,4vw,56px);margin:0}
.jr-about-portrait{max-width:820px;margin:-130px auto 0!important;position:relative;z-index:2;padding:0 24px}
.jr-about-portrait img{width:100%;height:auto;display:block}
.jr-about-portrait figcaption,.jr-about-row figcaption{text-align:center;font-size:13px;letter-spacing:.05em;color:var(--global-palette5);margin-top:12px}
.jr-about-intro{max-width:820px;margin:96px auto 0;padding:0 24px;text-align:center}
.jr-about-intro h2{font-size:clamp(28px,2.8vw,40px);line-height:1.2}
.jr-about-intro::after{content:"";display:block;width:90px;height:1px;background:rgba(36,31,28,.35);margin:40px auto 0}
.jr-lead{font-family:var(--global-heading-font-family);font-size:clamp(22px,2vw,28px);line-height:1.45;color:var(--global-palette3)}
.jr-about-row{max-width:1140px;margin:clamp(48px,6vw,96px) auto;padding:0 24px;gap:clamp(32px,5vw,80px)}
.jr-about-row .wp-block-image{margin:0}
.jr-about-row img{width:100%;height:auto}
.jr-stats{max-width:1140px;margin:0 auto clamp(48px,6vw,96px);padding:48px 24px;border-top:1px solid rgba(36,31,28,.14);border-bottom:1px solid rgba(36,31,28,.14);text-align:center}
.jr-stat-num{font-family:var(--global-heading-font-family);font-size:clamp(40px,4vw,60px);line-height:1;margin:0 0 10px;color:var(--global-palette3)}
.jr-stat-label{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--global-palette5);margin:0}
.jr-about-band{max-width:820px;margin:0 auto;padding:clamp(32px,5vw,64px);border:1px solid rgba(36,31,28,.2);text-align:center}
.jr-about-band .wp-block-buttons{margin-top:28px}
.jr-about-close{max-width:760px;margin:clamp(48px,6vw,96px) auto 0;padding:0 24px;text-align:center}
.jr-about-cta{max-width:820px;margin:64px auto clamp(64px,8vw,120px);padding:48px 24px 0;border-top:1px solid rgba(36,31,28,.14);text-align:center}
.jr-about-cta h3{font-size:clamp(20px,1.8vw,26px);line-height:1.45}
.jr-about-cta a{color:inherit;text-decoration:underline;text-underline-offset:4px}

/* About page: self-contained layout (core block-library CSS is not loaded on this site). */
.jr-about-row,.jr-stats{display:flex;align-items:center}
.jr-about-row > .wp-block-column,.jr-stats > .wp-block-column{flex:1 1 0;min-width:0;margin:0}
@media(max-width:781px){.jr-about-row,.jr-stats{flex-direction:column;align-items:stretch}.jr-stats{gap:36px}}
.jr-about-hero{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#fff}
.jr-about-hero .wp-block-cover__background{position:absolute;inset:0;background:#14110f;opacity:.45}
.jr-about-hero .wp-block-cover__image-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.jr-about-hero .wp-block-cover__inner-container{position:relative;z-index:1;max-width:900px;margin:0 auto}
.jr-about-band .wp-block-buttons,.jr-about-close .wp-block-buttons{display:flex;justify-content:center}
.jr-about-row figure,.jr-about-portrait figure{margin:0}
.jr-about-row img,.jr-about-portrait img{max-width:100%;height:auto;display:block}

/* Home testimonials (three hand-picked client quotes). */
.jr-quote{font-family:var(--global-heading-font-family);font-size:clamp(20px,1.7vw,24px);line-height:1.4;color:var(--global-palette3)}
.jr-quote-by{color:var(--global-palette4);margin-top:6px}
.jr-quote-for{color:var(--global-palette5);margin-top:6px}
.jr-testimonials{border-bottom:1px solid rgba(36,31,28,.12)}

/* Testimonials page: every client quote, two columns. */
.jr-tm-grid{columns:3 300px;column-gap:48px;max-width:1240px;margin:0 auto}
.jr-tm{break-inside:avoid;margin:0 0 56px;padding:0}
.jr-tm__img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:0 0 22px}
.jr-tm__quote{margin:0;padding:0;border:0;font-family:var(--global-heading-font-family);font-style:normal;font-size:clamp(19px,1.45vw,22px);line-height:1.45;color:var(--global-palette3)}
.jr-tm__quote p{margin:0}
.jr-tm__who{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--global-palette5);margin:16px 0 0}
.jr-tm__more{margin-top:14px}
.jr-tm__more summary{cursor:pointer;list-style:none;display:inline-block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--global-palette3);border-bottom:1px solid var(--jr-gold);padding-bottom:3px}
.jr-tm__more summary::-webkit-details-marker{display:none}
.jr-tm__more[open] summary{margin-bottom:16px}
.jr-tm__full{font-size:16px;line-height:1.65;color:var(--global-palette4)}
.jr-tm__full p{margin:0 0 .9em}
.jr-tm__full img{max-width:100%;height:auto;margin:8px 0}
.jr-tm__full figure{margin:0 0 12px}
.page-id-117485 .entry-content{max-width:1240px;margin-left:auto;margin-right:auto}

/* Short decorative rule under converted headings. */
hr.jr-short-rule{width:125px;max-width:60%;margin:18px auto 28px;border:0;border-top:1px solid rgba(36,31,28,.35);background:none}

/* Product actions (v2.1): Make an Enquiry, then deposit + Purchase, then Wishlist. One button size for all three. */
.single-product .add-request-quote-button.button,
.single-product form.cart .single_add_to_cart_button.button,
.single-product .kadence-columnjr_pt_col2 .iconic-ww-button{display:flex!important;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;width:100%;min-height:52px;padding:15px 24px!important;margin:0;font-size:13px!important;line-height:1.2!important;letter-spacing:.15em!important;text-transform:uppercase;text-align:center}
.single-product .kadence-columnjr_pt_col2 .iconic-ww-button .iconic-ww-icon{display:inline-flex;margin:0}
.single-product .kadence-columnjr_pt_col2 .iconic-ww-button .iconic-ww-icon svg{width:13px;height:13px}
.single-product .kwt-hooks-jr_pt_actions .yith-ywraq-add-to-quote{margin:0}
.single-product .kwt-hooks-jr_pt_actions .clear{display:none}
.single-product .kwt-hooks-jr_pt_wishlist{text-align:center}

/* Shop / product archive photo title band: the light text colours are Customizer values now (Product Archive Title); only the hover fade stays (v2.3, 2.9.63) */
.product-archive-hero-section .entry-hero-container-inner .kadence-breadcrumbs a:hover{opacity:.8}

/* Availability (jahroc-site availability.php): badge on the product page; on cards the state replaces the price line (v2.5). */
.jr-avail{display:inline-block;font-size:11px;line-height:1;letter-spacing:.18em;text-transform:uppercase;padding:7px 10px;background:#fff;color:var(--global-palette3);border:1px solid rgba(36,31,28,.18)}
.jr-avail--sold{background:transparent;color:var(--global-palette3);border-color:var(--global-palette3)}
.jr-avail--commission,.jr-avail--made-to-order{color:var(--jr-gold-dark);border-color:var(--jr-gold-dark)}
.single-product .price .jr-avail{display:table;margin:0 0 12px}
.jr-price-note{font-size:14px;letter-spacing:.06em;color:var(--global-palette5)}
ul.products li.product .jr-price-note{font-size:12px;letter-spacing:.18em;text-transform:uppercase}
ul.products li.product .jr-price-note--commission,ul.products li.product .jr-price-note--made-to-order{color:var(--jr-gold-dark)}

/* Archive landing pages: full category description under the grid (v2.6) */
.jr-term-desc{max-width:760px;margin:96px auto 0;padding:56px 24px 0;border-top:1px solid rgba(36,31,28,.14);box-sizing:border-box;font-size:17px;line-height:1.8;color:var(--global-palette4)}
.jr-term-desc p{margin:0 0 1.2em}
.jr-term-desc a{text-decoration:underline;text-underline-offset:3px}

/* Story pages: History (page 35) and the Echo Marine post (136341) were rebuilt in Kadence rows on 23 Oct; their layout is the class-based .jr-story rules at the end of this file. The page-ID rules that used to be here are gone. */
.jr-linkbtn a{display:inline-block;min-height:44px;box-sizing:border-box;padding:14px 28px;border:1px solid var(--global-palette3);color:var(--global-palette3);font-size:13px;line-height:1.2;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;background:transparent}
.jr-linkbtn a:hover{background:var(--global-palette3);color:#fff}
@media(max-width:900px){
}

/* Story pages, round 2 (v2.7): core gallery/columns CSS is not loaded site-wide, so supply it; left-align the reading column; keep wide blocks inside 1180px */
@media(max-width:700px){
}

/* Story pages, round 3 (v2.8): left-align text inside media-text, quote in the heading serif */

/* Story pages, round 4 (v2.9): one text/image rhythm. Same column split everywhere (page-builder inline splits overridden), image top-aligned and sticky beside long text, stand-alone images and single galleries held to 1000px, image rows evened out to one aspect ratio. */
@media(max-width:900px){
}

/* Story pages, round 5 (v2.9.1): editor-set pixel sizes on images (style="width:..;height:..") would win, so the even-row and size caps need !important */

/* Story pages (v2.9.2): one caption style (editor left italic Arial on some) */

/* Product page buttons (v2.9.7): font weight comes from Customizer > General > Buttons (500). Border width is set here because the Woo template Add to Cart block outputs border:0 and YITH hard-codes 1px !important; keep it equal to the Customizer button border (2px). */
.single-product .add-request-quote-button.button,.single-product form.cart .single_add_to_cart_button.button,.single-product .kadence-columnjr_pt_col2 .iconic-ww-button{border-width:2px!important;border-style:solid!important}

/* Even catalogue grid (v2.9.8, when Customizer "Masonry layout" is off): category tiles get the same 4:5 frame as product images. */
ul.products:not(.jr-masonry) li.product-category > a{display:block}
ul.products:not(.jr-masonry) li.product-category > a img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;margin:0}

/* Echo Marine post (136341), v2.9.9: content is now inside Kadence rows, so give every row (hero included) one shared edge:
   1180px wide with 32px inside padding, so the hero text, intro and image/text sections all start on the same line. */
@media(max-width:900px){
}

/* Transparent header (v2.9.10, restored 2.9.82): Kadence's Transparent Header > Cart colour applies in the sticky state too, which made the cart icon white on the sticky header's white background (invisible), so the 2.9.64 move to the Customizer was undone. With their own colour left blank the account and cart icons inherited the dark body text; make them follow Customizer > Transparent Header > Navigation colour (palette9 / hover palette7) until the sticky header kicks in (.item-is-stuck), where their normal colours apply again. */
.transparent-header #masthead .kadence-sticky-header:not(.item-is-stuck) :is(.header-account-button,.header-cart-button),
.transparent-header #masthead .site-header-row-container:not(.kadence-sticky-header) :is(.header-account-button,.header-cart-button){color:var(--global-palette9)}
.transparent-header #masthead .kadence-sticky-header:not(.item-is-stuck) :is(.header-account-button,.header-cart-button):hover,
.transparent-header #masthead .site-header-row-container:not(.kadence-sticky-header) :is(.header-account-button,.header-cart-button):hover{color:var(--global-palette7)}

/* Enquiry list (YITH [yith_ywraq_request_quote], v2.9.11): YITH prints variation details as "<br><ul style=margin-left:10px><li>..</li><br></ul>".
   Show them as a quiet line under the title instead of an indented bullet list. */
#yith-ywrq-table-list td.product-name > br{display:none}
#yith-ywrq-table-list td.product-name ul{list-style:none!important;margin:8px 0 0!important;padding:0!important}
#yith-ywrq-table-list td.product-name ul > br{display:none}
#yith-ywrq-table-list td.product-name ul li{margin:0 0 2px;padding:0;font-size:14px;line-height:1.5;color:var(--global-palette5)}
#yith-ywrq-table-list td.product-name ul li::marker{content:none}
#yith-ywrq-table-list td.product-name ul li strong{font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--global-palette4);margin-right:6px}
#yith-ywrq-table-list td.product-name ul li p{display:inline;margin:0}

/* Hero heights (v2.9.36): every first-screen hero ends the same distance from the top of the page: 640px on desktop,
   480px on tablet, 560px on phones (see below). This covers all four hero systems: Kadence title bands (pages, posts, blog, product
   categories, artists, collection tags), the custom .jr-hero rows (Home, Our Story, Commissions, Collections, History,
   Echo post) and the archive Element heroes (Online Gallery, Designer Furniture, Fine Art, Photography, In Stock Now,
   Mark Stothard). Under a transparent header the hero starts at the top of the page; under a solid header it starts
   below the header, so it is shorter by the header's real height (100px desktop, 80px tablet, 70px phone). */
:root{--jr-hero-end:640px;--jr-header-h:100px}
@media(max-width:1024px){:root{--jr-hero-end:480px;--jr-header-h:80px}}
@media(max-width:767px){:root{--jr-header-h:70px}}
body.transparent-header .entry-hero .entry-hero-container-inner{min-height:var(--jr-hero-end)!important}
body:not(.transparent-header) .entry-hero .entry-hero-container-inner{min-height:calc(var(--jr-hero-end) - var(--jr-header-h))!important}
/* Custom hero rows: fixed height instead of 160px padding plus however much text they hold; text sits at the bottom. */
.jr-hero{position:relative;overflow:hidden} /* without this the overlay gradient (::after) covers the whole page whenever the parallax script hasn't run */
.jr-hero > .kt-row-column-wrap{box-sizing:border-box;align-content:end;padding-bottom:56px!important}
body.transparent-header .jr-hero > .kt-row-column-wrap{min-height:var(--jr-hero-end)!important;padding-top:calc(var(--jr-header-h) + 48px)!important}
body:not(.transparent-header) .jr-hero > .kt-row-column-wrap{min-height:calc(var(--jr-hero-end) - var(--jr-header-h))!important;padding-top:48px!important}
/* Phones (2.9.39): heroes end at 560px (about the share of a phone screen that 640px is on desktop), tighter padding,
   and hero intros stop at five lines, so the longest heroes (Home, Online Gallery) fit like the rest. */
@media(max-width:767px){:root{--jr-hero-end:560px}
.jr-hero > .kt-row-column-wrap{padding-bottom:32px!important}
body.transparent-header .jr-hero > .kt-row-column-wrap{padding-top:calc(var(--jr-header-h) + 24px)!important}
body:not(.transparent-header) .jr-hero > .kt-row-column-wrap{padding-top:24px!important}
.jr-hero p:not(.jr-eyebrow){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}}

/* Category / tag descriptions (v2.9.12): links take the surrounding text colour, underlined, not burgundy. */
:is(.archive-description,.term-description,.jr-term-desc,.kt-extra-cat-desc,.jr-maker-desc,.jr-hero) a:not(.button):not(.kb-button){color:inherit!important;text-decoration:underline;text-underline-offset:3px}
:is(.archive-description,.term-description,.jr-term-desc,.kt-extra-cat-desc,.jr-maker-desc,.jr-hero) a:not(.button):not(.kb-button):hover{opacity:.75}

/* FAQ accordion titles: reset button letter-spacing and set the size above body text (16px body, 20px title). */
.page-id-545 .kt-blocks-accordion-header{letter-spacing:normal;font-size:1.25rem;line-height:1.4}

/* Order received (thank-you) page. YITH Deposits nests a second <strong> in the Total ("$9,700 (of $19,400)"):
   keep it the same size and on one line. Headings scaled down from page-title size, sections spaced apart. */
.woocommerce-order-received .woocommerce-order-overview li strong strong{font-size:inherit;font-weight:inherit;display:inline;line-height:inherit}
.woocommerce-order-received .woocommerce-order-overview__total strong{white-space:nowrap}
.woocommerce-order-received .woocommerce-order-overview__total strong strong{white-space:normal}
.woocommerce-order-received .woocommerce-order h2{font-size:28px;margin-bottom:16px}
.woocommerce-order-received :is(.woocommerce-bacs-bank-details,.woocommerce-order-details,.woocommerce-customer-details){margin-top:48px}
.woocommerce-order-received .wc-bacs-bank-details-account-name{font-family:inherit;font-size:16px;font-weight:600;margin:0 0 12px}

/* Classic checkout (needed for YITH quote deposits): order summary as a bordered panel that stays in view,
   right-aligned amounts, quieter deposit notes, and the payment method shown as a selected option. */
.woocommerce-checkout #order_review{border:1px solid var(--global-gray-400);padding:24px 28px;position:sticky;top:110px}
.woocommerce-checkout .woocommerce-checkout-review-order-table th,.woocommerce-checkout .woocommerce-checkout-review-order-table td{padding:12px 0;vertical-align:top}
.woocommerce-checkout .woocommerce-checkout-review-order-table :is(td,th):last-child{text-align:right}
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{line-height:1.5}
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name :is(small,p){font-size:13px;color:var(--global-palette5)}
.woocommerce-checkout .order-total td{font-size:18px}
.woocommerce-checkout .order-total td small.includes_tax{display:block;font-size:12px;font-weight:400;color:var(--global-palette5)}
.woocommerce-checkout #payment{background:none;border-top:1px solid var(--global-gray-400);margin-top:8px;padding-top:16px}
.woocommerce-checkout #payment ul.payment_methods{border:0;padding:0}
.woocommerce-checkout #payment ul.payment_methods li{border:1px solid var(--global-gray-400);padding:14px 16px;list-style:none}
.woocommerce-checkout #payment ul.payment_methods li label{font-weight:600;margin:0}
.woocommerce-checkout #payment div.payment_box{background:none;padding:8px 0 0;margin:0;font-size:14px}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment .place-order{padding:16px 0 0}
@media (max-width:1024px){.woocommerce-checkout #order_review{position:static;padding:20px}}
@media (max-width:600px){
.woocommerce-checkout .order-total td{font-size:16px}
.woocommerce-checkout .order-total td :is(small.includes_tax,strong){white-space:nowrap}
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{padding-right:12px}
}

/* Commissions "What to expect": keep the intro to a readable measure above the three timeframe columns. */
.kt-adv-headingjr_cm_h72{max-width:640px;margin-left:auto!important;margin-right:auto!important}
/* Outline buttons on dark (charcoal) bands: light text and border, filling on hover, instead of burgundy on charcoal. */
.has-theme-palette3-background-color .kb-button.kb-preset--theme-base{color:var(--global-palette9);border-color:var(--global-palette9)}
.has-theme-palette3-background-color .kb-button.kb-preset--theme-base:hover,.has-theme-palette3-background-color .kb-button.kb-preset--theme-base:focus{background:var(--global-palette9);color:var(--global-palette3);border-color:var(--global-palette9)}
/* Floating "Make an Enquiry / Call Niki" panel steps aside while a contact band or the footer is on screen. */
.kt-widget-dock-widget-area{transition:opacity .25s ease,transform .25s ease}
body.jr-dock-aside .kt-widget-dock-widget-area{opacity:0;transform:translateY(16px);pointer-events:none}

/* One type scale for pages (22 Oct). Headings were styled block by block (H2 38px on some pages, 48px on
   others; four label sizes). Page titles, section headings, sub-headings and small-caps labels now share one
   size each, scaling down on phones. Product and post-card titles are excluded. 23 Oct: the per-block heading sizes are stripped from the page content, but removing !important still changed some heading sizes (other rules outrank these), so it stays. The sizes are fluid clamp() values, which the Customizer H1-H3 typography (fixed px per device) cannot express. */
.page :is(.entry-hero, .entry-content, .jr-hero) h1{font-size:clamp(32px,1.6rem + 2.2vw,48px)!important;line-height:1.1}
.page .entry-content h2:not(.woocommerce-loop-product__title):not([class*="product"]):not(.wc-block-components-title){font-size:clamp(28px,1.3rem + 1.6vw,42px)!important;line-height:1.15}
.page .entry-content h3:not(.woocommerce-loop-product__title):not([class*="product"]){font-size:clamp(22px,1.1rem + .6vw,26px)!important;line-height:1.25}
.jr-eyebrow{font-size:18px!important;letter-spacing:3px!important;line-height:1.45} /* Peter 23 Oct: 18px (was 13 → 15) */

/* Floating enquiry panel: a drawn close cross instead of the plain letter "x", and on phones the two buttons
   stack full width (side by side they were too narrow at 390px and the text touched the border). */
.kt-widget-dock-widget-area .kt-widget-close{display:block;position:relative;width:20px;height:20px;font-size:0;line-height:0;cursor:pointer}
.kt-widget-dock-widget-area .kt-widget-close::before,.kt-widget-dock-widget-area .kt-widget-close::after{content:"";position:absolute;left:2px;top:9px;width:16px;height:1.5px;background:var(--global-palette3);transition:background .2s}
.kt-widget-dock-widget-area .kt-widget-close::before{transform:rotate(45deg)}
.kt-widget-dock-widget-area .kt-widget-close::after{transform:rotate(-45deg)}
.kt-widget-dock-widget-area .kt-widget-dock-close:hover .kt-widget-close::before,.kt-widget-dock-widget-area .kt-widget-dock-close:hover .kt-widget-close::after{background:var(--global-palette1)}
@media (max-width:600px){
#kt-widget-dock.kt-widget-dock-widget-area,.kt-widget-dock-widget-area{left:12px!important;right:12px!important;width:auto!important;padding:34px 14px 14px!important}
.kt-widget-dock-widget-area .kt-widget-dock-close{top:8px!important;right:10px!important}
.kt-widget-dock-widget-area .kb-buttons-wrap{flex-direction:column;align-items:stretch;gap:8px;width:100%;max-width:none;margin:0!important;padding:0!important}
.kt-widget-dock-widget-area .kb-buttons-wrap .kb-button{width:100%;justify-content:center;margin:0!important}
}

/* Home: "View all awards" sat 70px above the "Watch" section; give both sections the page's usual spacing. */
.kb-row-layout-idjr_h3_row75 > .kt-row-column-wrap{padding-bottom:72px!important}
.kb-row-layout-idjr_h3_row79 > .kt-row-column-wrap{padding-top:72px!important}
@media (max-width:767px){.kb-row-layout-idjr_h3_row75 > .kt-row-column-wrap{padding-bottom:48px!important}.kb-row-layout-idjr_h3_row79 > .kt-row-column-wrap{padding-top:48px!important}}

/* Gold accents (2.9.30). Two golds keep small text readable (WCAG AA):
   --jr-gold (#a78952) for large text, rules, focus rings and anything on the dark bands (4.93:1 on #241f1c);
   --jr-gold-dark (#8a6f3f) for small gold text on white (4.74:1). Keep gold rare: a few touches per screen. */
:root :focus-visible{outline:2px solid var(--jr-gold)!important;outline-offset:2px}

/* Eyebrows: dark gold on white, brand gold on the dark bands; white ones on photo heroes stay white.
   A short brand-gold rule leads each one (it follows left or centred alignment). Testimonial names stay plain. */
.jr-eyebrow:not(.jr-quote-by):not(.has-theme-palette-9-color){color:var(--jr-gold-dark)!important}
:root .has-theme-palette3-background-color .jr-eyebrow:not(.jr-quote-by){color:var(--jr-gold)!important} /* :root outranks Kadence's inline :root [class*=kadence-].has-theme-palette-9-color */
.jr-eyebrow:not(.jr-quote-by)::before{content:"";display:inline-block;width:28px;height:1px;background:var(--jr-gold);vertical-align:middle;margin:-2px 12px 0 0}

/* Footer: gold hairline on top, a short gold rule under each column heading, dark-gold link hover,
   social icons fill with brand gold on hover. */
#colophon{border-top-color:var(--jr-gold)!important}
#colophon h3.wp-block-kadence-advancedheading{line-height:1.15!important}
#colophon h3.wp-block-kadence-advancedheading::after{content:"";display:block;width:32px;height:1px;background:var(--jr-gold);margin:12px 0 20px} /* tight line height so the rule sits under the letters, more space below than above */
#colophon a:not(.social-button):not(.kb-button):hover{color:var(--jr-gold-dark)!important}
#colophon .footer-social-wrap .social-button:hover{background:var(--jr-gold)!important;border-color:var(--jr-gold)!important;color:var(--global-palette3)!important}

/* AI summary box (WP AI plugin) at the top of the Shipping & Delivery tab sat flush against the heading after it. */
.ai-summarization-summary{margin-bottom:var(--jr-gap)!important}

/* Page-title heroes (photo or dark band behind the title): eyebrow text and its leading rule are white (Peter 23 Oct). */
:root :is(.jr-hero,.entry-hero) .jr-eyebrow:not(.jr-quote-by){color:#fff!important}
:root :is(.jr-hero,.entry-hero) .jr-eyebrow:not(.jr-quote-by)::before{background:#fff}

/* Long category/collection descriptions (jahroc-site 1.6.17): three lines in the title band plus "Read more",
   so every band keeps the standard height; the full text is printed under the products (#jr-term-about). */
.archive-description .jr-clamp{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.archive-description .jr-clamp p{margin:0 0 .4em}
.archive-description .jr-readmore{display:inline-block;margin-top:10px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#fff!important;text-decoration:underline;text-underline-offset:4px}
.jr-term-desc h2{font-size:clamp(24px,2vw,32px);margin:0 0 16px}

/* 2.9.43: hide Woo "In stock" line between Enquiry and Purchase (availability badge shows state) */
.single-product .kwt-add-to-cart-jr_pt_atc p.stock.in-stock{display:none}
/* 2.9.47: product grids (catalogue + related): Wishlist on its own line below Purchase/Enquire. Kadence has no Customizer setting for the plugin button; selector must outrank Kadence woocommerce.min.css (.woocommerce ul.products ... .button{display:inline}). */
.woocommerce ul.products li.product .product-action-wrap .iconic-ww-button.button{display:flex;align-items:center;gap:8px;width:fit-content;margin:12px 0 0;padding-left:0;padding-right:0}
.woocommerce ul.products li.product .product-action-wrap .iconic-ww-button .iconic-ww-icon{display:inline-flex;margin:0}

/* 2.9.50: product gallery fit. With the Kadence product slider off, WooCommerce flexslider sizes its viewport to the first image, so taller/wider photos were cropped or left gaps. One 4:3 box, every photo contained. No Customizer control for this. */
.single-product .woocommerce-product-gallery{container-type:inline-size}
.single-product .woocommerce-product-gallery .flex-viewport{height:75cqw!important;background:#f6f4f1}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{height:100%}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image{height:100%!important}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image>*:not(img){display:block;height:100%}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img:not(.zoomImg){width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain}

/* 2.9.60 (Peter, 23 Oct): page titles sit in the vertical middle of the visible hero (Kadence already pads the hero by the header height under a transparent header). Replaces the 2.9.51 bottom anchor; the flex column is needed so the title block fills the hero and centres in it. */
.entry-hero .entry-hero-container-inner{display:flex;flex-direction:column}
.entry-hero .hero-container{flex:1 0 auto;display:flex;flex-direction:column;width:100%}
.entry-hero .hero-container .entry-header{flex:1 0 auto;justify-content:center;min-height:0!important}

/* 2.9.53: History page. The YouTube story video sits in the hero on tablet/desktop; on phones it is hidden there and a second copy (.jr-video-mobile, after the first paragraph) shows in the content. */
.jr-video-mobile{display:none}
@media(max-width:767px){.jr-hero .kadence-columnjr_hi_col7{display:none}.jr-video-mobile{display:block;margin:24px 0}}

/* 2.9.57: a heading that follows an eyebrow sits at the eyebrow's own spacing (the eyebrow already has its bottom margin); Kadence's default 42px heading top margin made the new eyebrows on Contact, Awards and Enquiry sit 42-74px from their heading. Block-level default, no Customizer control. */
.jr-eyebrow + h2.wp-block-kadence-advancedheading{margin-top:0}

/* 2.9.58: Contact page options (Email / Call / Viewings / Enquiry List): four outline buttons of one size, aligned along the bottom of the row. */
.page-id-532 .kt-inside-inner-col:has(> .jr-linkbtn){display:flex;flex-direction:column}
.page-id-532 .kt-inside-inner-col > .jr-linkbtn{margin-top:auto}
.page-id-532 .jr-linkbtn a{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;padding:14px 12px;text-align:center;white-space:nowrap}

/* 2.9.66: the floating Enquiry / Call Niki dock buttons are Kadence Blocks buttons outside .wp-block-kadence-advancedbtn, so they took Kadence's 3px default radius once the old radius rule went (K9). Square, like every other button. */
.kt-widget-dock-widget-area .kb-button{border-radius:0!important} /* 2.9.75: block-level button CSS (3px) outranked this on product and archive pages */

/* 2.9.70: Story layout, class-based. Used by the rebuilt History page (Kadence rows with .jr-story classes) instead of page-ID rules. Text 18px reading column, h2 with a rule above, image + text rows, one caption style. */
.jr-story{margin-top:56px}
.jr-story-read p,.jr-story-media p{font-size:18px;line-height:1.8;margin:0 0 1.4em;color:var(--global-palette4);text-align:left}
.jr-story-read h2{margin:56px 0 28px;padding-top:44px;border-top:1px solid rgba(36,31,28,.14);text-align:left}
.jr-story-read h3,.jr-story-read h4,.jr-story-media :is(h2,h3,h4){margin:0 0 20px;line-height:1.3;text-align:left}
.jr-story-media{margin-top:96px}
.jr-story-media figure.wp-block-image img,.jr-story-image figure.wp-block-image img{width:100%;height:auto;display:block}
.jr-story-media figure.wp-block-image img{max-height:640px;object-fit:cover;object-position:50% 30%}
.jr-story figcaption,.jr-story .has-small-font-size{margin-top:12px;font-size:13px;line-height:1.6;letter-spacing:.06em;color:var(--global-palette5);font-style:normal;text-align:left}
.jr-story-columns figure.wp-block-image{margin:0}
.jr-story-columns figure.wp-block-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}

/* 2.9.73: Story layout, extras used by the rebuilt Echo Marine post: lead paragraph, quote, video embed, separators, small logo. */
.jr-story-read p.jr-lead{font-size:clamp(22px,2.2vw,28px);line-height:1.5;color:var(--global-palette3)}
.jr-story-read .wp-block-embed{margin:32px 0 0}
.jr-story-read .wp-block-embed__wrapper{position:relative;aspect-ratio:16/9}
.jr-story-read .wp-block-embed__wrapper iframe{position:absolute;inset:0;width:100%;height:100%}
.jr-story-read blockquote.wp-block-quote{border:0;margin:56px 0;padding:0;text-align:center;font-style:normal;font-family:var(--global-heading-font-family);font-size:clamp(20px,2vw,26px);line-height:1.5;color:var(--global-palette3)}
.jr-story-read blockquote.wp-block-quote p{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;text-align:center}
.jr-story-read hr.wp-block-separator{border:0;border-top:1px solid rgba(36,31,28,.14);margin:56px 0 0;height:0;opacity:1}
.jr-story-logo img{width:100%;height:auto;max-width:238px}

/* 2.9.76: tablet heroes (768-1024px) must end at 480px like the standard says; the custom .jr-hero rows overshot by 11-134px because their intro text plus padding is taller than 480. Same fix as phones: the intro stops at four lines, and padding is a little tighter. */
@media(min-width:768px) and (max-width:1024px){
.jr-hero p:not(.jr-eyebrow){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
body.transparent-header .jr-hero > .kt-row-column-wrap{padding-top:calc(var(--jr-header-h) + 24px)!important}
.jr-hero > .kt-row-column-wrap{padding-bottom:40px!important}
}
/* 2.9.77/79: portrait tablets (768-960px) are tighter still: three-line intros so Home and Commissions end at 480 too. */
@media(min-width:768px) and (max-width:960px){.jr-hero p:not(.jr-eyebrow){-webkit-line-clamp:3}body.transparent-header .jr-hero > .kt-row-column-wrap{padding-top:calc(var(--jr-header-h) + 8px)!important}}

/* 2.9.80: Kadence Blocks 3.8 lazy-applies the row's own class (kb-row-layout-id...) to a hero row after load, and the two-column grid rule hangs on that class, so the History / Echo heroes stacked (about 1300px tall) for the first 1-3 seconds. Until the class arrives, give a two-column hero its grid on tablet and desktop; once it does, Kadence's own rule takes over. */
@media(min-width:768px){.jr-hero:not([class*="kb-row-layout-id"]) > .kt-row-column-wrap.kt-has-2-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

/* 2.9.81: Home's phone hero was 572px (standard 560): its eyebrow wraps to three lines at 18px/3px. A little less space under the intro paragraph brings it back without touching the eyebrow size. */
@media(max-width:767px){.jr-hero .kt-inside-inner-col > p:not(.jr-eyebrow){margin-bottom:20px!important}}

/* 2.9.83: the Home hero row is 75/25, not 50/50. Until Kadence lazy-applies the row class (1-3 s after load), the 50/50 fallback above gave a 368px text column, a three-line H1 and a 525px hero at 768px and 1024px, then the page jumped to 480px. Same column split as the row's own Kadence rule; no Customizer setting is overridden. */
@media(min-width:768px){.jr-hero[data-kadence-lazy-class~="kb-row-layout-idjr_h3_row8"]:not([class*="kb-row-layout-id"]) > .kt-row-column-wrap.kt-has-2-columns{grid-template-columns:minmax(0,calc(75% - (var(--kb-default-row-gutter,var(--global-row-gutter-md,2rem))/2))) minmax(0,calc(25% - (var(--kb-default-row-gutter,var(--global-row-gutter-md,2rem))/2)))}}
