:root{--green-ink:#1C3D35;--green-deep:#142E28;--yellow:#F5C518;--orange:#E8732A;--cream:#FFF8EE;--sage:#8DA295;--sage-pale:#DCE3DA;--honey:#E8B23C;--clay:#C8693C;--paper:#F4ECDD;--oat:#EDE3D1;--ink:#2A2521;--ink-soft:#6F665B;--line:#E2D7C3;--line-soft:#EAE1D1;--serif:'Newsreader',Georgia,serif;--label:'League Spartan',sans-serif;--body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;}
* { box-sizing: border-box; }
  body { margin:0; background:var(--cream); color:var(--ink); font-family:var(--body); }
  #mobile-root { display: block !important; }
  #desktop-root { display: none !important; }
  @media (min-width: 880px) {
    #mobile-root { display: none !important; }
    #desktop-root { display: block !important; }
  }

/* Extracted from index.html so repeated/visual design CSS lives outside markup. */
.jp-i1{width:100%; min-height:100vh; box-sizing:border-box; background:var(--cream); display:flex; justify-content:center; align-items:flex-start; font-family:var(--body);}
.jp-i2{flex:none; width:100%;}
.jp-i3{background:var(--cream); overflow:hidden; box-shadow:0 10px 50px transparent; color:var(--ink);}
.jp-i4{padding:40px 26px 36px; background:var(--paper);}
.jp-i5{display:inline-block; background:var(--green-ink); color:var(--cream); font-size:11.5px; font-weight:800; letter-spacing:0.1em; text-transform:uppercase; padding:7px 13px; border-radius:999px; margin-bottom:20px;}
.jp-i6{font-family:var(--serif); font-weight:500; font-size:36px; line-height:1.12; letter-spacing:-0.01em; margin:0 0 22px;}
.jp-i7{display:flex; flex-direction:column; gap:15px; font-size:16.5px; line-height:1.58; color:#3a342d;}
.jp-i8{white-space: nowrap;}
.jp-i9{display:block; text-align:center; margin-top:28px; background:var(--yellow); color:var(--ink); text-decoration:none; font-weight:800; font-size:18px; padding:19px 24px; border-radius:14px; box-shadow:0 6px 18px transparent;}
.jp-i10{text-align:center; margin:14px 0 0; font-size:14px; font-weight:600; color:var(--ink-soft);}
.jp-i11{display:block; text-align:center; margin-top:24px; background:var(--green-ink); color:var(--cream); text-decoration:none; font-weight:700; font-size:18px; padding:19px 24px; border-radius:14px; box-shadow:0 6px 18px transparent;}
.jp-i12{padding:40px 26px; background:var(--green-ink); color:var(--cream);}
.jp-i13{font-size:12px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:#D7E2DA; margin-bottom:10px;}
.jp-i14{font-family:var(--serif); font-weight:500; font-size:26px; line-height:1.2; margin:0 0 14px; color:var(--cream);}
.jp-i15{margin:0 0 22px; font-size:16px; line-height:1.55; color:#D7E2DA;}
.jp-i16{margin:22px 0 0; font-size:16px; line-height:1.55; color:#D7E2DA;}
.jp-i17{padding:40px 26px; background:var(--yellow); color:var(--ink);}
.jp-i18{font-size:12px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:#5d4a12; margin-bottom:10px;}
.jp-i19{display:block; text-align:center; margin-top:26px; background:var(--green-ink); color:var(--cream); text-decoration:none; font-weight:700; font-size:18px; padding:19px 24px; border-radius:14px; box-shadow:0 6px 18px transparent;}
.jp-i20{margin:22px 0 0; font-size:15.5px; line-height:1.55; color:var(--ink-soft); font-style:italic;}
.jp-i21{padding:32px 26px; background:var(--cream);}
.jp-i22{background:var(--sage-pale); border-radius:22px; padding:26px 24px 0; display:flex; flex-direction:column; align-items:center; text-align:center;}
.jp-i23{margin:0 0 12px; font-size:16.5px; line-height:1.55; color:#3a342d;}
.jp-i24{margin:0 0 8px; font-size:15px; line-height:1.55; color:var(--ink-soft);}
.jp-i25{display:block; width:90%; max-width:300px; height:auto; margin-top:4px;}
.jp-i26{padding:44px 26px 48px; background:var(--green-ink); color:var(--cream);}
.jp-i27{font-family:var(--serif); font-weight:500; font-size:28px; line-height:1.15; margin:0 0 16px; color:var(--cream);}
.jp-i28{margin:0 0 26px; font-size:16.5px; line-height:1.55; color:#D7E2DA;}
.jp-i29{display:block; text-align:center; background:var(--yellow); color:var(--ink); text-decoration:none; font-weight:800; font-size:18px; padding:19px 24px; border-radius:14px; box-shadow:0 8px 22px rgba(0,0,0,0.22);}
.jp-i30{text-align:center; margin:14px 0 0; font-size:13.5px; line-height:1.5; color:#D7E2DA;}
.jp-i31{width:100%; background:var(--cream); color:var(--ink); font-family:var(--body);}
.jp-i32{width:100%; background:var(--paper); padding:20px 0;}
.jp-i33{max-width:1160px; margin:0 auto; padding:0 48px; display:flex; align-items:center; justify-content:space-between;}
.jp-i34{font-family:var(--serif); font-weight:500; font-size:21px; letter-spacing:-0.01em;}
.jp-i35{font-size:13px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:var(--green-ink);}
.jp-i36{background:var(--paper); padding:72px 48px 84px;}
.jp-i37{max-width:1160px; margin:0 auto; display:grid; grid-template-columns:1.05fr 0.85fr; gap:72px; align-items:center;}
.jp-i38{display:inline-block; background:var(--green-ink); color:var(--cream); font-size:12.5px; font-weight:800; letter-spacing:0.1em; text-transform:uppercase; padding:8px 16px; border-radius:999px; margin-bottom:26px;}
.jp-i39{font-family:var(--serif); font-weight:500; font-size:56px; line-height:1.1; letter-spacing:-0.01em; margin:0 0 28px; max-width:620px;}
.jp-i40{display:flex; flex-direction:column; gap:16px; font-size:18px; line-height:1.6; color:#3a342d; max-width:560px;}
.jp-i41{white-space:nowrap;}
.jp-i42{display:flex; align-items:center; gap:20px; margin-top:36px;}
.jp-i43{display:inline-block; background:var(--yellow); color:var(--ink); text-decoration:none; font-weight:800; font-size:18px; padding:19px 34px; border-radius:14px; box-shadow:0 6px 18px transparent;}
.jp-i44{font-size:14px; font-weight:600; color:var(--ink-soft);}
.jp-i45{background:var(--cream); border-radius:28px; padding:40px 36px; box-shadow:0 20px 60px transparent;}
.jp-i46{font-size:12px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:var(--green-ink); margin-bottom:18px;}
.jp-i47{background:var(--sage-pale); border-radius:14px; padding:16px 18px; font-size:16px; font-weight:700; display:flex; align-items:center; justify-content:space-between;}
.jp-i48{font-size:12px; font-weight:800; color:var(--green-ink);}
.jp-i49{text-align:center; margin-top:40px;}
.jp-i50{display:inline-block; background:var(--green-ink); color:var(--cream); text-decoration:none; font-weight:700; font-size:18px; padding:19px 36px; border-radius:14px; box-shadow:0 6px 18px transparent;}
.jp-i51{background:var(--green-ink); color:var(--cream); padding:88px 48px;}
.jp-i52{font-size:13px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:#D7E2DA; margin-bottom:12px;}
.jp-i53{font-family:var(--serif); font-weight:500; font-size:38px; line-height:1.18; margin:0 0 16px; color:var(--cream);}
.jp-i54{margin:0; font-size:17px; line-height:1.6; color:#D7E2DA;}
.jp-i55{display:grid; grid-template-columns:1fr 1fr 1fr; gap:24px;}
.jp-i56{text-align:center; margin:36px 0 0; font-size:17px; line-height:1.6; color:#D7E2DA;}
.jp-i57{background:var(--yellow); color:var(--ink); padding:88px 48px;}
.jp-i58{max-width:1160px; margin:0 auto; display:grid; grid-template-columns:0.9fr 1.1fr; gap:64px; align-items:center;}
.jp-i59{font-size:13px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:#5d4a12; margin-bottom:14px;}
.jp-i60{font-family:var(--serif); font-weight:500; font-size:38px; line-height:1.18; margin:0 0 28px;}
.jp-i61{display:inline-block; text-align:center; background:var(--green-ink); color:var(--cream); text-decoration:none; font-weight:700; font-size:18px; padding:19px 36px; border-radius:14px; box-shadow:0 6px 18px transparent;}
.jp-i62{display:grid; grid-template-columns:1fr 1fr; gap:20px 40px; max-width:920px; margin:0 auto;}
.jp-i63{grid-column:1 / -1; display:flex; gap:14px; align-items:flex-start; justify-content:center;}
.jp-i64{font-size:17px; line-height:1.5; color:#3a342d; max-width:520px;}
.jp-i65{text-align:center; margin:32px 0 0; font-size:16px; line-height:1.55; color:var(--ink-soft); font-style:italic; max-width:640px; margin-left:auto; margin-right:auto;}
.jp-i66{background:var(--cream); padding:0 48px 88px;}
.jp-i67{max-width:1160px; margin:0 auto; background:var(--sage-pale); border-radius:28px; padding:56px; display:grid; grid-template-columns:0.8fr 1.2fr; gap:56px; align-items:center;}
.jp-i68{display:block; width:100%; height:auto; border-radius:20px;}
.jp-i69{margin:0 0 16px; font-size:19px; line-height:1.55; color:#3a342d;}
.jp-i70{margin:0; font-size:16.5px; line-height:1.6; color:var(--ink-soft);}
.jp-i71{background:var(--green-ink); color:var(--cream); padding:80px 48px;}
.jp-i72{max-width:820px; margin:0 auto; text-align:center;}
.jp-i73{font-family:var(--serif); font-weight:500; font-size:42px; line-height:1.15; margin:0 0 20px; color:var(--cream);}
.jp-i74{margin:0 0 32px; font-size:18px; line-height:1.6; color:#D7E2DA;}
.jp-i75{display:inline-block; text-align:center; background:var(--yellow); color:var(--ink); text-decoration:none; font-weight:800; font-size:18px; padding:20px 44px; border-radius:14px; box-shadow:0 8px 22px rgba(0,0,0,0.22);}
.jp-i76{margin:16px 0 0; font-size:14px; line-height:1.5; color:#D7E2DA;}

/* Previously repeated classes from the landing page. */
/* Auto-extracted repeated design styles from index.html. Keep reusable colour/spacing/layout rules here instead of repeated inline attributes. */
.jp-u1{background:linear-gradient(transparent 60%, var(--yellow) 60%);}
.jp-u2{margin:0;}
.jp-u3{font-weight:700; color:var(--ink);}
.jp-u4{padding:38px 26px; background:var(--cream);}
.jp-u5{font-size:12px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:var(--green-ink); margin-bottom:10px;}
.jp-u6{font-family:var(--serif); font-weight:500; font-size:26px; line-height:1.2; margin:0 0 22px;}
.jp-u7{display:flex; flex-direction:column; gap:12px;}
.jp-u8{display:flex; gap:14px; align-items:flex-start; background:var(--paper); border-radius:16px; padding:16px 17px;}
.jp-u9{flex:none; font-size:24px; line-height:1.2;}
.jp-u10{font-size:16px; line-height:1.45; color:#3a342d;}
.jp-u11{display:flex; flex-direction:column; gap:14px;}
.jp-u12{display:block; width:100%; height:auto; border-radius:14px; box-shadow:0 6px 18px rgba(0,0,0,0.22);}
.jp-u13{font-family:var(--serif); font-style:italic; color:var(--yellow);}
.jp-u14{display:flex; gap:13px; align-items:flex-start;}
.jp-u15{flex:none; width:24px; height:24px; border-radius:999px; background:var(--green-ink); color:var(--cream); font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center; margin-top:1px;}
.jp-u16{font-size:16.5px; line-height:1.5;}
.jp-u17{font-weight:800;}
.jp-u18{flex:none; width:22px; height:22px; border-radius:999px; background:var(--sage-pale); color:var(--green-ink); font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center; margin-top:1px;}
.jp-u19{font-size:16.5px; line-height:1.5; color:#3a342d;}
.jp-u20{font-family:var(--serif); font-style:italic;}
.jp-u21{color:var(--yellow);}
.jp-u22{background:var(--paper); border-radius:14px; padding:16px 18px; font-size:16px; font-weight:600;}
.jp-u23{background:var(--cream); padding:88px 48px;}
.jp-u24{max-width:1160px; margin:0 auto;}
.jp-u25{text-align:center; max-width:640px; margin:0 auto 48px;}
.jp-u26{font-size:13px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:var(--green-ink); margin-bottom:12px;}
.jp-u27{font-family:var(--serif); font-weight:500; font-size:38px; line-height:1.18; margin:0;}
.jp-u28{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
.jp-u29{display:flex; gap:16px; align-items:flex-start; background:var(--paper); border-radius:18px; padding:22px 24px;}
.jp-u30{flex:none; font-size:28px; line-height:1.2;}
.jp-u31{font-size:17px; line-height:1.5; color:#3a342d;}
.jp-u32{display:block; width:100%; height:auto; border-radius:16px; box-shadow:0 10px 26px rgba(0,0,0,0.25);}
.jp-u33{display:flex; gap:14px; align-items:flex-start; background:var(--cream); border-radius:16px; padding:20px;}
.jp-u34{flex:none; width:26px; height:26px; border-radius:999px; background:var(--green-ink); color:var(--cream); font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center; margin-top:1px;}
.jp-u35{display:flex; gap:14px; align-items:flex-start;}
.jp-u36{flex:none; width:24px; height:24px; border-radius:999px; background:var(--sage-pale); color:var(--green-ink); font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center; margin-top:1px;}

body{font-family:var(--body);background:var(--cream);color:var(--ink)}

/* JP logo placement */
.mobile-logo-strip{display:flex;align-items:center;justify-content:center;background:var(--paper);padding:18px 24px;border-bottom:1px solid var(--line)}
.site-logo{display:block;width:180px;max-width:52vw;height:auto}
.logo-link{display:inline-flex;align-items:center;text-decoration:none}
.logo-link .site-logo{width:180px;max-width:220px}

/* SEO FAQ section */
.faq-section{background:var(--cream);padding:40px 26px;border-top:1px solid var(--line-soft)}
.faq-section-desktop{padding:88px 48px;background:var(--cream)}
.faq-wrap{max-width:920px;margin:0 auto}
.faq-eyebrow{font-family:var(--label);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--clay);margin-bottom:10px}
.faq-title{font-family:var(--serif);font-weight:500;font-size:clamp(28px,4vw,38px);line-height:1.16;color:var(--green-ink);margin:0 0 24px}
.faq-list{display:grid;gap:12px;max-width:860px}
.faq-item{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px 18px;color:var(--ink)}
.faq-item summary{cursor:pointer;font-family:var(--serif);font-weight:600;font-size:18px;line-height:1.3;color:var(--green-ink)}
.faq-item p{margin:10px 0 0;font-size:15.5px;line-height:1.58;color:#3a342d}

.meta-pixel-noscript{display:none}
