/*
 * JPW shared brand palette
 * Aligns all non-front templates with the CAIO homepage: ink, paper and construction yellow.
 */

body.jpw-site{
  --ink:#232323;
  --muted:#595959;
  --paper:#f3f3f1;
  --line:#d8d8d3;
  --accent:#f2c12e;
  --accent-soft:#fbefc4;
  --accent-ink:#684f00;
  --teal:#232323;
  background:var(--paper);
  color:var(--ink);
}

body.jpw-site #jpw-main{background:var(--paper)!important;color:var(--ink)}
body.jpw-site .jpw-wrap{max-width:1120px;padding-inline:24px}
body.jpw-site a:focus-visible,
body.jpw-site button:focus-visible,
body.jpw-site input:focus-visible,
body.jpw-site textarea:focus-visible{outline-color:var(--accent)}

/* Header and wordmark */
body.jpw-site .jpw-header{
  position:sticky;
  top:0;
  height:68px;
  z-index:50;
  background:rgba(243,243,241,.94);
  border-color:var(--line);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
body.admin-bar.jpw-site .jpw-header{top:32px}
body.jpw-site .jpw-header .jpw-wrap{height:68px}
body.jpw-site .jpw-wordmark{font-family:"Shippori Mincho B1","Yu Mincho",serif;font-size:25px;letter-spacing:.04em;color:var(--ink)}
body.jpw-site .jpw-wordmark>span{
  display:inline-block;
  width:9px;
  height:9px;
  margin-left:6px;
  overflow:hidden;
  vertical-align:.2em;
  background:var(--accent);
  border:1px solid var(--ink);
  color:transparent;
}
body.jpw-site .jpw-brand small{border-left:0;padding-left:0;color:var(--muted);font-size:11px;letter-spacing:.04em}
body.jpw-site .jpw-header .jpw-brand,
body.jpw-site .jpw-footer .jpw-brand,
body.jpw-site .jpw-breadcrumb a,
body.jpw-site .jpw-footer-links a{display:inline-flex;align-items:center;min-width:44px;min-height:44px}
body.jpw-site .jpw-nav{gap:22px;font-size:13px}
body.jpw-site .jpw-nav a:hover{color:var(--accent-ink)}
body.jpw-site .jpw-nav a.jpw-nav-cta{background:var(--ink);color:#fff;border-radius:4px}
body.jpw-site .jpw-nav a.jpw-nav-cta:hover{background:#383838;color:#fff}
body.jpw-site .jpw-menu{border-color:var(--ink);color:var(--ink)}

/* Type and shared controls */
body.jpw-site h1,
body.jpw-site #jpw-main h2{font-family:"Shippori Mincho B1","Yu Mincho",serif;font-weight:800}
body.jpw-site .jpw-eyebrow{color:var(--accent-ink);font-family:inherit;font-weight:700;letter-spacing:.08em}
body.jpw-site .jpw-highlight{color:var(--ink);box-shadow:inset 0 -.32em 0 var(--accent-soft)}
body.jpw-site .jpw-button{background:var(--ink);border-color:var(--ink);color:#fff!important;border-radius:4px}
body.jpw-site .jpw-button:hover{background:#383838}
body.jpw-site .jpw-button.is-light{background:var(--accent);border-color:var(--accent);color:var(--ink)!important}
body.jpw-site .jpw-button.is-light:hover{background:#e2af16}
body.jpw-site .jpw-text-link{border-color:var(--accent);color:var(--ink)}
body.jpw-site .jpw-text-link:hover{color:var(--accent-ink)}
body.jpw-site .jpw-list li:before{color:var(--accent-ink)}

/* Inner-page hero */
body.jpw-site .jpw-inner-hero{
  position:relative;
  overflow:hidden;
  padding:72px 0 76px;
  background:#fff;
  border-bottom:1px solid var(--line);
}
body.jpw-site .jpw-inner-hero::after{
  content:"";
  position:absolute;
  right:clamp(24px,7vw,110px);
  top:0;
  width:6px;
  height:100%;
  background:repeating-linear-gradient(-45deg,var(--ink) 0 6px,var(--accent) 6px 12px);
  opacity:.92;
}
body.jpw-site .jpw-inner-hero h1{color:var(--ink)}
body.jpw-site .jpw-inner-hero p,
body.jpw-site .jpw-breadcrumb{color:var(--muted)}

/* Sections, cards and tables */
body.jpw-site .jpw-section{background:var(--paper)}
body.jpw-site .jpw-section.is-white{background:#fff}
body.jpw-site .jpw-section.is-dark{background:var(--ink);color:#fff}
body.jpw-site .jpw-section.is-dark .jpw-eyebrow{color:var(--accent)!important}
body.jpw-site .jpw-section.is-dark .jpw-section-head>p{color:#d0d0d0!important}
body.jpw-site .jpw-num{color:var(--accent-ink)}
body.jpw-site .jpw-service p,
body.jpw-site .jpw-section-head p,
body.jpw-site .jpw-faq details p{color:var(--muted)}
body.jpw-site .jpw-note{border-left-color:var(--accent);background:var(--accent-soft)}
body.jpw-site .jpw-info-row,
body.jpw-site .jpw-faq details,
body.jpw-site .jpw-list li{border-color:var(--line)}

body.jpw-site .jpw-pricing-section{
  background:linear-gradient(145deg,#ecece8 0%,#f8f8f6 58%,#e6e6e1 100%);
}
body.jpw-site .jpw-pricing-section:before{color:rgba(35,35,35,.04)}
body.jpw-site .jpw-plan{background:#fff;border-color:var(--line);box-shadow:0 14px 35px rgba(35,35,35,.07)}
body.jpw-site .jpw-plan:hover{border-color:#aaa;box-shadow:0 22px 48px rgba(35,35,35,.12)}
body.jpw-site .jpw-plan-index{color:var(--muted)}
body.jpw-site .jpw-plan-price strong{color:var(--ink)}
body.jpw-site .jpw-plan.is-featured{background:var(--ink);border-color:var(--ink);color:#fff}
body.jpw-site .jpw-plan.is-featured .jpw-plan-index{color:#cfcfcf}
body.jpw-site .jpw-plan.is-featured .jpw-plan-price strong,
body.jpw-site .jpw-plan.is-featured .jpw-plan-link{color:var(--accent)}
body.jpw-site .jpw-plan-badge{background:var(--accent);color:var(--ink)}

body.jpw-site .jpw-contact-card,
body.jpw-site .jpw-price{background:#fff;border-color:var(--line)}
body.jpw-site .jpw-contact-template{background:var(--paper);border-left:5px solid var(--accent)}
body.jpw-site .jpw-prose h2{padding-left:18px!important;border-left:5px solid var(--accent)!important}
body.jpw-site .jpw-prose h3{color:var(--ink)}
body.jpw-site .jpw-prose a{text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
body.jpw-site .jpw-prose th{background:var(--paper)}
body.jpw-site .jpw-prose th,
body.jpw-site .jpw-prose td{border-color:var(--line)}
body.jpw-site.single-post .jpw-article-featured{border-radius:6px;background:var(--paper);box-shadow:0 18px 48px rgba(35,35,35,.12)}

/* Commerce and legacy green modules */
body.jpw-site .jpw-case-visual,
body.jpw-site .jpw-advisor-board,
body.jpw-site .jpw-why-advisor,
body.jpw-site .jpw-problem-card span,
body.jpw-site .jpw-v2-case-head,
body.jpw-site .jpw-web-plan,
body.jpw-site .jpw-why-copy blockquote{background:var(--ink);border-color:#444;color:#fff;box-shadow:none}
body.jpw-site .jpw-case-visual strong,
body.jpw-site .jpw-v2-service-index,
body.jpw-site .jpw-v2-output small,
body.jpw-site .jpw-v2-case-head>span,
body.jpw-site .jpw-why-advisor figcaption small,
body.jpw-site .jpw-web-plan-label,
body.jpw-site .jpw-why-copy blockquote span{color:var(--accent)}
body.jpw-site .jpw-v2-practice,
body.jpw-site .jpw-v2-why,
body.jpw-site .jpw-v2-insights{background:var(--paper)}
body.jpw-site .jpw-v2-case,
body.jpw-site .jpw-light-plan,
body.jpw-site .jpw-v2-insight-card{background:#fff;border-color:var(--line);color:var(--ink)}
body.jpw-site .jpw-light-plan{border-left-color:var(--accent)}
body.jpw-site .jpw-system-step.is-primary,
body.jpw-site .jpw-web-plan-link{background:var(--accent);border-color:var(--accent);color:var(--ink)!important}
body.jpw-site .jpw-data-period{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}
body.jpw-site .jpw-data-table thead th{background:var(--paper);color:var(--ink)}
body.jpw-site .jpw-data-table tbody th,
body.jpw-site .jpw-data-table tbody td,
body.jpw-site .jpw-v2-case-body h4,
body.jpw-site .jpw-v2-insight-copy h3,
body.jpw-site .jpw-v2-insight-copy strong{color:var(--ink)}
body.jpw-site .jpw-deliverable{color:var(--muted);border-color:var(--line)}
body.jpw-site .jpw-commerce-art{background:var(--ink);color:#fff;border-color:#444}
body.jpw-site .jpw-commerce-art.is-wp{background:var(--accent-soft);color:var(--ink)}
body.jpw-site .jpw-commerce-art.is-mall{background:var(--paper);color:var(--ink)}
body.jpw-site .jpw-mini-product{border-color:#666}
body.jpw-site .jpw-mini-pay,
body.jpw-site .jpw-content-stack span:last-child{background:var(--accent);color:var(--ink)}
body.jpw-site .jpw-content-stack,
body.jpw-site .jpw-content-stack span{color:var(--ink)}
body.jpw-site .jpw-shop-page b{background:var(--accent)!important}
body.jpw-site .jpw-roadmap li b{color:var(--accent-ink)}

/* Archives */
body.jpw-site .jpw-archive-hero{background:var(--ink);color:#fff}
body.jpw-site .jpw-archive-hero h1{color:#fff}
body.jpw-site .jpw-archive-hero::before{
  background:
    radial-gradient(circle at 82% 12%,rgba(242,193,46,.22),transparent 27%),
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:auto,72px 72px,72px 72px;
}
body.jpw-site .jpw-archive-hero .jpw-breadcrumb,
body.jpw-site .jpw-archive-hero .jpw-breadcrumb a{color:#cfcfcf}
body.jpw-site .jpw-archive-hero .jpw-eyebrow,
body.jpw-site .jpw-archive-intro span{color:var(--accent)}
body.jpw-site .jpw-archive-intro p{color:#d0d0d0}
body.jpw-site .jpw-archive-section{background:linear-gradient(180deg,var(--paper) 0%,#fff 55%,var(--paper) 100%)}
body.jpw-site .jpw-archive-card{border-color:var(--line);border-radius:6px;box-shadow:0 12px 35px rgba(35,35,35,.07)}
body.jpw-site .jpw-archive-card:hover{border-color:#aaa;box-shadow:0 25px 55px rgba(35,35,35,.14)}
body.jpw-site .jpw-archive-media{background:var(--ink)}
body.jpw-site .jpw-archive-number{background:rgba(35,35,35,.78)}
body.jpw-site .jpw-archive-fallback{background:radial-gradient(circle at 75% 20%,#555,var(--ink) 58%)}
body.jpw-site .jpw-archive-meta{color:var(--muted)}
body.jpw-site .jpw-archive-meta span{background:var(--accent-soft);color:var(--accent-ink)}
body.jpw-site .jpw-archive-card-body>p{color:var(--muted)}
body.jpw-site .jpw-archive-read{border-color:var(--line);color:var(--ink)}
body.jpw-site .jpw-archive-read b{background:var(--paper)}
body.jpw-site .jpw-archive-card:hover .jpw-archive-read b{background:var(--accent)}
body.jpw-site .jpw-archive-card:focus-within{outline-color:var(--accent)}
body.jpw-site .jpw-archive-pagination .page-numbers{border-color:var(--line);color:var(--ink)}
body.jpw-site .jpw-archive-pagination .prev,
body.jpw-site .jpw-archive-pagination .next{
  position:static!important;
  inset:auto!important;
  float:none!important;
  width:auto!important;
  min-width:44px;
  min-height:44px;
}

/* Final CTA and footer */
body.jpw-site .jpw-cta{background:var(--ink);color:#fff}
body.jpw-site .jpw-cta h2{color:#fff!important}
body.jpw-site .jpw-cta p{color:#cfcfcf}
body.jpw-site .jpw-cta .jpw-eyebrow{color:var(--accent)}
body.jpw-site .jpw-cta .jpw-button{background:var(--accent);border-color:var(--accent);color:var(--ink)!important}
body.jpw-site .jpw-cta .jpw-button:hover{background:#e2af16}
body.jpw-site .jpw-footer{background:var(--ink);color:#bdbdbd}
body.jpw-site .jpw-footer .jpw-wordmark,
body.jpw-site .jpw-footer a{color:#fff}
body.jpw-site .jpw-footer .jpw-brand small,
body.jpw-site .jpw-footer .jpw-small,
body.jpw-site .jpw-footer-bottom{color:#bdbdbd}
body.jpw-site .jpw-footer-bottom{border-color:#444}

@media(max-width:782px){body.admin-bar.jpw-site .jpw-header{top:46px}}
@media(max-width:760px){
  body.jpw-site .jpw-wrap{padding-inline:22px}
  body.jpw-site .jpw-header,
  body.jpw-site .jpw-header .jpw-wrap{height:68px}
  body.jpw-site .jpw-nav{top:68px;background:var(--paper);border-color:var(--line);box-shadow:0 12px 20px rgba(35,35,35,.08)}
  body.jpw-site .jpw-inner-hero{padding:44px 0 50px}
  body.jpw-site .jpw-inner-hero::after{right:10px;width:4px}
  body.jpw-site .jpw-brand small{display:none}
  body.jpw-site.single-post .jpw-article-featured{border-radius:4px}
}

@media(prefers-reduced-motion:reduce){body.jpw-site *{scroll-behavior:auto}}
