:root {
  --hj-cream: #eee9df;
  --hj-oatmeal: #c9c1b1;
  --hj-navy: #2c3b4d;
  --hj-ink: #1b2632;
  --hj-orange: #ffb162;
  --hj-rust: #a35139;
  --hj-white: #fffdf9;
  --hj-radius: 22px;
  --hj-shadow: 0 20px 60px rgba(27, 38, 50, .09);
}

.hj-site { background: var(--hj-cream); color: var(--hj-ink); overflow: hidden; }
.hj-site *, .hj-site *::before, .hj-site *::after { box-sizing: border-box; }
.hj-site h1, .hj-site h2, .hj-site h3, .hj-site p, .hj-site ul, .hj-site ol { margin-top: 0; }
.hj-site h1, .hj-site h2, .hj-site h3 { color: var(--hj-ink); letter-spacing: -.035em; line-height: 1.03; }
.hj-site h1 { font-size: clamp(3.2rem, 7vw, 6.8rem); font-weight: 800; }
.hj-site h2 { font-size: clamp(2.35rem, 4.4vw, 4.6rem); font-weight: 800; }
.hj-site h3 { font-size: 1.45rem; font-weight: 750; }
.hj-site p, .hj-site li { font-size: 1.08rem; line-height: 1.65; }
.hj-site a { color: inherit; }

