/*
 * ═══════════════════════════════════════════════════════════════
 * CHICAGOWORKCOMP.COM — 2026 PAGE TEMPLATE STYLES
 * ═══════════════════════════════════════════════════════════════
 * 
 * TARGETING: body.jhr-2026-template
 * Added by PHP plugin when "Default 2026" template is assigned.
 * 
 * FONTS: Roboto Condensed (display) + Cabin (body)
 * Matched to the live chicagoworkcomp.com typography.
 * 
 * GRAVITY FORMS: Dark-bg overrides for gform_1 scoped to
 * .jhr-gform-wrap wrapper so they don't leak elsewhere.
 * ═══════════════════════════════════════════════════════════════
 */

body.jhr-2026-template {
  --jhr-navy: #1a2744;
  --jhr-navy-deep: #0f1a2e;
  --jhr-navy-light: #243352;
  --jhr-teal: #3a9e8f;
  --jhr-teal-hover: #2d8275;
  --jhr-teal-light: #e8f5f2;
  --jhr-gold: #c9a84c;
  --jhr-gold-soft: #f5ecd4;
  --jhr-white: #ffffff;
  --jhr-off-white: #f7f8fa;
  --jhr-gray-100: #f0f1f4;
  --jhr-gray-200: #e2e4e9;
  --jhr-gray-300: #c5c9d2;
  --jhr-gray-500: #6b7280;
  --jhr-gray-700: #374151;
  --jhr-gray-900: #111827;
  --jhr-font-display: 'Roboto Condensed', sans-serif;
  --jhr-font-body: 'Cabin', -apple-system, sans-serif;
}

