/* Approved reference direction: warm illustrated storytelling for the main
   site, with an alternating editorial archive for Marketing Knowledge+. */
:root {
  --hj-ink: #173432;
  --hj-navy: #075e59;
  --hj-primary: #08756f;
  --hj-cyan: #25a9a0;
  --hj-accent: #c6a966;
  --hj-warm: #f2bf68;
  --hj-warm-soft: #fff4dc;
  --hj-surface: #f7f4ed;
  --hj-border: #ded8ca;
  --hj-muted: #5e6d69;
  --hj-shadow: 0 22px 60px rgba(24, 65, 61, .12);
}

body { background: #fffdfa; }
.wp-site-blocks > header.wp-block-template-part { position: sticky; z-index: 1000; top: 0; }
.wp-site-blocks > header.wp-block-template-part .hj-header { position: relative; top: auto; }
body.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 32px; }
.hj-header { background: rgba(255,253,250,.94); border-bottom-color: rgba(7,94,89,.1); }
.hj-header.is-scrolled { background: rgba(255,253,250,.98); box-shadow: 0 10px 32px rgba(35,71,67,.08); }
.hj-nav .wp-block-navigation__submenu-container {
  min-width: 270px!important;
  padding: 10px!important;
  background: #fffdfa!important;
  border: 1px solid rgba(7,94,89,.13)!important;
  border-radius: 16px;
  box-shadow: 0 20px 50px rgba(35,71,67,.14);
}
.hj-nav .wp-block-navigation__submenu-container .wp-block-navigation-item { border-radius: 10px; }
.hj-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  width: 100%;
  padding: 10px 12px!important;
  white-space: normal;
  line-height: 1.35;
}
.hj-nav .wp-block-navigation__submenu-container .wp-block-navigation-item:hover { background: rgba(7,94,89,.07); }
.hj-nav .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon { margin-right: 8px; }
.hj-brand:before { background: linear-gradient(135deg, var(--hj-primary), #37aaa1); }
.hj-btn--primary,.wp-block-button__link { background: var(--hj-primary); box-shadow: 0 12px 28px rgba(7,94,89,.22); }
.hj-btn--primary:hover,.wp-block-button__link:hover { background: #054d49; }

/* Main visual language: editorial illustration, large warm fields and waves. */
.hj-hero {
  min-height: 700px;
  padding: clamp(68px,7vw,110px) 0 138px;
  overflow: hidden;
  background: var(--hj-warm);
}
.hj-hero:before {
  position: absolute; inset: auto -10% -112px; z-index: 0; height: 205px;
  content: ""; background: #fffdfa; border-radius: 50% 50% 0 0 / 42% 42% 0 0;
}
.hj-hero:after { display: none; }
.hj-hero__grid { grid-template-columns: minmax(430px,1.1fr) minmax(380px,.9fr); gap: clamp(42px,6vw,96px); }
.hj-hero__content { position: relative; z-index: 2; }
.hj-hero__content .hj-eyebrow { color: #075e59; }
.hj-hero__content h1 { color: #173432; font-size: clamp(3rem,5.2vw,5.5rem); line-height: 1.04; }
.hj-hero__content h1 span { color: #075e59; background: none; -webkit-text-fill-color: currentColor; }
.hj-hero__lead { color: #344d49; }
.hj-hero__proof { color: #35514d; }
.hj-hero__proof li:before { color: #075e59; }
.hj-hero .hj-btn--ghost { color: #173432; background: rgba(255,255,255,.48); border-color: rgba(23,52,50,.28); }
.hj-story-visual { position: relative; z-index: 1; align-self: center; }
.hj-story-visual svg { display: block; width: 100%; overflow: visible; filter: drop-shadow(0 24px 28px rgba(77,57,25,.12)); }
.hj-story-visual svg circle:not(.hj-illust-dot),.hj-story-visual svg path,.hj-story-visual svg rect { vector-effect: non-scaling-stroke; }
.hj-illust-dot { fill: rgba(255,255,255,.33); }
.hj-illust-dot--two { fill: rgba(7,94,89,.12); }
.hj-illust-screen { fill: #fffdfa; stroke: #173432; stroke-width: 4; }
.hj-illust-screenbar { fill: #075e59; }
.hj-story-visual svg>circle:not(.hj-illust-dot) { fill: #f2bf68; }
.hj-illust-panel { fill: #e7f2ef; }
.hj-illust-chart { fill: none; stroke: #e77b4e; stroke-width: 9; stroke-linecap: round; stroke-linejoin: round; }
.hj-illust-accent { fill: #e77b4e!important; }
.hj-illust-line { fill: #c9ddd8; }
.hj-illust-card { fill: #f8d99f; }
.hj-illust-stand { fill: #d8e5e1; }
.hj-illust-base { fill: #075e59; }
.hj-illust-person circle { fill: #e77b4e!important; }
.hj-illust-person path { fill: none; stroke: #075e59; stroke-width: 18; stroke-linecap: round; stroke-linejoin: round; }
.hj-illust-float rect { fill: #fff; stroke: rgba(23,52,50,.18); stroke-width: 3; }
.hj-illust-float path { fill: none; stroke: #075e59; stroke-width: 6; stroke-linecap: round; stroke-linejoin: round; }
.hj-illust-float circle { fill: #e77b4e!important; }
.hj-hero__bubble { position: absolute; right: 2%; bottom: 1%; padding: 12px 20px; color: #fff; background: #075e59; border-radius: 999px; font-weight: 800; box-shadow: var(--hj-shadow); }
.hj-hero__consult { position: absolute; z-index: 4; right: clamp(24px,4vw,72px); bottom: 86px; display: grid; width: 108px; height: 108px; place-content: center; text-align: center; color: #fff; background: #e77b4e; border: 6px solid rgba(255,255,255,.5); border-radius: 50%; font-weight: 850; line-height: 1.2; text-decoration: none; box-shadow: 0 18px 36px rgba(118,56,31,.22); transition: transform .2s ease; }
.hj-hero__consult:hover { color: #fff; transform: rotate(-6deg) scale(1.05); }

.hj-metrics { margin-top: -48px; }
.hj-metrics__grid { border: 0; border-radius: 999px; box-shadow: 0 24px 60px rgba(54,70,58,.12); }
.hj-metrics__grid>div { padding-block: 26px; border-color: #e4dfd4; text-align: center; }
.hj-metrics strong { color: var(--hj-primary); }

.hj-problems { padding-top: 140px; }
.hj-problems .hj-section-heading { max-width: 850px; }
.hj-problem-grid { gap: clamp(18px,3vw,38px); align-items: start; }
.hj-problem-grid article { display: grid; min-height: 270px; aspect-ratio: 1; padding: 36px; place-content: center; text-align: center; background: #fffdfa; border: 3px solid var(--hj-warm); border-radius: 50%; box-shadow: none; }
.hj-problem-grid article:nth-child(even) { margin-top: 56px; border-color: #87bbb5; }
.hj-problem-grid article:hover { border-color: var(--hj-primary); box-shadow: 0 20px 40px rgba(7,94,89,.1); transform: translateY(-8px) rotate(-1deg); }
.hj-problem-grid article>span { margin: 0 0 12px; color: #d16a3f; font-size: .8rem; }
.hj-problem-grid h3 { font-size: clamp(1.05rem,1.5vw,1.3rem); }
.hj-problem-grid p { font-size: .9rem; line-height: 1.65; }
.hj-diagnosis-line { display: flex; max-width: 800px; align-items: center; gap: 18px; margin: 80px auto 0; color: var(--hj-primary); font-weight: 800; }
.hj-diagnosis-line i { height: 2px; flex: 1; background: linear-gradient(90deg,var(--hj-warm),var(--hj-primary)); }

#services { position: relative; margin-top: 70px; padding-top: 160px; background: var(--hj-warm-soft); }
#services:before { position: absolute; top: -90px; left: -5%; width: 110%; height: 150px; content: ""; background: var(--hj-warm-soft); border-radius: 50% 50% 0 0 / 80% 80% 0 0; }
.hj-service-card { border: 0; border-radius: 30px 30px 90px 30px; box-shadow: 0 16px 36px rgba(72,60,35,.08); }
.hj-service-card__icon { color: #075e59; background: #f7dfb1; border-radius: 50%; }
.hj-service-card__number { color: #c2a25f; }
.hj-tags li { background: #f7f1e5; }
.hj-service-catalog { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
.hj-service-group { position: relative; padding: clamp(28px,3vw,42px); overflow: hidden; background: #fff; border: 1px solid rgba(198,169,102,.22); border-radius: 34px 34px 100px 34px; box-shadow: 0 18px 45px rgba(72,60,35,.08); }
.hj-service-group:after { position: absolute; right: -70px; bottom: -80px; width: 190px; height: 190px; content: ""; background: radial-gradient(circle,rgba(242,191,104,.19),transparent 68%); pointer-events: none; }
.hj-service-group__head { position: relative; min-height: 150px; padding-right: 42px; }
.hj-service-group__head .hj-service-card__icon { margin-bottom: 20px; }
.hj-service-group__head .hj-service-card__number { top: 5px; right: 0; }
.hj-service-group__head h3 { margin: 0 0 10px; color: var(--hj-ink); font-size: clamp(1.5rem,2.2vw,2.1rem); }
.hj-service-group__head>p:last-child { margin: 0; color: var(--hj-muted); line-height: 1.7; }
.hj-service-links { position: relative; z-index: 1; display: grid; margin: 28px 0 0; padding: 0; list-style: none; border-top: 1px solid #e8e0d2; }
.hj-service-links li { margin: 0; border-bottom: 1px solid #e8e0d2; }
.hj-service-links a { position: relative; display: grid; gap: 4px; padding: 18px 42px 18px 0; color: var(--hj-ink); text-decoration: none; }
.hj-service-links a span { font-size: 1.05rem; font-weight: 820; }
.hj-service-links a small { color: var(--hj-muted); font-size: .82rem; line-height: 1.55; }
.hj-service-links a b { position: absolute; top: 50%; right: 4px; color: var(--hj-primary); transform: translateY(-50%); transition: transform .2s ease; }
.hj-service-links a:hover span { color: var(--hj-primary); }
.hj-service-links a:hover b { transform: translate(4px,-50%); }
.hj-imported-service-content>h1:first-child,.hj-imported-service-content>h2:first-child { margin-top: 0; }
.hj-imported-service-content h2 { margin-top: 2.4em; color: var(--hj-primary); }
.hj-imported-service-content h3 { margin-top: 1.8em; }
.hj-imported-service-content ul { padding-left: 1.4em; }
.hj-imported-service-content details,.hj-prose details { margin: 12px 0; padding: 16px 18px; background: #f8f3e9; border-radius: 12px; }
.hj-imported-service-content summary,.hj-prose summary { color: var(--hj-ink); font-weight: 800; cursor: pointer; }
.hj-related-services { background: #fffdfa; }
.hj-related-services__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.hj-related-services__grid>a { position: relative; display: grid; min-height: 180px; gap: 12px; padding: 26px 44px 26px 26px; align-content: start; color: var(--hj-ink); background: #fff4dc; border-radius: 24px 24px 60px 24px; text-decoration: none; }
.hj-related-services__grid span { font-weight: 850; }
.hj-related-services__grid small { color: var(--hj-muted); line-height: 1.6; }
.hj-related-services__grid b { position: absolute; top: 24px; right: 22px; color: var(--hj-primary); }
.hj-partners { background: #075e59; }
.hj-partners .hj-eyebrow { color: #f2cf8d; }
.hj-partner-logo { border-radius: 999px; }
.hj-process { background: var(--hj-warm); color: #173432; }
.hj-process .hj-eyebrow,.hj-process__list>li>span { color: #075e59; }
.hj-process__list { border-color: rgba(23,52,50,.25); }
.hj-process__list li { border-color: rgba(23,52,50,.2); }
.hj-process__list p { color: #4e5b55; }
.hj-quote { background: #f8f3e9; border-radius: 30px 30px 80px 30px; }
.hj-insights-home { background: #fffdfa; }
.hj-insight-card { border-color: #e1d9ca; border-radius: 30px 30px 70px 30px; }
.hj-final-cta { background: radial-gradient(circle at 15% 15%,rgba(242,191,104,.24),transparent 30%),linear-gradient(130deg,#075e59,#173432 72%); }
.hj-footer { background: #123a37; }
.hj-footer__grid { grid-template-columns: repeat(4,minmax(0,1fr))!important; }

/* Interior pages inherit the same warm, organic brand treatment. */
.hj-page-hero { color: #173432; background: linear-gradient(135deg,#f2bf68,#f8d99f); }
.hj-page-hero .hj-eyebrow { color: #075e59; }
.hj-page-hero p:not(.hj-eyebrow) { color: #41534e; }
.hj-case-hero-image img,.hj-article>.wp-block-post-featured-image img { border-radius: 34px 34px 100px 34px; }
.hj-sticky-card,.hj-article__cta { background: #fff4dc; border-color: #e8d5ad; border-radius: 30px 30px 70px 30px; }

/* Service sales pages — production content rhythm inside the new brand system. */
.hj-service-sales-page [id^="service-"] { scroll-margin-top: 138px; }
.hj-service-sales-hero { position: relative; overflow: hidden; padding: clamp(78px,8vw,126px) 0; background: linear-gradient(135deg,#f2bf68 0%,#f8d99f 68%,#fff4dc 100%); }
.hj-service-sales-hero:before { position: absolute; top: -180px; right: -120px; width: 520px; height: 520px; content: ""; border: 2px solid rgba(7,94,89,.13); border-radius: 50%; box-shadow: 0 0 0 68px rgba(255,255,255,.13),0 0 0 136px rgba(255,255,255,.1); }
.hj-service-sales-hero__grid { position: relative; display: grid; grid-template-columns: minmax(0,1.08fr) minmax(360px,.72fr); gap: clamp(54px,7vw,110px); align-items: center; }
.hj-service-sales-hero__content h1 { max-width: 880px; margin: 0 0 26px; color: var(--hj-ink); font-size: clamp(3.4rem,6vw,6.7rem); line-height: .98; letter-spacing: -.06em; }
.hj-service-sales-hero__lead { max-width: 720px; margin: 0; color: #3f514c; font-size: clamp(1.08rem,1.6vw,1.3rem); line-height: 1.8; }
.hj-service-sales-visual { position: relative; min-height: 430px; padding: 46px; overflow: hidden; color: #fff; background: #075e59; border-radius: 48px 48px 130px 48px; box-shadow: 0 34px 70px rgba(31,71,66,.22); }
.hj-service-sales-visual:after { position: absolute; right: -60px; bottom: -70px; width: 230px; height: 230px; content: ""; background: #f0784b; border: 22px solid #f7c972; border-radius: 50%; opacity: .92; }
.hj-service-sales-visual__icon { display: grid; width: 96px; height: 96px; margin-bottom: 48px; place-items: center; color: #075e59; background: #fff4dc; border-radius: 30px 30px 54px 30px; }
.hj-service-sales-visual__icon svg { width: 52px; }
.hj-service-sales-visual>p { position: relative; z-index: 1; margin: 0 0 26px; font-size: clamp(1.45rem,2.2vw,2rem); font-weight: 850; line-height: 1.35; }
.hj-service-sales-visual ul { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 9px; margin: 0; padding: 0; list-style: none; }
.hj-service-sales-visual li { padding: 7px 11px; color: #fff; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; font-size: .78rem; }
.hj-service-jump { position: sticky; z-index: 850; top: 79px; background: rgba(255,253,250,.96); border-bottom: 1px solid rgba(7,94,89,.12); box-shadow: 0 10px 28px rgba(35,71,67,.06); backdrop-filter: blur(14px); }
.hj-service-jump .hj-container { display: flex; justify-content: center; overflow-x: auto; scrollbar-width: none; }
.hj-service-jump .hj-container::-webkit-scrollbar { display: none; }
.hj-service-jump a { flex: 0 0 auto; padding: 17px 22px; color: var(--hj-ink); font-size: .85rem; font-weight: 780; text-decoration: none; }
.hj-service-jump a:hover { color: var(--hj-primary); }
.hj-service-pains { background: #fffdfa; }
.hj-service-pains .hj-section-heading { max-width: 900px; }
.hj-service-pain-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.hj-service-pain-grid article { min-height: 260px; padding: 32px; background: #f8f3e9; border: 1px solid #e8dfce; border-radius: 30px 30px 78px 30px; }
.hj-service-pain-grid span { display: block; margin-bottom: 64px; color: var(--hj-primary); font-size: .8rem; font-weight: 850; letter-spacing: .12em; }
.hj-service-pain-grid p { margin: 0; color: var(--hj-ink); font-size: 1.25rem; font-weight: 760; line-height: 1.55; }
.hj-service-story { background: #fff; }
.hj-service-story__grid { display: grid; grid-template-columns: minmax(0,1fr) 350px; gap: clamp(52px,7vw,96px); align-items: start; }
.hj-service-story__grid>.hj-section-heading { grid-column: 1; }
.hj-service-prose { max-width: 850px; }
.hj-service-prose>p:first-child,.hj-service-prose .hj-imported-service-content>p:first-child { color: var(--hj-ink); font-size: 1.2rem; line-height: 1.85; }
.hj-service-prose h2 { padding-top: .3em; color: var(--hj-primary); font-size: clamp(1.85rem,3vw,2.6rem); line-height: 1.25; }
.hj-service-prose h3 { color: var(--hj-ink); }
.hj-service-prose ul { display: grid; gap: 9px; }
.hj-service-prose li::marker { color: var(--hj-primary); }
.hj-service-prose .elementor-section,.hj-service-prose .elementor-container,.hj-service-prose .elementor-column,.hj-service-prose .elementor-widget-wrap { max-width: 100%!important; }
.hj-service-fit-card { position: sticky; top: 150px; padding: 30px; background: #fff4dc; border: 1px solid #ead6ac; border-radius: 32px 32px 78px 32px; }
.hj-service-fit-card>h2 { margin: 0 0 24px; font-size: 1.55rem; }
.hj-service-fit-card section { padding: 18px 0; border-top: 1px solid rgba(104,86,48,.17); }
.hj-service-fit-card h3 { margin: 0 0 6px; color: var(--hj-primary); font-size: 1rem; }
.hj-service-fit-card section p { margin: 0; color: var(--hj-muted); font-size: .88rem; line-height: 1.65; }
.hj-service-fit-card .hj-btn { margin-top: 20px; }
.hj-service-deliverables { background: #f2bf68; }
.hj-service-deliverable-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.hj-service-deliverable-grid article { min-height: 190px; padding: 28px; background: rgba(255,253,250,.9); border-radius: 26px 26px 64px 26px; }
.hj-service-deliverable-grid span { color: var(--hj-primary); font-size: .78rem; font-weight: 850; }
.hj-service-deliverable-grid h3 { margin: 54px 0 0; font-size: 1.17rem; line-height: 1.45; }
.hj-service-process { color: #fff; background: #075e59; }
.hj-service-process .hj-eyebrow { color: #f2cf8d; }
.hj-service-process .hj-section-heading>p:last-child { color: #c9ded9; }
.hj-service-process__list { display: grid; margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.2); }
.hj-service-process__list li { display: grid; grid-template-columns: 120px 1fr; gap: 32px; padding: 34px 0; border-bottom: 1px solid rgba(255,255,255,.2); }
.hj-service-process__list>li>span { color: #f2cf8d; font-weight: 850; }
.hj-service-process__list h3 { margin: 0 0 8px; font-size: 1.45rem; }
.hj-service-process__list p { margin: 0; color: #c9ded9; line-height: 1.7; }

/* Marketing Knowledge+ — large alternating image / floating summary layout. */
.hj-armory-main { padding-bottom: 120px; background: #fff; }
.hj-armory-hero { padding: 66px 0; text-align: center; background: #f4f3f1; }
.hj-armory-hero h1 { margin: 0; color: #075e59; font-size: clamp(2.8rem,5vw,5rem); line-height: 1; }
.hj-armory-hero p:last-child { max-width: 720px; margin: 20px auto 0; color: #68726e; }
.hj-armory-search { display: flex; max-width: 760px; margin: 62px auto 90px; }
.hj-armory-search input { min-width: 0; height: 54px; flex: 1; padding: 0 20px; border: 1px solid #cfcac0; border-radius: 8px 0 0 8px; font: inherit; }
.hj-armory-search button { min-width: 96px; color: #fff; background: #075e59; border: 0; border-radius: 0 8px 8px 0; font: inherit; font-weight: 800; cursor: pointer; }
.hj-armory-list { display: grid; gap: 112px; }
.hj-armory-item { position: relative; display: grid; min-height: 500px; grid-template-columns: minmax(0,1.45fr) minmax(360px,.8fr); align-items: center; }
.hj-armory-item:nth-child(even) { grid-template-columns: minmax(360px,.8fr) minmax(0,1.45fr); }
.hj-armory-item:nth-child(even) .hj-armory-media { grid-column: 2; }
.hj-armory-item:nth-child(even) .hj-armory-summary { grid-column: 1; grid-row: 1; margin: 0 -54px 0 0; }
.hj-armory-media { display: block; width: 100%; height: 500px; overflow: hidden; background: #f4f3f1; }
.hj-armory-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.hj-armory-item:hover .hj-armory-media img { transform: scale(1.025); }
.hj-armory-placeholder { display: grid; height: 100%; place-items: center; color: #075e59; background: linear-gradient(135deg,#e7f2ef,#fff4dc); }
.hj-armory-placeholder svg { width: 100px; }
.hj-armory-summary { position: relative; z-index: 2; margin-left: -54px; padding: clamp(28px,4vw,50px); background: #f4f3f1; box-shadow: 0 18px 45px rgba(36,50,46,.08); }
.hj-armory-summary h2 { margin: 0 0 16px; color: #075e59; font-size: clamp(1.8rem,2.8vw,3rem); line-height: 1.22; }
.hj-armory-summary h2 a { color: inherit; text-decoration: none; }
.hj-armory-summary>p:not(.hj-armory-meta) { margin: 0 0 24px; color: #5c6662; line-height: 1.85; }
.hj-armory-meta { margin: 0 0 16px; color: #17756f; font-size: .78rem; font-weight: 750; }
.hj-armory-read { display: inline-flex; align-items: center; gap: 9px; padding: 10px 16px; color: #fff; background: #075e59; font-size: .82rem; font-weight: 800; text-decoration: none; }
.hj-armory-read:hover { color: #fff; background: #e77b4e; }
.hj-armory-date { position: absolute; z-index: 3; top: -28px; left: 10px; display: grid; width: 58px; min-height: 92px; padding: 10px 5px; place-content: center; text-align: center; color: #fff; background: #e77b4e; line-height: 1.05; }
.hj-armory-date span { font-size: .7rem; font-weight: 750; }
.hj-armory-date strong { margin: 5px 0; font-size: 1.65rem; }
.hj-armory-item:nth-child(even) .hj-armory-date { right: 10px; left: auto; }
.hj-armory-pagination { display: flex; justify-content: center; gap: 8px; margin-top: 70px; }
.hj-armory-pagination .page-numbers { display: grid; min-width: 42px; height: 42px; padding: 0 12px; place-items: center; color: #075e59; border: 1px solid #cfcac0; text-decoration: none; }
.hj-armory-pagination .current { color: #fff; background: #075e59; border-color: #075e59; }

@media (max-width: 1080px) {
  .hj-hero__grid { grid-template-columns: 1fr 1fr; gap: 35px; }
  .hj-problem-grid { grid-template-columns: 1fr 1fr; max-width: 760px; margin-inline: auto; }
  .hj-problem-grid article { min-height: 320px; }
  .hj-footer__grid { grid-template-columns: repeat(2,minmax(0,1fr))!important; gap: 42px!important; }
  .hj-related-services__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hj-service-sales-hero__grid { grid-template-columns: 1fr; }
  .hj-service-sales-visual { min-height: 360px; }
  .hj-service-story__grid { grid-template-columns: 1fr; }
  .hj-service-fit-card { position: static; display: grid; grid-template-columns: repeat(3,1fr); gap: 0 18px; }
  .hj-service-fit-card>.hj-eyebrow,.hj-service-fit-card>h2,.hj-service-fit-card>.hj-btn { grid-column: 1/-1; }
  .hj-service-deliverable-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 782px) {
  .wp-site-blocks { padding-top: 65px; }
  .wp-site-blocks > header.wp-block-template-part {
    position: fixed!important; top: 0; right: 0; left: 0; width: 100%;
  }
  body.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 46px; }
  .hj-header { background: #fffdfa; backdrop-filter: none; }
  .wp-block-navigation__responsive-container.is-menu-open {
    position: fixed!important; z-index: 100000!important; inset: 0!important;
    width: 100vw!important; height: 100dvh!important; max-height: 100dvh!important;
    margin: 0!important; padding: 28px 24px!important; overflow-y: auto!important;
    overscroll-behavior: contain;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog { min-height: calc(100dvh - 56px); }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 70px; }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { width: 100%; align-items: stretch!important; gap: 0!important; }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { border-bottom: 1px solid rgba(7,94,89,.13); }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { display: block; padding: 16px 4px; }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
    position: static!important;
    width: 100%!important;
    min-width: 0!important;
    padding: 0 0 8px 16px!important;
    background: transparent!important;
    border: 0!important;
    border-left: 2px solid rgba(7,94,89,.16)!important;
    border-radius: 0;
    box-shadow: none;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container { display: none!important; }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon[aria-expanded="true"] + .wp-block-navigation__submenu-container { display: flex!important; }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.has-child {
    display: grid;
    grid-template-columns: 1fr 48px;
    align-items: center;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-container { grid-column: 1 / -1; }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon {
    display: flex!important;
    width: 44px;
    height: 44px;
    margin: 0;
    justify-content: center;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon svg { transition: transform .2s ease; }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon[aria-expanded="true"] svg { transform: rotate(180deg); }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    padding: 12px 8px!important;
    font-size: 1rem;
  }
  .hj-hero { padding-top: 58px; padding-bottom: 126px; }
  .hj-hero__grid { display: flex; flex-direction: column; }
  .hj-hero__content { order: 1; text-align: center; }
  .hj-story-visual { order: 2; max-width: 530px; }
  .hj-hero__content h1 { font-size: clamp(2.65rem,12vw,4rem); }
  .hj-hero__consult { right: 18px; bottom: 58px; width: 82px; height: 82px; border-width: 4px; font-size: .82rem; }
  .hj-hero__bubble { right: 8%; bottom: 3%; font-size: .72rem; }
  .hj-metrics__grid { border-radius: 28px; }
  .hj-problems { padding-top: 100px; }
  .hj-problem-grid { grid-template-columns: 1fr; max-width: 370px; }
  .hj-problem-grid article,.hj-problem-grid article:nth-child(even) { min-height: 0; margin-top: 0; }
  .hj-diagnosis-line { gap: 8px; margin-top: 50px; font-size: .78rem; }
  #services { padding-top: 100px; }
  .hj-armory-hero { padding: 54px 20px; }
  .hj-armory-search { margin: 38px 0 70px; }
  .hj-armory-item,.hj-armory-item:nth-child(even) { display: flex; min-height: 0; flex-direction: column; }
  .hj-armory-item:nth-child(even) .hj-armory-media,.hj-armory-item:nth-child(even) .hj-armory-summary { grid-column: auto; grid-row: auto; }
  .hj-armory-media { height: auto; aspect-ratio: 4/3; }
  .hj-armory-summary,.hj-armory-item:nth-child(even) .hj-armory-summary { width: calc(100% - 28px); margin: -34px 0 0; padding: 28px 24px; }
  .hj-armory-summary h2 { font-size: 1.65rem; }
  .hj-armory-date,.hj-armory-item:nth-child(even) .hj-armory-date { top: -20px; right: auto; left: 8px; }
  .hj-armory-list { gap: 84px; }
  .hj-footer__grid { grid-template-columns: 1fr!important; gap: 30px!important; }
  .hj-footer__grid>div { width: 100%; }
  .hj-footer__bottom { flex-direction: column; }
  .hj-service-catalog { grid-template-columns: 1fr; }
  .hj-service-group { padding: 26px 22px; border-radius: 28px 28px 72px 28px; }
  .hj-service-group__head { min-height: 0; padding-right: 34px; }
  .hj-service-links a { padding-block: 16px; }
  .hj-related-services__grid { grid-template-columns: 1fr; }
  .hj-related-services__grid>a { min-height: 0; }
  .hj-service-sales-page [id^="service-"] { scroll-margin-top: 118px; }
  .hj-service-sales-hero { padding: 58px 0 72px; }
  .hj-service-sales-hero__grid { gap: 44px; }
  .hj-service-sales-hero__content h1 { font-size: clamp(2.75rem,13vw,4.4rem); overflow-wrap: anywhere; }
  .hj-service-sales-visual { min-height: 0; padding: 30px 26px 84px; border-radius: 30px 30px 86px 30px; }
  .hj-service-sales-visual__icon { width: 76px; height: 76px; margin-bottom: 34px; }
  .hj-service-sales-visual__icon svg { width: 42px; }
  .hj-service-jump { top: 65px; }
  .hj-service-jump .hj-container { justify-content: flex-start; padding-inline: 10px; }
  .hj-service-jump a { padding: 14px 12px; font-size: .78rem; }
  .hj-service-pain-grid { grid-template-columns: 1fr; }
  .hj-service-pain-grid article { min-height: 0; }
  .hj-service-pain-grid span { margin-bottom: 34px; }
  .hj-service-fit-card { display: block; }
  .hj-service-deliverable-grid { grid-template-columns: 1fr; }
  .hj-service-deliverable-grid article { min-height: 150px; }
  .hj-service-deliverable-grid h3 { margin-top: 40px; }
  .hj-service-process__list li { grid-template-columns: 54px 1fr; gap: 14px; }
}
