/*
Theme Name: JC Classic Studio Pro
Theme URI: https://thedramateacher.com/
Author: Justin Cash / ChatGPT
Description: A lightweight Classic WordPress theme with a settings-driven layout engine, design tokens, conditional layouts, hooked elements, archive controls, and granular typography/spacing options.
Version: 2.10.49
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: jc-classic-studio
Tags: classic-theme, custom-background, custom-colors, custom-menu, featured-images, threaded-comments, translation-ready, blog, education
*/

:root {
  --jc-colour-bg: #ffffff;
  --jc-colour-surface: #f7f7f7;
  --jc-colour-text: #1f2933;
  --jc-colour-muted: #64748b;
  --jc-colour-primary: #b71c1c;
  --jc-colour-secondary: #111827;
  --jc-colour-border: #e5e7eb;
  --jc-font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --jc-font-heading: Georgia, "Times New Roman", serif;
  --jc-width-content: 1120px;
  --jc-width-narrow: 760px;
  --jc-width-wide: 1360px;
  --jc-radius-card: 10px;
  --jc-shadow-card: 0 8px 24px rgba(15, 23, 42, .08);
  --jc-space-site-x: 24px;
  --jc-button-radius: 4px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--jc-site-outer-bg, var(--jc-colour-bg)); color: var(--jc-colour-text); font-family: var(--jc-font-body); font-size: var(--jc-body-font-size, 17px); line-height: var(--jc-body-line-height, 1.65); font-weight: var(--jc-body-weight, 400); font-style: var(--jc-body-style, normal); }