/* Keep the supplied Hey, Justin wordmark in Salient's header. */
#header-outer #logo img,
#header-secondary-outer #logo img { content: url('../images/hey-justin-logo.png'); width: auto; max-height: 64px; object-fit: contain; }
.hj-shell { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.hj-narrow { max-width: 900px; }
.hj-section { padding: 110px 0; }
.hj-eyebrow { color: var(--hj-rust); font-size: .8rem !important; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; margin-bottom: 20px; }
.hj-lede { font-size: clamp(1.2rem, 2vw, 1.55rem) !important; line-height: 1.55 !important; max-width: 720px; }
.hj-large-copy { font-size: clamp(1.35rem, 2vw, 1.75rem) !important; line-height: 1.5 !important; font-weight: 600; }
.hj-two-col { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 90px; align-items: start; }

.hj-hero { min-height: 820px; display: flex; align-items: center; padding: 120px 0 90px; background: linear-gradient(135deg, var(--hj-cream) 0 65%, #e5ded1 65%); }
.hj-hero-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 75px; align-items: center; }
.hj-hero h1 { max-width: 780px; margin-bottom: 30px; }
.hj-hero h1 em { color: var(--hj-rust); font-style: italic; font-weight: 500; }
.hj-actions { display: flex; gap: 25px; align-items: center; margin: 36px 0 22px; flex-wrap: wrap; }
.hj-button { display: inline-flex; min-height: 56px; align-items: center; justify-content: center; padding: 15px 28px; border: 2px solid var(--hj-rust); border-radius: 100px; background: var(--hj-rust); color: var(--hj-white) !important; font-weight: 800; text-decoration: none; transition: transform .2s ease, background .2s ease, color .2s ease; }
.hj-button:hover, .hj-button:focus-visible { transform: translateY(-2px); background: var(--hj-ink); border-color: var(--hj-ink); }
.hj-button-outline { background: transparent; color: var(--hj-ink) !important; border-color: var(--hj-ink); }
.hj-button-outline:hover, .hj-button-outline:focus-visible { color: var(--hj-white) !important; }
.hj-button-quiet { background: transparent; color: var(--hj-white) !important; border-color: rgba(255,255,255,.75); }
.hj-text-link { display: inline-flex; gap: 8px; color: var(--hj-ink); font-weight: 800; text-decoration-thickness: 2px; text-underline-offset: 5px; }
.hj-location { font-size: .92rem !important; font-weight: 700; color: var(--hj-navy); }
.hj-hero-panel { position: relative; min-height: 530px; border-radius: 50%; background: var(--hj-navy); box-shadow: var(--hj-shadow); }
.hj-hero-mark { position: absolute; inset: 50% auto auto 50%; transform: translate(-50%, -50%) rotate(-4deg); color: var(--hj-white); text-align: center; }
.hj-hero-mark span { display: block; color: var(--hj-orange); font-size: 3rem; line-height: .8; font-style: italic; }
.hj-hero-mark strong { display: block; font-size: 3.4rem; line-height: .95; letter-spacing: -.05em; }
.hj-orbit { position: absolute; display: grid; place-items: center; width: 105px; height: 105px; border-radius: 50%; background: var(--hj-white); color: var(--hj-navy); font-weight: 800; box-shadow: var(--hj-shadow); }
.hj-orbit-one { top: 4%; left: 4%; }.hj-orbit-two { top: 8%; right: 1%; }.hj-orbit-three { bottom: 7%; left: 2%; }.hj-orbit-four { right: 0; bottom: 11%; }

.hj-intro { background: var(--hj-white); }
.hj-services { background: var(--hj-navy); }
.hj-services h2 { color: var(--hj-white); max-width: 760px; }
.hj-services .hj-eyebrow { color: var(--hj-orange); }
.hj-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 54px; }
.hj-card { min-height: 290px; padding: 34px; border-radius: var(--hj-radius); background: var(--hj-white); box-shadow: 0 1px 0 rgba(255,255,255,.1); }
.hj-card > span { display: block; color: var(--hj-rust); font-size: .8rem; font-weight: 800; margin-bottom: 54px; }
.hj-card p { margin-bottom: 0; }
.hj-three { grid-template-columns: repeat(3, 1fr); }

.hj-process { background: var(--hj-orange); }
.hj-process .hj-eyebrow { color: var(--hj-ink); }
.hj-steps { list-style: none; padding: 0; margin: 60px 0 0; border-top: 2px solid rgba(27,38,50,.25); }
.hj-steps li { display: grid; grid-template-columns: 95px 1fr; gap: 20px; padding: 34px 0; border-bottom: 2px solid rgba(27,38,50,.25); }
.hj-steps li > span { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: var(--hj-ink); color: var(--hj-white); font-weight: 800; }
.hj-steps h3 { margin-bottom: 8px; font-size: 1.8rem; }.hj-steps p { margin-bottom: 0; }

.hj-boundary { background: var(--hj-ink); color: var(--hj-white); }
.hj-boundary h2 { color: var(--hj-white); }.hj-boundary .hj-eyebrow { color: var(--hj-orange); }
.hj-checklist { list-style: none; padding: 0; margin: 28px 0; }
.hj-checklist li { position: relative; padding: 11px 0 11px 30px; border-bottom: 1px solid rgba(44,59,77,.18); }
.hj-checklist li::before { content: '✓'; position: absolute; left: 0; color: var(--hj-rust); font-weight: 900; }
.hj-pricing ul.hj-checklist,
.hj-pricing ul.hj-checklist > li { list-style: none !important; }
.hj-pricing ul.hj-checklist > li::marker { content: '' !important; font-size: 0 !important; }
.hj-no-list { margin-top: 0; }.hj-no-list li { border-color: rgba(255,255,255,.15); }.hj-no-list li::before { content: '—'; color: var(--hj-orange); }
.hj-audience { background: var(--hj-cream); }
.hj-audience-cards { display: grid; gap: 20px; }.hj-audience-cards article { padding: 34px; border-radius: var(--hj-radius); background: var(--hj-white); }
.hj-audience-cards p { margin-bottom: 0; }
.hj-business-teaser { background: var(--hj-white); }
.hj-trust { background: var(--hj-white); }
.hj-trust-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; align-items: center; }
.hj-trust-grid.hj-no-photo { grid-template-columns: 1fr; max-width: 860px; }
.hj-founder-photo { width: 100%; max-height: 560px; object-fit: cover; border-radius: var(--hj-radius); box-shadow: var(--hj-shadow); }
.hj-testimonial { margin: 70px 0 0; padding: 45px; border-left: 6px solid var(--hj-orange); background: var(--hj-cream); }
.hj-testimonial p { font-size: clamp(1.4rem, 2.5vw, 2rem); line-height: 1.4; font-weight: 650; }
.hj-testimonial cite { font-style: normal; font-weight: 800; }

.hj-page-hero { padding: 170px 0 100px; background: var(--hj-navy); color: var(--hj-white); }
.hj-page-hero h1 { color: var(--hj-white); margin-bottom: 24px; }
.hj-page-hero .hj-eyebrow { color: var(--hj-orange); }
.hj-page-hero .hj-legal-date { color: var(--hj-oatmeal); }
.hj-values { background: var(--hj-orange); }.hj-values .hj-card { min-height: 220px; }
.hj-regions { background: var(--hj-white); }

