:root {
  --cfk-blue: #007fae;
  --cfk-blue-dark: #005a84;
  --cfk-green: #4faf00;
  --cfk-green-dark: #3d8500;
  --cfk-ink: #202633;
  --cfk-text: #343b47;
  --cfk-muted: #68717d;
  --cfk-border: #dce3e7;
  --cfk-surface: #ffffff;
  --cfk-surface-alt: #f5f8f9;
  --cfk-blue-soft: #eef7fa;
  --cfk-green-soft: #f3f9ec;
  --cfk-whatsapp: #25d366;
  --cfk-radius-sm: 4px;
  --cfk-radius-md: 8px;
  --cfk-radius-lg: 12px;
  --cfk-container: 1240px;
  --cfk-focus: 0 0 0 3px rgba(0, 127, 174, 0.22);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.cfk-shell {
  width: min(calc(100% - 40px), var(--cfk-container));
  margin-inline: auto;
}

.cfk-button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 16px;
  border: 1px solid transparent;
  border-radius: var(--cfk-radius-md);
  text-decoration: none;
  font: inherit;
  font-weight: 650;
  line-height: 1.2;
  cursor: pointer;
}

.cfk-button svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cfk-button--primary {
  background: var(--cfk-blue-dark);
  color: #fff;
}

.cfk-button--primary:hover,
.cfk-button--primary:focus-visible {
  background: #004b70;
  color: #fff;
}

.cfk-button--secondary {
  border-color: var(--cfk-border);
  background: #fff;
  color: var(--cfk-blue-dark);
}

.cfk-button--secondary:hover,
.cfk-button--secondary:focus-visible {
  border-color: var(--cfk-blue);
  background: var(--cfk-blue-soft);
  color: var(--cfk-blue-dark);
}

.cfk-button--whatsapp {
  background: var(--cfk-whatsapp);
  color: #102017;
}

.cfk-button:focus-visible,
.cfk-site-header button:focus-visible,
.cfk-site-header a:focus-visible,
.cfk-site-footer a:focus-visible {
  outline: none;
  box-shadow: var(--cfk-focus);
}

.cfk-overlay-open {
  overflow: hidden;
}

