/* JointBrex — jointbreakx.com
   Palette pre-checked for WCAG AA: every text/background pair below passes. */
:root{
  --primary:#173A5E;        /* deep blue — 11.65:1 on white */
  --primary-dark:#0F2C48;   /* 14.25:1 on white */
  --primary-mid:#1E4A73;
  --primary-tint:#E7EDF4;
  --accent:#C0492F;         /* coral — 4.96:1 both ways, safe for fills and text */
  --accent-dark:#A8391F;    /* 6.42:1 — for small accent text */
  --accent-light:#F0A184;   /* accent text on DARK backgrounds only */
  --accent-tint:#FBEEE9;
  --text:#414B5A;           /* body copy — 8.6:1 on white */
  --text-soft:#57616F;      /* secondary — 6.4:1 on white */
  --bg:#FFFFFF;
  --bg-alt:#F6F7F9;
  --border:#DDE2E9;
  --border-soft:#E7EAEF;
  --radius:16px;
  --bs-body-font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --bs-body-color:var(--text);
  --bs-body-bg:var(--bg);
  --bs-link-color:var(--accent-dark);
  --bs-link-hover-color:var(--primary);
  --bs-border-color:var(--border);
}
html{scroll-behavior:smooth;}
body{font-size:17px;line-height:1.75;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;padding-bottom:130px;overflow-x:hidden;}
@media (max-width:575px){body{padding-bottom:144px;}}
h1,h2,h3,h4,h5,h6{font-family:'DM Sans',system-ui,sans-serif;font-weight:700;color:var(--primary);letter-spacing:-.022em;line-height:1.2;}
h1{font-size:clamp(32px,4.2vw,52px);margin-bottom:.5em;}
h2{font-size:clamp(26px,3vw,38px);margin-bottom:.6em;}
h3{font-size:clamp(19px,1.9vw,24px);margin-bottom:.5em;}
h4{font-size:18.5px;}
p{margin-bottom:1.15rem;}
img{max-width:100%;height:auto;}
a{color:var(--bs-link-color);text-decoration:none;}
a:hover{text-decoration:underline;color:var(--primary);}
a:focus-visible,button:focus-visible,.btn:focus-visible,.accordion-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px;}
.lede{font-size:19.5px;line-height:1.7;color:var(--primary-mid);}
.eyebrow{display:inline-block;font-family:'DM Sans',sans-serif;font-size:13.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-dark);margin-bottom:14px;}
/* header */
.topbar{background:var(--primary-dark);color:#D7E0EA;font-size:15px;padding:9px 0;text-align:center;}
.topbar strong{color:#fff;}
.navbar{background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);padding:13px 0;}
.navbar-brand{font-family:'DM Sans',sans-serif;font-weight:700;font-size:25px;color:var(--primary)!important;display:flex;align-items:center;gap:10px;white-space:nowrap;}
.brand-mark{width:36px;height:36px;border-radius:10px;background:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;}
.brand-mark svg{width:20px;height:20px;}
.navbar .nav-link{color:var(--primary-mid)!important;font-weight:500;font-size:15.5px;padding:.5rem .55rem!important;white-space:nowrap;}
.navbar .nav-link:hover,.navbar .nav-link[aria-current="page"]{color:var(--accent-dark)!important;}
@media (min-width:992px) and (max-width:1320px){.navbar .nav-link{padding:.5rem .36rem!important;font-size:14.5px;}}
/* buttons */
.btn{font-family:'DM Sans',sans-serif;font-weight:700;border-radius:10px;padding:13px 26px;font-size:16px;border:0;transition:.18s;}
.btn-accent{background:var(--accent);color:#fff!important;}
.btn-accent:hover{background:var(--accent-dark);color:#fff!important;text-decoration:none;}
.btn-primary-jb{background:var(--primary);color:#fff!important;}
.btn-primary-jb:hover{background:var(--primary-dark);color:#fff!important;text-decoration:none;}
.btn-outline-jb{background:transparent;color:var(--primary)!important;box-shadow:inset 0 0 0 2px var(--border);}
.btn-outline-jb:hover{box-shadow:inset 0 0 0 2px var(--primary);color:var(--primary)!important;text-decoration:none;}
.btn-on-dark{background:#fff;color:var(--primary)!important;}
.btn-on-dark:hover{background:var(--primary-tint);color:var(--primary)!important;text-decoration:none;}
.btn-lg{padding:16px 34px;font-size:17.5px;}
/* sections */
section{padding:74px 0;}
@media (max-width:767px){section{padding:50px 0;}}
/* Bootstrap g-5 gutters (-24px/side) exceed the 12px container padding on phones */
@media (max-width:767px){.row.g-5,.row.g-4{--bs-gutter-x:1.5rem;}}
.sec-alt{background:var(--bg-alt);}
.sec-dark{background:var(--primary);}
.sec-dark h1,.sec-dark h2,.sec-dark h3,.sec-dark h4{color:#FFFFFF;}
.sec-dark p,.sec-dark li,.sec-dark .lede{color:#D2DCE7;}
.sec-dark .eyebrow{color:var(--accent-light);}
.sec-dark a{color:var(--accent-light);} .sec-dark a:hover{color:#fff;}
.sec-dark strong{color:#fff;}
.hero{background:linear-gradient(165deg,#EAF0F6 0%,var(--bg-alt) 55%,#fff 100%);padding:60px 0 76px;}
.hero-art{position:relative;text-align:center;}
.hero-art::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:74%;padding-bottom:74%;border-radius:50%;background:radial-gradient(circle,rgba(192,73,47,.15) 0%,rgba(192,73,47,0) 68%);}
.hero-art img{position:relative;z-index:2;max-width:340px;width:100%;height:auto;object-fit:contain;}
/* cards */
.card-jb{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:30px;height:100%;transition:.18s;}
.card-jb:hover{border-color:var(--accent);box-shadow:0 10px 30px rgba(23,58,94,.08);}
.card-jb h3{font-size:20px;}
.card-jb p{color:var(--text);}
.sec-dark .card-jb{background:#1E4A73;border-color:#2F5C86;}
.sec-dark .card-jb h3{color:#fff;} .sec-dark .card-jb p{color:#CFDAE6;}
.ic{width:52px;height:52px;border-radius:13px;background:var(--accent-tint);display:flex;align-items:center;justify-content:center;margin-bottom:17px;}
.ic svg{width:25px;height:25px;stroke:var(--accent-dark);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.sec-dark .ic{background:rgba(240,161,132,.16);} .sec-dark .ic svg{stroke:var(--accent-light);}
.pillrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.pill{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--primary);background:#fff;border:1px solid var(--border);padding:9px 16px;border-radius:60px;}
.pill::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);}
.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:28px;}
.statbox{background:#fff;border:1px solid var(--border);border-radius:14px;padding:19px 14px;text-align:center;}
.statbox .n{font-family:'DM Sans',sans-serif;font-size:25px;font-weight:700;color:var(--accent-dark);line-height:1;}
.statbox .l{font-size:14px;color:var(--text-soft);margin-top:8px;line-height:1.4;}
@media (max-width:575px){.statgrid{grid-template-columns:1fr 1fr;}}
/* benefits 50/50 */
.bimg{background:var(--bg-alt);border:1px solid var(--border-soft);border-radius:var(--radius);padding:30px;text-align:center;}
.bimg img{max-width:100%;height:auto;object-fit:contain;max-height:380px;}
@media (max-width:575px){.bimg{padding:18px;}.bimg img{max-width:100%!important;}}
/* trust badges */
.badges{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;max-width:800px;margin:0 auto;}
.badges img{max-width:96px;width:100%;height:auto;margin:0 auto;display:block;}
.badges .cap{text-align:center;font-size:15px;font-weight:600;color:var(--primary);margin-top:12px;}
@media (max-width:600px){.badges{grid-template-columns:1fr 1fr;gap:28px;}}
/* spec table */
.spec{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;}
.spec .head{background:var(--primary);color:#fff;padding:15px 24px;font-family:'DM Sans',sans-serif;font-weight:700;font-size:18px;}
.spec .r{display:grid;grid-template-columns:1fr auto;gap:16px;padding:13px 24px;border-bottom:1px solid var(--border-soft);font-size:16.5px;color:var(--text);}
.spec .r:last-child{border-bottom:none;}
.spec .r b{color:var(--primary);font-weight:700;white-space:nowrap;}
.spec .r.total{background:var(--primary-tint);}
/* pricing */
.price-card{background:#fff;border:2px solid var(--border);border-radius:20px;padding:30px 24px;text-align:center;height:100%;position:relative;transition:.18s;}
.price-card:hover{border-color:var(--accent);}
.price-card.best{background:var(--primary);border-color:var(--primary);}
.price-card.best h3,.price-card.best .amt{color:#fff;}
.price-card.best .per,.price-card.best .sub,.price-card.best li{color:#CFDAE6;}
.price-card .tag{position:absolute;top:-15px;left:50%;transform:translateX(-50%);background:var(--accent);color:#fff;font-family:'DM Sans',sans-serif;font-weight:700;font-size:13.5px;letter-spacing:.05em;text-transform:uppercase;padding:7px 18px;border-radius:60px;white-space:nowrap;}
.price-card img{max-width:100%;max-height:170px;width:auto;object-fit:contain;margin:16px auto 18px;display:block;}
.price-card .amt{font-family:'DM Sans',sans-serif;font-size:48px;font-weight:700;color:var(--primary);line-height:1;}
.price-card .per{font-size:15.5px;color:var(--text-soft);margin-top:6px;}
.price-card .sub{font-size:15.5px;color:var(--text-soft);margin-top:14px;}
.price-card ul{list-style:none;padding:0;margin:18px 0;text-align:left;}
.price-card li{font-size:15.5px;padding:7px 0 7px 27px;position:relative;color:var(--text);}
.price-card li::before{content:"";position:absolute;left:0;top:14px;width:13px;height:8px;border-left:2.5px solid var(--accent);border-bottom:2.5px solid var(--accent);transform:rotate(-45deg);}
.price-card.best li::before{border-color:var(--accent-light);}
/* faq */
.faq-item{background:#fff;border:1px solid var(--border);border-radius:14px;margin-bottom:12px;overflow:hidden;}
.faq-item .accordion-button{font-family:'DM Sans',sans-serif;font-weight:700;font-size:17.5px;color:var(--primary);background:#fff;padding:20px 24px;box-shadow:none;}
.faq-item .accordion-button:not(.collapsed){background:var(--primary-tint);color:var(--primary);}
.faq-item .accordion-body{padding:4px 24px 22px;font-size:16.5px;color:var(--text);}
/* notes */
.note{background:var(--accent-tint);border:1px solid #EBC7B9;border-left:5px solid var(--accent);border-radius:14px;padding:25px 28px;margin:26px 0;}
.note h3{font-size:19px;color:#8A2E17;margin-bottom:11px;}
.note p,.note li{font-size:16.5px;color:#5C3226;line-height:1.7;}
.note ul{margin:10px 0 0 18px;} .note li{margin-bottom:7px;}
.note strong{color:#4A281E;}
.info{background:var(--primary-tint);border:1px solid #C7D5E4;border-left:5px solid var(--primary);border-radius:14px;padding:25px 28px;margin:26px 0;}
.info h3{font-size:19px;color:var(--primary-dark);margin-bottom:11px;}
.info p,.info li{font-size:16.5px;color:#2E3F52;line-height:1.7;}
.info ul{margin:10px 0 0 18px;} .info li{margin-bottom:7px;}
.ownernote{border:2px dashed var(--accent);background:#FDF6F3;border-radius:14px;padding:25px 28px;margin-top:26px;}
.ownernote h3{font-size:19px;color:#8A2E17;margin-bottom:11px;}
.ownernote p,.ownernote li{font-size:16px;color:#5C3226;line-height:1.7;}
.ownernote ul{margin:10px 0 0 18px;} .ownernote li{margin-bottom:7px;}
.rev-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:26px;height:100%;}
.rev-card .ph{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#8A2E17;background:var(--accent-tint);border:1px dashed #E0B3A1;padding:5px 12px;border-radius:40px;margin-bottom:14px;}
.rev-card blockquote{font-size:16.5px;font-style:italic;color:var(--primary-mid);margin:0 0 14px;line-height:1.65;}
.rev-card .who{font-size:15px;color:var(--text-soft);border-top:1px solid var(--border-soft);padding-top:12px;}
.bonus-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;height:100%;}
.bonus-card img{width:100%;height:auto;display:block;}
.bonus-card .body{padding:24px;}
.cmp{width:100%;border-collapse:collapse;font-size:16.5px;border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.cmp th{background:var(--primary);color:#fff;font-family:'DM Sans',sans-serif;font-size:15px;text-align:left;padding:14px 16px;}
.cmp td{padding:13px 16px;border-bottom:1px solid var(--border-soft);color:var(--text);background:#fff;}
.cmp td:first-child{color:var(--primary);font-weight:600;}
.cmp tr:last-child td{border-bottom:none;}
.cmp .yes{color:#1F6B45;font-weight:700;} .cmp .no{color:#A8391F;font-weight:700;}
@media (max-width:800px){.cmp,.cmp tbody,.cmp tr,.cmp td{display:block;width:100%;}.cmp thead{display:none;}.cmp tr{border-bottom:2px solid var(--border);}.cmp td{border:0;padding:6px 16px;}.cmp td::before{content:attr(data-l);display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--primary);font-weight:700;}}
.step{display:grid;grid-template-columns:58px 1fr;gap:22px;padding:26px 0;border-bottom:1px solid var(--border-soft);}
.step:last-child{border-bottom:none;}
.step .n{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;color:#fff;background:var(--primary);width:50px;height:50px;border-radius:13px;display:flex;align-items:center;justify-content:center;}
@media (max-width:575px){.step{grid-template-columns:1fr;gap:12px;}}
.prose{font-size:17px;color:var(--text);}
.prose h2{margin-top:1.7em;} .prose h3{margin-top:1.4em;color:var(--primary-mid);}
.prose ul,.prose ol{margin-bottom:1.2rem;} .prose li{margin-bottom:.55rem;color:var(--text);}
.prose strong{color:var(--primary);}
code{color:#8A2E63;background:#F3F1F4;padding:2px 6px;border-radius:5px;font-size:.92em;}
.crumbs{font-size:15px;color:var(--text-soft);padding:18px 0 0;}
.crumbs a{color:var(--accent-dark);}
.src{background:var(--bg-alt);border:1px solid var(--border-soft);border-radius:14px;padding:23px 26px;margin-top:28px;}
.src h4{font-size:17.5px;margin-bottom:12px;}
.src ul{margin:0;padding-left:20px;} .src li{font-size:16px;margin-bottom:7px;}
.disc{background:var(--bg-alt);border-radius:14px;padding:22px 26px;margin-top:22px;font-size:15.5px;color:var(--text-soft);}
.post-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:26px;height:100%;transition:.18s;}
.post-card:hover{border-color:var(--accent);box-shadow:0 10px 28px rgba(23,58,94,.08);}
.post-card .tag{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dark);}
.post-card h3{font-size:20px;margin:10px 0;}
/* footer */
footer{background:var(--primary-dark);color:#AFBDCC;padding:60px 0 28px;}
footer h4{color:#fff;font-size:17.5px;margin-bottom:15px;font-family:'DM Sans',sans-serif;}
footer p{color:#AFBDCC;}
footer a{color:#C0CCD9;} footer a:hover{color:#fff;}
footer ul{list-style:none;padding:0;margin:0;} footer li{margin-bottom:9px;font-size:16px;}
.foot-legal{border-top:1px solid #2A4262;margin-top:34px;padding-top:26px;font-size:15px;color:#A2B0C1;}
.foot-legal strong{color:#E2E8F0;}
/* fixed CTA */
.cta-bar{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--primary-dark);border-top:3px solid var(--accent);box-shadow:0 -6px 24px rgba(0,0,0,.25);}
.cta-bar .inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;}
.cta-bar .lbl{font-family:'DM Sans',sans-serif;font-weight:700;font-size:18px;color:#fff;line-height:1.28;}
.cta-bar .sub{font-size:14.5px;color:var(--accent-light);font-weight:600;}
.cta-bar .btn{padding:12px 26px;font-size:16px;}
@media (max-width:575px){
  .cta-bar .inner{padding:11px 0;gap:10px;}
  .cta-bar .lbl{font-size:14.5px;} .cta-bar .sub{font-size:13px;}
  .cta-bar .btn{padding:11px 15px;font-size:14px;}
}
