/* Kuark / Connected intelligence — creative direction, September 2026 */
:root {
  --paper:#f1f2ef;
  --graphite:#20231f;
  --orange:#e75125;
  --orange-dark:#b83712;
  --muted:#666b64;
  --rule:#cdd0c9;
  --bg:var(--paper);
  --bg-deep:#e9ebe5;
  --surface:#e9ebe5;
  --ivory:var(--graphite);
  --ivory-soft:#5b625a;
  --ivory-muted:#686f66;
  --line:var(--rule);
  --line-soft:#dce0d6;
  --bronze:var(--orange-dark);
  --bronze-deep:var(--orange-dark);
  --ink:var(--paper);
  --max:83rem;
  --page-pad:clamp(1.25rem,4.8vw,5rem)
}
html {
  color-scheme:light;
  scroll-padding-top:7rem
}
body {
  background:var(--paper);
  color:var(--graphite)
}
body *::selection {
  background:var(--orange);
  color:white
}
button,a,input,select,textarea,summary {
  -webkit-tap-highlight-color:transparent
}
button {
  font:inherit
}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible,select:focus-visible {
  outline:2px solid var(--orange-dark);
  outline-offset:5px
}
.k-header,.k-section,.k-hero,.k-footer,.k-cta-inner {
  width:min(100% - var(--page-pad)*2,83rem);
  margin-inline:auto
}
.k-header {
  height:100px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
  border-bottom:1px solid var(--rule);
  position:relative;
  z-index:110
}
/* A typographic brand signature with a precise orange separator. */
.k-brand {
  display:inline-flex;
  align-items:center;
  gap:.7rem;
  flex-shrink:0;
  color:var(--graphite)
}
.k-brand-word {
  font-size:2.1rem;
  font-weight:650;
  line-height:1;
  letter-spacing:-.065em
}
.k-brand-divider {
  display:block;
  width:2px;
  height:24px;
  background:var(--orange);
  transform:skewX(-18deg);
  margin-inline:.05rem
}
.k-brand-label {
  font-size:.875rem;
  line-height:1;
  font-weight:450;
  letter-spacing:-.025em
}
.k-nav {
  display:flex;
  gap:2.3rem;
  align-items:center;
  margin-left:auto
}
.k-nav>a {
  font-size:.875rem;
  color:#4c524a;
  transition:color .2s
}
.k-nav>a:hover {
  color:var(--orange-dark)
}
.k-nav-actions {
  display:flex;
  align-items:center;
  gap:2.2rem
}
.k-language {
  font-size:.75rem;
  letter-spacing:.06em;
  white-space:nowrap
}
.k-language span {
  color:#6b7168
}
.k-button {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:1.9rem;
  min-height:52px;
  padding:.85rem 1.25rem;
  background:var(--graphite);
  color:#fff;
  font-size:.875rem;
  font-weight:500;
  border:1px solid transparent;
  border-radius:3px;
  transition:background .2s,transform .2s
}
.k-button:hover {
  background:#3f493d;
  transform:translateY(-2px)
}
.k-button>span {
  font-size:1.2rem;
  line-height:1
}
.k-nav-cta {
  min-height:43px;
  padding:.75rem 1.15rem;
  font-size:.875rem
}
.k-button-orange {
  background:var(--orange);
  color:#171b15
}
.k-button-orange:hover {
  background:#ee673d
}
.k-menu {
  display:none;
  border:1px solid var(--rule);
  width:44px;
  height:44px;
  background:transparent;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  border-radius:3px
}
.k-menu>span {
  width:18px;
  height:1px;
  background:var(--graphite)
}
.k-main {
  overflow:hidden
}
.k-kicker {
  font-family:var(--font-sans);
  font-size:.75rem;
  font-weight:500;
  letter-spacing:.095em;
  text-transform:uppercase;
  margin:0;
  line-height:1.6
}
.k-cross {
  font-size:1.4rem;
  color:var(--orange);
  vertical-align:middle;
  margin-right:.45rem
}
.k-hero-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-top:2.2rem
}
.k-hero-index {
  font-size:.75rem;
  letter-spacing:.1em;
  color:#6c7368
}
.k-hero-body {
  display:grid;
  grid-template-columns:1.06fr 1fr;
  align-items:center;
  position:relative;
  min-height:540px
}
.k-hero-copy {
  position:relative;
  z-index:2;
  padding-block:2rem 3.1rem
}
.k-hero h1 {
  font-size:clamp(3.8rem,7.15vw,7rem);
  letter-spacing:-.075em;
  line-height:1.01;
  font-weight:480;
  margin:0 -6rem 1.7rem 0
}
.k-main em {
  font-style:normal;
  color:var(--orange-dark)
}
.k-hero h1 em {
  color:var(--orange)
}
.k-lead {
  font-size:1rem;
  line-height:1.8;
  max-width:28.5rem;
  color:#5c6358;
  margin:0
}
.k-hero-actions {
  display:flex;
  align-items:center;
  gap:1.6rem;
  flex-wrap:wrap;
  margin-top:2rem
}
.k-quiet-link {
  display:inline-flex;
  gap:1.5rem;
  align-items:center;
  font-size:.875rem;
  min-height:44px
}
.k-quiet-link:hover {
  color:var(--orange-dark)
}
.k-hero-art {
  margin:0 -1.1rem 0 0;
  position:relative;
  min-width:0;
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center
}
.k-hero-art img {
  width:112%;
  height:auto;
  max-width:none;
  mix-blend-mode:multiply;
  transform:rotate(-8deg);
  position:relative;
  z-index:0;
  animation:k-arrive 1s both
}
.k-hero-art figcaption {
  position:absolute;
  bottom:24px;
  left:10%;
  right:0;
  display:flex;
  justify-content:flex-end;
  gap:1rem;
  padding-top:15px;
  border-top:1px solid var(--rule);
  font-family:monospace;
  font-size:.75rem;
  line-height:1.5;
  color:#6a7166
}
.k-industry-strip {
  display:flex;
  gap:2.1rem;
  justify-content:space-between;
  align-items:center;
  padding:1.6rem 0;
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
  font-size:.875rem
}
.k-industry-strip .k-meta {
  font-size:.75rem;
  max-width:6.6rem;
  line-height:1.7;
  letter-spacing:.1em;
  color:#73786e
}
.k-industry-strip>i {
  font-style:normal;
  color:#a7aea0
}
.k-section {
  padding-block:6.5rem
}
.k-section-heading {
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:2rem;
  margin-bottom:3.5rem
}
.k-section-heading>.k-kicker {
  padding-top:.5rem
}
.k-main h2 {
  font-size:clamp(2.5rem,4.25vw,4.4rem);
  font-weight:450;
  line-height:1.08;
  letter-spacing:-.055em;
  margin:0
}
.k-section-heading>div {
  display:grid;
  grid-template-columns:1.5fr 1fr;
  gap:3rem;
  align-items:end
}
.k-section-heading>div>p {
  margin:0;
  font-size:1rem;
  line-height:1.8;
  color:#656d60
}
.k-expertise-list {
  border-top:1px solid var(--rule)
}
.k-expertise-row {
  display:grid;
  grid-template-columns:.5fr 2.1fr 1.8fr .2fr;
  align-items:center;
  gap:2rem;
  min-height:114px;
  border-bottom:1px solid var(--rule);
  transition:background .2s,padding .2s
}
.k-expertise-row:hover {
  background:#e7eae1;
  padding-inline:1rem
}
.k-row-number {
  font-family:monospace;
  font-size:.75rem;
  color:#737c6c;
  align-self:center
}
.k-expertise-row h3 {
  font-size:clamp(1.35rem,2vw,1.85rem);
  font-weight:450;
  letter-spacing:-.045em;
  line-height:1.2;
  margin:0
}
.k-expertise-row p {
  font-size:.875rem;
  line-height:1.7;
  color:#656d60;
  max-width:23rem;
  margin:0
}
.k-row-arrow {
  font-size:1.8rem;
  transition:color .2s,transform .2s
}
.k-expertise-row:hover .k-row-arrow {
  color:var(--orange-dark);
  transform:translate(3px,-3px)
}
.k-flow-section {
  background:#20251f;
  color:#f0f3eb
}
.k-flow-heading {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:3rem;
  margin-bottom:3rem
}
.k-flow-heading .k-kicker {
  color:#b5c0ac;
  margin-bottom:2rem
}
.k-flow-heading h2 em {
  color:#bac4af
}
.k-flow-heading>p {
  line-height:1.8;
  font-size:1rem;
  color:#b7c1b0
}
.k-tabs {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-bottom:1px solid #46503f
}
.k-tabs button {
  display:flex;
  gap:1.15rem;
  align-items:center;
  text-align:left;
  border:0;
  border-bottom:2px solid transparent;
  background:transparent;
  color:#b1bba8;
  padding:1.4rem 0;
  font-size:.875rem;
  transition:color .2s,border-color .2s
}
.k-tabs button>span {
  font-family:monospace;
  font-size:.75rem;
  color:#9fa997
}
.k-tabs button[aria-selected=true] {
  border-bottom-color:#f5764f;
  color:#fff
}
.k-tabs button[aria-selected=true]>span {
  color:#f5764f
}
.k-tabs button:hover {
  color:#fff
}
.k-flow-panel {
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:5rem;
  padding-top:3rem;
  align-items:center;
  min-height:360px
}
.k-flow-panel[hidden] {
  display:none
}
.k-flow-copy h3 {
  font-weight:450;
  font-size:1.9rem;
  line-height:1.2;
  letter-spacing:-.04em;
  margin:0 0 1.1rem
}
.k-flow-copy h3>span {
  color:#a6b09c
}
.k-flow-copy>p {
  color:#b7c1b0;
  font-size:1rem;
  line-height:1.8;
  max-width:26rem
}
.k-text-link {
  display:inline-flex;
  align-items:center;
  gap:1.7rem;
  font-size:.875rem;
  border-bottom:1px solid #68745f;
  padding:.8rem 0;
  margin-top:.4rem
}
.k-text-link:hover {
  color:#f5764f
}
.k-workspace {
  border:1px solid #4a5442;
  border-radius:5px;
  overflow:hidden;
  background:#2a3126;
  box-shadow:0 20px 60px #0d160c25
}
.k-workspace-bar {
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:1.05rem 1.3rem;
  border-bottom:1px solid #434e3a;
  font-size:.75rem;
  letter-spacing:.08em;
  color:#c6cebf
}
.k-workspace-mark {
  background:#dbe3d1;
  color:#20251f;
  border-radius:3px;
  padding:.15rem .35rem;
  font-size:.8rem;
  font-weight:700
}
.k-sample-label {
  margin-left:auto;
  color:#bec7b6;
  font-size:.75rem;
  padding:.2rem .4rem;
  border:1px solid #66715d;
  border-radius:3px
}
.k-document-table {
  margin:1rem 1.3rem
}
.k-document-row {
  display:flex;
  align-items:center;
  gap:.75rem;
  min-height:51px;
  font-size:.875rem;
  border-bottom:1px solid #48513f
}
.k-document-row:last-child {
  border:0
}
.k-doc-icon {
  font-size:1.2rem;
  color:#9ba990
}
.k-status {
  margin-left:auto;
  font-size:.75rem;
  padding:.3rem .5rem;
  background:#36412e;
  color:#d6e3c8;
  border-radius:3px;
  white-space:nowrap
}
.k-status-review {
  background:#513d2b;
  color:#ffbd8d
}
.k-flow-steps {
  display:flex;
  gap:.6rem;
  justify-content:space-between;
  align-items:center;
  margin:1.3rem;
  padding-top:1.2rem;
  border-top:1px solid #48513f
}
.k-flow-steps>div {
  font-size:.75rem;
  display:flex;
  flex-direction:column;
  gap:.5rem;
  color:#c0ccb4
}
.k-flow-steps>div>span {
  font-family:monospace;
  color:#f48b61
}
.k-flow-steps>b {
  font-weight:400;
  color:#8b9c7e
}
.k-workspace-note {
  padding:0 1.3rem 1.3rem;
  font-size:.75rem;
  color:#acb9a1;
  line-height:1.6;
  margin:0
}
.k-approach-grid {
  list-style:none;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  padding:0;
  margin:4rem 0 0;
  gap:2.7rem
}
.k-approach-grid li {
  border-top:1px solid var(--rule);
  padding-top:1.4rem;
  display:flex;
  flex-direction:column
}
.k-step-number {
  font-family:monospace;
  color:var(--orange-dark);
  font-size:.875rem
}
.k-approach-grid h3 {
  font-size:1.6rem;
  letter-spacing:-.045em;
  font-weight:500;
  margin:2.8rem 0 .7rem
}
.k-approach-grid p {
  font-size:.875rem;
  line-height:1.8;
  color:#656d60;
  margin:0 0 1.5rem
}
.k-step-result {
  font-size:.75rem;
  display:block;
  margin-top:auto;
  padding-top:1rem;
  border-top:1px solid var(--rule);
  color:#59634f
}
.k-principle {
  display:grid;
  grid-template-columns:.3fr 1.1fr 1fr;
  gap:3rem;
  background:#e6eadd;
  padding:3rem;
  margin-top:5rem;
  align-items:center
}
.k-principle-symbol {
  font-size:4.2rem;
  color:var(--orange-dark);
  line-height:1
}
.k-principle h3 {
  font-size:1.6rem;
  line-height:1.3;
  font-weight:450;
  letter-spacing:-.045em;
  margin:0
}
.k-principle p {
  font-size:.875rem;
  line-height:1.8;
  color:#5e6954;
  margin:0
}
.k-faq {
  display:grid;
  grid-template-columns:1fr 1.5fr;
  gap:6rem;
  padding-top:1rem;
  padding-bottom:6.5rem
}
.k-faq .k-kicker {
  margin-bottom:1.7rem
}
.k-faq-item {
  border-top:1px solid var(--rule)
}
.k-faq-item:last-child {
  border-bottom:1px solid var(--rule)
}
.k-faq-item summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
  cursor:pointer;
  padding:1.5rem 0;
  list-style:none;
  font-size:1rem;
  line-height:1.6
}
.k-faq-item summary::-webkit-details-marker {
  display:none
}
.k-faq-item summary>span {
  font-size:1.5rem;
  font-weight:300;
  flex-shrink:0;
  transition:transform .2s
}
.k-faq-item[open] summary>span {
  transform:rotate(45deg);
  color:var(--orange-dark)
}
.k-faq-item p {
  color:#656d60;
  font-size:1rem;
  line-height:1.8;
  margin:0;
  padding-bottom:1.5rem;
  max-width:40rem
}
.k-cta {
  background:var(--orange);
  color:#1f241d;
  position:relative;
  overflow:hidden
}
.k-cta-inner {
  padding-block:4.5rem;
  position:relative;
  z-index:1
}
.k-cta .k-kicker {
  margin-bottom:2rem
}
.k-cta h2 {
  font-size:clamp(4rem,8.4vw,8.5rem);
  line-height:.98;
  letter-spacing:-.07em
}
.k-cta h2 span {
  color:#f9eee6
}
.k-cta-bottom {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:2rem;
  margin-top:2.5rem
}
.k-cta-bottom p {
  font-size:1rem;
  line-height:1.8;
  margin:0
}
.k-cta .k-button {
  min-width:230px
}
.k-footer {
  padding-block:3.5rem 1.25rem
}
.k-footer-top {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(9rem,.55fr);
  gap:clamp(2rem,4vw,4rem);
  align-items:start;
  padding-bottom:3rem
}
.k-footer-top > * { min-width:0; }
.k-footer-brand .k-brand { margin-bottom:1.4rem; }
.k-footer-top p {
  margin:0;
  color:var(--muted);
  font-size:.8125rem;
  line-height:1.8
}
.k-footer-label {
  margin:0 0 1rem;
  color:var(--muted);
  font-size:.625rem;
  line-height:1.5;
  font-weight:500;
  letter-spacing:.12em;
  text-transform:uppercase
}
.k-footer-email {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:1rem;
  min-height:44px;
  padding-bottom:.75rem;
  margin-bottom:.75rem;
  border-bottom:1px solid var(--rule);
  font-size:clamp(1.125rem,1.85vw,1.65rem);
  line-height:1.4;
  letter-spacing:-.035em
}
.k-footer-email > span:first-child { min-width:0; overflow-wrap:anywhere; }
.k-footer-email > span:last-child { color:var(--orange-dark); flex-shrink:0; }
.k-footer-top nav {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  font-size:.875rem
}
.k-footer-top nav .k-footer-label { margin-bottom:.5rem; }
.k-footer-top nav a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  min-height:36px
}
.k-footer a:hover { color:var(--orange-dark); }
.k-footer-email:hover { border-color:var(--orange-dark); }
.k-footer-bottom {
  border-top:1px solid var(--rule);
  padding-top:1rem;
  display:flex;
  align-items:center;
  gap:1rem 2.5rem;
  color:var(--muted);
  font-size:.75rem
}
.k-footer-bottom > span { margin-right:auto; }
.k-footer-bottom a {
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  min-height:32px
}
.skip-link {
  background:var(--graphite);
  color:var(--paper)
}
/* Carry the design through the existing service, contact and legal routes. */
.k-interior .accent-serif {
  color:var(--orange-dark);
  font-family:var(--font-sans);
  font-style:normal;
  font-weight:450;
  letter-spacing:-.04em
}
.k-interior .content-hero {
  padding-top:4.5rem
}
.k-interior .content-hero h1,.k-interior .contact-copy h1 {
  letter-spacing:-.055em;
  font-weight:450
}
.k-interior .button-primary,.k-interior .contact-submit {
  background:var(--graphite);
  color:#fff;
  border-radius:3px
}
.k-interior .button-secondary {
  border-radius:3px;
  color:var(--graphite);
  border-color:var(--rule)
}
.k-interior .contact-field label,.k-interior .contact-field>span {
  color:#4a5541;
  font-size:.875rem
}
.k-interior .contact-field input,.k-interior .contact-field textarea,.k-interior .contact-field select {
  border-color:var(--rule);
  background:#f8faf5;
  color:var(--graphite);
  font-size:1rem;
  padding:.85rem;
  border-radius:3px
}
.k-interior .contact-field input::placeholder,.k-interior .contact-field textarea::placeholder {
  color:#71796a
}
.k-interior .contact-card {
  background:#e7ebe1;
  border-color:var(--rule);
  box-shadow:none
}
.k-interior .contact-hero {
  padding-top:4rem
}
.k-interior .form-privacy {
  color:#626d57
}
.k-interior .contact-benefits {
  font-size:1rem
}
.k-interior .world-clock-bar {
  display:none!important
}
.k-interior .feature-card:hover {
  background:#e6eadd
}
.k-interior .service-list {
  background:transparent
}
.k-interior .feature-card,.k-interior .service-detail {
  border-color:var(--rule)
}
.k-interior .service-detail h2 {
  letter-spacing:-.04em
}
.k-interior .eyebrow {
  font-size:.875rem
}
.k-interior .content-cta {
  border-top:1px solid var(--rule)
}
.k-interior .contact-main {
  padding-top:0
}
.k-interior .contact-submit:hover {
  background:#3f493d
}
.k-interior .legal-header,.k-interior .not-found {
  padding-top:4rem
}
.k-interior .form-status.is-error {
  color:#a22f12
}
@keyframes k-arrive {
  from {
    opacity:0;
    transform:rotate(-8deg) translateY(14px)
  }
  to {
    opacity:1;
    transform:rotate(-8deg) translateY(0)
  }
}
@media(min-width:1500px) {
  .k-hero-body {
    min-height:620px
  }
  .k-hero-art img {
    width:106%
  }
}
@media(max-width:1100px) {
  .k-nav {
    gap:1.2rem
  }
  .k-nav-actions {
    gap:1.3rem
  }
  .k-header {
    gap:1.3rem
  }
  .k-hero-body {
    min-height:480px
  }
  .k-hero h1 {
    font-size:7.4vw
  }
  .k-section-heading {
    grid-template-columns:.8fr 2fr
  }
  .k-section-heading>div {
    grid-template-columns:1fr;
    gap:1.4rem
  }
  .k-section-heading>div>p {
    max-width:32rem
  }
  .k-industry-strip {
    gap:1rem;
    font-size:.875rem
  }
  .k-flow-panel {
    gap:2rem
  }
  .k-approach-grid {
    gap:1.5rem
  }
  .k-hero-art figcaption {
    display:none
  }
  .k-hero-index {
    font-size:.75rem
  }
  .k-expertise-row {
    gap:1rem
  }
  .k-section {
    padding-block:5rem
  }
  .k-faq {
    padding-top:0;
    gap:4rem
  }
}
@media(max-width:800px) {
  .k-header {
    height:83px
  }
  .k-nav {
    gap:1rem
  }
  .k-nav>a {
    font-size:.875rem
  }
  .k-nav-actions {
    gap:1rem
  }
  .k-nav-cta {
    display:none
  }
  .k-hero-top {
    padding-top:1.8rem
  }
  .k-hero-index {
    display:none
  }
  .k-hero-body {
    grid-template-columns:1fr .85fr;
    min-height:430px
  }
  .k-hero h1 {
    font-size:7.9vw
  }
  .k-lead {
    font-size:1rem
  }
  .k-hero-art {
    margin-right:-2.5rem
  }
  .k-hero-actions {
    gap:.5rem
  }
  .k-industry-strip {
    flex-wrap:wrap;
    justify-content:flex-start;
    column-gap:1.3rem
  }
  .k-industry-strip .k-meta {
    max-width:none;
    flex-basis:100%;
    font-size:.75rem
  }
  .k-industry-strip>i {
    display:none
  }
  .k-expertise-row {
    grid-template-columns:.2fr 1.7fr 1.4fr .2fr
  }
  .k-expertise-row h3 {
    font-size:1.45rem
  }
  .k-expertise-row p {
    font-size:.875rem
  }
  .k-flow-panel {
    grid-template-columns:1fr;
    gap:2rem
  }
  .k-flow-copy {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 2rem
  }
  .k-flow-copy>p {
    margin-top:0
  }
  .k-flow-copy .k-text-link {
    justify-self:start
  }
  .k-workspace {
    max-width:none
  }
  .k-approach-grid {
    grid-template-columns:repeat(2,1fr);
    gap:2.5rem
  }
  .k-principle {
    padding:2rem;
    gap:1.5rem;
    grid-template-columns:.2fr 1fr
  }
  .k-principle p {
    grid-column:2
  }
  .k-principle-symbol {
    font-size:3rem
  }
  .k-faq {
    grid-template-columns:1fr;
    gap:2rem
  }
  .k-faq h2 br {
    display:none
  }
  .k-footer-top {
    gap:2rem;
    grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)
  }
  .k-footer-brand { grid-column:1 / -1; }
  .k-footer-top nav { grid-column:2; }
  .k-footer-email { font-size:1.25rem; }
  .k-footer-bottom {
    flex-wrap:wrap;
    gap:1rem 2rem
  }
}
@media(max-width:600px) {
  :root {
    --page-pad:1.3rem
  }
  .k-header {
    gap:.8rem;
    height:80px
  }
  .k-brand { gap:.5rem; }
  .k-brand-word { font-size:1.7rem; }
  .k-brand-divider { height:21px; }
  .k-brand-label { font-size:.75rem; }

  .k-nav {
    display:none;
    position:absolute;
    top:79px;
    left:calc(-1*var(--page-pad));
    right:calc(-1*var(--page-pad));
    padding:1.3rem var(--page-pad);
    background:var(--paper);
    border-bottom:1px solid var(--rule);
    box-shadow:0 15px 25px #20231f0a;
    flex-direction:column;
    align-items:stretch;
    gap:0
  }
  .k-nav a {
    padding:.85rem .3rem;
    font-size:1rem
  }
  .k-header.is-open .k-nav {
    display:flex
  }
  .k-menu {
    display:flex
  }
  .k-header.is-open .k-menu span:first-child {
    transform:translateY(3px) rotate(45deg)
  }
  .k-header.is-open .k-menu span:last-child {
    transform:translateY(-3px) rotate(-45deg)
  }
  .k-language {
    font-size:.75rem
  }
  .k-hero-body {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    min-height:0
  }
  .k-hero-copy {
    padding-top:2rem;
    padding-bottom:0
  }
  .k-hero h1 {
    font-size:clamp(3.4rem,12.9vw,5.5rem);
    letter-spacing:-.07em;
    margin:0 0 1.3rem;
    line-height:1.03
  }
  .k-lead {
    font-size:1rem;
    line-height:1.75;
    max-width:30rem
  }
  .k-hero-actions {
    margin-top:1.4rem;
    gap:.4rem 1.3rem
  }
  .k-button {
    min-height:50px;
    font-size:.875rem;
    gap:1.2rem;
    padding:.8rem 1rem
  }
  .k-quiet-link {
    font-size:.875rem;
    gap:.6rem
  }
  .k-hero-art {
    margin:0;
    align-self:auto;
    height:auto;
    min-height:310px;
    aspect-ratio:1.12;
    overflow:hidden
  }
  .k-hero-art img {
    width:104%;
    margin-top:-10px
  }
  .k-hero-art figcaption {
    left:0;
    right:0;
    bottom:0;
    background:var(--paper);
    padding:.8rem 0;
    font-size:.75rem
  }
  .k-hero-art figcaption span:last-child {
    display:block
  }
  .k-industry-strip {
    padding:1.3rem 0;
    margin-top:.8rem;
    gap:.7rem 1.5rem
  }
  .k-industry-strip>span:not(.k-meta) {
    font-size:.875rem
  }
  .k-industry-strip .k-meta {
    margin-bottom:.15rem
  }
  .k-section {
    padding-block:3.5rem
  }
  .k-section-heading {
    grid-template-columns:1fr;
    gap:1.5rem;
    margin-bottom:2rem
  }
  .k-section-heading>div {
    gap:1.4rem
  }
  .k-main h2 {
    font-size:2.6rem;
    letter-spacing:-.055em
  }
  .k-section-heading>div>p {
    font-size:1rem
  }
  .k-expertise-row {
    grid-template-columns:26px 1fr 20px;
    gap:.6rem 1rem;
    padding-block:1.5rem;
    min-height:0
  }
  .k-expertise-row h3 {
    font-size:1.55rem
  }
  .k-expertise-row p {
    grid-column:2;
    font-size:1rem
  }
  .k-row-arrow {
    grid-column:3;
    grid-row:1;
    font-size:1.5rem
  }
  .k-row-number {
    grid-row:1
  }
  .k-flow-heading {
    display:block;
    margin-bottom:1.8rem
  }
  .k-flow-heading .k-kicker {
    margin-bottom:1.6rem
  }
  .k-flow-heading>p {
    font-size:1rem;
    margin-top:1.5rem
  }
  .k-tabs {
    gap:.5rem
  }
  .k-tabs button {
    font-size:.75rem;
    flex-direction:column;
    align-items:start;
    gap:.6rem;
    line-height:1.5;
    padding:.85rem 0
  }
  .k-tabs button>span {
    font-size:.75rem
  }
  .k-flow-panel {
    padding-top:2rem;
    gap:1.5rem
  }
  .k-flow-copy {
    display:block
  }
  .k-flow-copy h3 {
    font-size:1.6rem
  }
  .k-flow-copy>p {
    font-size:1rem;
    margin-top:1rem
  }
  .k-flow-copy .k-text-link {
    margin-top:0
  }
  .k-workspace-bar {
    padding:.9rem .8rem;
    gap:.5rem;
    font-size:.75rem
  }
  .k-sample-label {
    font-size:.75rem;
    letter-spacing:0
  }
  .k-document-table {
    margin:.8rem
  }
  .k-document-row {
    font-size:.75rem;
    gap:.5rem;
    min-height:58px
  }
  .k-status {
    font-size:.75rem;
    padding:.3rem
  }
  .k-doc-icon {
    font-size:1rem
  }
  .k-flow-steps {
    margin:1rem .8rem;
    gap:.4rem
  }
  .k-flow-steps>div {
    font-size:.75rem;
    max-width:85px;
    line-height:1.5
  }
  .k-workspace-note {
    padding:0 .8rem 1rem;
    font-size:.75rem
  }
  .k-approach-grid {
    gap:2rem 1.5rem;
    margin-top:2.5rem
  }
  .k-approach-grid h3 {
    margin-top:1.6rem;
    font-size:1.5rem
  }
  .k-approach-grid p {
    font-size:1rem
  }
  .k-step-result {
    font-size:.75rem;
    line-height:1.5
  }
  .k-principle {
    grid-template-columns:1fr;
    margin-top:3rem;
    padding:1.8rem;
    gap:1.1rem
  }
  .k-principle p {
    grid-column:1;
    font-size:1rem
  }
  .k-principle-symbol {
    font-size:2.8rem
  }
  .k-principle h3 {
    font-size:1.55rem
  }
  .k-faq {
    padding-top:0;
    gap:1.8rem
  }
  .k-faq-item summary {
    font-size:1rem;
    gap:1rem
  }
  .k-faq-item p {
    font-size:1rem
  }
  .k-cta-inner {
    padding-block:3rem
  }
  .k-cta h2 {
    font-size:3.8rem;
    position:relative;
    z-index:1
  }
  .k-cta-bottom {
    flex-direction:column;
    align-items:start;
    gap:1.7rem;
    margin-top:2rem
  }
  .k-cta-bottom p {
    font-size:1rem;
    max-width:20rem
  }
  .k-footer {
    padding-top:2.7rem
  }
  .k-footer-top {
    grid-template-columns:1fr;
    gap:1.5rem;
    padding-bottom:2rem
  }
  .k-footer-top nav {
    grid-column:1;
    flex-direction:row;
    flex-wrap:wrap;
    gap:.25rem 1.5rem;
    padding-top:1rem;
    border-top:1px solid var(--rule)
  }
  .k-footer-top nav .k-footer-label { flex-basis:100%; margin-bottom:.35rem; }
  .k-footer-top nav a { min-height:44px; gap:.5rem; }
  .k-footer-email { font-size:clamp(1.0625rem,4.4vw,1.35rem); }
  .k-footer-top p { font-size:.8125rem; }
  .k-footer-bottom {
    gap:1rem;
    font-size:.75rem;
    justify-content:space-between
  }
  .k-footer-bottom>span {
    flex-basis:100%
  }
  .k-interior .content-hero {
    padding-top:3rem
  }
  .k-interior .content-hero h1,.k-interior .contact-copy h1 {
    font-size:2.8rem
  }
  .k-interior .contact-hero {
    padding-top:2.7rem
  }
  .k-interior .contact-card {
    padding:1.2rem
  }
  .k-interior .form-row {
    grid-template-columns:1fr;
    gap:1.4rem
  }
  .k-interior .contact-form {
    gap:1.4rem
  }
  .k-interior .content-hero>p:not(.eyebrow) {
    font-size:1rem
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*::before,*::after {
    animation:none!important;
    transition:none!important
  }
  .k-hero-art img {
    transform:rotate(-8deg)
  }
}
/* Preserve the original hero composition; give the artwork room below. */
.k-hero-copy { min-width:0; }
@media(min-width:601px) {
  .k-hero-art {
    height:100%;
    min-height:0
  }
  .k-hero-art img {
    position:absolute;
    width:110%;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    animation:none;
    mask-image:radial-gradient(ellipse at 50% 45%,#000 48%,transparent 73%)
  }
  .k-hero-art figcaption {
    bottom:16px;
    left:6%;
    right:0
  }
  .k-hero-body { min-height:540px; }
}
@media(min-width:1101px) {
  .k-hero-body {
    min-height:min(640px,calc(100svh - 200px))
  }
  .k-hero-art img {
    max-width:calc((100svh - 200px)*1.16)
  }
}
@media(max-width:800px) and (min-width:601px) {
  .k-hero-body { min-height:480px; }
}
@media(max-width:600px) {
  .k-interior .legal-header h1 { font-size:clamp(2rem,8.5vw,3.2rem); overflow-wrap:anywhere; }
  .k-hero-body { gap:1rem; }
  .k-hero-art {
    align-self:stretch;
    min-height:0;
    aspect-ratio:auto;
    overflow:visible;
    flex-direction:column;
    align-items:stretch
  }
  .k-hero-art img {
    display:block;
    position:static;
    width:100%;
    max-width:100%;
    height:auto;
    margin:0;
    transform:none;
    animation:none;
    mask-image:radial-gradient(ellipse at 50% 45%,#000 48%,transparent 76%)
  }
  .k-hero-art figcaption {
    position:static;
    width:100%;
    margin:0;
    background:transparent
  }
  .k-hero-art figcaption span:last-child { display:none; }
  .k-document-row {
    flex-wrap:wrap;
    row-gap:0;
    padding-block:.65rem
  }
  .k-status {
    font-size:.75rem
  }
  .k-tabs button {
    font-size:.875rem
  }
  .k-flow-steps>div {
    font-size:.75rem;
    max-width:86px
  }
}
.k-flow-section :focus-visible {
  outline-color:#ffae8f
}
.k-industry-strip .k-meta {
  color:#606956
}
/* Long Turkish words retain their full measure on narrow phones. */
.k-faq>div {
  min-width:0
}
.k-faq-item summary {
  overflow-wrap:anywhere
}
@media(max-width:600px) {
  html[lang=tr] .k-hero h1 {
    font-size:clamp(2.7rem,12.8vw,4.4rem)
  }
  .k-cta h2 {
    font-size:clamp(2.9rem,12vw,3.8rem)
  }
  .k-faq {
    grid-template-columns:minmax(0,1fr)
  }
  .k-faq h2 br {
    display:block
  }
}
/* Business examples: a concrete situation and the next human decision. */
.k-workspace-scenario { padding: 1.4rem 1.3rem .3rem; }
.k-workspace-scenario h4 { margin: 0 0 .5rem; font-size: 1.1rem; line-height: 1.35; font-weight: 500; letter-spacing: -.025em; }
.k-workspace-scenario p { margin: 0; color: #bdc8b2; font-size: .875rem; line-height: 1.65; }
.k-next-action { margin: 1.25rem 1.3rem 0; padding: 1rem 1.1rem; border-left: 2px solid #f5764f; background: #343c2e; }
.k-next-action > span { font-size: .75rem; letter-spacing: .08em; color: #ffc3a9; }
.k-next-action p { margin: .4rem 0 0; font-size: .875rem; color: #dce4d3; line-height: 1.6; }
.k-flow-copy h3 { font-size: clamp(1.7rem, 2.5vw, 2.1rem); }
.k-expertise-row { min-height: 104px; }
.k-flow-panel { grid-template-columns: minmax(0,1fr) minmax(0,1.35fr); }
@media (min-width: 1101px) { html[lang=tr] .k-section-heading > div { grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); gap: 2rem; } html[lang=tr] .k-section-heading h2 { font-size: clamp(2.5rem, 3.5vw, 3.65rem); } }
@media (max-width: 800px) { .k-flow-panel { grid-template-columns: minmax(0,1fr); } }
@media (max-width: 600px) { .k-workspace-scenario { padding: 1.2rem .8rem .2rem; } .k-next-action { margin: 1rem .8rem 0; padding: .8rem; } .k-expertise-row { min-height: 0; } .k-document-row > span:nth-child(2) { min-width: 0; flex: 1 1 100px; } .k-flow-heading > p br { display: none; } .k-workspace-bar { letter-spacing: .02em; } .k-workspace-bar > span:nth-child(2) { min-width: 0; } .k-sample-label { flex-shrink: 0; } html[lang=tr] .k-hero h1 { font-size: clamp(2.7rem,12.6vw,4.4rem); } }

/* Corporate refinement: editorial expertise, project sequence and references. */
.k-nav { gap: 1.6rem; }
.k-nav-actions { gap: 1.6rem; }
.k-hero h1 { font-size: clamp(3.2rem,5.7vw,5.8rem); margin-right: -1rem; letter-spacing: -.065em; }
.k-hero .k-lead { max-width: 30rem; }
.k-hero-index { letter-spacing: .08em; }
.k-industry-strip .k-meta { max-width: 9rem; }
.k-editorial-heading { margin-bottom: 3.5rem; }
.k-editorial-heading > .k-kicker { margin: 0 0 2rem; color: var(--orange-dark); }
.k-expertise-intro { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); gap: 5rem; align-items: center; }
.k-expertise-intro h2 { font-size: clamp(2.5rem,4.1vw,4.1rem); max-width: 45rem; }
.k-expertise-intro > div > p { color: var(--muted); line-height: 1.8; font-size: 1rem; max-width: 35rem; margin: 1.5rem 0 0; }
.k-system-layers { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule); }
.k-system-layers li { display: flex; align-items: center; gap: 1.4rem; padding: 1.15rem 0; border-bottom: 1px solid var(--rule); font-size: 1rem; }
.k-system-layers li span { font-family: monospace; font-size: .75rem; color: var(--orange-dark); }
.k-system-layers li::after { content: '+'; margin-left: auto; color: var(--orange-dark); font-size: 1.35rem; font-weight: 300; }
.k-flow-heading > p { max-width: 23rem; margin-bottom: 0; }
.k-flow-copy > .k-flow-eyebrow { font-size: .6875rem; letter-spacing: .09em; color: #e3a88c; margin: 0 0 1.5rem; }
.k-workspace-scenario .k-record-context { font-size: .6875rem; letter-spacing: .06em; color: #aab99d; margin: 0 0 .65rem; }
.k-method-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.2fr); gap: clamp(3rem,7vw,7rem); }
.k-method-intro .k-kicker { margin: 0 0 2rem; color: var(--orange-dark); }
.k-method-intro h2 { font-size: clamp(3rem,5.1vw,5rem); }
.k-method-intro > p:not(.k-kicker) { font-size: 1rem; line-height: 1.85; color: var(--muted); max-width: 26rem; margin: 1.8rem 0 0; }
.k-method-diagram { display: flex; align-items: center; max-width: 20rem; margin: 3rem 0 1.1rem; }
.k-method-diagram i { width: 16px; height: 16px; border: 1px solid var(--orange-dark); flex-shrink: 0; transform: rotate(45deg); }
.k-method-diagram i:last-child { background: var(--orange); border-color: var(--orange); }
.k-method-diagram span { height: 1px; background: #c3c8bd; flex: 1; margin-inline: 6px; }
.k-method-caption { color: #686f66; font-family: monospace; font-size: .6875rem; letter-spacing: .08em; }
.k-method-steps { list-style: none; margin: 0; padding: 0; }
.k-method-steps li { display: grid; grid-template-columns: 3.2rem minmax(0,1fr); gap: 1.5rem; padding: 1.65rem 0; border-top: 1px solid var(--rule); }
.k-method-steps li:first-child { padding-top: 1.5rem; border-top: 2px solid var(--graphite); }
.k-method-steps li:last-child { border-bottom: 1px solid var(--rule); }
.k-method-steps .k-step-number { font-size: 1.75rem; letter-spacing: -.05em; line-height: 1.2; }
.k-method-steps h3 { font-size: 1.35rem; font-weight: 500; line-height: 1.3; letter-spacing: -.025em; margin: 0 0 .5rem; }
.k-method-steps p { font-size: .875rem; line-height: 1.8; color: var(--muted); margin: 0 0 .8rem; }
.k-method-steps .k-step-result { border: 0; padding: 0; color: var(--orange-dark); font-size: .75rem; }
.k-method-steps .k-step-result::before { content: '↳'; padding-right: .6rem; }
.k-references { background: #e7e9e2; border-block: 1px solid #d5d9d0; }
.k-references .k-section { padding-block: 5rem; }
.k-reference-heading { display: flex; gap: 3rem; align-items: end; justify-content: space-between; margin-bottom: 3rem; }
.k-reference-heading .k-kicker { color: var(--orange-dark); margin: 0 0 1.5rem; }
.k-reference-heading h2 span { color: var(--orange-dark); }
.k-reference-heading > p { font-size: .875rem; color: #636b5d; line-height: 1.8; max-width: 20rem; margin: 0; }
.k-reference-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); list-style: none; padding: 0; margin: 0; border-top: 1px solid #bcc3b4; border-left: 1px solid #bcc3b4; }
.k-reference-slot { min-width: 0; border-right: 1px solid #bcc3b4; border-bottom: 1px solid #bcc3b4; }
.k-reference-card { display: flex; flex-direction: column; height: 100%; min-height: 204px; padding: 1.25rem; background: #edf0e9; }
.k-reference-logo { display: grid; place-items: center; min-height: 132px; flex: 1; }
.k-reference-logo img { display: block; object-fit: contain; width: 100%; max-width: 134px; height: 76px; }
.k-reference-logo--skanska img { max-width: 150px; height: 32px; }
.k-reference-logo--kuark img { max-width: 148px; height: 132px; filter: brightness(0); opacity: .84; }
.k-reference-logo--pcl img { max-width: 98px; height: 84px; }
@media (max-width:1050px) and (min-width:801px) {
  .k-reference-card { padding: 1rem .75rem; }
}
@media (max-width:800px) {
  .k-reference-slot:last-child { grid-column: 1 / -1; }
  .k-reference-slot:last-child .k-reference-card { min-height: 176px; }
  .k-reference-slot:last-child .k-reference-logo { min-height: 104px; }
}
.k-faq { padding-top: 6rem; }
.k-cta h2 { font-size: clamp(2.9rem,5.7vw,5.7rem); max-width: 65rem; }
@media (max-width:1100px) {
  .k-nav { gap: 1.2rem; }
  .k-nav-actions { gap: 1rem; }
  .k-expertise-intro { gap: 3rem; }
}
@media (max-width:800px) {
  .k-hero h1 { font-size: clamp(3rem,7vw,4.4rem); }
  .k-expertise-intro { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .k-system-layers { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .k-system-layers li { font-size: .8125rem; gap: .5rem; }
  .k-system-layers li::after { display: none; }
  .k-method-layout { grid-template-columns: minmax(0,1fr); gap: 3rem; }
  .k-method-intro > p:not(.k-kicker) { max-width: 35rem; }
  .k-method-diagram, .k-method-caption { display: none; }
  .k-reference-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .k-reference-heading { align-items: start; flex-direction: column; gap: 1.2rem; }
  .k-reference-heading > p { max-width: none; }
}
@media (max-width:600px) {
  html[lang=tr] .k-hero h1, .k-hero h1 { font-size: clamp(2.6rem,11.6vw,4.2rem); margin-right: 0; }
  .k-hero-top .k-kicker { font-size: .625rem; letter-spacing: .06em; }
  .k-hero-actions { gap: .8rem; }
  .k-expertise-intro h2 { font-size: clamp(1.85rem,8.1vw,3rem); }
  .k-expertise-intro h2 br { display: none; }
  .k-expertise-intro > div > p { font-size: .9375rem; }
  .k-system-layers { display: block; }
  .k-system-layers li { font-size: .875rem; gap: 1rem; padding-block: .9rem; }
  .k-system-layers li::after { display: block; }
  .k-editorial-heading { margin-bottom: 2.5rem; }
  .k-method-intro h2 { font-size: clamp(2.7rem,10.5vw,3.6rem); }
  .k-method-intro > p:not(.k-kicker) { font-size: .9375rem; }
  .k-method-steps li { grid-template-columns: 2.5rem minmax(0,1fr); gap: .75rem; }
  .k-method-steps h3 { font-size: 1.2rem; }
  .k-method-steps .k-step-number { font-size: 1.5rem; }
  .k-references .k-section { padding-block: 3.5rem; }
  .k-reference-card { min-height: 190px; padding: 1rem; }
  .k-reference-heading { margin-bottom: 2rem; }
  .k-reference-heading h2 { font-size: 2.35rem; }
  .k-faq { padding-top: 3.5rem; }
  .k-cta h2 { font-size: clamp(2rem,8.4vw,3.2rem); }
  .k-flow-copy > .k-flow-eyebrow { line-height: 1.8; }
}

/* A concise sector overview without operational recipes or sample records. */
.k-sector-overview .k-flow-heading { gap: 4rem; margin-bottom: 3.75rem; }
.k-sector-overview .k-flow-heading > p { max-width: 27rem; }
.k-sector-values { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid #52604a; }
.k-sector-values li { display: flex; gap: 1.3rem; align-items: baseline; padding: 1.8rem 1.8rem 0 0; }
.k-sector-values li > span { font-family: monospace; font-size: .75rem; color: #f48b61; }
.k-sector-values h3 { font-weight: 450; letter-spacing: -.025em; font-size: clamp(1.1rem,1.7vw,1.5rem); line-height: 1.4; margin: 0; }
@media(max-width:800px) {
  .k-sector-overview .k-flow-heading { gap: 2rem; }
  .k-sector-values li { gap: .8rem; }
}
@media(max-width:600px) {
  .k-sector-overview .k-flow-heading { margin-bottom: 2rem; }
  .k-sector-values { grid-template-columns: minmax(0,1fr); }
  .k-sector-values li { padding: 1.2rem 0; border-bottom: 1px solid #46503f; gap: 1.2rem; }
  .k-sector-values h3 { font-size: 1.125rem; }
}

/* Keep the selected Turkish headline on two balanced lines. */
html[lang=tr] .k-hero h1 { font-size: clamp(1.5rem,4.3vw,4.2rem); line-height: 1.1; }
@media(max-width:600px) {
  html[lang=tr] .k-hero h1 { font-size: clamp(1.5rem,8.3vw,3.2rem); }
}

/* Project enquiries: one heading and one aligned action area. */
.k-project-cta .k-cta-inner { padding-block: 4.5rem; }
.k-project-cta .k-kicker { margin: 0 0 2.2rem; padding-bottom: 1.25rem; border-bottom: 1px solid #20231f40; }
.k-cta-layout { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); gap: 3.5rem; align-items: center; }
.k-project-cta h2 { font-size: clamp(2.4rem,4.1vw,4.2rem); line-height: 1.1; letter-spacing: -.055em; margin: 0; }
.k-cta-action { border-left: 1px solid #20231f40; padding-left: 2.5rem; }
.k-cta-action > p { margin: 0 0 1.7rem; font-size: .9375rem; line-height: 1.85; max-width: 26rem; }
.k-project-cta .k-button { min-width: 0; width: 100%; max-width: 26rem; min-height: 56px; padding: 1rem 1.25rem; }
@media (max-width:1100px) {
  .k-brand { gap: .55rem; }
  .k-brand-word { font-size: 1.85rem; }
  .k-brand-label { font-size: .8125rem; }
  .k-cta-layout { gap: 2rem; grid-template-columns: minmax(0,1.25fr) minmax(0,1fr); }
  .k-cta-action { padding-left: 1.8rem; }
}
@media (max-width:800px) {
  .k-project-cta .k-cta-inner { padding-block: 3.5rem; }
  .k-cta-layout { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .k-project-cta h2 { font-size: clamp(2.25rem,5.8vw,3.5rem); }
  .k-cta-action { border: 0; padding: 0; display: flex; align-items: end; gap: 2rem; }
  .k-cta-action > p { margin: 0; flex: 1; }
  .k-project-cta .k-button { width: auto; flex-shrink: 0; }
}
@media (max-width:600px) {
  .k-brand { gap: .45rem; }
  .k-brand-word { font-size: 1.7rem; }
  .k-brand-label { font-size: .75rem; }
  .k-brand-divider { height: 21px; }
  .k-nav-actions { gap: .7rem; }
  .k-project-cta .k-cta-inner { padding-block: 2.75rem; }
  .k-project-cta .k-kicker { margin-bottom: 1.75rem; padding-bottom: 1rem; }
  .k-project-cta h2 { font-size: clamp(2rem,8.3vw,2.85rem); }
  .k-cta-action { display: block; }
  .k-cta-action > p { margin-bottom: 1.5rem; font-size: .9375rem; }
  .k-project-cta .k-button { width: 100%; max-width: none; }
}
/* Give the brand and navigation enough room on tablet widths. */
@media (max-width:900px) {
  .k-nav-cta { display: none; }
  .k-menu { display: flex; }
  .k-nav {
    display: none;
    position: absolute;
    top: calc(100% - 1px);
    left: calc(-1 * var(--page-pad));
    right: calc(-1 * var(--page-pad));
    padding: 1.3rem var(--page-pad);
    background: var(--paper);
    border-bottom: 1px solid var(--rule);
    box-shadow: 0 15px 25px #20231f0a;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  .k-nav a { padding: .85rem .3rem; font-size: 1rem; }
  .k-header.is-open .k-nav { display: flex; }
  .k-header.is-open .k-menu span:first-child { transform: translateY(3px) rotate(45deg); }
  .k-header.is-open .k-menu span:last-child { transform: translateY(-3px) rotate(-45deg); }
}

/* Contextual paths for service discovery. */
.k-breadcrumb { width: min(100% - var(--page-pad) * 2, 83rem); margin-inline: auto; display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1.75rem; color: var(--muted); font-size: .8125rem; }
.k-breadcrumb a:hover, .k-related-service a:hover { color: var(--orange-dark); }
.k-related-service { width: min(100% - var(--page-pad) * 2, 83rem); margin-inline: auto; display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: .75rem 2rem; padding-block: 1.5rem; border-top: 1px solid var(--rule); }
.k-related-service > span { color: var(--muted); font-size: .8125rem; }
.k-related-service a { font-size: .9375rem; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--rule); }

/* Mobile sector list: one label followed by four aligned entries. */
@media (max-width:600px) {
  .k-industry-strip {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
    gap:0 1.25rem;
    padding:1.25rem 0 0;
    margin-top:1rem;
    border-bottom:0;
  }
  .k-industry-strip .k-meta {
    grid-column:1 / -1;
    display:flex;
    align-items:center;
    gap:.6rem;
    max-width:none;
    margin:0 0 .75rem;
    font-size:.625rem;
    line-height:1.6;
    letter-spacing:.1em;
    color:var(--muted);
  }
  .k-industry-strip .k-meta::before {
    content:"";
    width:1rem;
    height:2px;
    background:var(--orange);
    flex-shrink:0;
  }
  .k-industry-strip > span:not(.k-meta) {
    display:flex;
    align-items:center;
    min-width:0;
    min-height:3.5rem;
    padding:.8rem 0;
    border-bottom:1px solid var(--rule);
    color:var(--graphite);
    font-size:.875rem;
    font-weight:450;
    line-height:1.45;
    letter-spacing:-.015em;
  }
}