@media (max-width: 600px) {
  .cfk-shell {
    width: min(calc(100% - 28px), var(--cfk-container));
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}


/* Corporate Furniture Kenya v1.0.0 brand layer
 * Derived from the supplied legacy logo concept:
 * green #00BF63 + charcoal #3D4248.
 */
:root {
  --cfk-green: #00BF63;
  --cfk-green-dark: #009F52;
  --cfk-green-soft: #EFFBF5;
  --cfk-charcoal: #3D4248;
  --cfk-ink: #242A30;
  --cfk-text: #3D4248;
  --cfk-muted: #6D767D;
  --cfk-border: #DCE4E7;
  --cfk-surface: #FFFFFF;
  --cfk-surface-soft: #F7FAF9;

  /* Compatibility tokens inherited from the clean storefront architecture. */
  --cfk-blue: #3D4248;
  --cfk-blue-dark: #31363B;
  --cfk-blue-soft: #F1F4F4;
}

.cfk-brand-logo--text {
  text-decoration: none !important;
}

.cfk-brand-logo__cfk {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  column-gap: 4px;
  align-items: end;
  line-height: .9;
  letter-spacing: -.045em;
}

.cfk-brand-logo__corporate {
  color: #00BF63;
  font-size: 1.08rem;
  font-weight: 850;
  font-style: italic;
}

.cfk-brand-logo__furniture {
  color: #3D4248;
  font-size: 1.08rem;
  font-weight: 800;
}

.cfk-brand-logo__cfk small {
  grid-column: 1 / -1;
  justify-self: end;
  margin-top: 4px;
  color: #697177;
  font-size: .48rem;
  font-weight: 750;
  letter-spacing: .22em;
  text-transform: uppercase;
}

@media (max-width: 600px) {
  .cfk-brand-logo__corporate,
  .cfk-brand-logo__furniture {
    font-size: .94rem;
  }
}


/* ========================================================================
   Corporate Furniture Kenya v1.1.0 — independent visual system
   Flat, architectural, procurement-first. Not a recoloured donor skin.
   ======================================================================== */
:root {
  --cfk-green: #00BF63;
  --cfk-green-dark: #00994F;
  --cfk-green-soft: #ECF9F2;
  --cfk-charcoal: #343A40;
  --cfk-ink: #20252A;
  --cfk-text: #434A50;
  --cfk-muted: #747D84;
  --cfk-border: #D8E0DD;
  --cfk-surface: #FFFFFF;
  --cfk-surface-alt: #F5F7F6;

  /* Legacy semantic tokens now intentionally resolve to Corporate green. */
  --cfk-blue: #00BF63;
  --cfk-blue-dark: #00994F;
  --cfk-blue-soft: #ECF9F2;

  --cfk-radius-sm: 2px;
  --cfk-radius-md: 4px;
  --cfk-radius-lg: 6px;
  --cfk-container: 1320px;
  --cfk-focus: 0 0 0 3px rgba(0, 191, 99, .18);
}

.cfk-button,
.cfk-site-header button,
.cfk-site-footer a {
  transition: background-color .16s ease, border-color .16s ease, color .16s ease;
}

.cfk-button {
  border-radius: 3px !important;
  font-weight: 760;
}

.cfk-button--primary {
  border-color: #00BF63 !important;
  background: #00BF63 !important;
  color: #10251A !important;
}

.cfk-button--primary:hover,
.cfk-button--primary:focus-visible {
  border-color: #00994F !important;
  background: #00994F !important;
  color: #fff !important;
}

.cfk-button--secondary {
  border-color: #AEBAB5 !important;
  background: #fff !important;
  color: #343A40 !important;
}

.cfk-button--secondary:hover,
.cfk-button--secondary:focus-visible {
  border-color: #343A40 !important;
  background: #343A40 !important;
  color: #fff !important;
}

.cfk-brand-logo__cfk {
  column-gap: 5px;
  line-height: .84;
  letter-spacing: -.052em;
}

.cfk-brand-logo__corporate {
  color: #00BF63;
  font-size: 1.2rem;
  font-weight: 900;
  font-style: italic;
}

.cfk-brand-logo__furniture {
  color: #343A40;
  font-size: 1.2rem;
  font-weight: 850;
}

.cfk-brand-logo__cfk small {
  margin-top: 5px;
  color: #717A80;
  font-size: .48rem;
  font-weight: 800;
  letter-spacing: .28em;
}

.cfk-brand-logo--image .cfk-brand-logo-image {
  display: block;
  width: auto;
  max-width: 205px;
  max-height: 58px;
  object-fit: contain;
}

@media (max-width: 600px) {
  .cfk-brand-logo__corporate,
  .cfk-brand-logo__furniture {
    font-size: 1rem;
  }
}


/* ========================================================================
   v1.1.5 Hello Elementor outer-wrapper top-gap reset
   ======================================================================== */

/*
 * Corporate pages render their own header and section spacing through
 * shortcodes. Hello Elementor can add block-start margin/padding to the
 * main/page-content wrapper, which creates a blank white strip above the
 * Corporate header. Remove only that outer top spacing.
 */
body.cfk-core-active main.site-main,
body.cfk-core-active .site-main {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
  padding-top: 0 !important;
  padding-block-start: 0 !important;
}

body.cfk-core-active main.site-main > .page-content,
body.cfk-core-active .site-main > .page-content,
body.cfk-core-active main.site-main > .entry-content,
body.cfk-core-active .site-main > .entry-content {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
  padding-top: 0 !important;
  padding-block-start: 0 !important;
}

/* Standalone WordPress page wrappers used by Hello Elementor on some routes. */
body.cfk-core-active .page-content:first-child,
body.cfk-core-active .entry-content:first-child {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
}

/* Do not alter WordPress' own admin-bar offset. */
body.cfk-core-active.admin-bar #wpadminbar {
  margin: 0 !important;
}


/* v1.2.1 natural commercial tone */
.cfk-content-kicker,.cfk-shop-eyebrow,.cfk-command-hero__kicker,.cfk-quote-kicker,.cfk-home-eyebrow{
  text-transform:none!important;letter-spacing:.02em!important;font-size:.78rem!important;font-weight:700!important
}
.cfk-content-page h1,.cfk-shop-page h1,.cfk-quote-page h1{letter-spacing:-.035em!important}