.hj-price-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 55px; align-items: stretch; }
.hj-two-prices { grid-template-columns: repeat(2, 1fr); }
.hj-price-card { position: relative; display: flex; flex-direction: column; padding: 36px; border-radius: var(--hj-radius); background: var(--hj-white); box-shadow: var(--hj-shadow); }
.hj-price-card .hj-button { margin-top: auto; }
.hj-plan { font-size: 1.2rem !important; font-weight: 800; }
.hj-price { display: flex; align-items: baseline; font-size: 4.5rem; line-height: 1; font-weight: 850; letter-spacing: -.06em; margin: 20px 0 26px; }
.hj-price > span { font-size: 1.7rem; margin-right: 4px; }.hj-price small { font-size: .95rem; letter-spacing: 0; margin-left: 8px; }
.hj-best { min-height: 48px; color: var(--hj-rust); font-weight: 800; }
.hj-featured { background: var(--hj-navy); color: var(--hj-white); transform: translateY(-18px); }
.hj-featured h3, .hj-featured .hj-plan, .hj-featured .hj-price { color: var(--hj-white); }
.hj-featured .hj-checklist li { border-color: rgba(255,255,255,.15); }.hj-featured .hj-checklist li::before { color: var(--hj-orange); }
.hj-popular { position: absolute; top: 20px; right: 24px; font-size: .72rem !important; color: var(--hj-orange); font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.hj-memberships { background: #e4ddd0; }
.hj-signature-packages { background: var(--hj-white); }
.hj-price-note { max-width: 840px; margin: 34px auto 0; text-align: center; font-size: .92rem !important; }
.hj-faq { background: var(--hj-white); }
.hj-faq details { padding: 25px 0; border-bottom: 1px solid var(--hj-oatmeal); }
.hj-faq summary { cursor: pointer; font-size: 1.2rem; font-weight: 800; }.hj-faq details p { margin: 16px 0 0; }

.hj-post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.hj-post-card { padding: 34px; background: var(--hj-white); border-radius: var(--hj-radius); }.hj-post-card h2 { font-size: 1.9rem; }.hj-post-card h2 a { text-decoration: none; }
.hj-post-meta { color: var(--hj-rust); font-size: .78rem !important; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.hj-empty { grid-column: 1 / -1; padding: 65px; border-radius: var(--hj-radius); background: var(--hj-white); text-align: center; }.hj-empty h2 { font-size: 2.6rem; }

.hj-legal-copy, .hj-article { max-width: 820px; }.hj-legal-copy h2, .hj-article-content h2 { margin-top: 48px; font-size: 2rem; }.hj-legal-copy h3 { margin-top: 36px; }
.hj-legal-note { margin-top: 60px; padding: 26px; border-left: 5px solid var(--hj-orange); background: var(--hj-white); }
.hj-article h1 { font-size: clamp(2.8rem, 5vw, 5rem); }.hj-featured-image img { width: 100%; height: auto; border-radius: var(--hj-radius); margin: 28px 0; }
.hj-plan-label { display: inline-block; padding: 10px 16px; border-radius: 100px; background: var(--hj-orange); font-weight: 800; }
.hj-large-checklist li { padding-top: 18px; padding-bottom: 18px; font-size: 1.15rem; }
.hj-guide-sheet { max-width: 900px; padding: clamp(28px, 6vw, 70px); background: var(--hj-white); border-radius: var(--hj-radius); box-shadow: var(--hj-shadow); }
.hj-guide-sheet header { padding-bottom: 30px; border-bottom: 2px solid var(--hj-oatmeal); }
.hj-guide-steps { list-style: none; counter-reset: guide; margin: 35px 0; padding: 0; }
.hj-guide-steps li { counter-increment: guide; display: grid; grid-template-columns: 52px 1fr; gap: 8px 18px; padding: 22px 0; border-bottom: 1px solid #ded8cc; }
.hj-guide-steps li::before { content: counter(guide); grid-row: 1 / 3; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--hj-navy); color: var(--hj-white); font-weight: 800; }
.hj-guide-steps strong { font-size: 1.15rem; }.hj-guide-steps span { grid-column: 2; line-height: 1.55; }
.hj-guide-alert { padding: 24px; margin: 30px 0; border-left: 5px solid var(--hj-rust); background: #fff1e3; line-height: 1.55; }
.hj-readiness { background: var(--hj-white); }

.hj-business-hero { background: linear-gradient(135deg, var(--hj-navy), var(--hj-ink)); }
.hj-business-example { background: var(--hj-white); }
.hj-light-link { color: var(--hj-white) !important; }
.hj-business-grid .hj-card { min-height: 510px; }
.hj-mini-list { margin: 25px 0 0; padding-left: 20px; }
.hj-mini-list li { font-size: .97rem; line-height: 1.45; margin: 10px 0; }
.hj-business-outcomes { background: var(--hj-orange); }
.hj-outcome-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2px; margin-top: 50px; background: rgba(27,38,50,.25); border: 2px solid rgba(27,38,50,.25); }
.hj-outcome-grid article { padding: 30px; background: var(--hj-orange); }
.hj-outcome-grid strong { display: block; font-size: 1.3rem; line-height: 1.2; margin-bottom: 15px; }
.hj-outcome-grid p { font-size: .98rem; margin-bottom: 0; }
.hj-business-process { background: var(--hj-white); }
.hj-compact-steps { list-style: none; padding: 0; margin: 0; }
.hj-compact-steps li { display: grid; grid-template-columns: 48px 1fr; gap: 20px; padding: 24px 0; border-bottom: 1px solid var(--hj-oatmeal); }
.hj-compact-steps li > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--hj-navy); color: var(--hj-white); font-weight: 800; }
.hj-compact-steps h3 { margin-bottom: 6px; }.hj-compact-steps p { margin-bottom: 0; }

.hj-cta { padding: 90px 0; background: var(--hj-rust); color: var(--hj-white); }
.hj-cta h2 { color: var(--hj-white); max-width: 760px; margin-bottom: 18px; }.hj-cta .hj-eyebrow { color: var(--hj-orange); }
.hj-cta-inner { display: grid; grid-template-columns: 1.3fr .7fr; gap: 60px; align-items: center; }
.hj-cta-action { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }.hj-cta .hj-button { background: var(--hj-white); border-color: var(--hj-white); color: var(--hj-rust) !important; }
.hj-cta .hj-button:hover { background: var(--hj-ink); border-color: var(--hj-ink); color: var(--hj-white) !important; }
.hj-phone { font-weight: 800; text-decoration-thickness: 2px; text-underline-offset: 4px; }.hj-cta small { max-width: 340px; line-height: 1.4; opacity: .85; }

@media (max-width: 1000px) {
  .hj-hero-grid, .hj-two-col, .hj-cta-inner, .hj-trust-grid { grid-template-columns: 1fr; gap: 48px; }
  .hj-hero { min-height: 0; }.hj-hero-panel { min-height: 450px; max-width: 560px; width: 100%; margin-inline: auto; }
  .hj-card-grid, .hj-price-grid, .hj-post-grid { grid-template-columns: repeat(2, 1fr); }
  .hj-outcome-grid { grid-template-columns: repeat(2, 1fr); }
  .hj-featured { transform: none; }
}

/* Salient off-canvas navigation: never use the flyout as desktop navigation. */
@media (min-width: 1001px) {
  body #header-outer .slide-out-widget-area-toggle,
  body #slide-out-widget-area,
  body #slide-out-widget-area-bg { display: none !important; visibility: hidden !important; pointer-events: none !important; }
}

/* Mobile flyout uses the Hey, Justin dark-blue and yellow brand treatment. */
@media (max-width: 1000px) {
  body #slide-out-widget-area,
  body #slide-out-widget-area-bg { background-color: var(--hj-navy) !important; }
  body #slide-out-widget-area a,
  body #slide-out-widget-area .menu-item a,
  body #slide-out-widget-area .widget h4 { color: var(--hj-white) !important; }
  body #slide-out-widget-area a:hover,
  body #slide-out-widget-area a:focus-visible,
  body #slide-out-widget-area .current-menu-item > a { color: var(--hj-orange) !important; }
  body .slide_out_area_close .close-wrap .close-line { background: var(--hj-orange) !important; }
}

@media (max-width: 690px) {
  .hj-shell { width: min(100% - 30px, 1180px); }
  .hj-section { padding: 75px 0; }.hj-page-hero { padding: 130px 0 75px; }
  .hj-hero { padding: 100px 0 70px; }.hj-hero h1 { font-size: clamp(3rem, 14vw, 4.6rem); }
  .hj-hero-panel { min-height: 360px; }.hj-hero-mark strong { font-size: 2.55rem; }.hj-hero-mark span { font-size: 2.25rem; }
  .hj-orbit { width: 82px; height: 82px; font-size: .78rem; }
  .hj-card-grid, .hj-price-grid, .hj-two-prices, .hj-post-grid { grid-template-columns: 1fr; }
  .hj-outcome-grid { grid-template-columns: 1fr; }
  .hj-card { min-height: 0; }.hj-card > span { margin-bottom: 35px; }
  .hj-steps li { grid-template-columns: 62px 1fr; }.hj-steps li > span { width: 46px; height: 46px; }
  .hj-price-card, .hj-empty { padding: 28px; }.hj-price { font-size: 4rem; }
}

@media (prefers-reduced-motion: reduce) {
  .hj-site *, .hj-site *::before, .hj-site *::after { scroll-behavior: auto !important; transition: none !important; }
}
