/*
 * JSC RC67.4.2.5.6 — Canonical Public Homepage Stylesheet
 * Generated at install time from the live RC67.4.2.5.5 homepage layers.
 * Runtime scope: body.j26-home only for JSC homepage-owned presentation.
 * Public shell header/navigation/footer rules are intentionally excluded.
 * Dynamic builder values are supplied only through CSS custom properties.
 */
/* JSC RC67.4 FRONTEND FONT AUTHORITY REPAIR */
:root{--j26-green:#00644b;--j26-green-dark:#004b3b;--j26-gold:#d89b00;--j26-ink:#102d43;--j26-bg:#ffffff;--j26-max:1500px}
body.j26-home{background:var(--j26-bg)!important}.j26-home .wrapper,.j26-home .main,.j26-home .main__content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important}.j26-home .breadcrumbs{display:none!important}.j26-wrap{width:min(var(--j26-max),calc(100% - 48px));margin-left:auto;margin-right:auto}
.j26-hero{position:relative;min-height:var(--j26-hero-h);display:flex;align-items:center;background-size:cover;background-repeat:no-repeat;overflow:hidden;background-color:#f5f7f6}
.j26-hero:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}
.j26-hero.overlay-light:before{background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.88) 27%,rgba(255,255,255,.32) 46%,rgba(255,255,255,.02) 66%)}
.j26-hero.overlay-dark:before{background:linear-gradient(90deg,rgba(0,59,45,.92) 0%,rgba(0,59,45,.67) 34%,rgba(0,59,45,.22) 55%,rgba(0,59,45,0) 72%)}
.j26-hero.overlay-none:before{display:none}.j26-hero.boxed{width:min(var(--j26-max),calc(100% - 48px));margin:18px auto;border-radius:18px;box-shadow:0 10px 32px rgba(16,45,67,.14)}.j26-hero__inner{position:relative;z-index:1;min-height:var(--j26-hero-h);display:flex;align-items:center}.j26-hero__copy{width:min(610px,48%);padding:40px 0}.j26-hero__eyebrow{display:block;letter-spacing:.24em;font-size:12px;font-weight:800;color:#163f38;margin-bottom:12px}.j26-hero h1{font-weight:var(--jsc-fe-heading-weight,700);font-size:var(--jsc-fe-h1-size,54px);line-height:var(--jsc-fe-heading-line-height,1.02);font-family:var(--jsc-fe-heading-font,Georgia,"Times New Roman",serif);color:#073f33;margin:0 0 16px}.j26-hero h1 em{display:block;color:#c08400;font-style:normal}.j26-hero__copy p{font-size:17px;line-height:1.48;color:#1b3b4d;margin:0;max-width:590px}.j26-hero.overlay-dark .j26-hero__eyebrow,.j26-hero.overlay-dark h1,.j26-hero.overlay-dark .j26-hero__copy p,.j26-hero.overlay-dark .j26-value{color:#fff}.j26-hero.overlay-dark h1 em{color:#f1bd3d}.j26-values{display:flex;gap:28px;flex-wrap:wrap;margin-top:26px}.j26-value{display:flex;align-items:center;gap:9px;font-weight:800;color:#163f38}.j26-value svg{width:32px;height:32px;fill:#d29a00;color:#00634b}
.j26-container{padding:18px 0 8px}.j26-container.full .j26-wrap{width:100%;max-width:none;padding:0 22px}.j26-grid{display:grid;grid-template-columns:repeat(var(--j26-cols),minmax(0,1fr));gap:var(--j26-gap)}.j26-card{position:relative;display:flex;gap:18px;align-items:flex-start;min-height:178px;padding:22px;border-radius:var(--j26-radius,16px);border:1px solid #d8e4df;box-shadow:0 8px 22px rgba(16,45,67,.12);text-decoration:none!important;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.j26-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(16,45,67,.18)}.j26-card__icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}.j26-card__icon svg{width:33px;height:33px;fill:currentColor}.j26-card h3{font-weight:var(--jsc-fe-heading-weight,700);font-size:var(--jsc-fe-h3-size,22px);font-family:var(--jsc-fe-heading-font,Georgia,"Times New Roman",serif);margin:2px 0 7px;color:inherit}.j26-card p{font-size:14px;line-height:1.35;margin:0 0 20px;color:inherit}.j26-card__button{display:inline-flex;gap:12px;align-items:center;padding:9px 16px;border-radius:999px;font-weight:800}.j26-card.jsc-green{background:linear-gradient(145deg,#087451,#00543f);color:#fff;border-color:#006149}.j26-card.jsc-green .j26-card__icon{background:#004738;color:#fff}.j26-card.jsc-green .j26-card__button{border:1px solid #fff;color:#fff}.j26-card.jsc-mint{background:linear-gradient(145deg,#f2fff9,#c3efd8);color:#064639}.j26-card.jsc-mint .j26-card__icon{background:#c7f4dd;color:#064639}.j26-card.jsc-mint .j26-card__button{background:#07664f;color:#fff}.j26-card.jsc-gold{background:linear-gradient(145deg,#ffedb0,#e2aa1e);color:#173e35;border-color:#e0b74d}.j26-card.jsc-gold .j26-card__icon{background:#aa7500;color:#fff}.j26-card.jsc-gold .j26-card__button{background:#06664e;color:#fff}.j26-card.jsc-cream{background:linear-gradient(145deg,#fffdf5,#f5dea4);color:#173e35;border-color:#ead59b}.j26-card.jsc-cream .j26-card__icon{background:#f0c758;color:#173e35}.j26-card.jsc-cream .j26-card__button{background:#06664e;color:#fff}
.j26-kb-section{padding:8px 0 22px}.j26-kb-card{margin:auto;display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:20px;min-width:520px;max-width:950px;padding:18px 28px;background:linear-gradient(145deg,#f4fff9,#e8f6ee);border:1px solid #b8dfcf;border-radius:16px;box-shadow:0 7px 20px rgba(16,45,67,.08)}.j26-kb-card__icon{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#c7f2db;color:#075c46}.j26-kb-card__icon svg{width:36px;height:36px;fill:currentColor}.j26-kb-card h2{font-weight:var(--jsc-fe-heading-weight,700);font-size:var(--jsc-fe-h2-size,27px);font-family:var(--jsc-fe-heading-font,Georgia,"Times New Roman",serif);color:#064b3b;margin:0}.j26-kb-card p{margin:4px 0 0;color:#22475a}.j26-kb-card__button{display:inline-flex;align-items:center;gap:13px;background:#075f49;color:#fff!important;text-decoration:none!important;padding:12px 20px;border-radius:8px;font-weight:800}
.j26-simple{padding:28px 0}.j26-simple h2{font-weight:var(--jsc-fe-heading-weight,700);font-size:var(--jsc-fe-h2-size,30px);font-family:var(--jsc-fe-heading-font,Georgia,"Times New Roman",serif);color:#064b3b}.j26-simple p{line-height:1.55}.j26-cta{text-align:center}.j26-button{display:inline-flex;background:#075f49;color:#fff!important;padding:10px 18px;border-radius:7px;text-decoration:none!important;font-weight:800}.j26-divider{border:0;border-top:1px solid #dce6e2}.j26-spacer{height:var(--j26-space)}

@media(max-width:1050px){.j26-hero h1{font-size:44px}.j26-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.j26-kb-card{width:85%!important}}
@media(max-width:700px){.j26-wrap{width:calc(100% - 28px)!important}.j26-hero{align-items:flex-end}.j26-hero.overlay-light:before{background:linear-gradient(rgba(255,255,255,.90),rgba(255,255,255,.74))}.j26-hero.overlay-dark:before{background:linear-gradient(rgba(0,59,45,.82),rgba(0,59,45,.68))}.j26-hero.boxed{width:calc(100% - 28px)}.j26-hero__copy{width:100%;padding:28px 0}.j26-hero h1{font-size:36px}.j26-hero__copy p{font-size:15px}.j26-values{gap:16px}.j26-grid{grid-template-columns:1fr}.j26-card{min-height:145px}.j26-kb-card{width:auto!important;min-width:0;grid-template-columns:58px 1fr}.j26-kb-card__button{grid-column:1/-1;justify-content:center}}

/* BEGIN JSC RC67.1.1 PUBLIC CONTRAST */
/* JSC RC67.1.1 — Public Homepage Contrast Correction
 * Presentation-only compatibility layer.
 * Explicit selectors are intentional: the existing customer/base styles contain
 * higher-specificity colour rules, so critical contrast must not rely on inheritance.
 */

body.j26-home .j26-card.jsc-green,body.j26-home .j26-card.jsc-green .j26-card__copy,body.j26-home .j26-card.jsc-green h3,body.j26-home .j26-card.jsc-green p{
    color: #ffffff !important;
}

body.j26-home .j26-card.jsc-green .j26-card__button,body.j26-home .j26-card.jsc-green .j26-card__button span{
    color: #ffffff !important;
}

/* Ensure the primary homepage service card exposes a visible keyboard focus ring. */
body.j26-home .j26-card:focus-visible,body.j26-home .j26-kb-card__button:focus-visible{
    outline: 3px solid #d89b00 !important;
    outline-offset: 3px !important;
}
/* END JSC RC67.1.1 PUBLIC CONTRAST */


/* ============================================================
   JSC HOMEPAGE CARD ACTION ALIGNMENT
   Equal service-card heights and common button baseline.
   ============================================================ */

.j26-grid{
    align-items:stretch;
}

.j26-card{
    height:100%;
}

.j26-card__copy{
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
    align-self:stretch;
    min-width:0;
}

.j26-card__button{
    margin-top:auto;
    align-self:flex-start;
}

/* Premium action-card + Knowledge Base presentation */
/* JSC RC67.4.2.5.5 — Homepage cards-only premium parity + approved Knowledge Base geometry
   Scope: homepage action cards + Knowledge Base only. Native hero/header/nav/footer remain authoritative. */

body.j26-home .jhp-premium-services,body.j26-home .jhp-premium-kb-section{
  position:relative;
  background:
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,250,241,.97)),
    linear-gradient(135deg,var(--jhp-stage-1),var(--jhp-stage-2));
  color:var(--jhp-body);
  overflow:hidden;
}
body.j26-home .jhp-premium-services::before,body.j26-home .jhp-premium-kb-section::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(135deg,transparent 0 88%,rgba(214,174,62,.30) 88% 89%,transparent 89%),
    repeating-linear-gradient(45deg,rgba(213,164,27,.055) 0 2px,transparent 2px 24px);
  opacity:var(--jhp-pattern-opacity);
}
body.j26-home .jhp-premium-services::after{
  content:"";position:absolute;right:7%;top:18px;width:250px;height:205px;
  background:var(--jhp-scales-url) center/contain no-repeat;
  opacity:var(--jhp-scales-opacity);pointer-events:none;
}
body.j26-home .jhp-premium-services{padding:24px 0 18px}
body.j26-home .jhp-premium-services__inner{position:relative;z-index:1}
body.j26-home .jhp-premium-intro{position:relative;z-index:2;margin:0 auto 26px;text-align:center;max-width:980px;padding:0 18px}
body.j26-home .jhp-premium-intro__copy h2{
  margin:0;color:var(--jhp-heading)!important;
  font:700 clamp(36px,3vw,54px)/1.08 var(--jsc-fe-heading-font,Georgia,"Times New Roman",serif);
  letter-spacing:-.025em;
}
body.j26-home .jhp-premium-intro__rule{display:block;width:110px;height:3px;margin:12px auto;background:linear-gradient(90deg,transparent,var(--jhp-gold),transparent)}
body.j26-home .jhp-premium-intro__copy p{margin:0;color:var(--jhp-body)!important;font-size:18px;line-height:1.45}

body.j26-home .jhp-premium-grid{
  position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--jhp-card-gap);
}
body.j26-home .jhp-premium-card{
  position:relative;min-height:var(--jhp-card-min-height);padding:var(--jhp-card-padding);
  display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none!important;
  color:var(--jhp-body)!important;overflow:hidden;isolation:isolate;
  border:1px solid var(--jhp-card-border);border-radius:var(--jhp-card-radius);
  background:linear-gradient(145deg,var(--jhp-card-1),var(--jhp-card-2));
  box-shadow:0 12px 30px rgba(15,53,45,var(--jhp-card-shadow));
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
body.j26-home .jhp-premium-card:hover,body.j26-home .jhp-premium-card:focus-visible{transform:translateY(-4px);box-shadow:0 18px 40px rgba(15,53,45,.18);border-color:var(--jhp-gold)}
body.j26-home .jhp-premium-card::before{
  content:"";position:absolute;width:230px;height:150px;right:-34px;top:-20px;border-radius:50% 0 50% 50%;
  background:linear-gradient(145deg,rgba(174,220,200,.35),rgba(230,243,235,.04));z-index:-2;
}
body.j26-home .jhp-premium-card--warm::before{background:linear-gradient(145deg,rgba(247,222,149,.42),rgba(255,246,213,.05))}
body.j26-home .jhp-premium-card__watermark{
  position:absolute;right:24px;top:40px;width:94px;height:94px;background-image:var(--jhp-watermark);
  background-size:contain;background-position:center;background-repeat:no-repeat;opacity:var(--jhp-decor-opacity);
  filter:grayscale(1) brightness(2.6);z-index:-1;
}
body.j26-home .jhp-premium-medallion{
  width:var(--jhp-icon-size);height:var(--jhp-icon-size);border-radius:50%;flex:0 0 auto;display:grid;place-items:center;
  background:linear-gradient(145deg,var(--jhp-icon-1),var(--jhp-icon-2));border:5px solid var(--jhp-icon-ring);
  box-shadow:0 0 0 2px var(--jhp-icon-ring-inner),0 8px 18px rgba(0,62,47,.20),inset 0 0 0 1px rgba(255,255,255,.14);
  margin:0 auto 14px;position:relative;z-index:2;
}
body.j26-home .jhp-premium-medallion__glyph{
  width:var(--jhp-icon-art-size);height:var(--jhp-icon-art-size);display:grid;place-items:center;
  color:var(--jhp-icon-color);position:relative;z-index:1;line-height:0;
}
body.j26-home .jhp-premium-medallion__glyph svg,body.j26-home .jhp-premium-medallion__glyph img{
  width:100%;height:100%;display:block;object-fit:contain;object-position:center;
}
body.j26-home .jhp-premium-medallion__glyph svg{overflow:visible;color:inherit}
body.j26-home .jhp-premium-medallion__glyph svg [stroke]:not([stroke="none"]){stroke:currentColor!important}
body.j26-home .jhp-premium-medallion__glyph svg [fill]:not([fill="none"]){fill:currentColor!important}
body.j26-home .jhp-premium-kb__medallion{--jhp-icon-color:var(--jhp-kb-icon-color)}
body.j26-home .jhp-premium-card__copy{display:flex;flex-direction:column;align-items:center;max-width:95%;position:relative;z-index:2}
body.j26-home .jhp-premium-card__copy h2{
  margin:0 0 7px;font:700 var(--jhp-title-size)/1.08 var(--jsc-fe-heading-font,Georgia,"Times New Roman",serif);
  color:var(--jhp-heading)!important;letter-spacing:-.015em;
}
body.j26-home .jhp-premium-card__copy p{margin:0;font-size:var(--jhp-body-size);line-height:1.34;color:var(--jhp-body)!important}
body.j26-home .jhp-premium-card__button{
  width:var(--jhp-button-width);min-height:var(--jhp-button-height);margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:18px;
  padding:0 18px;border-radius:var(--jhp-button-radius);border:1px solid var(--jhp-button-border);
  background:linear-gradient(180deg,var(--jhp-button-1),var(--jhp-button-2));color:var(--jhp-button-text)!important;
  box-shadow:0 8px 18px rgba(0,74,55,.16);font-size:16px;font-weight:800;
}
body.j26-home .jhp-premium-card__button span{font-size:25px;line-height:1;font-weight:400}

body.j26-home .jhp-premium-kb-section{padding:0 0 16px}
body.j26-home .jhp-premium-kb{
  position:relative;z-index:1;min-height:var(--jhp-kb-min-height);
  border:1px solid var(--jhp-kb-border);border-radius:var(--jhp-kb-radius);
  background:linear-gradient(110deg,var(--jhp-kb-1) 0%,#f9fcfa 52%,var(--jhp-kb-2) 100%);
  box-shadow:0 9px 24px rgba(15,53,45,.08);overflow:hidden;
  display:grid;grid-template-columns:var(--jhp-kb-icon-zone) 1px minmax(0,1fr) var(--jhp-kb-books-width);
  align-items:center;gap:0;padding:0 0 0 var(--jhp-kb-left-padding);
}
body.j26-home .jhp-premium-kb::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(ellipse at 1% -18%,rgba(147,205,177,.22) 0 23%,transparent 23.5%),
    radial-gradient(ellipse at 63% 122%,rgba(79,145,112,.12),transparent 31%),
    linear-gradient(145deg,rgba(208,236,222,.13),transparent 54%);
}
body.j26-home .jhp-premium-kb__medallion{--jhp-icon-size:var(--jhp-kb-icon-size);--jhp-icon-art-size:var(--jhp-kb-icon-art-size);margin:0 auto;position:relative;z-index:2}
body.j26-home .jhp-premium-kb__divider{height:var(--jhp-kb-divider-height);width:1px;background:var(--jhp-kb-divider);position:relative;z-index:2}
body.j26-home .jhp-premium-kb__copy{position:relative;z-index:2;align-self:center;padding:12px 24px 12px var(--jhp-kb-copy-pad-left)}
body.j26-home .jhp-premium-kb__copy h2{margin:0 0 4px;color:var(--jhp-heading)!important;font:700 25px/1.12 var(--jsc-fe-heading-font,Georgia,"Times New Roman",serif)}
body.j26-home .jhp-premium-kb__copy p{margin:0 0 14px;color:var(--jhp-body)!important;font-size:16px;line-height:1.4}
body.j26-home .jhp-premium-kb__button{display:inline-flex;align-items:center;justify-content:center;gap:18px;width:var(--jhp-kb-button-width);min-height:var(--jhp-kb-button-height);padding:0 20px;border-radius:999px;border:1px solid #c99c15;background:linear-gradient(180deg,var(--jhp-kb-button-1),var(--jhp-kb-button-2));color:var(--jhp-kb-button-text)!important;text-decoration:none!important;font-weight:800;box-shadow:0 6px 14px rgba(142,105,5,.16)}
body.j26-home .jhp-premium-kb__button span{font-size:22px}
body.j26-home .jhp-premium-kb__books{align-self:stretch;height:100%;min-height:var(--jhp-kb-min-height);overflow:hidden;position:relative;z-index:2;opacity:var(--jhp-kb-books-opacity);background:transparent;clip-path:polygon(var(--jhp-kb-slant-depth) 0,100% 0,100% 100%,0 100%)}
body.j26-home .jhp-premium-kb__books::before{content:"";position:absolute;z-index:3;left:0;top:0;bottom:0;width:calc(var(--jhp-kb-slant-depth) + var(--jhp-kb-slant-edge));background:var(--jhp-kb-slant-edge-color);clip-path:polygon(calc(100% - var(--jhp-kb-slant-edge)) 0,100% 0,var(--jhp-kb-slant-edge) 100%,0 100%);pointer-events:none}
body.j26-home .jhp-premium-kb__books img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
body.j26-home .jhp-premium-kb-section:last-of-type{margin-bottom:0}

@media(max-width:1180px){
  body.j26-home .jhp-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.j26-home .jhp-premium-kb{--jhp-kb-left-padding:20px;--jhp-kb-icon-zone:165px;--jhp-kb-copy-pad-left:26px;grid-template-columns:var(--jhp-kb-icon-zone) 1px minmax(0,1fr) 300px}
}
@media(max-width:760px){
  body.j26-home .jhp-premium-services{padding-top:18px}
  body.j26-home .jhp-premium-intro__copy h2{font-size:34px}
  body.j26-home .jhp-premium-intro__copy p{font-size:16px}
  body.j26-home .jhp-premium-services::after{right:-48px;width:190px;height:160px}
  body.j26-home .jhp-premium-grid{grid-template-columns:1fr}
  body.j26-home .jhp-premium-card{min-height:300px}
  body.j26-home .jhp-premium-kb{--jhp-kb-left-padding:16px;--jhp-kb-icon-zone:96px;--jhp-kb-copy-pad-left:18px;grid-template-columns:var(--jhp-kb-icon-zone) 1px minmax(0,1fr);padding:16px 16px 16px var(--jhp-kb-left-padding);gap:0}
  body.j26-home .jhp-premium-kb__books{display:none}
  body.j26-home .jhp-premium-kb__button{min-width:0;width:100%}
  body.j26-home .jhp-premium-kb__copy h2{font-size:22px}
}
@media(max-width:520px){
  body.j26-home .jhp-premium-kb{grid-template-columns:1fr;text-align:center}
  body.j26-home .jhp-premium-kb__divider{display:none}
  body.j26-home .jhp-premium-kb__medallion{margin:0 auto}
}

/* Governance adapters: PHP emits values, CSS owns presentation. */
body.j26-home .j26-kb-card{width:var(--j26-kb-width,64%)}
body.j26-home .j26-dynamic-spacer{height:var(--j26-space,40px)}