a { color: var(--jc-colour-primary); text-decoration-thickness: .08em; text-underline-offset: .16em; }
body.jc-link-plain a { text-decoration: none; }
body.jc-link-hover a { text-decoration: none; }
body.jc-link-hover a:hover, body.jc-link-hover a:focus { text-decoration: underline; }
body.jc-link-underline a { text-decoration: underline; }
a:hover { color: var(--jc-colour-secondary); }
img { max-width: 100%; height: auto; display: block; }
button, input, select, textarea { font: inherit; }
.skip-link { position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden; }
.skip-link:focus { left:16px; top:16px; width:auto; height:auto; z-index:100000; background:#fff; padding:10px 14px; border:2px solid var(--jc-colour-primary); }
:focus-visible { outline: 2px solid var(--jc-colour-primary); outline-offset: 3px; }

.jc-container { width: min(calc(100% - (var(--jc-space-site-x) * 2)), var(--jc-width-content)); margin-inline: auto; }
.jc-container--narrow { width: min(calc(100% - (var(--jc-space-site-x) * 2)), var(--jc-width-narrow)); }
.jc-container--wide { width: min(calc(100% - (var(--jc-space-site-x) * 2)), var(--jc-width-wide)); }
.jc-container--full { width: 100%; max-width: none; padding-inline: var(--jc-space-site-x); }

/* v1.18 container system */
.jc-container--site { width: min(calc(100% - (var(--jc-space-site-x) * 2)), var(--jc-container-site-width, 1360px)); }
.jc-container--content { width: min(calc(100% - (var(--jc-space-site-x) * 2)), var(--jc-container-content-width, 1120px)); }
.jc-container--reading { width: min(calc(100% - (var(--jc-space-site-x) * 2)), var(--jc-container-reading-width, 900px)); }
.jc-container--custom { width: min(calc(100% - (var(--jc-space-site-x) * 2)), var(--jc-width-custom, 1120px)); }
.single-post .site-main { background: var(--jc-single-bg, transparent); padding-top: var(--jc-single-content-top-space, var(--jc-main-pad-y, 38px)); padding-bottom: var(--jc-single-content-bottom-space, var(--jc-main-pad-y, 38px)); }
.page .site-main { background: var(--jc-page-bg, transparent); padding-top: var(--jc-page-content-top-space, var(--jc-main-pad-y, 38px)); padding-bottom: var(--jc-page-content-bottom-space, var(--jc-main-pad-y, 38px)); }
.single-post .entry-content > * { max-width: var(--jc-single-reading-width, var(--jc-block-content-width, 900px)); }
.page .entry-content > * { max-width: var(--jc-page-reading-width, var(--jc-block-content-width, 980px)); }
.single-post .entry-content > .alignwide,
.page .entry-content > .alignwide { max-width: var(--jc-block-wide-width, var(--jc-container-wide-width, 1280px)); }
.single-post .entry-content > .alignfull,
.page .entry-content > .alignfull { max-width: 100vw; }
.jc-entry-box-boxed { background: var(--jc-single-box-bg, var(--jc-card-bg,#fff)); border: var(--jc-single-box-border-width, 1px) solid var(--jc-single-box-border-colour, var(--jc-card-border,var(--jc-colour-border))); border-radius: var(--jc-single-box-radius, var(--jc-radius-card)); box-shadow: var(--jc-single-box-shadow, var(--jc-card-shadow, none)); padding: var(--jc-single-box-padding, clamp(20px,4vw,42px)); }
.page .jc-entry-box-boxed { background: var(--jc-page-box-bg, var(--jc-card-bg,#fff)); border-width: var(--jc-page-box-border-width, 1px); border-color: var(--jc-page-box-border-colour, var(--jc-card-border,var(--jc-colour-border))); border-radius: var(--jc-page-box-radius, var(--jc-radius-card)); box-shadow: var(--jc-page-box-shadow, var(--jc-card-shadow, none)); padding: var(--jc-page-box-padding, clamp(20px,4vw,42px)); }
.jc-entry-box-unboxed { background: transparent; }


.site-header { background: var(--jc-header-bg, #fff); border-bottom: var(--jc-header-border-width, 1px) solid var(--jc-header-border, var(--jc-colour-border)); }
.jc-header-row { display: flex; align-items: center; gap: var(--jc-header-gap, 24px); min-height: var(--jc-header-height, 82px); padding-block: var(--jc-header-pad-y, 14px); }
.jc-header-row--top, .jc-header-row--bottom { min-height: auto; font-size: .92rem; }
.jc-header-row--main { display:grid; grid-template-columns:auto minmax(320px, 1fr) auto; align-items:center; justify-content:space-between; }
.site-branding { display:flex; align-items:center; gap:14px; min-width:0; flex:0 1 auto; max-width:100%; }
.site-branding__copy { min-width:0; }
.custom-logo-link img { max-height: var(--jc-logo-height, 70px); width:auto; }
.site-title { margin: 0; font-family: var(--jc-font-site-title, var(--jc-font-heading)); font-size: var(--jc-site-title-size, 32px); line-height: 1.05; font-weight: var(--jc-site-title-weight, 700); font-style: var(--jc-site-title-style, normal); letter-spacing: var(--jc-site-title-letter-spacing, 0); text-transform: var(--jc-site-title-transform, none); }
.site-title a { color: var(--jc-colour-text); text-decoration: none; }
.site-description { margin: 4px 0 0; color: var(--jc-colour-muted); font-family: var(--jc-font-tagline, var(--jc-font-body)); font-size: var(--jc-tagline-size, .95rem); font-weight: var(--jc-tagline-weight, 400); font-style: var(--jc-tagline-style, normal); letter-spacing: var(--jc-tagline-letter-spacing, 0); text-transform: var(--jc-tagline-transform, none); }
.site-title,
.site-description { overflow-wrap:anywhere; }
.jc-header-widget { min-width:0; display: flex; justify-content: stretch; align-items: center; width:100%; }
.jc-header-widget > * { max-width:100%; }
.jc-header-widget .search-form { display:grid; grid-template-columns:minmax(0, var(--jc-header-search-input-width, 1fr)) auto; justify-content:end; gap:10px; align-items:center; width:100%; max-width:none; margin-left:0; }
.jc-header-widget .search-form label { display:block; min-width:0; width:var(--jc-header-search-input-width, 100%); max-width:100%; }
.jc-header-widget .algolia-autocomplete,
.jc-header-widget .aa-Autocomplete,
.jc-header-widget [class*="algolia-autocomplete"],
.jc-header-widget [class*="aa-Autocomplete"] { display:block; width:100%; min-width:0; }
.jc-header-widget .search-field { display:block; width:100%; min-width:0; height:var(--jc-header-search-input-height, auto); }
.jc-header-widget .search-submit,
.jc-header-widget button[type="submit"],
.jc-header-widget input[type="submit"] { width:var(--jc-header-search-button-width, auto); min-height:var(--jc-header-search-button-height, auto); padding-inline:var(--jc-header-search-button-padding, var(--jc-button-padding, 1.1em)); border-radius:var(--jc-header-search-button-radius, var(--jc-button-radius)); font-size:var(--jc-header-search-button-font-size, inherit); background:var(--jc-header-search-button-bg, var(--jc-button-bg, var(--jc-colour-primary))); color:var(--jc-header-search-button-text, var(--jc-button-text, #fff)); }
.jc-header-widget .search-submit:hover,
.jc-header-widget .search-submit:focus,
.jc-header-widget button[type="submit"]:hover,
.jc-header-widget button[type="submit"]:focus,
.jc-header-widget input[type="submit"]:hover,
.jc-header-widget input[type="submit"]:focus { background:var(--jc-header-search-button-hover-bg, var(--jc-button-hover-bg, var(--jc-colour-secondary))); color:var(--jc-header-search-button-hover-text, var(--jc-button-hover-text, #fff)); }
.site-header.jc-header-hide-search-button .jc-header-widget .search-submit,
.site-header.jc-header-hide-search-button .jc-header-widget button[type="submit"],
.site-header.jc-header-hide-search-button .jc-header-widget input[type="submit"] { display:none !important; }
.main-navigation { display:flex; align-items:center; gap:14px; position:relative; flex-wrap:wrap; }
.main-navigation ul { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:18px; }
.main-navigation a { text-decoration:none; color:var(--jc-colour-text); font-weight:600; }
.main-navigation .jc-mega-menu-proxy-link { display:none !important; }
.menu-toggle { display:none; align-items:center; gap:.72rem; border:1px solid var(--jc-button-border-colour, var(--jc-colour-border)); border-radius:999px; background:var(--jc-colour-surface); color:var(--jc-colour-text); padding:.78rem 1.05rem; font-weight:700; line-height:1; cursor:pointer; box-shadow:0 8px 24px rgba(15,23,42,.08); }
.menu-toggle:hover,
.menu-toggle:focus { background:#fff; color:var(--jc-colour-primary); }
.menu-toggle__icon { position:relative; width:1rem; height:.75rem; flex:0 0 auto; }
.menu-toggle__icon::before,
.menu-toggle__icon::after,
.menu-toggle__icon { border-top:2px solid currentColor; }
.menu-toggle__icon::before,
.menu-toggle__icon::after { content:""; position:absolute; left:0; width:100%; }
.menu-toggle__icon::before { top:.25rem; }
.menu-toggle__icon::after { top:.5rem; }
.menu-toggle[aria-expanded="true"] .menu-toggle__icon { border-top-color:transparent; }
.menu-toggle[aria-expanded="true"] .menu-toggle__icon::before { top:.36rem; transform:rotate(45deg); }
.menu-toggle[aria-expanded="true"] .menu-toggle__icon::after { top:.36rem; transform:rotate(-45deg); }
.menu-toggle__label { display:inline-block; }

.jc-announcement { background: var(--jc-announcement-bg, var(--jc-colour-secondary)); color: var(--jc-announcement-text, #fff); padding: 8px 0; font-size: .95rem; }
.jc-breadcrumbs { color: var(--jc-colour-muted); font-size: .92rem; margin: 22px auto 0; }
.jc-breadcrumbs a { color: inherit; }
.jc-breadcrumbs__separator { color: inherit; }

.site-main { padding-block: var(--jc-main-pad-y, 38px); }
.jc-layout { display:grid; grid-template-columns: minmax(0, 1fr) var(--jc-sidebar-width, 300px); gap: var(--jc-content-gap, 36px); align-items:start; }
.jc-layout--left-sidebar { grid-template-columns: var(--jc-sidebar-width, 300px) minmax(0, 1fr); }
.jc-layout--left-sidebar .content-area { order:2; }
.jc-layout--no-sidebar { display:block; }
.widget-area { border-left: 1px solid var(--jc-colour-border); padding-left: 24px; }

h1,h2,h3,h4,h5,h6 { font-family: var(--jc-font-heading); line-height: var(--jc-heading-line-height, 1.18); color: var(--jc-colour-heading, var(--jc-colour-text)); font-weight: var(--jc-heading-weight, 700); font-style: var(--jc-heading-style, normal); letter-spacing: var(--jc-heading-letter-spacing, 0); text-transform: var(--jc-text-transform-headings, none); }
h1 { font-size: var(--jc-h1-size, 42px); }
h2 { font-size: var(--jc-h2-size, 32px); }
h3 { font-size: var(--jc-h3-size, 24px); }
h4 { font-size: var(--jc-h4-size, 20px); }
h5 { font-size: var(--jc-h5-size, 18px); }
h6 { font-size: var(--jc-h6-size, 16px); }
.entry-title, .page-title { margin-top: 0; }
.entry-meta, .card-meta, .entry-footer { color: var(--jc-colour-muted); font-size: .92rem; display:flex; flex-wrap:wrap; gap:8px 14px; }
.jc-meta-category { letter-spacing:.08em; font-weight:700; }
.jc-meta-category .jc-meta-list { display:inline-flex; align-items:center; flex-wrap:wrap; gap:0; text-transform:uppercase; }
.jc-meta-category .jc-meta-link { text-transform:uppercase; }
.jc-meta-category .jc-meta-list__separator { display:inline-flex; align-items:center; margin:0 .45em; opacity:.7; }
.entry-meta .jc-meta-category { font-size:var(--jc-single-category-size, .82rem); }
.card-meta .jc-meta-category { font-size:var(--jc-card-category-size, var(--jc-card-meta-size, 14px)); }
.entry-content > *:first-child { margin-top: 0; }
.entry-content p { margin-block: var(--jc-p-margin, 0 1.15em); }
.entry-content table { width:100%; border-collapse: collapse; margin: 1.5rem 0; }
.entry-content th, .entry-content td { border:1px solid var(--jc-colour-border); padding: .65rem; }


/* Gutenberg / block plugin layout support.
   Width values are controlled in Customizer > Block Layout. */
.entry-content > * {
  max-width: var(--jc-block-content-width, 800px);
  margin-left: auto;
  margin-right: auto;
}
.entry-content > .alignwide {
  max-width: var(--jc-block-wide-width, 1200px);
}
.entry-content > .alignfull {
  max-width: 100vw;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
.entry-content > .alignleft {
  float: left;
  margin-right: 1.5rem;
  margin-left: max(0px, calc((100% - var(--jc-block-content-width, 800px)) / 2));
}
.entry-content > .alignright {
  float: right;
  margin-left: 1.5rem;
  margin-right: max(0px, calc((100% - var(--jc-block-content-width, 800px)) / 2));
}
.entry-content > .aligncenter {
  margin-left: auto;
  margin-right: auto;
}
body.jc-block-full-breakout-off .entry-content > .alignfull {
  max-width: var(--jc-block-wide-width, 1200px);
  width: auto;
  margin-left: auto;
  margin-right: auto;
}

.jc-button, .button, input[type="submit"], button:not(.menu-toggle) { display:inline-block; border:0; border-radius:var(--jc-button-radius); background:var(--jc-button-bg, var(--jc-colour-primary)); color:var(--jc-button-text, #fff); padding:var(--jc-button-padding, .7em 1.1em); font-weight:700; text-decoration:none; cursor:pointer; }
.jc-button:hover, .button:hover, input[type="submit"]:hover { background:var(--jc-button-hover-bg, var(--jc-colour-secondary)); color:#fff; }
input[type="search"], input[type="text"], input[type="email"], textarea, select { border:1px solid var(--jc-form-border, var(--jc-colour-border)); border-radius:var(--jc-form-radius, 4px); padding:.68em .78em; background:var(--jc-form-bg, #fff); color:var(--jc-colour-text); }
.search-form { display:flex; gap:8px; align-items:center; }
.search-field { min-width: min(360px, 65vw); }

.jc-grid { display:grid; grid-template-columns: repeat(var(--jc-archive-cols, 3), minmax(0, 1fr)); gap: var(--jc-card-gap, 26px); }
.jc-card { background:var(--jc-card-bg, #fff); border:1px solid var(--jc-card-border, var(--jc-colour-border)); border-radius:var(--jc-radius-card); overflow:hidden; box-shadow:var(--jc-card-shadow, none); }
.jc-card__inner { padding: var(--jc-card-padding, 18px); }
.jc-card__thumb img { aspect-ratio: var(--jc-card-image-ratio, 16 / 9); object-fit:cover; width:100%; }
.jc-card__title { margin:.1rem 0 .55rem; font-size:var(--jc-card-title-size, 22px); }
.jc-card__title a { color:var(--jc-colour-heading, var(--jc-colour-text)); text-decoration:none; }
.jc-card__excerpt { color: var(--jc-colour-text); }
.jc-read-more { font-weight:700; }

.jc-related { border-top: 1px solid var(--jc-colour-border); margin-top: 36px; padding-top: 28px; }
.jc-toc { border:1px solid var(--jc-colour-border); border-radius: var(--jc-radius-card); padding: 16px 18px; margin: 1.5rem 0; background: var(--jc-colour-surface); }
.jc-toc__title { font-weight:700; margin-bottom:8px; }
.jc-toc ul { margin:0; padding-left: 1.2rem; }

.site-footer { background: var(--jc-footer-bg, #111827); color: var(--jc-footer-text, #fff); margin-top: 40px; }
.site-footer a { color: inherit; }
.jc-footer-row { padding-block: var(--jc-footer-pad-y, 28px); border-top: 1px solid rgba(255,255,255,.12); }
.jc-footer-row--top { margin-block: var(--jc-footer-top-margin-top, 0) var(--jc-footer-top-margin-bottom, 0); padding-block: var(--jc-footer-top-padding-top, var(--jc-footer-pad-y, 28px)) var(--jc-footer-top-padding-bottom, var(--jc-footer-pad-y, 28px)); background: var(--jc-footer-top-bg, transparent); }
.jc-footer-row--widgets { margin-block: var(--jc-footer-widgets-margin-top, 0) var(--jc-footer-widgets-margin-bottom, 0); padding-block: var(--jc-footer-widgets-padding-top, var(--jc-footer-pad-y, 28px)) var(--jc-footer-widgets-padding-bottom, var(--jc-footer-pad-y, 28px)); }
.jc-footer-bottom { margin-block: var(--jc-footer-bottom-margin-top, 0) var(--jc-footer-bottom-margin-bottom, 0); padding-block: var(--jc-footer-bottom-padding-top, var(--jc-footer-pad-y, 28px)) var(--jc-footer-bottom-padding-bottom, var(--jc-footer-pad-y, 28px)); background: var(--jc-footer-bottom-bg, transparent); }
.jc-footer-widgets { display:grid; grid-template-columns: repeat(var(--jc-footer-cols, 4), minmax(0, 1fr)); gap: var(--jc-footer-gap, 28px); }
.jc-footer-bottom { font-size: .92rem; color: rgba(255,255,255,.75); }
.jc-footer-credit { margin-block: var(--jc-footer-credit-margin-top, 0) var(--jc-footer-credit-margin-bottom, 0); padding-block: var(--jc-footer-credit-padding-top, 0) var(--jc-footer-credit-padding-bottom, 0); font-size: var(--jc-footer-credit-font-size, 15px); text-align: var(--jc-footer-credit-alignment, left); color: var(--jc-footer-credit-colour, currentColor); background: var(--jc-footer-credit-bg, transparent); border: var(--jc-footer-credit-border-width, 0) solid var(--jc-footer-credit-border-colour, transparent); border-radius: var(--jc-footer-credit-radius, 0); }
.jc-footer-credit p { margin-top:0; }
.jc-footer-credit p:last-child { margin-bottom:0; }

.jc-back-to-top { position:fixed; right:18px; bottom:18px; z-index:100; display:none; padding:10px 13px; border-radius:999px; }
.jc-back-to-top.is-visible { display:block; }
.jc-social-share { display:flex; flex-wrap:wrap; gap:10px; margin: 24px 0; }

@media (max-width: 900px) {
  :root { --jc-archive-cols: var(--jc-archive-cols-tablet, 2); }
  .jc-layout, .jc-layout--left-sidebar { display:block; }
  .widget-area { border-left:0; padding-left:0; margin-top: 32px; }
  .jc-footer-widgets { grid-template-columns: repeat(var(--jc-footer-cols-tablet, 2), minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  :root { --jc-archive-cols: var(--jc-archive-cols-mobile, 1); --jc-space-site-x: 16px; }
  .jc-footer-widgets { grid-template-columns: repeat(var(--jc-footer-cols-mobile, 1), minmax(0, 1fr)); }
  .search-form { align-items: stretch; }
  .search-field { min-width: 0; width:100%; }
}

@media print {
  .site-header, .site-footer, .jc-breadcrumbs, .jc-related, .jc-social-share, .jc-back-to-top { display:none !important; }
  body { font-size: 12pt; color:#000; background:#fff; }
  a::after { content: " (" attr(href) ")"; font-size: 90%; }
}


/* Stage 2: expanded archive, cards, search, and mobile controls */
body.jc-transparent-header .site-header { background: transparent; position: absolute; inset-inline: 0; z-index: 50; }
.jc-header-row--top { min-height: var(--jc-header-top-height, auto); background: var(--jc-header-top-bg, transparent); }
.jc-header-row--bottom { min-height: var(--jc-header-bottom-height, auto); background: var(--jc-header-bottom-bg, transparent); }
.jc-header-row--mobile { display:none; }
.site-branding--center { justify-content:center; text-align:center; }
.jc-header-widget .search-form.jc-search-pill .search-field { border-radius:999px; }
.jc-header-widget .search-form.jc-search-underlined .search-field { border-radius:0; border-width:0 0 2px; background:transparent; }
.jc-header-widget .algolia-autocomplete a,
.jc-header-widget .algolia-autocomplete a:hover,
.jc-header-widget .algolia-autocomplete a:focus,
.jc-header-widget .aa-Autocomplete a,
.jc-header-widget .aa-Autocomplete a:hover,
.jc-header-widget .aa-Autocomplete a:focus,
.jc-header-widget .aa-ItemLink,
.jc-header-widget .aa-ItemLink:hover,
.jc-header-widget .aa-ItemLink:focus,
.jc-header-widget [class*="algolia"] a,
.jc-header-widget [class*="algolia"] a:hover,
.jc-header-widget [class*="algolia"] a:focus,
.jc-header-widget [class*="autocomplete"] a,
.jc-header-widget [class*="autocomplete"] a:hover,
.jc-header-widget [class*="autocomplete"] a:focus { text-decoration:none !important; }
.algolia-autocomplete a,
.algolia-autocomplete a:hover,
.algolia-autocomplete a:focus,
.aa-Autocomplete a,
.aa-Autocomplete a:hover,
.aa-Autocomplete a:focus,
.aa-Panel a,
.aa-Panel a:hover,
.aa-Panel a:focus,
.aa-ItemLink,
.aa-ItemLink:hover,
.aa-ItemLink:focus,
[class*="algolia-autocomplete"] a,
[class*="algolia-autocomplete"] a:hover,
[class*="algolia-autocomplete"] a:focus,
[class*="aa-Panel"] a,
[class*="aa-Panel"] a:hover,
[class*="aa-Panel"] a:focus { text-decoration:none !important; }
.aa-ItemContent,
.aa-ItemContent a,
.aa-ItemContent mark,
.aa-ItemTitle,
.aa-ItemDescription,
.aa-ItemContentTitle,
.aa-ItemContentDescription,
.algolia-autocomplete .algolia-docsearch-suggestion--title,
.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column-text,
.algolia-autocomplete .algolia-docsearch-suggestion--text,
.algolia-autocomplete .algolia-docsearch-suggestion--highlight,
.algolia-autocomplete .algolia-docsearch-suggestion--title * { text-decoration:none !important; }
.aa-Panel,
.algolia-autocomplete .aa-dropdown-menu,
.algolia-autocomplete .ds-dropdown-menu { border:1px solid var(--jc-colour-border); border-radius:18px; background:rgba(255,255,255,.98); box-shadow:0 28px 60px rgba(15,23,42,.16); overflow:hidden; }
.aa-Item,
.algolia-autocomplete .ds-suggestion { border-bottom:1px solid rgba(15,23,42,.08); }
.aa-Item:last-child,
.algolia-autocomplete .ds-suggestion:last-child { border-bottom:0; }
.aa-ItemLink,
.algolia-autocomplete .ds-suggestion a { color:var(--jc-colour-text) !important; }
.aa-ItemLink:hover,
.aa-ItemLink:focus,
.algolia-autocomplete .ds-suggestion a:hover,
.algolia-autocomplete .ds-suggestion a:focus { color:var(--jc-colour-primary) !important; }
.main-navigation.has-mega-menu { justify-content:flex-end; justify-self:end; }
.jc-mega-menu { position:relative; }
.jc-mega-menu__toggle { display:inline-flex; align-items:center; justify-content:center; width:var(--jc-header-explore-button-width, auto); min-height:var(--jc-header-explore-button-height, auto); border:0; border-radius:var(--jc-header-explore-button-radius, var(--jc-button-radius)); background:var(--jc-header-explore-button-bg, var(--jc-button-bg, var(--jc-colour-primary))); color:var(--jc-header-explore-button-text, var(--jc-button-text, #fff)); padding-inline:var(--jc-header-explore-button-padding, var(--jc-button-padding, 1.1em)); font-size:var(--jc-header-explore-button-font-size, inherit); font-weight:700; text-decoration:none; cursor:pointer; box-shadow:none; }
.jc-mega-menu__toggle:hover,
.jc-mega-menu__toggle:focus { background:var(--jc-header-explore-button-hover-bg, var(--jc-button-hover-bg, var(--jc-colour-secondary))); color:var(--jc-header-explore-button-hover-text, var(--jc-button-hover-text, #fff)); }
.jc-mega-menu__panel { position:absolute; right:0; top:calc(100% + 14px); width:min(1080px, calc(100vw - 32px)); padding:24px; border:1px solid var(--jc-colour-border); border-radius:22px; background:linear-gradient(180deg, #ffffff 0%, #fbf7f2 100%); box-shadow:0 28px 80px rgba(15,23,42,.18); z-index:90; }
.jc-mega-menu__intro { max-width:56rem; margin-bottom:18px; }
.jc-mega-menu__eyebrow, .jc-search-discovery__eyebrow { margin:0 0 .55rem; color:var(--jc-colour-primary); font-size:.8rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.jc-mega-menu__title { margin:0 0 .35rem; font-size:clamp(1.8rem, 3vw, 2.5rem); }
.jc-mega-menu__text { margin:0; color:var(--jc-colour-muted); max-width:48rem; }
.jc-mega-menu__layout { display:grid; grid-template-columns:minmax(0, 1.7fr) minmax(260px, .95fr); gap:22px; }
.jc-mega-menu__layout--solo { grid-template-columns:minmax(0, 1fr); }
.jc-mega-menu__layout--solo .jc-route-grid--mega { grid-template-columns:repeat(3, minmax(0, 1fr)); }
.jc-mega-menu__routes, .jc-mega-menu__aside, .jc-search-discovery__browse, .jc-search-no-results__block { border:1px solid rgba(15,23,42,.08); border-radius:18px; background:rgba(255,255,255,.86); padding:18px; }
.jc-mega-menu__aside { display:grid; gap:18px; align-content:start; }
.jc-mega-menu__routes h3, .jc-mega-menu__block h3, .jc-search-discovery__categories h3, .jc-search-no-results__block h3 { margin:0 0 .85rem; font-size:1rem; }
.jc-mega-menu__empty { margin:0; color:var(--jc-colour-muted); }
.jc-route-grid { display:grid; gap:14px; }
.jc-route-grid--mega { grid-template-columns:repeat(2, minmax(0, 1fr)); }
.jc-route-grid--search { grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); }
.jc-route-card { display:flex; flex-direction:column; gap:.6rem; min-height:100%; padding:16px 18px; border:1px solid rgba(15,23,42,.08); border-radius:16px; background:radial-gradient(circle at top right, rgba(183,28,28,.08), transparent 38%), linear-gradient(180deg, #ffffff 0%, #f8f4ee 100%); color:var(--jc-colour-text); text-decoration:none !important; box-shadow:0 12px 30px rgba(15,23,42,.06); transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.jc-route-card:hover, .jc-route-card:focus { transform:translateY(-2px); border-color:rgba(183,28,28,.26); box-shadow:0 18px 38px rgba(15,23,42,.12); }
.jc-route-card__title { font-size:1.05rem; font-weight:800; text-decoration:none !important; }
.jc-route-card__description { color:var(--jc-colour-muted); font-size:.95rem; line-height:1.5; }
.jc-route-card__cta { margin-top:auto; color:var(--jc-colour-primary); font-size:.9rem; font-weight:700; text-decoration:none !important; }
.jc-taxonomy-pills { display:flex; flex-wrap:wrap; gap:10px; }
.jc-taxonomy-pill { display:inline-flex; align-items:center; padding:.55rem .85rem; border:1px solid var(--jc-colour-border); border-radius:999px; background:var(--jc-colour-surface); color:var(--jc-colour-text); text-decoration:none; font-weight:600; }
.jc-taxonomy-pill:hover, .jc-taxonomy-pill:focus { border-color:var(--jc-colour-primary); color:var(--jc-colour-primary); }
.jc-mega-menu__recent { display:grid; gap:12px; }
.jc-mega-menu__recent-item { display:grid; grid-template-columns:64px minmax(0, 1fr); gap:12px; align-items:center; color:var(--jc-colour-text); text-decoration:none; }
.jc-mega-menu__recent-thumb { width:64px; height:64px; border-radius:12px; object-fit:cover; }
.jc-mega-menu__recent-copy { display:grid; gap:4px; }
.jc-mega-menu__recent-title { font-weight:700; line-height:1.35; }
.jc-mega-menu__recent-meta { color:var(--jc-colour-muted); font-size:.85rem; }
.jc-search-page { display:grid; gap:22px; }
body.search, .jc-search-results-main { background:var(--jc-search-results-bg, var(--jc-colour-bg, #fff)); }
.jc-search-results-main { padding-top:0; padding-bottom:0; }
.jc-search-page--algolia { align-items:start; margin-top:var(--jc-search-results-top-margin, 0); padding-top:var(--jc-search-results-top-padding, 18px); padding-bottom:var(--jc-search-results-bottom-padding, 38px); background:var(--jc-search-results-bg, var(--jc-colour-bg, #fff)); }
.jc-search-discovery { display:grid; gap:18px; padding:24px; border:1px solid var(--jc-colour-border); border-radius:24px; background:radial-gradient(circle at top right, rgba(183,28,28,.08), transparent 28%), linear-gradient(180deg, #ffffff 0%, #f9f6f1 100%); }
.jc-search-discovery__hero .page-title { margin-bottom:.3rem; }
.jc-search-discovery__summary { margin:0; color:var(--jc-colour-muted); font-size:1rem; }
.jc-search-discovery__form .search-form { flex-wrap:wrap; }
.jc-search-discovery__browse { display:grid; gap:16px; }
.jc-search-discovery__browse-copy h2 { margin:0 0 .35rem; font-size:1.2rem; }
.jc-search-discovery__browse-copy p { margin:0; color:var(--jc-colour-muted); }
.jc-algolia-shell { display:grid; gap:var(--jc-search-results-shell-gap, 18px); width:min(100%, var(--jc-container-content-width, 1120px)); margin-inline:auto; }
.jc-algolia-shell__intro,.jc-algolia-shell__main { min-width:0; }
.jc-algolia-shell__intro { padding:0 2px; }
.jc-algolia-shell__intro .page-title { margin:0 0 .45rem; }
.jc-algolia-shell__stats { color:var(--jc-colour-muted); font-size:1rem; }
.jc-search-page--algolia #ais-wrapper.jc-algolia-shell,
.jc-search-page--algolia #ais-main.jc-algolia-shell__main { display:grid !important; grid-template-columns:minmax(0, 1fr) !important; width:min(100%, var(--jc-container-content-width, 1120px)) !important; max-width:var(--jc-container-content-width, 1120px) !important; margin-inline:auto !important; }
.jc-search-page--algolia .jc-algolia-shell__intro,
.jc-search-page--algolia .jc-algolia-shell__main,
.jc-search-page--algolia #algolia-hits,
.jc-search-page--algolia #algolia-pagination,
.jc-search-page--algolia #algolia-stats { grid-column:1 / -1 !important; min-width:0; width:auto !important; max-width:none !important; }
.jc-search-page--algolia #algolia-stats,
.jc-search-page--algolia .jc-algolia-shell__stats,
.jc-search-page--algolia .ais-Stats,
.jc-search-page--algolia .ais-Stats-text { position:static !important; inset:auto !important; float:none !important; clear:both !important; margin:0 !important; padding:0 !important; text-align:left !important; }
.jc-algolia-shell__search { display:grid; grid-template-columns:minmax(180px, var(--jc-search-results-input-max-width, 380px)) auto; gap:18px; align-items:center; justify-content:space-between; padding:var(--jc-search-results-search-panel-padding, 14px); border:var(--jc-search-results-search-panel-border-width, 1px) solid var(--jc-search-results-panel-border-colour, var(--jc-colour-border)); border-radius:var(--jc-search-results-search-panel-radius, 18px); background:var(--jc-search-results-panel-bg, #fff); box-shadow:var(--jc-search-results-panel-shadow, 0 4px 14px rgba(15,23,42,.08)); margin-bottom:var(--jc-search-results-shell-gap, 18px); }
.jc-algolia-shell__search #algolia-search-box { min-width:0; width:100% !important; max-width:var(--jc-search-results-input-max-width, 380px) !important; margin:0 !important; grid-column:auto !important; display:block !important; }
.jc-algolia-shell__search #algolia-search-box input[type="search"] { width:100%; min-height:var(--jc-search-results-input-height, 46px); padding:.7rem .9rem; border:1px solid var(--jc-search-results-input-border-colour, var(--jc-colour-border)); border-radius:var(--jc-search-results-input-radius, 12px); background:var(--jc-search-results-input-bg, #fff); color:var(--jc-colour-text); font:inherit; }
.jc-algolia-shell__powered-by { justify-self:end; align-self:center; overflow:visible !important; padding-inline-end:14px; box-sizing:border-box; }
.jc-algolia-shell__powered-by .ais-PoweredBy,
.jc-algolia-shell__powered-by .ais-PoweredBy-text,
.jc-algolia-shell__powered-by .ais-PoweredBy-link { display:inline-flex; align-items:center; gap:10px; white-space:nowrap; max-width:none !important; overflow:visible !important; }
.jc-algolia-shell__powered-by img,
.jc-algolia-shell__powered-by svg { display:block; max-width:var(--jc-search-results-powered-by-logo-width, 112px); height:auto; }
.jc-algolia-hit { display:grid; grid-template-columns:var(--jc-search-results-card-thumbnail-width, 140px) minmax(0,1fr); gap:var(--jc-search-results-card-gap, 18px); padding:var(--jc-search-results-card-padding, 18px); border:1px solid rgba(15,23,42,.08); border-radius:var(--jc-search-results-card-radius, 22px); background:var(--jc-search-results-card-bg, #fff); box-shadow:var(--jc-search-results-card-shadow, 0 16px 34px rgba(15,23,42,.06)); margin-bottom:var(--jc-search-results-shell-gap, 18px); }
.jc-algolia-hit--no-thumb { grid-template-columns:1fr; }
.jc-algolia-hit__thumb img { display:block; width:100%; height:auto; border-radius:var(--jc-search-results-card-thumbnail-radius, 12px); object-fit:cover; }
.jc-algolia-hit__title { margin:0 0 .7rem; font-size:var(--jc-card-title-size, 22px); }
.jc-algolia-hit__title a { color:var(--jc-card-link-colour, var(--jc-link-colour)); text-decoration:none !important; }
.jc-algolia-hit__title a:hover,.jc-algolia-hit__title a:focus { color:var(--jc-search-results-card-title-hover-colour, var(--jc-card-link-hover-colour, var(--jc-link-hover-colour))); }
.jc-algolia-hit__excerpt,.jc-algolia-hit__excerpt p { color:var(--jc-colour-text); margin:0; }
.jc-algolia-shell #algolia-pagination { margin-top:24px; }
.jc-algolia-shell .ais-Pagination-list { display:flex; flex-wrap:wrap; gap:.45rem; padding:0; list-style:none; }
.jc-algolia-shell .ais-Pagination-link,
.jc-algolia-shell .ais-RefinementList-item a,
.jc-algolia-shell .ais-Menu-link,
.jc-algolia-shell .ais-HierarchicalMenu-link { text-decoration:none !important; }
.jc-algolia-shell .ais-Pagination-item--selected .ais-Pagination-link { color:var(--jc-colour-secondary); font-weight:700; }
.search .jc-search-page,
.search .jc-search-page > * { min-width:0; }
.search .jc-search-page > *:not(.jc-search-discovery):not(.jc-search-no-results) { width:min(100%, var(--jc-container-content-width, 1120px)) !important; max-width:var(--jc-container-content-width, 1120px) !important; margin-inline:auto !important; }
.search .jc-search-page--algolia [id*="algolia"],
.search .jc-search-page--algolia [id*="instantsearch"],
.search .jc-search-page--algolia [class*="instantsearch"],
.search .jc-search-page--algolia [class*="algolia-search"] { gap:inherit; }
.search .content-area.jc-search-page > .algolia-search,
.search .content-area.jc-search-page > .ais-InstantSearch,
.search .content-area.jc-search-page > .ais-InstantSearch__root,
.search .content-area.jc-search-page > [class*="algolia-search"] { width:min(100%, var(--jc-container-content-width, 1120px)); margin-inline:auto; }
.search .algolia-search,
.search .ais-InstantSearch,
.search .ais-InstantSearch__root,
.search [class*="algolia-search"],
.search [id*="algolia"],
.search [id*="instantsearch"],
.search [class*="instantsearch"] { display:grid; gap:24px; max-width:var(--jc-container-content-width, 1120px); margin-inline:auto; width:100%; }
.search .algolia-search-header,
.search .algolia-search-box,
.search .ais-SearchBox,
.search [class*="algolia-search"] > form,
.search [class*="algolia-search"] [class*="search-header"],
.search [class*="instantsearch"] > form,
.search [class*="instantsearch"] [class*="search-header"],
.search [id*="instantsearch"] > form,
.search [id*="instantsearch"] [class*="search-header"] { padding:22px 24px; border:1px solid var(--jc-colour-border); border-radius:22px; background:linear-gradient(180deg,#ffffff 0%,#f9f6f1 100%); box-shadow:0 18px 44px rgba(15,23,42,.08); }
.search .algolia-search input[type="search"],
.search .algolia-search input[type="text"],
.search .ais-SearchBox-input,
.search [class*="algolia-search"] input[type="search"],
.search [class*="algolia-search"] input[type="text"],
.search [class*="instantsearch"] input[type="search"],
.search [class*="instantsearch"] input[type="text"],
.search [id*="instantsearch"] input[type="search"],
.search [id*="instantsearch"] input[type="text"] { width:100%; min-height:54px; padding:.85rem 1rem; border:1px solid var(--jc-colour-border); border-radius:16px; background:#fff; color:var(--jc-colour-text); font:inherit; }
.search .algolia-search button,
.search .ais-SearchBox-submit,
.search .ais-SearchBox-reset,
.search [class*="algolia-search"] button,
.search [class*="instantsearch"] button,
.search [id*="instantsearch"] button { border-radius:14px; }
.search .algolia-search .ais-Hits-list,
.search .algolia-search .ais-Hits,
.search .algolia-search-results,
.search [class*="algolia-search"] [class*="hits"],
.search [class*="instantsearch"] [class*="hits"],
.search [id*="instantsearch"] [class*="hits"] { display:grid; gap:18px; }
.search .algolia-search .ais-Hits-item,
.search .algolia-search .ais-Hits-hit,
.search .algolia-search .hit,
.search .algolia-search-post,
.search [class*="algolia-search"] [class*="hit"],
.search [class*="instantsearch"] [class*="hit"],
.search [id*="instantsearch"] [class*="hit"] { margin:0; padding:20px; border:1px solid rgba(15,23,42,.08); border-radius:22px; background:#fff; box-shadow:0 16px 34px rgba(15,23,42,.06); }
.search .algolia-search .ais-Hits-item a,
.search .algolia-search .ais-Hits-hit a,
.search .algolia-search .hit a,
.search .algolia-search-post a,
.search [class*="algolia-search"] [class*="hit"] a,
.search [class*="instantsearch"] [class*="hit"] a,
.search [id*="instantsearch"] [class*="hit"] a { text-decoration:none !important; }
.search .algolia-search .algolia-search-sidebar,
.search .algolia-search .ais-Panel,
.search .algolia-search [class*="facet"],
.search [class*="algolia-search"] [class*="sidebar"],
.search [class*="algolia-search"] [class*="facet"],
.search [class*="instantsearch"] [class*="sidebar"],
.search [class*="instantsearch"] [class*="facet"],
.search [id*="instantsearch"] [class*="sidebar"],
.search [id*="instantsearch"] [class*="facet"] { padding:18px 20px; border:1px solid rgba(15,23,42,.08); border-radius:20px; background:rgba(255,255,255,.92); box-shadow:0 14px 30px rgba(15,23,42,.05); }
.search .algolia-search .algolia-search-sidebar a,
.search .algolia-search .ais-Panel a,
.search .algolia-search [class*="facet"] a,
.search [class*="algolia-search"] [class*="sidebar"] a,
.search [class*="algolia-search"] [class*="facet"] a,
.search [class*="instantsearch"] [class*="sidebar"] a,
.search [class*="instantsearch"] [class*="facet"] a,
.search [id*="instantsearch"] [class*="sidebar"] a,
.search [id*="instantsearch"] [class*="facet"] a { text-decoration:none !important; }
@media (min-width: 981px) {
  .search .algolia-search,
  .search .ais-InstantSearch,
  .search .ais-InstantSearch__root,
  .search [class*="algolia-search"],
  .search [class*="instantsearch"],
  .search [id*="instantsearch"] { grid-template-columns:minmax(0, 1fr) minmax(240px, 280px); align-items:start; column-gap:28px; }
  .search .algolia-search-header,
  .search .algolia-search-box,
  .search .ais-SearchBox,
  .search [class*="algolia-search"] > form,
  .search [class*="algolia-search"] [class*="search-header"],
  .search [class*="instantsearch"] > form,
  .search [class*="instantsearch"] [class*="search-header"],
  .search [id*="instantsearch"] > form,
  .search [id*="instantsearch"] [class*="search-header"] { grid-column:1 / -1; }
  .search .algolia-search .ais-Hits,
  .search .algolia-search .ais-Hits-list,
  .search .algolia-search-results,
  .search [class*="algolia-search"] [class*="hits"],
  .search [class*="instantsearch"] [class*="hits"],
  .search [id*="instantsearch"] [class*="hits"] { grid-column:1; }
  .search .algolia-search .algolia-search-sidebar,
  .search .algolia-search .ais-Panel,
  .search .algolia-search [class*="facet"],
  .search [class*="algolia-search"] [class*="sidebar"],
  .search [class*="algolia-search"] [class*="facet"],
  .search [class*="instantsearch"] [class*="sidebar"],
  .search [class*="instantsearch"] [class*="facet"],
  .search [id*="instantsearch"] [class*="sidebar"],
  .search [id*="instantsearch"] [class*="facet"] { grid-column:2; align-self:start; position:sticky; top:24px; }
  .search .jc-search-page--algolia #ais-wrapper.jc-algolia-shell,
  .search .jc-search-page--algolia #ais-main.jc-algolia-shell__main { grid-template-columns:minmax(0, 1fr) !important; }
}
@media (max-width: 980px) {
  .jc-algolia-shell__search { grid-template-columns:1fr; }
  .jc-algolia-shell__search #algolia-powered-by { justify-self:start; }
  .search .algolia-search .ais-Hits,
  .search .algolia-search .ais-Hits-list,
  .search .algolia-search-results,
  .search .algolia-search,
  .search .ais-InstantSearch,
  .search .ais-InstantSearch__root,
  .search [class*="algolia-search"],
  .search [class*="instantsearch"],
  .search [id*="instantsearch"] { grid-template-columns:1fr; }
  .search .algolia-search .algolia-search-sidebar,
  .search .algolia-search .ais-Panel,
  .search .algolia-search [class*="facet"],
  .search [class*="algolia-search"] [class*="sidebar"],
  .search [class*="algolia-search"] [class*="facet"],
  .search [class*="instantsearch"] [class*="sidebar"],
  .search [class*="instantsearch"] [class*="facet"],
  .search [id*="instantsearch"] [class*="sidebar"],
  .search [id*="instantsearch"] [class*="facet"] { position:static; }
}
@media (max-width: 700px) {
  .jc-algolia-hit { grid-template-columns:1fr; }
}
.jc-search-page--algolia .jc-algolia-shell__search #algolia-search-box,
.jc-search-page--algolia .jc-algolia-shell__search #algolia-powered-by { grid-column:auto !important; width:auto !important; max-width:none !important; margin:0 !important; }
.jc-search-page--algolia #algolia-powered-by { display:block !important; }
.jc-search-page--algolia .ais-Hits-list { display:grid; gap:0; padding:0; margin:0; list-style:none; }
.jc-search-page--algolia .ais-Hits-item { padding:0; margin:0; border:0; box-shadow:none; background:transparent; }
.jc-search-page--algolia .jc-search-highlight,
.jc-search-page--algolia em,
.jc-search-page--algolia mark,
.jc-search-page--algolia .ais-Highlight-highlighted,
.jc-search-page--algolia .ais-Snippet-highlighted { background:var(--jc-search-results-highlight-bg, #fff7b2) !important; color:var(--jc-search-results-highlight-colour, var(--jc-colour-text)) !important; font-style:normal; box-decoration-break:clone; -webkit-box-decoration-break:clone; }
.jc-no-results { padding:24px; border:1px solid var(--jc-colour-border); border-radius:22px; background:var(--jc-colour-surface); }
.jc-search-no-results { display:grid; gap:18px; margin-top:18px; }
.jc-grid--list { grid-template-columns: 1fr; }
.jc-grid--list .jc-card { display:grid; grid-template-columns:minmax(160px, 32%) 1fr; }
.jc-grid--list .jc-card__thumb img { height:100%; }
.jc-grid--masonry { columns: var(--jc-archive-cols, 3); display:block; }
.jc-grid--masonry .jc-card { break-inside:avoid; margin:0 0 var(--jc-card-gap, 26px); }
.jc-card--minimal { border:0; border-radius:0; box-shadow:none; background:transparent; }
.jc-card--bordered { box-shadow:none; border-width:2px; }
.jc-card--shadow { border:0; box-shadow:0 10px 30px rgba(15,23,42,.12); }
.jc-card--compact .jc-card__inner { padding: calc(var(--jc-card-padding, 18px) * .7); }
.jc-card--featured { grid-column: span var(--jc-featured-card-span, 2); }
.jc-card:hover { transform: translateY(var(--jc-card-hover-lift, 0)); transition: transform .18s ease, box-shadow .18s ease; }
.jc-archive-hero { margin-bottom: var(--jc-archive-hero-gap, 28px); padding: var(--jc-archive-hero-padding, 28px); background: var(--jc-archive-hero-bg, var(--jc-colour-surface)); border-radius: var(--jc-archive-hero-radius, var(--jc-radius-card)); }
.jc-archive-hero .page-title { margin-bottom:.25em; }
.jc-term-accent { border-top: 5px solid var(--jc-term-colour, var(--jc-colour-primary)); }
.jc-pagination--loadmore .navigation.pagination { display:none; }
.jc-reading-tools { display:flex; flex-wrap:wrap; gap:12px; color:var(--jc-colour-muted); font-size:.92rem; margin-bottom:1rem; }
.jc-author-box { border:1px solid var(--jc-colour-border); border-radius:var(--jc-radius-card); padding:18px; display:flex; gap:16px; margin:32px 0; }
.jc-author-box .avatar { border-radius:999px; }
.jc-entry-nav { display:grid; grid-template-columns:1fr 1fr; gap:var(--jc-post-nav-gap,16px); margin-top:var(--jc-post-nav-margin-top,32px); color:var(--jc-post-nav-text-colour,var(--jc-colour-text)); }
.jc-entry-nav > div { min-width:0; }
.jc-entry-nav__label { display:block; margin:0 0 6px; font-size:.78rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--jc-colour-muted); }
.jc-entry-nav a { display:block; color:var(--jc-post-nav-link-colour,var(--jc-colour-text)); border:var(--jc-post-nav-border-width,1px) solid var(--jc-post-nav-border-colour,var(--jc-colour-border)); background:var(--jc-post-nav-bg,var(--jc-colour-surface)); padding:var(--jc-post-nav-padding,16px); border-radius:var(--jc-post-nav-radius,var(--jc-radius-card)); box-shadow:var(--jc-post-nav-shadow,none); text-decoration:none; }
.jc-entry-nav a:hover,.jc-entry-nav a:focus { color:var(--jc-post-nav-link-hover-colour,var(--jc-colour-primary)); }
.jc-entry-nav--minimal a { border:0; background:transparent; box-shadow:none; padding:0; border-radius:0; }
.jc-entry-nav--separated { border-top:var(--jc-post-nav-border-width,1px) solid var(--jc-post-nav-border-colour,var(--jc-colour-border)); border-bottom:var(--jc-post-nav-border-width,1px) solid var(--jc-post-nav-border-colour,var(--jc-colour-border)); padding:var(--jc-post-nav-padding,16px) 0; }
.jc-entry-nav--separated a { border:0; background:transparent; box-shadow:none; padding:0; border-radius:0; }
.jc-entry-nav .nav-next { text-align:right; }
.jc-ad-slot { margin: var(--jc-ad-slot-margin, 28px 0); text-align:center; }
.jc-mode-dark { --jc-colour-bg:#111827; --jc-colour-surface:#1f2937; --jc-colour-text:#f9fafb; --jc-colour-heading:#fff; --jc-colour-border:#374151; --jc-colour-muted:#cbd5e1; }
@media (max-width:900px){ .jc-grid--masonry{columns:var(--jc-archive-cols-tablet,2);} .jc-grid--list .jc-card{grid-template-columns:1fr;} .jc-header-row--mobile{display:flex;} .jc-header-mobile-hide{display:none!important;} .jc-mega-menu__layout,.jc-mega-menu__layout--solo{grid-template-columns:1fr}.jc-route-grid--mega,.jc-mega-menu__layout--solo .jc-route-grid--mega{grid-template-columns:1fr} }
@media (max-width:600px){ .jc-grid--masonry{columns:var(--jc-archive-cols-mobile,1);} .jc-card--featured{grid-column:auto;} .jc-entry-nav{grid-template-columns:1fr;} .jc-author-box{display:block;} .jc-search-discovery,.jc-no-results,.jc-mega-menu__panel{padding:18px}.jc-mega-menu__recent-item{grid-template-columns:56px minmax(0,1fr)} }

/* Stage 3 refinements */
.jc-hooked-element{margin-block:var(--jc-content-gap,24px)}
.jc-device-targeted{display:none!important}
@media (min-width:1025px){.jc-device-targeted.jc-show-desktop{display:block!important}}
@media (min-width:701px) and (max-width:1024px){.jc-device-targeted.jc-show-tablet{display:block!important}}
@media (max-width:700px){.jc-device-targeted.jc-show-mobile{display:block!important}}
.jc-device-desktop,.jc-device-mobile{display:block}
@media (max-width:900px){.jc-device-desktop{display:none!important}}
@media (min-width:901px){.jc-device-mobile{display:none!important}}
.jc-ad-slot{margin:1.5rem 0;padding:1rem;border:1px dashed var(--jc-colour-border);background:var(--jc-colour-surface)}
.jc-back-to-top{position:fixed;right:1rem;bottom:1rem;z-index:50;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:999px;background:var(--jc-colour-primary);color:#fff;text-decoration:none;box-shadow:0 8px 22px rgba(0,0,0,.18)}
.jc-back-to-top:focus{outline:3px solid currentColor;outline-offset:3px}
mark{background:#fff3a3;padding:0 .1em}
@media print{.site-header,.site-footer,.jc-announcement,.jc-back-to-top,.main-navigation,.jc-social-share,.jc-ad-slot{display:none!important}body{font-size:12pt;color:#000;background:#fff}.jc-container,.jc-container--narrow,.jc-container--wide{max-width:none!important;width:100%!important}.entry-content a[href]:after{content:" (" attr(href) ")";font-size:90%}}
.jc-card--first-featured{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--jc-card-gap,24px)}
@media(max-width:700px){.jc-card--first-featured{display:block}}


/* Stage 4 premium-control polish */
.jc-404-grid ul{margin-left:1.1rem}.jc-404-grid .search-form{margin:1rem 0 0}.jc-404-panel h2{font-size:1.1rem;margin-top:0}.jc-404-panel h2+ul{margin-top:.4rem}
.jc-card-equal-height .jc-card__title{margin-top:0}.jc-card-equal-height .jc-card__excerpt{flex:1}
@media(max-width:760px){.jc-404-grid{grid-template-columns:1fr}}
@media print{body.jc-print-hide-urls .entry-content a[href]:after{content:""!important}.jc-404-panel,.jc-related,.jc-entry-nav{display:none!important}}


/* v1.14 archive item refinements */
.jc-card-box-unboxed{background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible}.jc-card-box-unboxed .jc-card__inner{padding-inline:0}.jc-card-box-unboxed .jc-card__thumb img{border-radius:var(--jc-archive-image-radius)}
.jc-meta-normal .card-meta span,.entry-meta span,.jc-meta-item{display:inline-flex;align-items:center;gap:.25em}.card-meta,.entry-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.45em .55em}.jc-meta-underline .card-meta .jc-meta-item,.entry-meta--underline .jc-meta-item,.card-meta--underline .jc-meta-item{border-bottom:1px solid currentColor;padding-bottom:2px}.jc-meta-pill .card-meta .jc-meta-item,.entry-meta--pill .jc-meta-item,.card-meta--pill .jc-meta-item{border:1px solid var(--jc-colour-border);border-radius:999px;padding:.18em .62em;background:var(--jc-colour-surface);line-height:1.35}.jc-meta-pill .jc-meta-item a,.entry-meta--pill .jc-meta-item a{text-decoration:none}
.jc-image-round-square .jc-card__thumb img{border-radius:0}.jc-image-round-small .jc-card__thumb img{border-radius:4px}.jc-image-round-medium .jc-card__thumb img{border-radius:10px}.jc-image-round-large .jc-card__thumb img{border-radius:18px}.jc-image-round-pill .jc-card__thumb img{border-radius:999px}.jc-image-round-custom .jc-card__thumb img{border-radius:var(--jc-archive-image-radius)}
.jc-card--featured{grid-column:span var(--jc-featured-cols,1)}.jc-featured-count-1 .jc-card--featured:first-child{grid-column:1/-1}.jc-featured-count-2 .jc-card--featured,.jc-featured-count-3 .jc-card--featured{grid-column:span var(--jc-featured-cols,1)}
.jc-entry-box-boxed{background:var(--jc-single-box-bg,var(--jc-card-bg,#fff));border:var(--jc-single-box-border-width,1px) solid var(--jc-single-box-border-colour,var(--jc-card-border,var(--jc-colour-border)));border-radius:var(--jc-single-box-radius,var(--jc-radius-card));box-shadow:var(--jc-single-box-shadow,var(--jc-card-shadow,none));padding:var(--jc-single-box-padding,clamp(20px,4vw,42px))}.page .jc-entry-box-boxed{background:var(--jc-page-box-bg,var(--jc-card-bg,#fff));border-width:var(--jc-page-box-border-width,1px);border-color:var(--jc-page-box-border-colour,var(--jc-card-border,var(--jc-colour-border)));border-radius:var(--jc-page-box-radius,var(--jc-radius-card));box-shadow:var(--jc-page-box-shadow,var(--jc-card-shadow,none));padding:var(--jc-page-box-padding,clamp(20px,4vw,42px))}.jc-entry-box-unboxed{background:transparent;border:0;box-shadow:none;padding:0}
@media(max-width:900px){.jc-card--featured{grid-column:span min(var(--jc-featured-cols,1), var(--jc-archive-cols,2))}.jc-featured-count-1 .jc-card--featured:first-child{grid-column:1/-1}}
@media(max-width:600px){.jc-card--featured,.jc-featured-count-1 .jc-card--featured:first-child{grid-column:1/-1}}


/* v1.17 visual rhythm and archive-card polish
   Tightens the default card/article presentation so archive grids remain simple,
   readable, and closer to a clean editorial site rather than a heavy builder theme. */
.jc-grid { align-items: stretch; }
.jc-card { display:flex; flex-direction:column; min-width:0; }
.jc-card__thumb { display:block; background:var(--jc-colour-surface); overflow:hidden; }
.jc-card__thumb img { transition:transform .22s ease; }
.jc-card:hover .jc-card__thumb img { transform:scale(var(--jc-card-image-hover-scale, 1)); }
.jc-card__inner { display:flex; flex:1; flex-direction:column; min-width:0; }
.jc-card__title { font-size:var(--jc-card-title-size, 22px); line-height:var(--jc-card-title-line-height, 1.16); letter-spacing:var(--jc-card-title-letter-spacing, -.01em); margin:0 0 .55rem; overflow-wrap:break-word; }
.jc-card__title a { display:inline; }
.card-meta { font-size:var(--jc-card-meta-size, 14px); line-height:1.35; margin:.5rem 0 .8rem; gap:.38rem .72rem; min-width:0; }
.card-meta span { max-width:100%; min-width:0; }
.card-meta a { overflow-wrap:anywhere; }
.jc-meta-normal .card-meta span,
.entry-meta span { display:inline-flex; align-items:baseline; flex-wrap:wrap; gap:.25em; }
.jc-card__excerpt { font-size:var(--jc-card-excerpt-size, 16px); line-height:var(--jc-card-excerpt-line-height, 1.58); }
.jc-card__excerpt p { margin:.15rem 0 1.05rem; }
.jc-read-more { margin-top:auto; align-self:flex-start; font-size:var(--jc-readmore-size, 16px); }
.jc-card-box-boxed .jc-card__thumb + .jc-card__inner { border-top:0; }
.jc-grid--list .jc-card__inner { justify-content:center; }
.jc-grid--list .jc-card__thumb img { aspect-ratio:var(--jc-list-image-ratio, 4 / 3); }
.entry-content { font-size:var(--jc-entry-content-size, inherit); }
.entry-content > figure,
.entry-content > .wp-block-image,
.entry-content > .wp-block-kadence-image { margin-top:1.75rem; margin-bottom:1.75rem; }
.entry-content > .alignwide,
.entry-content > .alignfull { margin-top:2rem; margin-bottom:2rem; }
.entry-content img { border-radius:var(--jc-content-image-radius, 0px); }
.entry-content > p { max-width:var(--jc-content-measure, 72ch); }
@media(max-width:900px){
  .jc-card__title{font-size:var(--jc-card-title-size-tablet, var(--jc-card-title-size, 20px));}
  .card-meta{font-size:var(--jc-card-meta-size-tablet, var(--jc-card-meta-size, 13.5px));}
  .card-meta .jc-meta-category{font-size:var(--jc-card-category-size-tablet, var(--jc-card-category-size, var(--jc-card-meta-size-tablet, 13.5px)));}
  .jc-card__excerpt{font-size:var(--jc-card-excerpt-size-tablet, var(--jc-card-excerpt-size, 15.5px));}
}
@media(max-width:600px){
  .jc-card__title{font-size:var(--jc-card-title-size-mobile, var(--jc-card-title-size, 19px));}
  .card-meta{font-size:var(--jc-card-meta-size-mobile, var(--jc-card-meta-size, 13px));}
  .card-meta .jc-meta-category{font-size:var(--jc-card-category-size-mobile, var(--jc-card-category-size, var(--jc-card-meta-size-mobile, 13px)));}
  .jc-card__excerpt{font-size:var(--jc-card-excerpt-size-mobile, var(--jc-card-excerpt-size, 15px));}
}

/* v1.18 post/page container refinement */
.single-post .entry-content > figure.wp-block-image:not(.alignwide):not(.alignfull), .single-post .entry-content > .wp-block-image:not(.alignwide):not(.alignfull){max-width:var(--jc-block-wide-width, var(--jc-container-wide-width, 1280px));}


/* v1.19 TOC and meta-chip refinement */
.entry-meta span, .card-meta span, .entry-footer span { display:inline-flex; align-items:center; flex-wrap:wrap; gap:.25em; }
.jc-meta-pill .entry-meta span,
.jc-meta-pill .card-meta span,
.jc-meta-pill .entry-footer span,
.entry-meta--pill span,
.card-meta--pill span { border:1px solid var(--jc-colour-border); border-radius:999px; padding:.2em .62em; background:var(--jc-colour-surface); line-height:1.35; }
.jc-meta-underline .entry-meta span,
.jc-meta-underline .card-meta span,
.entry-meta--underline span,
.card-meta--underline span { border-bottom:1px solid currentColor; padding-bottom:2px; }
.jc-meta-normal .entry-meta span,
.jc-meta-normal .card-meta span,
.entry-meta--normal span,
.card-meta--normal span { border:0; background:transparent; padding:0; }
.jc-toc { border:var(--jc-toc-border-width, 1px) solid var(--jc-toc-border-colour, var(--jc-colour-border)); border-radius:var(--jc-toc-radius, var(--jc-radius-card)); padding:var(--jc-toc-padding, 16px); margin:var(--jc-toc-margin, 1.5rem) auto; background:var(--jc-toc-bg, var(--jc-colour-surface)); box-shadow:var(--jc-toc-shadow, none); max-width:var(--jc-single-reading-width, var(--jc-container-reading-width, 900px)); }
.jc-toc__header { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.jc-toc__title { font-size:var(--jc-toc-heading-size, 18px); line-height:1.2; font-weight:var(--jc-toc-heading-weight, 700); margin:0; }
.jc-toc__toggle { border:1px solid var(--jc-colour-border); background:#fff; color:var(--jc-colour-text); border-radius:999px; padding:.22em .7em; line-height:1.2; cursor:pointer; }
.jc-toc:not(.jc-toc--collapsible) .jc-toc__toggle { display:none; }
.jc-toc.is-collapsed .jc-toc__list { display:none; }
.jc-toc__list { columns:var(--jc-toc-columns, 1); column-gap:1.8rem; margin:.85rem 0 0; padding-left:var(--jc-toc-list-indent, 1.2rem); }
.jc-toc--bullets .jc-toc__list { list-style:disc; }
.jc-toc--numbers .jc-toc__list { list-style:decimal; }
.jc-toc--plain .jc-toc__list { list-style:none; padding-left:0; }
.jc-toc__item { break-inside:avoid; margin:.25em 0; }
.jc-toc__item--h3 { margin-left:1rem; font-size:.96em; }
.jc-toc__item--h4 { margin-left:2rem; font-size:.93em; }
.jc-toc__item--h5,.jc-toc__item--h6 { margin-left:2.75rem; font-size:.9em; }
.jc-toc a { color:var(--jc-toc-link-colour, var(--jc-colour-primary)); }
@media(max-width:900px){.jc-toc__list{columns:var(--jc-toc-columns-tablet, var(--jc-toc-columns, 1));}}
@media(max-width:600px){.jc-toc__list{columns:var(--jc-toc-columns-mobile, 1);}}


/* v1.20 separate card systems */
.jc-card{box-shadow:var(--jc-archive-card-shadow, var(--jc-shadow-card, none));}
.jc-card--featured{box-shadow:var(--jc-featured-card-shadow, var(--jc-archive-card-shadow, none));}
.jc-related .jc-card{box-shadow:var(--jc-related-card-shadow, none);}
.jc-related .jc-grid{grid-template-columns:repeat(var(--jc-related-cols,3), minmax(0,1fr));}
.jc-toc{box-shadow:var(--jc-toc-shadow, none);}
@media(max-width:900px){.jc-related .jc-grid{grid-template-columns:repeat(var(--jc-related-cols-tablet,2), minmax(0,1fr));}}
@media(max-width:600px){.jc-related .jc-grid{grid-template-columns:repeat(var(--jc-related-cols-mobile,1), minmax(0,1fr));}}


/* v1.21 archive hierarchy and meta-link refinements */
.blog .content-area,
.archive .content-area,
.search .content-area,
.home .content-area {
  margin-top: var(--jc-archive-top-margin, 0px);
  margin-bottom: var(--jc-archive-bottom-margin, 48px);
}
.jc-pagination-wrap,
.jc-posts-nav,
.navigation.pagination {
  margin-top: var(--jc-archive-pagination-margin-top, 32px);
  margin-bottom: var(--jc-archive-pagination-margin-bottom, 0px);
}
.jc-pagination-wrap .nav-links,
.navigation.pagination .nav-links,
.jc-posts-nav {
  display:flex;
  flex-wrap:wrap;
  gap:var(--jc-archive-pagination-gap, .5rem);
  align-items:center;
}
.jc-pagination-wrap .nav-links,
.jc-posts-nav {
  justify-content:flex-start;
}
.jc-pagination-wrap--center .nav-links,
.jc-pagination-wrap--center.jc-posts-nav {
  justify-content:center;
}
.jc-pagination-wrap--right .nav-links,
.jc-pagination-wrap--right.jc-posts-nav {
  justify-content:flex-end;
}
.jc-pagination-wrap .page-numbers,
.jc-posts-nav a,
.jc-posts-nav span {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:2.7em;
  min-height:2.7em;
  padding:var(--jc-archive-pagination-padding, .72em);
  border:var(--jc-archive-pagination-border-width, 1px) solid var(--jc-archive-pagination-border-colour, var(--jc-colour-border));
  border-radius:var(--jc-archive-pagination-radius, 999px);
  background:var(--jc-archive-pagination-bg, #fff);
  color:var(--jc-archive-pagination-text-colour, var(--jc-colour-text));
  font-size:var(--jc-archive-pagination-size, 18px);
  font-weight:700;
  line-height:1;
  text-decoration:none;
  box-shadow:var(--jc-archive-pagination-shadow, none);
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;
}
.jc-pagination-wrap .page-numbers:hover,
.jc-pagination-wrap .page-numbers:focus,
.jc-posts-nav a:hover,
.jc-posts-nav a:focus {
  color:var(--jc-archive-pagination-text-hover-colour, var(--jc-colour-primary));
  border-color:var(--jc-archive-pagination-text-hover-colour, var(--jc-colour-primary));
  transform:translateY(-1px);
}
.jc-pagination-wrap .page-numbers.current,
.jc-posts-nav span.current {
  background:var(--jc-archive-pagination-current-bg, var(--jc-colour-primary));
  color:var(--jc-archive-pagination-current-text-colour, #fff);
  border-color:var(--jc-archive-pagination-current-bg, var(--jc-colour-primary));
}
.jc-pagination-wrap .page-numbers.dots,
.jc-posts-nav span.dots {
  min-width:auto;
  min-height:auto;
  padding-inline:.35em;
  border-color:transparent;
  background:transparent;
  box-shadow:none;
}
.jc-pagination-style--minimal .page-numbers,
.jc-pagination-style--minimal.jc-posts-nav a,
.jc-pagination-style--minimal.jc-posts-nav span {
  min-width:auto;
  min-height:auto;
  padding:.05em;
  border:0;
  background:transparent;
  border-radius:0;
  box-shadow:none;
}
.jc-pagination-style--minimal .page-numbers.current,
.jc-pagination-style--minimal.jc-posts-nav span.current {
  color:var(--jc-archive-pagination-text-hover-colour, var(--jc-colour-primary));
  text-decoration:underline;
  text-underline-offset:.18em;
}
.jc-pagination-style--outline .page-numbers,
.jc-pagination-style--outline.jc-posts-nav a,
.jc-pagination-style--outline.jc-posts-nav span {
  background:transparent;
}
.jc-pagination-style--solid .page-numbers,
.jc-pagination-style--solid.jc-posts-nav a,
.jc-pagination-style--solid.jc-posts-nav span {
  background:var(--jc-archive-pagination-bg, #fff);
  border-color:var(--jc-archive-pagination-border-colour, var(--jc-colour-border));
}
.jc-pagination-style--solid .page-numbers.current,
.jc-pagination-style--solid.jc-posts-nav span.current {
  background:var(--jc-archive-pagination-current-bg, var(--jc-colour-primary));
  color:var(--jc-archive-pagination-current-text-colour, #fff);
  border-color:var(--jc-archive-pagination-current-bg, var(--jc-colour-primary));
}
.jc-pagination-wrap .prev,
.jc-pagination-wrap .next,
.jc-posts-nav a {
  padding-inline:1em;
}
.jc-posts-nav {
  font-size:var(--jc-archive-pagination-size, 18px);
}
.blog .jc-breadcrumbs,
.archive .jc-breadcrumbs,
.search .jc-breadcrumbs,
.home .jc-breadcrumbs {
  gap:var(--jc-archive-breadcrumb-gap, var(--jc-archive-pagination-gap, .5rem));
}
.jc-breadcrumbs--style-pills > a,
.jc-breadcrumbs--style-pills > span:not(.jc-breadcrumbs__separator),
.jc-breadcrumbs--style-solid > a,
.jc-breadcrumbs--style-solid > span:not(.jc-breadcrumbs__separator) {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2.55em;
  padding:var(--jc-archive-breadcrumb-padding, var(--jc-archive-pagination-padding, .72em));
  border:var(--jc-archive-breadcrumb-border-width, var(--jc-breadcrumb-border-width, var(--jc-archive-pagination-border-width, 1px))) solid var(--jc-archive-breadcrumb-border-colour, var(--jc-breadcrumb-border-colour, var(--jc-archive-pagination-border-colour, var(--jc-colour-border))));
  border-radius:var(--jc-archive-breadcrumb-radius, var(--jc-breadcrumb-radius, var(--jc-archive-pagination-radius, 999px)));
  background:var(--jc-archive-breadcrumb-bg, var(--jc-breadcrumb-bg, var(--jc-archive-pagination-bg, #fff)));
  color:var(--jc-archive-breadcrumb-text-colour, var(--jc-breadcrumb-text-colour, var(--jc-archive-pagination-text-colour, var(--jc-colour-text))));
  font-size:var(--jc-archive-breadcrumb-size, var(--jc-breadcrumb-size, var(--jc-archive-pagination-size, 14px)));
  font-weight:700;
  line-height:1.1;
  text-decoration:none;
  box-shadow:var(--jc-archive-breadcrumb-shadow, var(--jc-breadcrumb-shadow, var(--jc-archive-pagination-shadow, none)));
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;
}
.jc-breadcrumbs--style-pills > a:hover,
.jc-breadcrumbs--style-pills > a:focus,
.jc-breadcrumbs--style-solid > a:hover,
.jc-breadcrumbs--style-solid > a:focus {
  color:var(--jc-breadcrumb-link-hover-colour, var(--jc-archive-pagination-text-hover-colour, var(--jc-colour-primary)));
  border-color:var(--jc-breadcrumb-link-hover-colour, var(--jc-archive-pagination-text-hover-colour, var(--jc-colour-primary)));
  transform:translateY(-1px);
}
.jc-breadcrumbs--style-solid > span:not(.jc-breadcrumbs__separator) {
  background:var(--jc-archive-pagination-current-bg, var(--jc-colour-primary));
  color:var(--jc-archive-pagination-current-text-colour, #fff);
  border-color:var(--jc-archive-pagination-current-bg, var(--jc-colour-primary));
}
.jc-breadcrumbs--style-text {
  gap:.35em;
}
.jc-breadcrumbs--style-text > a,
.jc-breadcrumbs--style-text > span:not(.jc-breadcrumbs__separator) {
  display:inline-flex;
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
}
.jc-breadcrumbs__separator {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding-inline:.1em;
  font-size:var(--jc-archive-breadcrumb-size, var(--jc-breadcrumb-size, var(--jc-archive-pagination-size, 14px)));
  color:var(--jc-archive-breadcrumb-text-colour, var(--jc-breadcrumb-text-colour, var(--jc-colour-muted)));
}
.jc-meta-links-plain .entry-meta .jc-meta-item a,
.jc-meta-links-plain .card-meta .jc-meta-item a,
.jc-meta-links-plain .entry-footer .jc-meta-item a { text-decoration:none !important; }
.jc-meta-links-underline .entry-meta .jc-meta-item a,
.jc-meta-links-underline .card-meta .jc-meta-item a,
.jc-meta-links-underline .entry-footer .jc-meta-item a { text-decoration:underline !important; }
.jc-meta-links-hover .entry-meta .jc-meta-item a,
.jc-meta-links-hover .card-meta .jc-meta-item a,
.jc-meta-links-hover .entry-footer .jc-meta-item a { text-decoration:none !important; }
.jc-meta-links-hover .entry-meta .jc-meta-item a:hover,
.jc-meta-links-hover .entry-meta .jc-meta-item a:focus,
.jc-meta-links-hover .card-meta .jc-meta-item a:hover,
.jc-meta-links-hover .card-meta .jc-meta-item a:focus,
.jc-meta-links-hover .entry-footer .jc-meta-item a:hover,
.jc-meta-links-hover .entry-footer .jc-meta-item a:focus { text-decoration:underline !important; }
.jc-customizer-note{background:#fff;border-left:4px solid #2271b1;padding:10px 12px;margin:6px 0 12px;color:#1d2327;font-size:12px;line-height:1.45;box-shadow:0 1px 1px rgba(0,0,0,.04)}

/* v1.22 Customizer architecture and layout refinements */
.blog .content-area,
.archive .content-area,
.search .content-area,
.home .content-area {
  padding-top: var(--jc-archive-padding-top, 0px);
  padding-bottom: var(--jc-archive-padding-bottom, 24px);
}
.entry-content a { color: var(--jc-link-colour, var(--jc-colour-primary)); }
.entry-content a:hover, .entry-content a:focus { color: var(--jc-link-hover-colour, var(--jc-colour-secondary)); }
.jc-link-plain .entry-content a { text-decoration: none; }
.jc-link-plain .entry-content a:hover, .jc-link-plain .entry-content a:focus { text-decoration: none; }
.jc-link-underline .entry-content a { text-decoration: underline; }
.jc-link-hover .entry-content a { text-decoration: none; }
.jc-link-hover .entry-content a:hover, .jc-link-hover .entry-content a:focus { text-decoration: underline; }
.entry-meta .jc-meta-item a,
.card-meta .jc-meta-item a,
.entry-footer .jc-meta-item a { color: var(--jc-meta-link-colour, var(--jc-link-colour, var(--jc-colour-primary))); }
.entry-meta .jc-meta-item a:hover,
.card-meta .jc-meta-item a:hover,
.entry-footer .jc-meta-item a:hover { color: var(--jc-meta-link-hover-colour, var(--jc-link-hover-colour, var(--jc-colour-secondary))); }
.jc-toc { color: var(--jc-toc-text-colour, var(--jc-colour-text)); }
.jc-toc__title { color: var(--jc-toc-heading-colour, var(--jc-colour-heading)); }
.jc-card { box-shadow: var(--jc-archive-card-shadow, none); }
.jc-card--featured { box-shadow: var(--jc-featured-card-shadow, var(--jc-archive-card-shadow, none)); }
.jc-related .jc-card { box-shadow: var(--jc-related-card-shadow, none); }
.single .site-main .content-area.is-boxed,
.single .site-main .entry-content-wrap.is-boxed { box-shadow: var(--jc-single-box-shadow, none); }
.page .site-main .content-area.is-boxed,
.page .site-main .entry-content-wrap.is-boxed { box-shadow: var(--jc-page-box-shadow, none); }


/* v1.23 contextual link and meta refinements */
.jc-meta-pill .card-meta .jc-meta-item,
.entry-meta--pill .jc-meta-item,
.card-meta--pill .jc-meta-item,
.entry-footer .jc-meta-item { display:inline-flex; align-items:center; width:auto; max-width:100%; }
.jc-toc a { color: var(--jc-toc-link-colour, var(--jc-link-colour)); }
.jc-toc a:hover,.jc-toc a:focus { color: var(--jc-toc-link-hover-colour, var(--jc-link-hover-colour)); }
.jc-card .entry-title a,.jc-card .jc-card__title a { color: var(--jc-card-link-colour, var(--jc-link-colour)); }
.jc-card .entry-title a:hover,.jc-card .entry-title a:focus,.jc-card .jc-card__title a:hover,.jc-card .jc-card__title a:focus { color: var(--jc-card-link-hover-colour, var(--jc-link-hover-colour)); }
.jc-featured-card .entry-title a,
.jc-featured-card .jc-card__title a,
.jc-card--featured .entry-title a,
.jc-card--featured .jc-card__title a,
.jc-card.jc-card--featured .entry-title a,
.jc-card.jc-card--featured .jc-card__title a { color: var(--jc-card-link-colour, var(--jc-link-colour)); }
.jc-related-posts .entry-title a,.jc-related-posts .jc-card__title a { color: var(--jc-related-link-colour, var(--jc-card-link-colour)); }


/* v1.24 column architecture fix: featured posts are a separate grid; archive loop columns are explicit and live-preview safe. */
.jc-archive-grid{grid-template-columns:repeat(var(--jc-archive-cols,3),minmax(0,1fr))!important;}
.jc-featured-grid{display:grid;grid-template-columns:repeat(var(--jc-featured-cols,1),minmax(0,1fr));gap:var(--jc-card-gap,26px);margin-bottom:var(--jc-featured-grid-margin-bottom,32px);}
.jc-featured-grid .jc-card--featured{grid-column:auto!important;}
.jc-archive-cols-1{--jc-archive-cols:1!important}.jc-archive-cols-2{--jc-archive-cols:2!important}.jc-archive-cols-3{--jc-archive-cols:3!important}.jc-archive-cols-4{--jc-archive-cols:4!important}.jc-archive-cols-5{--jc-archive-cols:5!important}.jc-archive-cols-6{--jc-archive-cols:6!important}
.jc-featured-cols-1{--jc-featured-cols:1!important}.jc-featured-cols-2{--jc-featured-cols:2!important}.jc-featured-cols-3{--jc-featured-cols:3!important}
@media(max-width:900px){.jc-archive-grid{grid-template-columns:repeat(var(--jc-archive-cols-tablet,var(--jc-archive-cols,2)),minmax(0,1fr))!important}.jc-featured-grid{grid-template-columns:repeat(min(var(--jc-featured-cols,1),2),minmax(0,1fr))}}
@media(max-width:600px){.jc-archive-grid,.jc-featured-grid{grid-template-columns:1fr!important}}

/* v1.26: hard column classes so archive and featured column controls cannot be overridden by shared grid variables. */
.jc-archive-grid.jc-archive-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))!important;}
.jc-archive-grid.jc-archive-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.jc-archive-grid.jc-archive-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.jc-archive-grid.jc-archive-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
.jc-archive-grid.jc-archive-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))!important;}
.jc-archive-grid.jc-archive-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))!important;}
.jc-featured-grid.jc-featured-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))!important;}
.jc-featured-grid.jc-featured-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.jc-featured-grid.jc-featured-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
@media(max-width:900px){.jc-archive-grid[class*="jc-archive-cols-"]{grid-template-columns:repeat(var(--jc-archive-cols-tablet,2),minmax(0,1fr))!important}.jc-featured-grid.jc-featured-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.jc-archive-grid[class*="jc-archive-cols-"],.jc-featured-grid[class*="jc-featured-cols-"]{grid-template-columns:1fr!important}}

/* v1.35: Site title links default to plain text styling. */
.site-title a,
.site-title a:visited,
.jc-site-title a,
.jc-site-title a:visited {
    text-decoration: none;
}
.site-title a:hover,
.site-title a:focus,
.jc-site-title a:hover,
.jc-site-title a:focus {
    text-decoration: none;
}

/* v1.36: Header site title link control fallback. */
.site-title a, .site-branding .site-title a, header .site-title a { text-decoration: none !important; }
body .site-title a:hover, body .site-title a:focus { text-decoration: var(--jc-site-title-hover-decoration, none) !important; }


/* v2.0 reusable control-group front-end refinements */
.jc-read-more { color: var(--jc-readmore-link-colour, var(--jc-card-link-colour, var(--jc-link-colour))); }
.jc-read-more:hover, .jc-read-more:focus { color: var(--jc-readmore-link-hover-colour, var(--jc-card-link-hover-colour, var(--jc-link-hover-colour))); }
.jc-breadcrumbs { margin-top: var(--jc-archive-breadcrumb-margin-top, 0px); margin-bottom: var(--jc-archive-breadcrumb-margin-bottom, 16px); }
.jc-breadcrumbs a { color: var(--jc-breadcrumb-link-colour, var(--jc-link-colour)); }
.jc-breadcrumbs a:hover, .jc-breadcrumbs a:focus { color: var(--jc-breadcrumb-link-hover-colour, var(--jc-link-hover-colour)); }