/* ═══════════ STICKY DESKTOP NAV ═══════════ */
#jhr-sticky-nav{position:fixed;top:-64px;left:0;right:0;height:56px;background:var(--jhr-navy);z-index:99999;transition:top .35s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 20px rgba(0,0,0,.3);display:flex;align-items:center;font-family:var(--jhr-font-body)}
#jhr-sticky-nav.jhr-visible{top:0}
#jhr-sticky-nav .jhr-sticky-inner{max-width:1200px;margin:0 auto;padding:0 24px;width:100%;display:flex;justify-content:space-between;align-items:center}
#jhr-sticky-nav .jhr-sticky-logo{color:#fff;font-family:var(--jhr-font-display);font-size:15px;font-weight:600;text-decoration:none;white-space:nowrap}
#jhr-sticky-nav .jhr-sticky-msg{color:#c5c9d2;font-size:15px}
#jhr-sticky-nav .jhr-sticky-msg strong{color:#fff}
#jhr-sticky-nav .jhr-sticky-right{display:flex;align-items:center;gap:16px}
#jhr-sticky-nav .jhr-sticky-phone{color:#fff;text-decoration:none;font-size:16px;font-weight:600;white-space:nowrap}
#jhr-sticky-nav .jhr-sticky-phone:hover{color:var(--jhr-teal)}
#jhr-sticky-nav .jhr-sticky-btn{display:inline-block;background:var(--jhr-teal);color:#fff;padding:8px 20px;border-radius:4px;font-weight:600;font-size:13px;text-decoration:none;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;transition:background .2s}
#jhr-sticky-nav .jhr-sticky-btn:hover{background:var(--jhr-teal-hover)}
@media(max-width:768px){#jhr-sticky-nav{display:none!important}}

/* ═══════════ MOBILE STICKY CTA ═══════════ */
#jhr-mobile-sticky{display:none;position:fixed;bottom:0;left:0;right:0;z-index:99999;background:var(--jhr-teal);box-shadow:0 -4px 20px rgba(0,0,0,.2);font-family:var(--jhr-font-body)}
#jhr-mobile-sticky a{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 20px;color:#fff;text-decoration:none;font-weight:700;font-size:16px;letter-spacing:.02em}
@media(max-width:768px){
  #jhr-mobile-sticky{display:block}
  body.jhr-2026-template .site-footer,body.jhr-2026-template footer{padding-bottom:70px}
}

/* ═══════════ INLINE CTA BLOCKS ═══════════ */
body.jhr-2026-template .jhr-inline-cta{background:linear-gradient(135deg,var(--jhr-navy) 0%,var(--jhr-navy-light) 100%);border-radius:8px;padding:32px 36px;margin:36px 0;position:relative;overflow:hidden}
body.jhr-2026-template .jhr-inline-cta::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--jhr-teal)}
body.jhr-2026-template .jhr-inline-cta h3,body.jhr-2026-template .jhr-inline-cta .jhr-cta-heading{color:#fff!important;font-family:var(--jhr-font-display);font-size:24px;font-weight:600;margin:0 0 8px;line-height:1.3}
body.jhr-2026-template .jhr-inline-cta p{color:#c5c9d2;margin-bottom:20px;font-size:16px}
body.jhr-2026-template .jhr-inline-cta .jhr-cta-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
body.jhr-2026-template .jhr-inline-cta .jhr-btn{display:inline-flex;align-items:center;gap:6px;background:var(--jhr-teal);color:#fff;padding:12px 28px;border-radius:4px;text-decoration:none;font-weight:600;font-size:15px;transition:background .2s}
body.jhr-2026-template .jhr-inline-cta .jhr-btn:hover{background:var(--jhr-teal-hover)}
body.jhr-2026-template .jhr-inline-cta .jhr-cta-phone{color:#fff;font-weight:600;font-size:18px;text-decoration:none}
body.jhr-2026-template .jhr-inline-cta .jhr-cta-phone:hover{color:var(--jhr-teal)}
@media(max-width:768px){
  body.jhr-2026-template .jhr-inline-cta{padding:24px 20px}
  body.jhr-2026-template .jhr-inline-cta h3,body.jhr-2026-template .jhr-inline-cta .jhr-cta-heading{font-size:20px}
}

/* ═══════════ INJURY GRID (compact list) ═══════════ */
body.jhr-2026-template .jhr-injury-grid{margin:20px 0}
body.jhr-2026-template .jhr-injury-item{padding:16px 0;border-bottom:1px solid var(--jhr-gray-200);line-height:1.6}
body.jhr-2026-template .jhr-injury-item:last-child{border-bottom:none}
body.jhr-2026-template .jhr-injury-item strong{color:var(--jhr-navy);font-weight:700}
body.jhr-2026-template .jhr-injury-item span{color:var(--jhr-gray-500)}

/* ═══════════ INJURY TYPE SECTIONS (h4 headings) ═══════════ */
body.jhr-2026-template .jhr-injury-types{margin:24px 0}
body.jhr-2026-template .jhr-injury-type-section{margin-bottom:24px}
body.jhr-2026-template .jhr-injury-type-section h4{font-family:var(--jhr-font-display);font-size:18px;font-weight:600;color:var(--jhr-navy);margin-bottom:8px}

/* ═══════════ CAUSES LIST ═══════════ */
body.jhr-2026-template .jhr-causes-list{margin:24px 0}
body.jhr-2026-template .jhr-cause-item{margin-bottom:20px}
body.jhr-2026-template .jhr-cause-item h4{font-family:var(--jhr-font-display);font-size:18px;font-weight:600;color:var(--jhr-navy);margin-bottom:6px}
body.jhr-2026-template .jhr-cause-item h4 a{color:var(--jhr-navy);text-decoration:none;transition:color .2s}
body.jhr-2026-template .jhr-cause-item h4 a:hover{color:var(--jhr-teal)}
body.jhr-2026-template .jhr-cause-item p{margin-bottom:0}

/* ═══════════ LAW ITEMS ═══════════ */
body.jhr-2026-template .jhr-law-items{margin:24px 0}
body.jhr-2026-template .jhr-law-item{margin-bottom:20px}
body.jhr-2026-template .jhr-law-item h4{font-family:var(--jhr-font-display);font-size:18px;font-weight:600;color:var(--jhr-navy);margin-bottom:6px}
body.jhr-2026-template .jhr-law-item p{margin-bottom:0}

/* ═══════════ BENEFITS CARD GRID ═══════════ */
body.jhr-2026-template .jhr-benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}
body.jhr-2026-template .jhr-benefit-card{background:var(--jhr-off-white);border:1px solid var(--jhr-gray-200);border-radius:6px;padding:20px}
body.jhr-2026-template .jhr-benefit-card h4{font-family:var(--jhr-font-display);font-size:18px;font-weight:600;color:var(--jhr-navy);margin:0 0 6px}
body.jhr-2026-template .jhr-benefit-card p{font-size:15px;color:var(--jhr-gray-500);margin:0;line-height:1.55}
@media(max-width:768px){body.jhr-2026-template .jhr-benefits-grid{grid-template-columns:1fr}}

/* ═══════════ SETTLEMENT RESULTS ═══════════ */
body.jhr-2026-template .jhr-results-card{background:var(--jhr-off-white);border:1px solid var(--jhr-gray-200);border-radius:8px;padding:32px 36px;margin:28px 0}
body.jhr-2026-template .jhr-result-item{display:flex;align-items:baseline;gap:16px;padding:14px 0;border-bottom:1px solid var(--jhr-gray-200)}
body.jhr-2026-template .jhr-result-item:last-child{border-bottom:none}
body.jhr-2026-template .jhr-result-amount{font-family:var(--jhr-font-display);font-size:22px;font-weight:700;color:var(--jhr-navy);white-space:nowrap;min-width:160px}
body.jhr-2026-template .jhr-result-desc{color:var(--jhr-gray-500);font-size:15px;line-height:1.5}
@media(max-width:768px){
  body.jhr-2026-template .jhr-results-card{padding:24px 20px}
  body.jhr-2026-template .jhr-result-item{flex-direction:column;gap:4px}
  body.jhr-2026-template .jhr-result-amount{min-width:auto}
}

/* ═══════════ NUMBERED STEPS ═══════════ */
body.jhr-2026-template .jhr-steps{margin:20px 0}
body.jhr-2026-template .jhr-step{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid var(--jhr-gray-200);align-items:flex-start}
body.jhr-2026-template .jhr-step:last-child{border-bottom:none}
body.jhr-2026-template .jhr-step-num{flex-shrink:0;width:32px;height:32px;background:var(--jhr-navy);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;margin-top:2px}
body.jhr-2026-template .jhr-step-content strong{display:block;color:var(--jhr-navy);margin-bottom:2px}
body.jhr-2026-template .jhr-step-content span{color:var(--jhr-gray-500);font-size:15px}

/* ═══════════ FAQ ACCORDION ═══════════ */
body.jhr-2026-template .jhr-faq-item{border-bottom:1px solid var(--jhr-gray-200);padding:18px 0}
body.jhr-2026-template .jhr-faq-item:last-child{border-bottom:none}
body.jhr-2026-template .jhr-faq-q{font-family:var(--jhr-font-display);font-size:18px;font-weight:600;color:var(--jhr-navy);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;background:none;border:none;width:100%;text-align:left;padding:0;line-height:1.4}
body.jhr-2026-template .jhr-faq-q:hover{color:var(--jhr-teal)}
body.jhr-2026-template .jhr-faq-toggle{flex-shrink:0;width:28px;height:28px;border:2px solid var(--jhr-gray-300);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--jhr-teal);transition:all .2s;line-height:1}
body.jhr-2026-template .jhr-faq-q:hover .jhr-faq-toggle{border-color:var(--jhr-teal);background:var(--jhr-teal-light)}
body.jhr-2026-template .jhr-faq-toggle::after{content:'+'}
body.jhr-2026-template .jhr-faq-item.open .jhr-faq-toggle::after{content:'\2212'}
body.jhr-2026-template .jhr-faq-a{color:var(--jhr-gray-700);margin-top:12px;font-size:16px;line-height:1.7;padding-right:44px;display:none}
body.jhr-2026-template .jhr-faq-item.open .jhr-faq-a{display:block}

/* ═══════════ WORKER TYPES ═══════════ */
body.jhr-2026-template .jhr-worker-type{margin-bottom:20px}
body.jhr-2026-template .jhr-worker-label{display:inline-block;font-weight:700;color:var(--jhr-navy);font-size:16px;margin-bottom:4px;padding:2px 0;border-bottom:2px solid var(--jhr-teal)}
body.jhr-2026-template .jhr-worker-type p{font-size:16px;margin-top:4px}

/* ═══════════ ATTORNEY BIO ═══════════ */
body.jhr-2026-template .jhr-attorney-bio{display:flex;gap:24px;align-items:flex-start;margin:24px 0}
body.jhr-2026-template .jhr-attorney-photo{flex-shrink:0;width:200px;height:200px;border-radius:8px;overflow:hidden;border:3px solid var(--jhr-gray-200)}
body.jhr-2026-template .jhr-attorney-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
body.jhr-2026-template .jhr-attorney-content{flex:1}
body.jhr-2026-template .jhr-attorney-content ul{margin:12px 0;padding-left:20px}
body.jhr-2026-template .jhr-attorney-content li{margin-bottom:6px;color:var(--jhr-gray-700)}
body.jhr-2026-template .jhr-attorney-content a{color:var(--jhr-teal);font-weight:600;text-decoration:none}
body.jhr-2026-template .jhr-attorney-content a:hover{text-decoration:underline}
@media(max-width:768px){
  body.jhr-2026-template .jhr-attorney-bio{flex-direction:column;align-items:center;text-align:center}
  body.jhr-2026-template .jhr-attorney-content ul{text-align:left}
}

/* ═══════════ GRAVITY FORMS — DARK BG OVERRIDE ═══════════ */
/* Inherit the theme's existing form layout — only override colors
   for dark background context. Everything else stays as-is. */

/* Labels: white text */
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper label,
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper .gfield_label,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper label,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper .gfield_label {
  color: #c5c9d2 !important;
}

/* Input fields: translucent bg, white text */
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper input:not([type="submit"]):not([type="hidden"]),
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper textarea,
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper select,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper input:not([type="submit"]):not([type="hidden"]),
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper textarea,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper select {
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  color: #fff !important;
}

/* Focus state */
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper input:focus,
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper textarea:focus,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper input:focus,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper textarea:focus {
  border-color: #3a9e8f !important;
  background: rgba(255, 255, 255, 0.15) !important;
}

/* Placeholder text */
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper input::placeholder,
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper textarea::placeholder,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper input::placeholder,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper textarea::placeholder {
  color: rgba(255, 255, 255, 0.4) !important;
}

/* Submit button: teal */
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper .gform_button,
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper input[type="submit"],
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper .gform_button,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper input[type="submit"] {
  background: #3a9e8f !important;
  color: #fff !important;
  border: none !important;
  padding: 14px 40px !important;
  border-radius: 4px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper .gform_button:hover,
body.jhr-2026-template .jhr-page-cta-banner .gform_wrapper input[type="submit"]:hover,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper .gform_button:hover,
body.jhr-2026-template .jhr-gform-wrap .gform_wrapper input[type="submit"]:hover {
  background: #2d8275 !important;
}

/* Required asterisk */
body.jhr-2026-template .jhr-page-cta-banner .gfield_required,
body.jhr-2026-template .jhr-gform-wrap .gfield_required {
  color: #3a9e8f !important;
}

/* Form wrapper max-width for centered layout */
body.jhr-2026-template .jhr-gform-wrap {
  max-width: 600px;
  margin: 32px auto 0;
}

/* ═══════════ FULL-WIDTH CTA BANNER ═══════════ */
/* The template extracts this from the content and places it
   outside the two-column grid in a .jhr-cta-fullwidth wrapper */
body.jhr-2026-template .jhr-cta-fullwidth {
  clear: both;
}
body.jhr-2026-template .jhr-page-cta-banner {
  background: #0f1a2e !important;
  background: linear-gradient(135deg, #0f1a2e 0%, #1a2744 100%) !important;
  padding: 64px 24px;
  text-align: center;
  position: relative;
  overflow: hidden;
  margin: 0;
}
body.jhr-2026-template .jhr-page-cta-banner::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: 0.03;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 40px, rgba(255,255,255,0.1) 40px, rgba(255,255,255,0.1) 41px);
  pointer-events: none;
}
body.jhr-2026-template .jhr-page-cta-banner > * {
  position: relative;
  z-index: 2;
}
body.jhr-2026-template .jhr-page-cta-banner h2{color:#fff!important;font-family:var(--jhr-font-display);font-size:36px;margin-bottom:12px}
body.jhr-2026-template .jhr-page-cta-banner .jhr-cta-subtitle{color:#c5c9d2!important;font-size:18px;margin-bottom:28px}
body.jhr-2026-template .jhr-page-cta-banner .jhr-phone-big{display:block;color:#fff!important;font-family:var(--jhr-font-display);font-size:36px;font-weight:700;text-decoration:none;margin-bottom:24px}
body.jhr-2026-template .jhr-page-cta-banner .jhr-phone-big:hover{color:var(--jhr-teal)!important}
body.jhr-2026-template .jhr-page-cta-banner .jhr-offices{display:flex;justify-content:center;gap:48px;margin-top:36px;flex-wrap:wrap;color:#c5c9d2;font-size:14px;line-height:1.6}
body.jhr-2026-template .jhr-page-cta-banner .jhr-offices strong{display:block;color:#fff;font-weight:600;margin-bottom:4px}
body.jhr-2026-template .jhr-page-cta-banner p{color:#c5c9d2!important}
@media(max-width:768px){
  body.jhr-2026-template .jhr-page-cta-banner{padding:48px 24px;padding-bottom:100px}
  body.jhr-2026-template .jhr-page-cta-banner h2{font-size:28px}
  body.jhr-2026-template .jhr-page-cta-banner .jhr-phone-big{font-size:28px}
  body.jhr-2026-template .jhr-page-cta-banner .jhr-offices{flex-direction:column;gap:20px}
}

/* ═══════════ SIDEBAR CTA ═══════════ */
body.jhr-2026-template .jhr-sidebar-cta{background:linear-gradient(180deg,var(--jhr-teal) 0%,var(--jhr-teal-hover) 100%);border-radius:8px;padding:28px 24px;text-align:center;color:#fff;position:sticky;top:80px;margin-top:24px}
body.jhr-2026-template .jhr-sidebar-cta h4{font-family:var(--jhr-font-display);font-size:22px;font-weight:600;margin:0 0 8px;color:#fff}
body.jhr-2026-template .jhr-sidebar-cta p{font-size:14px;opacity:.9;margin-bottom:16px;line-height:1.5;color:#fff}
body.jhr-2026-template .jhr-sidebar-cta .jhr-sidebar-phone{display:block;color:#fff;font-size:22px;font-weight:700;text-decoration:none;margin-bottom:12px}
body.jhr-2026-template .jhr-sidebar-cta .jhr-sidebar-btn{display:block;background:#fff;color:var(--jhr-teal);padding:12px 20px;border-radius:4px;text-decoration:none;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.05em;transition:all .2s}
body.jhr-2026-template .jhr-sidebar-cta .jhr-sidebar-btn:hover{background:var(--jhr-gold-soft);color:var(--jhr-navy)}
body.jhr-2026-template .jhr-sidebar-cta .jhr-sidebar-nofee{margin-top:12px;font-size:13px;opacity:.85;margin-bottom:0}

/* ═══════════ HERO CONTENT (trust badges + CTA row) ═══════════ */
/* Drop this pattern at the very top of page content, right below the H1 */
body.jhr-2026-template .jhr-hero-content {
  margin-bottom: 40px;
  padding-bottom: 32px;
  border-bottom: 1px solid var(--jhr-gray-200);
}
body.jhr-2026-template .jhr-hero-subtitle {
  font-size: 18px;
  color: var(--jhr-gray-700);
  line-height: 1.65;
  margin-bottom: 24px;
  max-width: 680px;
  font-weight: 400;
}
body.jhr-2026-template .jhr-hero-cta-row {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
body.jhr-2026-template .jhr-hero-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--jhr-teal);
  color: #fff;
  padding: 14px 32px;
  border-radius: 4px;
  text-decoration: none;
  font-family: var(--jhr-font-body);
  font-weight: 600;
  font-size: 16px;
  letter-spacing: 0.02em;
  transition: all 0.25s;
  box-shadow: 0 4px 15px rgba(58, 158, 143, 0.3);
}
body.jhr-2026-template .jhr-hero-btn:hover {
  background: var(--jhr-teal-hover);
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(58, 158, 143, 0.4);
}
body.jhr-2026-template .jhr-hero-phone-wrap {
  display: flex;
  flex-direction: column;
}
body.jhr-2026-template .jhr-hero-phone-label {
  font-size: 12px;
  font-weight: 500;
  color: var(--jhr-gray-500);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 2px;
}
body.jhr-2026-template .jhr-hero-phone {
  color: var(--jhr-navy);
  text-decoration: none;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.02em;
  transition: color 0.2s;
}
body.jhr-2026-template .jhr-hero-phone:hover {
  color: var(--jhr-teal);
}
body.jhr-2026-template .jhr-hero-trust {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}
body.jhr-2026-template .jhr-trust-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  color: var(--jhr-gray-500);
  font-weight: 500;
}
/* The ✓ character is already in the HTML, style it teal */
body.jhr-2026-template .jhr-trust-item::first-letter {
  color: var(--jhr-teal);
}

@media (max-width: 768px) {
  body.jhr-2026-template .jhr-hero-cta-row {
    flex-direction: column;
    align-items: flex-start;
  }
  body.jhr-2026-template .jhr-hero-trust {
    flex-direction: column;
    gap: 8px;
  }
  body.jhr-2026-template .jhr-hero-subtitle {
    font-size: 16px;
  }
}


/* ═══════════════════════════════════════════════════════════════
   TEMPLATE-LEVEL STYLES
   These control the page structure from the default-2026.php template.
   ═══════════════════════════════════════════════════════════════ */

/* ═══════════ HIDE THEME'S DEFAULT HERO ═══════════ */
body.jhr-2026-template #internalHero {
  display: none !important;
}
body.jhr-2026-template > .container > .breadcrumbs-wrapper {
  display: none !important;
}

/* ═══════════ FIX THEME HEADER STACKING ═══════════ */
/* The RKM theme's #header is position:absolute, designed to overlay
   #internalHero. On our template, it overlays .jhr-hero instead.
   We need to ensure it stays above our hero's z-index layers. */
body.jhr-2026-template #header {
  z-index: 100 !important;
  position: absolute !important;
}


/* ═══════════ JHR HERO ═══════════ */
body.jhr-2026-template .jhr-hero {
  position: relative;
  z-index: 1;
  background: #0f1a2e !important;
  background: linear-gradient(135deg, #0f1a2e 0%, #1a2744 100%) !important;
  /* Top padding accounts for the theme's absolutely-positioned header (~200px) */
  padding: 260px 0 60px;
  overflow: hidden;
  clear: both;
}
body.jhr-2026-template .jhr-hero-pattern {
  position: absolute;
  inset: 0;
  opacity: 0.04;
  z-index: 0;
  background-image:
    repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255,255,255,0.1) 35px, rgba(255,255,255,0.1) 36px),
    repeating-linear-gradient(-45deg, transparent, transparent 35px, rgba(255,255,255,0.1) 35px, rgba(255,255,255,0.1) 36px);
  pointer-events: none;
}
body.jhr-2026-template .jhr-hero-inner {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}
body.jhr-2026-template .jhr-breadcrumb {
  font-size: 13px;
  color: var(--jhr-teal);
  margin-bottom: 24px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-weight: 600;
  font-family: var(--jhr-font-body);
}
body.jhr-2026-template .jhr-breadcrumb a {
  color: var(--jhr-gray-300);
  text-decoration: none;
  transition: color 0.2s;
}
body.jhr-2026-template .jhr-breadcrumb a:hover {
  color: #fff;
}
body.jhr-2026-template .jhr-sep {
  margin: 0 8px;
  color: var(--jhr-gray-500);
}
body.jhr-2026-template .jhr-hero-title {
  font-family: var(--jhr-font-display);
  font-size: clamp(32px, 4.5vw, 52px);
  font-weight: 700;
  color: #ffffff !important;
  line-height: 1.15;
  max-width: 700px;
  margin: 0;
  padding: 0;
}

@media (max-width: 768px) {
  body.jhr-2026-template .jhr-hero {
    padding: 40px 0;
  }
  body.jhr-2026-template .jhr-hero-title {
    font-size: 28px;
  }
}


/* ═══════════ PAGE CONTAINER (max-width) ═══════════ */
body.jhr-2026-template .jhr-page-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}


/* ═══════════ TWO-COLUMN LAYOUT ═══════════ */
body.jhr-2026-template .jhr-page-body {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 48px;
  padding: 48px 0 60px;
  align-items: start; /* critical for sticky sidebar */
}

body.jhr-2026-template .jhr-main-content {
  min-width: 0; /* prevent grid blowout */
}

/* ═══════════ SIDEBAR ═══════════ */
body.jhr-2026-template .jhr-sidebar {
  position: sticky;
  top: 80px;
  /* align-self: start is inherited from parent's align-items: start */
}

/* Auto-generated sidebar nav (from template PHP) */
body.jhr-2026-template .jhr-sidebar-nav-auto {
  background: var(--jhr-navy);
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 24px;
}
body.jhr-2026-template .jhr-sidebar-nav-auto .jhr-sidebar-nav-title {
  padding: 20px 24px 12px;
  font-family: var(--jhr-font-display);
  font-size: 18px;
  font-weight: 600;
  color: #fff;
}
body.jhr-2026-template .jhr-sidebar-nav-auto a {
  display: block;
  padding: 13px 24px;
  color: var(--jhr-gray-300);
  text-decoration: none;
  font-size: 15px;
  font-family: var(--jhr-font-body);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.2s;
}
body.jhr-2026-template .jhr-sidebar-nav-auto a:hover {
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
}
body.jhr-2026-template .jhr-sidebar-nav-auto a.active {
  background: rgba(58, 158, 143, 0.15);
  color: var(--jhr-teal);
  font-weight: 600;
  border-left: 3px solid var(--jhr-teal);
}

@media (max-width: 1024px) {
  body.jhr-2026-template .jhr-page-body {
    grid-template-columns: 1fr;
  }
  body.jhr-2026-template .jhr-sidebar {
    position: static;
    display: none; /* hide sidebar on tablet/mobile — mobile CTA bar handles conversion */
  }
}


/* ═══════════ STICKY NAV FALLBACK ═══════════ */
/* If wp_body_open didn't fire and the sticky nav got injected via
   wp_footer instead, it may be at the bottom of the DOM.
   position: fixed handles this regardless of DOM position,
   so no layout fix needed — but ensure it's always on top: */
#jhr-sticky-nav {
  z-index: 99999 !important;
}