.keet-concept {
  --asphalt: #140508;
  --white: #ffffff;
  --maroon: #5a0f1c;
  --grape: #aa314b;
  --maroon-25: #d6c3c7;
  --paper: #f3f0ec;
  --ink-muted: #645a5c;
  --line: rgba(20, 5, 8, 0.16);
  --container: min(1248px, calc(100vw - 96px));
  --sans: "Poppins", sans-serif;
  --serif: "Source Serif 4", serif;
}

*.keet-concept, .keet-concept * {
  box-sizing: border-box;
}

.keet-concept {
  margin: 0;
  background: var(--white);
  color: var(--asphalt);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

body.keet-menu-open {
  overflow: hidden;
}

.keet-concept a {
  color: inherit;
  text-decoration: none;
}

.keet-concept img {
  display: block;
  max-width: 100%;
}

.keet-concept button,
.keet-concept a {
  -webkit-tap-highlight-color: transparent;
}

.keet-container {
  width: var(--container);
  margin-inline: auto;
}

.keet-section {
  padding: 144px 0;
}

.scroll-progress {
  position: fixed;
  inset: 0 0 auto;
  z-index: 100;
  height: 3px;
  background: transparent;
}

.scroll-progress span {
  display: block;
  width: 0;
  height: 100%;
  background: var(--grape);
}

.keet-site-header {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 20;
  width: var(--container);
  min-height: 112px;
  display: grid;
  grid-template-columns: 212px 1fr 212px;
  align-items: center;
  transform: translateX(-50%);
  color: var(--white);
  border-bottom: 1px solid rgba(255, 255, 255, 0.24);
}

.keet-brand {
  width: 154px;
}

.keet-desktop-nav {
  justify-self: center;
  display: flex;
  gap: 40px;
  font-size: 13px;
  font-weight: 500;
}

.keet-desktop-nav a,
.keet-footer a {
  transition: color 180ms ease;
}

.keet-desktop-nav a:hover,
.keet-footer a:hover {
  color: var(--grape);
}

.keet-header-cta {
  justify-self: end;
  min-width: 174px;
  padding: 14px 20px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  transition: background 180ms ease, color 180ms ease;
}

.keet-header-cta:hover {
  background: var(--white);
  color: var(--asphalt);
}

.keet-menu-toggle,
.keet-mobile-menu {
  display: none;
}

.keet-hero {
  position: relative;
  min-height: 920px;
  height: 100svh;
  max-height: 1080px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  color: var(--white);
  background: var(--asphalt);
}

.keet-hero-media,
.keet-hero-shade,
.keet-closing-media,
.keet-closing-shade {
  position: absolute;
  inset: 0;
}

.keet-hero-media img,
.keet-closing-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.keet-hero-shade {
  background:
    linear-gradient(90deg, rgba(20, 5, 8, 0.88) 0%, rgba(20, 5, 8, 0.45) 48%, rgba(20, 5, 8, 0.16) 76%),
    linear-gradient(0deg, rgba(20, 5, 8, 0.8) 0%, transparent 48%);
}

.keet-hero-content {
  position: relative;
  z-index: 2;
  padding: 208px 0 108px;
}

.keet-eyebrow {
  margin: 0 0 32px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.keet-eyebrow.light {
  color: rgba(255, 255, 255, 0.74);
}

.keet-hero h1 {
  max-width: 1000px;
  margin: 0;
  font-size: clamp(64px, 7.3vw, 112px);
  font-weight: 500;
  line-height: 0.96;
  letter-spacing: -0.045em;
}

.keet-hero-lower {
  width: 100%;
  margin-top: 64px;
  display: grid;
  grid-template-columns: minmax(280px, 480px) 1fr;
  gap: 72px;
  align-items: end;
}

.keet-hero-lower > p {
  margin: 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: 16px;
  line-height: 1.7;
}

.keet-button-row {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
}

.keet-button {
  min-height: 54px;
  padding: 16px 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  font-size: 12px;
  font-weight: 600;
  transition: transform 180ms ease, background 180ms ease, color 180ms ease;
}

.keet-button:hover {
  transform: translateY(-2px);
}

.keet-button-primary {
  background: var(--grape);
  color: var(--white);
}

.keet-button-primary:hover {
  background: var(--maroon);
}

.keet-button-secondary {
  border-color: rgba(255, 255, 255, 0.56);
  color: var(--white);
}

.keet-button-secondary:hover,
.keet-button-light {
  background: var(--white);
  color: var(--asphalt);
}

.keet-hero-index {
  position: absolute;
  right: 28px;
  bottom: 40px;
  z-index: 3;
  display: flex;
  gap: 28px;
  align-items: center;
  color: rgba(255, 255, 255, 0.62);
  font-size: 9px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
}

.keet-section-kicker {
  min-height: 44px;
  margin-bottom: 80px;
  display: flex;
  align-items: center;
  gap: 24px;
  border-bottom: 1px solid var(--line);
  color: var(--ink-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.keet-section-kicker span:first-child {
  color: var(--grape);
}

.keet-section-kicker.inverse {
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.58);
}

.keet-editorial-title {
  max-width: 1040px;
  margin: 0;
  font-size: clamp(58px, 6.8vw, 104px);
  font-weight: 500;
  line-height: 1.03;
  letter-spacing: -0.05em;
}

.keet-editorial-title em,
.keet-projects-heading h2 em,
.keet-closing h2 em {
  font-family: var(--serif);
  font-weight: 400;
  font-style: italic;
}

.keet-intro-grid {
  margin-top: 112px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 120px;
}

.keet-intro-mark {
  min-height: 470px;
  display: grid;
  place-items: center;
  background: var(--paper);
  overflow: hidden;
}

.keet-intro-mark img {
  width: 46%;
  transform: rotate(0deg) scale(1.35);
}

.keet-intro-copy {
  max-width: 540px;
  padding-top: 24px;
}

.keet-intro-copy .keet-richtext {
  color: var(--ink-muted);
  font-size: 16px;
  line-height: 1.72;
}

.keet-text-link {
  margin-top: 24px;
  display: inline-block;
  padding-bottom: 6px;
  border-bottom: 1px solid currentColor;
  font-size: 12px;
  font-weight: 600;
}

.keet-values {
  background: var(--asphalt);
  color: var(--white);
}

.keet-values-heading {
  display: grid;
  grid-template-columns: 1fr 400px;
  gap: 80px;
  align-items: end;
}

.keet-values-heading h2,
.keet-process-intro h2,
.keet-projects-heading h2,
.keet-team-content h2 {
  margin: 0;
  font-size: clamp(48px, 5.2vw, 76px);
  font-weight: 500;
  line-height: 1.04;
  letter-spacing: -0.045em;
}

.keet-values-heading p,
.keet-projects-heading .keet-richtext {
  margin: 0;
  color: rgba(255, 255, 255, 0.64);
  font-size: 14px;
}

.keet-value-grid {
  margin-top: 96px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-left: 1px solid rgba(255, 255, 255, 0.2);
}

.keet-value-card {
  min-height: 438px;
  padding: 32px 28px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.keet-value-card-accent {
  background: var(--maroon);
}

.keet-value-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  color: rgba(255, 255, 255, 0.42);
  font-size: 11px;
}

.keet-value-card-top img {
  width: 32px;
  height: 32px;
  object-fit: contain;
  filter: invert(1);
}

.keet-value-card-content {
  margin-top: auto;
  min-height: 168px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.keet-value-card h3 {
  width: 100%;
  margin: 0 0 20px;
  font-size: 28px;
  font-weight: 500;
}

.keet-value-card-content > p {
  width: 100%;
  margin: 0;
  color: rgba(255, 255, 255, 0.62);
  font-size: 13px;
  line-height: 1.7;
}

.keet-process {
  background: var(--paper);
}

.keet-process-layout {
  display: grid;
  grid-template-columns: 0.92fr 1.08fr;
  gap: 140px;
}

.keet-process-intro {
  align-self: start;
}

.keet-process-intro .keet-section-kicker {
  margin-bottom: 72px;
}

.keet-process-intro p {
  max-width: 520px;
  margin: 44px 0 0;
  color: var(--ink-muted);
}

.keet-process-list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--line);
}

.keet-process-list li {
  min-height: 206px;
  padding: 40px 0;
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 28px;
  border-bottom: 1px solid var(--line);
}

.keet-step-number {
  padding-top: 4px;
  color: var(--grape);
  font-family: var(--serif);
  font-size: 30px;
  font-style: italic;
}

.keet-process-list h3 {
  margin: 0 0 18px;
  font-size: 24px;
  font-weight: 500;
}

.keet-process-list p {
  max-width: 520px;
  margin: 0;
  color: var(--ink-muted);
  font-size: 14px;
}

.keet-projects {
  background: var(--maroon);
  color: var(--white);
}

.keet-projects-heading {
  display: grid;
  grid-template-columns: 1fr 400px;
  gap: 80px;
  align-items: end;
}

.keet-project-grid {
  margin-top: 96px;
  display: grid;
  grid-template-columns: 1.35fr 0.88fr;
  gap: 32px;
  align-items: start;
}

.keet-project-card-small {
  margin-top: 144px;
}

.keet-project-image {
  position: relative;
  overflow: hidden;
  background: var(--asphalt);
}

.keet-project-card-large .keet-project-image {
  aspect-ratio: 1.25 / 1;
}

.keet-project-card-small .keet-project-image {
  aspect-ratio: 0.92 / 1;
}

/* 1.3.9: optional uniform project presentation. Creative remains the default. */
.keet-projects.is-project-layout-uniform .keet-project-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
  align-items: start;
}
.keet-projects.is-project-layout-uniform .keet-project-card-small {
  margin-top: 0;
}
.keet-projects.is-project-layout-uniform .keet-project-card-large .keet-project-image,
.keet-projects.is-project-layout-uniform .keet-project-card-small .keet-project-image {
  aspect-ratio: 4 / 3;
}

.keet-project-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 650ms cubic-bezier(0.2, 0.65, 0.3, 1);
}

@media(hover:hover) and (pointer:fine){
  .keet-project-card:hover .keet-project-image img {
    transform: scale(1.035);
  }
}

/* Per-project privacy/teaser blur. Extra scale prevents filter edges from showing. */
.keet-project-card.is-image-blurred .keet-project-image img {
  filter: blur(var(--keet-project-blur,14px));
  transform: scale(var(--keet-project-blur-scale,1.075));
}
@media(hover:hover) and (pointer:fine){
  .keet-project-card.is-image-blurred:hover .keet-project-image img,
  .keet-project-card.is-image-blurred:hover .keet-project-image-motion img {
    transform: scale(1.09);
  }
}

/* 1.4.0: optional content overlay for blurred project teasers. */
.keet-project-card.is-image-blurred .keet-project-image::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:rgba(20,5,8,var(--keet-project-overlay-shade,.18));
}
.keet-project-blur-overlay{
  position:absolute;
  inset:0;
  z-index:3;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:clamp(18px,2vw,30px);
  padding:clamp(26px,4vw,58px);
  color:#fff;
  pointer-events:none;
}
.keet-project-blur-badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.9);
  font-size:clamp(11px,.9vw,15px);
  font-weight:600;
  line-height:1.1;
}
.keet-project-blur-title{
  display:block;
  margin-top:clamp(4px,1vw,14px);
  font-size:clamp(34px,4vw,72px);
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.035em;
}
.keet-project-blur-primary{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:10px 18px;
  margin-top:clamp(12px,2vw,28px);
}
.keet-project-blur-price{
  font-size:clamp(20px,2.1vw,38px);
  font-weight:600;
  line-height:1.1;
}
.keet-project-blur-secondary{
  color:rgba(255,255,255,.78);
  font-size:clamp(18px,1.8vw,32px);
  font-weight:400;
  line-height:1.15;
}
.keet-project-blur-extras{
  display:flex;
  flex-wrap:wrap;
  gap:12px 28px;
  margin:auto 0 0;
  padding:0;
}
.keet-project-blur-extras>div{
  display:flex;
  align-items:baseline;
  gap:8px;
}
.keet-project-blur-extras dt{
  margin:0;
  color:rgba(255,255,255,.58);
  font-size:9px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.keet-project-blur-extras dd{
  margin:0;
  color:inherit;
  font-size:12px;
}
@media(max-width:760px){
  .keet-project-blur-overlay{gap:14px;padding:24px;}
  .keet-project-blur-badge{min-height:32px;padding:7px 11px;font-size:10px;}
  .keet-project-blur-title{font-size:clamp(30px,9vw,48px);}
  .keet-project-blur-primary{margin-top:4px;gap:8px 14px;}
  .keet-project-blur-price{font-size:20px;}
  .keet-project-blur-secondary{font-size:18px;}
  .keet-project-blur-extras{gap:8px 18px;}
}

.keet-project-meta {
  padding: 28px 0 0;
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 24px;
}

.keet-project-meta > div {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.keet-project-meta span,
.keet-project-meta dt {
  color: rgba(255, 255, 255, 0.5);
  font-size: 9px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.keet-project-meta strong {
  font-size: 24px;
  font-weight: 500;
}

.keet-project-meta dl {
  margin: 0;
  display: grid;
  gap: 10px;
}

.keet-project-meta dl div {
  display: grid;
  grid-template-columns: 94px 1fr;
  gap: 12px;
  align-items: baseline;
}

.keet-project-meta dd {
  margin: 0;
  font-size: 11px;
}

.keet-projects-action {
  margin-top: 96px;
  display: flex;
  justify-content: center;
}

.keet-team {
  min-height: 860px;
  display: grid;
  grid-template-columns: var(--keet-team-desktop-columns, 1fr 1fr);
  background: var(--white);
}

.keet-team-visual {
  position: relative;
  min-height: 860px;
  padding: 64px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  background: var(--grape);
  color: var(--white);
}

.keet-team-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg, transparent 20%, rgba(90, 15, 28, 0.74));
}

.keet-team-visual img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 74%;
  max-width: 600px;
  transform: translate(-50%, -50%) rotate(-8deg);
}

.keet-team-visual span {
  position: relative;
  z-index: 1;
  margin-top: auto;
  font-family: var(--serif);
  font-size: 36px;
  line-height: 1.18;
}

.keet-team-content {
  padding: 112px clamp(48px, 7vw, 120px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.keet-team-content .keet-section-kicker {
  margin-bottom: 72px;
}

.keet-team-content h2 {
  max-width: 640px;
}

.keet-team-content > p {
  max-width: 590px;
  margin: 40px 0 0;
  color: var(--ink-muted);
}

.keet-team-names {
  margin: 52px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  list-style: none;
}

.keet-team-names li {
  display: flex;
  flex-direction: column;
  gap: 14px;
  font-size: 12px;
  font-weight: 500;
}

.keet-team-names li span {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  color: var(--grape);
  font-size: 11px;
}

.keet-closing {
  position: relative;
  min-height: 820px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  color: var(--white);
  background: var(--asphalt);
}

.keet-closing-media img {
  transform: scale(1.07);
  filter: saturate(0.72);
}

.keet-closing-shade {
  background: linear-gradient(90deg, rgba(20, 5, 8, 0.9) 0%, rgba(90, 15, 28, 0.7) 50%, rgba(20, 5, 8, 0.45));
}

.keet-closing-content {
  position: relative;
  z-index: 2;
  padding: 132px 0 110px;
}

.keet-closing h2 {
  margin: 0;
  font-size: clamp(72px, 9vw, 142px);
  font-weight: 500;
  line-height: 0.86;
  letter-spacing: -0.055em;
}

.keet-closing-lower {
  margin-top: 72px;
  display: grid;
  grid-template-columns: minmax(300px, 500px) 1fr;
  gap: 80px;
  align-items: end;
}

.keet-closing-lower p {
  margin: 0;
  color: rgba(255, 255, 255, 0.7);
}

.keet-closing-lower .keet-button {
  justify-self: end;
}

.keet-footer {
  padding: 96px 0 28px;
  background: var(--asphalt);
  color: var(--white);
}

.keet-footer-top {
  padding-bottom: 80px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 96px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.keet-footer-top img {
  width: 210px;
}

.keet-footer-top p {
  max-width: 560px;
  margin: 0;
  font-family: var(--serif);
  font-size: 38px;
  line-height: 1.18;
}

.keet-footer-links {
  padding: 68px 0 84px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 64px;
}

.keet-footer-links > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

.keet-footer-links span {
  margin-bottom: 14px;
  color: rgba(255, 255, 255, 0.4);
  font-size: 9px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.keet-footer-links a,
.keet-footer-links p {
  margin: 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 12px;
}

.keet-footer-bottom {
  padding-top: 24px;
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 32px;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  color: rgba(255, 255, 255, 0.44);
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@media (max-width: 1080px) {
  .keet-concept {
    --container: min(100% - 56px, 920px);
  }

  .keet-site-header {
    grid-template-columns: 180px 1fr 180px;
  }

  .keet-desktop-nav {
    gap: 24px;
  }

  .keet-hero-lower,
  .keet-values-heading,
  .keet-projects-heading {
    grid-template-columns: 1fr;
  }

  .keet-button-row {
    justify-content: flex-start;
  }

  .keet-intro-grid,
  .keet-process-layout {
    gap: 64px;
  }

  .keet-value-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .keet-project-grid {
    grid-template-columns: 1fr 1fr;
  }

  .keet-project-card-small {
    margin-top: 80px;
  }

  .keet-team {
    grid-template-columns: 0.85fr 1.15fr;
  }
}

@media (max-width: 760px) {
  /* 1.3.1: mobile Team must never inherit an Elementor desktop ratio. */
  .elementor-element .keet-team,
  .keet-team {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100%;
  }
  .keet-team-visual,
  .keet-team-content {
    min-width: 0;
    width: 100%;
  }
  .keet-concept {
    --container: calc(100% - 40px);
  }

  .keet-section {
    padding: 92px 0;
  }

  .keet-site-header {
    left: 20px;
    min-height: 82px;
    grid-template-columns: 1fr auto;
    transform: none;
  }

  .keet-brand {
    position: relative;
    z-index: 2;
    width: 118px;
  }

  .keet-desktop-nav,
  .keet-header-cta {
    display: none;
  }

  .keet-menu-toggle {
    position: relative;
    z-index: 2;
    display: block;
    padding: 10px 0;
    border: 0;
    background: transparent;
    color: inherit;
    font-family: var(--sans);
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
  }

  .keet-mobile-menu {
    position: fixed;
    inset: 0;
    z-index: 1;
    padding: 140px 20px 40px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    background: var(--asphalt);
    opacity: 0;
    pointer-events: none;
    transition: opacity 180ms ease;
  }

  .keet-mobile-menu a {
    font-size: 36px;
    font-weight: 500;
  }

  .menu-open .keet-mobile-menu {
    opacity: 1;
    pointer-events: auto;
  }

  .keet-hero {
    min-height: 820px;
    height: auto;
  }

  .keet-hero-content {
    padding: 164px 0 70px;
  }

  .keet-hero h1 {
    font-size: clamp(48px, 14vw, 68px);
  }

  .keet-hero-lower,
  .keet-closing-lower {
    margin-top: 44px;
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .keet-button-row {
    flex-direction: column;
  }

  .keet-button {
    width: 100%;
  }

  .keet-hero-index {
    display: none;
  }

  .keet-section-kicker {
    margin-bottom: 52px;
  }

  .keet-editorial-title {
    font-size: 50px;
  }

  .keet-intro-grid,
  .keet-process-layout,
  .keet-values-heading,
  .keet-projects-heading,
  .keet-project-grid,
  .keet-team,
  .keet-footer-top {
    grid-template-columns: 1fr;
  }

  .keet-intro-grid {
    margin-top: 64px;
  }

  .keet-intro-mark {
    min-height: 360px;
  }

  .keet-intro-copy .lead {
    font-size: 26px;
  }

  .keet-value-grid {
    margin-top: 64px;
    grid-template-columns: 1fr;
  }

  .keet-value-card {
    min-height: 360px;
  }

  .keet-value-card-content {
    min-height: 0;
  }

  .keet-process-layout {
    gap: 72px;
  }

  .keet-process-list li {
    grid-template-columns: 60px 1fr;
  }

  .keet-project-card-small {
    margin-top: 48px;
  }

  .keet-project-meta {
    grid-template-columns: 1fr;
  }

  .keet-team-visual,
  .keet-team {
    min-height: 0;
  }

  .keet-team-visual {
    min-height: 520px;
  }

  .keet-team-content {
    padding: 92px 20px;
  }

  .keet-team-names {
    grid-template-columns: 1fr;
  }

  .keet-team-names li {
    flex-direction: row;
    align-items: center;
  }

  .keet-closing {
    min-height: 700px;
  }

  .keet-closing h2 {
    font-size: 70px;
  }

  .keet-closing-lower .keet-button {
    justify-self: stretch;
  }

  .keet-footer-links {
    grid-template-columns: 1fr;
  }

  .keet-footer-bottom {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .keet-concept,
  .keet-concept *,
  .keet-concept *::before,
  .keet-concept *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}


/* ========================================================================== 
   KEET 1.3.0 — frontend runtime & mobile hardening
   Source layout above remains the visual source of truth. No historical patch
   blocks are retained below this point.
   ========================================================================== */
:root{--kc-ease:cubic-bezier(.625,.05,0,1);--kc-ease-soft:cubic-bezier(.22,.61,.36,1);}
.keet-concept{--kc-pointer-x:50%;--kc-pointer-y:50%;position:relative;isolation:isolate;}
.keet-concept[data-kc-motion="static"] [data-kc-reveal],
.keet-concept[data-kc-motion="static"] [data-kc-split]{opacity:1!important;transform:none!important;}
.kc-split-safe{overflow:visible!important;}

/* Elementor host: source sections are full-width and gapless by design. */
.elementor-page .keet-concept-host:not(.keet-header-host)>.elementor-widget-container>.keet-concept{width:100vw;max-width:100vw;margin-inline:calc(50% - 50vw);}
@supports(width:100dvw){.elementor-page .keet-concept-host:not(.keet-header-host)>.elementor-widget-container>.keet-concept{width:100dvw;max-width:100dvw;margin-inline:calc(50% - 50dvw);}}
.elementor-page .keet-concept-host{margin-block:0!important;max-width:none!important;}
.elementor-page .keet-concept-host>.elementor-widget-container{width:100%;margin:0!important;padding:0!important;}
.elementor-page .e-con:has(>.keet-concept-host),.elementor-page .e-con-inner:has(>.keet-concept-host){gap:0!important;--gap:0px;--row-gap:0px;--column-gap:0px;}
.elementor-page .keet-header-host{position:relative!important;z-index:90!important;margin:0!important;}
.elementor-page:has(.keet-concept-host){overflow-x:clip;}

/* Global progress + restrained section transitions. */
.keet-site-progress{position:fixed;inset:0 0 auto;z-index:9999;height:2px;pointer-events:none;transform:translateZ(0);}
.keet-site-progress>span{display:block;width:100%;height:100%;background:#aa314b;transform:scaleX(0);transform-origin:0 50%;will-change:transform;}
.kc-section-curtain{position:absolute;inset:0;z-index:30;display:block;pointer-events:none;will-change:transform;}

/* Optical texture. */
.keet-hero::after,.keet-values::after,.keet-projects::after,.keet-closing::after,.keet-team-visual::before,.keet-team-orbit::after{
  content:"";position:absolute;inset:0;z-index:4;pointer-events:none;opacity:.026;mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");background-size:180px 180px;
}
.keet-team-visual::before{z-index:1;}.keet-team-visual>img,.keet-team-visual>span{z-index:2;}.keet-hero-content,.keet-hero-index,.keet-closing-content{z-index:5;}

/* Character stagger. */
.kc-char-label{display:inline-flex;align-items:center;line-height:1;}
.kc-char-cell{position:relative;display:inline-grid;overflow:hidden;line-height:1.25;padding-block:.06em .16em;margin-block:-.06em -.16em;}
.kc-char{grid-area:1/1;display:block;transition:transform .58s var(--kc-ease);transition-delay:calc(var(--kc-char-index)*13ms);}
.kc-char-a{transform:translateY(0)}.kc-char-b{transform:translateY(118%)}
@media(hover:hover) and (pointer:fine){.keet-concept a:hover .kc-char-a,.keet-concept button:hover .kc-char-a{transform:translateY(-118%)}.keet-concept a:hover .kc-char-b,.keet-concept button:hover .kc-char-b{transform:translateY(0)}}

/* Text links: underline follows text width only. */
.keet-text-link{position:relative;display:inline-block;align-self:flex-start;width:fit-content;max-width:100%;border-bottom:0;overflow:visible;}
.keet-text-link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(1);transform-origin:0 50%;transition:transform .55s var(--kc-ease);}
@media(hover:hover) and (pointer:fine){.keet-text-link:hover::after{transform:scaleX(.22);transform-origin:100% 50%;}}

/* Buttons: one transform owner, magnetic JS only changes the outer node. */
.keet-button,.keet-header-cta{position:relative;overflow:hidden;}
.keet-button::before,.keet-header-cta::before{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid currentColor;opacity:0;transform:scale(.96);transition:opacity .4s ease,transform .58s var(--kc-ease);}
@media(hover:hover) and (pointer:fine){.keet-button:hover::before,.keet-header-cta:hover::before{opacity:.18;transform:scale(1);}}

/* Values: equal visual priority + hover depth, never opacity-gated. */
.keet-value-card{position:relative;overflow:hidden;opacity:1!important;transition:background-color .5s ease,box-shadow .5s ease;}
.keet-value-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.015));transform:scaleY(0);transform-origin:50% 100%;transition:transform .65s var(--kc-ease);pointer-events:none;}
.keet-value-card>*{position:relative;z-index:1;transition:transform .62s var(--kc-ease);}
.keet-value-card-top img{transition:transform .7s var(--kc-ease),filter .4s ease;}
@media(hover:hover) and (pointer:fine){
 .keet-values[data-kc-micro="1"] .keet-value-card:hover::before,.keet-value-card.is-kc-focused::before{transform:scaleY(1);}
 .keet-values[data-kc-micro="1"] .keet-value-card:hover>*{transform:translateY(-6px);}
 .keet-values[data-kc-micro="1"] .keet-value-card:hover .keet-value-card-top img{transform:rotate(6deg) scale(1.08);}
 .keet-values[data-kc-micro="1"] .keet-value-card:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
}

/* Process: scroll and hover share exactly the same active visual language. */
@media(min-width:1024px){.keet-process-intro{position:sticky;top:clamp(88px,12vh,148px);}}
.keet-process-list li{position:relative;overflow:hidden;opacity:1!important;transition:transform .5s var(--kc-ease),background-color .45s ease;}
.keet-process-list li::before{content:"";position:absolute;inset:10px -18px;z-index:0;background:linear-gradient(90deg,rgba(170,49,75,.07),transparent 72%);opacity:0;transform:scaleX(.94);transform-origin:0 50%;transition:opacity .42s ease,transform .55s var(--kc-ease);pointer-events:none;}
.keet-process-list li>.keet-step-number,.keet-process-step-copy{position:relative;z-index:1;}
.keet-process-step-copy{display:flex;flex-direction:column;align-items:flex-start;}
.keet-process-list h3,.keet-step-number{transition:color .42s ease;}
.keet-process-list li.is-active::before,.keet-process-list li:focus-within::before{opacity:1;transform:scaleX(1);}
.keet-process-list li.is-active,.keet-process-list li:focus-within{transform:translateX(5px);}
.keet-process-list li.is-active h3,.keet-process-list li:focus-within h3{color:var(--grape);}
.keet-process-step-link{position:absolute;inset:0;z-index:2;display:block;}
.keet-process-link-label{display:inline-flex;align-items:center;gap:8px;margin-top:17px;color:var(--grape);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;opacity:0;transform:translateY(7px);transition:opacity .35s ease,transform .45s var(--kc-ease);}
.keet-process-list li:focus-within .keet-process-link-label{opacity:1;transform:none;}
@media(hover:hover) and (pointer:fine){
  .keet-process-list li:hover::before{opacity:1;transform:scaleX(1);}
  .keet-process-list li:hover{transform:translateX(5px);}
  .keet-process-list li:hover h3{color:var(--grape);}
  .keet-process-list li:hover .keet-process-link-label{opacity:1;transform:none;}
}

/* Project media: GSAP owns wrapper; image owns hover scale. */
.keet-project-image{isolation:isolate;}
.keet-project-image-motion{width:100%;height:112%;position:absolute;left:0;top:-6%;}
.keet-project-image-motion img{width:100%;height:100%;object-fit:cover;transition:transform 650ms cubic-bezier(.2,.65,.3,1);}
@media(hover:hover) and (pointer:fine){.keet-project-card:hover .keet-project-image-motion img{transform:scale(1.035);}}
.kc-project-cursor{position:fixed;left:0;top:0;z-index:10000;min-width:92px;height:46px;padding:0 17px;display:grid;place-items:center;border-radius:999px;background:#fff;color:#140508;font:600 10px/1 "Poppins",sans-serif;letter-spacing:.08em;text-transform:uppercase;opacity:0;pointer-events:none;box-shadow:0 12px 34px rgba(20,5,8,.18);transition:opacity .18s ease;will-change:transform;contain:layout paint style;}
.kc-project-cursor.is-visible{opacity:1;}
.keet-projects-button{gap:18px;min-width:230px;background:var(--white);color:var(--asphalt);border-color:var(--white);z-index:2;}
.keet-projects-button>span{position:relative;z-index:2;color:inherit;}.keet-projects-button .keet-button-arrow{width:16px;height:16px;flex:0 0 auto;transition:transform .5s var(--kc-ease);}
@media(hover:hover) and (pointer:fine){.keet-projects-button:hover{background:var(--paper);color:var(--asphalt)}.keet-projects-button:hover .keet-button-arrow{transform:translate(4px,-4px) rotate(8deg)}}

/* Existing Team: preserve composition, keep quote/link readable. */
.keet-team-visual>img{top:43%;left:57%;width:min(70%,560px);}
.keet-team-visual>span{position:absolute;left:64px;right:64px;bottom:64px;max-width:430px;margin:0;z-index:3;line-height:1.2;text-shadow:0 1px 14px rgba(90,15,28,.28);}
.keet-team-content h2{line-height:1.02;overflow:visible;}.keet-team-content>p{line-height:1.65;}
.keet-team-names li{position:relative;transition:transform .45s var(--kc-ease),color .35s ease;}
@media(hover:hover) and (pointer:fine){.keet-team-names li:hover{transform:translateY(-4px);color:var(--grape);}}

/* Closing: wrapper owns parallax, image owns entrance scale. */

.keet-closing::before{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;background:radial-gradient(circle 360px at var(--kc-pointer-x) var(--kc-pointer-y),rgba(255,255,255,.1),transparent 68%);opacity:0;transition:opacity .5s ease;}
.keet-closing.is-pointer-active::before{opacity:1;}

/* Expanded footer: two structural dividers only. */
.keet-footer{padding-top:112px;}
.keet-footer-top{grid-template-columns:.82fr 1.18fr;align-items:start;gap:clamp(64px,9vw,144px);padding-bottom:88px;border-bottom:1px solid rgba(255,255,255,.18);}
.keet-footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:34px;}.keet-footer-brand img{width:210px;}
.keet-footer-substatement{max-width:390px;margin:0!important;color:rgba(255,255,255,.56)!important;font-family:var(--sans)!important;font-size:13px!important;line-height:1.7!important;}
.keet-footer-manifest{display:flex;flex-direction:column;align-items:flex-start;gap:34px;}
.keet-footer-manifest>p{max-width:650px;margin:0;font-family:var(--serif);font-size:clamp(34px,3.2vw,54px);line-height:1.12;}
.keet-footer-cta{min-height:52px;display:inline-flex;align-items:center;gap:24px;padding:14px 20px;border:1px solid rgba(255,255,255,.36);color:var(--white);font-size:11px;font-weight:600;transition:background .4s ease,color .4s ease,border-color .4s ease;}
.keet-footer-cta-icon{width:16px;height:16px;flex:0 0 auto;transition:transform .5s var(--kc-ease);}
@media(hover:hover) and (pointer:fine){.keet-footer-cta:hover{background:var(--white);color:var(--asphalt);border-color:var(--white)}.keet-footer-cta:hover .keet-footer-cta-icon{transform:translate(4px,-4px)}}
.keet-footer-links{grid-template-columns:1.15fr 1.25fr 1.1fr .8fr;gap:clamp(32px,5vw,72px);padding:64px 0 76px;border:0;}
.keet-footer-links>div{padding:0;border:0;}.keet-footer-links a,.keet-footer-links p{font-size:12px;line-height:1.65;}
.keet-footer-bottom{grid-template-columns:1fr auto auto auto;align-items:center;padding-top:30px;border-top:1px solid rgba(255,255,255,.18);}

/* Swiper: CSS scroll-snap is always a valid fallback. */
.keet-slider-ui{display:none;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;}
.keet-slider-ui button{width:44px;height:44px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;cursor:pointer;}.keet-slider-ui button>svg{width:18px;height:18px;display:block;}
.keet-slider-ui [data-kc-pagination]{display:flex;justify-content:center;gap:7px;flex:1;}.keet-slider-ui [data-kc-pagination] button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:currentColor;opacity:.3}.keet-slider-ui [data-kc-pagination] button.is-active{opacity:1;}
.keet-concept[data-kc-swiper-ready="1"] .keet-mobile-slider{overflow:hidden;}.keet-concept[data-kc-swiper-ready="1"] [data-kc-slider-track]{display:flex!important;gap:0!important;border:0!important;}.keet-concept[data-kc-swiper-ready="1"]:not([data-kc-orbit-presentation="uniform-video"]) [data-kc-slide]{height:auto;margin:0!important;}.keet-concept[data-kc-swiper-ready="1"] .keet-slider-ui{display:flex;}
.keet-concept[data-kc-swiper-ready="1"] .swiper-wrapper{box-sizing:border-box;width:100%;height:auto;position:relative;z-index:1;display:flex;transition-property:transform;}.keet-concept[data-kc-swiper-ready="1"] .swiper-slide{flex-shrink:0;width:100%;height:auto;position:relative;}

/* Kieboom-inspired reusable Team Orbit widget. */
.keet-team-orbit{
  --kc-orbit-size:min(46vw,690px);--kc-orbit-x:min(39vw,720px);--kc-orbit-y:min(31vh,330px);--kc-orbit-card-w:330px;--kc-orbit-card-h:460px;--kc-orbit-line:rgba(90,15,28,.16);--kc-orbit-active:var(--grape);
  min-height:100svh;background:var(--paper);color:var(--asphalt);overflow:clip;
}
.keet-team-orbit.is-kc-orbit-live{min-height:320vh;}.keet-team-orbit.is-kc-orbit-live .keet-orbit-card,.keet-team-orbit.is-kc-orbit-live .keet-orbit-marker{will-change:transform,opacity;}
.keet-orbit-pin{position:relative;top:0;min-height:100svh;display:flex;align-items:stretch;overflow:hidden;}
.keet-team-orbit.is-kc-orbit-live .keet-orbit-pin{position:sticky;}
.keet-orbit-shell{position:relative;min-height:100svh;padding-block:clamp(56px,7vh,86px);}
.keet-team-orbit .keet-section-kicker{position:relative;z-index:6;}
.keet-orbit-center{position:absolute;left:50%;top:50%;width:var(--kc-orbit-size);aspect-ratio:1;transform:translate(-50%,-50%);display:grid;place-items:center;text-align:center;z-index:2;}
.keet-orbit-ring{position:absolute;inset:0;border-radius:50%;pointer-events:none;}
.keet-orbit-ring::before{content:"";position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(from 0deg,var(--kc-orbit-line) 0deg 1deg,transparent 1deg 4deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 13px),#000 calc(100% - 12px) calc(100% - 8px),transparent calc(100% - 7px));mask:radial-gradient(farthest-side,transparent calc(100% - 13px),#000 calc(100% - 12px) calc(100% - 8px),transparent calc(100% - 7px));}
.keet-orbit-marker{position:absolute;inset:0;border-radius:50%;}.keet-orbit-marker::before{content:"";position:absolute;left:50%;top:-1px;width:2px;height:18px;background:var(--kc-orbit-active);transform:translateX(-50%);border-radius:2px;}
.keet-orbit-copy{position:relative;z-index:2;width:min(82%,620px);}.keet-orbit-center h2{margin:0;color:var(--grape);font-size:clamp(64px,6vw,100px);font-weight:500;line-height:.95;letter-spacing:-.045em;}.keet-orbit-center h2 em{font-family:var(--serif);font-weight:400;font-style:italic;}.keet-orbit-richtext{max-width:580px;margin:30px auto 0;color:var(--ink-muted);font-size:15px;line-height:1.7;}
.keet-orbit-card-shell{position:absolute;inset:0;z-index:4;pointer-events:none;}.keet-orbit-cards{position:absolute;inset:0;pointer-events:none;}.keet-orbit-card{position:absolute;left:50%;top:50%;width:var(--kc-orbit-card-w);height:var(--kc-orbit-card-h);overflow:hidden;border-radius:18px;background:var(--asphalt);box-shadow:0 28px 70px rgba(20,5,8,.12);pointer-events:auto;}
.keet-orbit-card:nth-child(1){transform:translate(-170%,-72%) rotate(-2deg);}
.keet-orbit-card:nth-child(2){transform:translate(68%,-5%) rotate(2deg);}
.keet-orbit-card:nth-child(3){transform:translate(-55%,82%) scale(.78);opacity:.16;}
.keet-orbit-card:nth-child(n+4){transform:translate(-50%,95%) scale(.76);opacity:.2;}.keet-orbit-card-image{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--kc-ease),filter .45s ease;}.keet-orbit-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,5,8,.46),transparent 48%,rgba(20,5,8,.58));pointer-events:none;}.keet-orbit-card-copy{position:absolute;left:24px;right:24px;top:22px;z-index:2;color:#fff;}.keet-orbit-name{font-size:28px;font-weight:500;line-height:1.05;}.keet-orbit-name-last{font-family:var(--serif);font-style:italic;font-weight:400;}.keet-orbit-role{display:block;margin-top:8px;font-size:13px;}.keet-orbit-card-link{position:absolute;inset:0;z-index:3;}.keet-orbit-card.is-orbit-active{box-shadow:0 34px 90px rgba(20,5,8,.2);}.keet-orbit-card:hover .keet-orbit-card-image,.keet-orbit-card:focus-within .keet-orbit-card-image{transform:scale(1.035);filter:saturate(1.04);}
.keet-orbit-network-note{position:absolute;left:50%;bottom:44px;z-index:5;width:min(360px,32vw);margin:0;transform:translateX(-50%);text-align:center;color:var(--ink-muted);font-size:11px;line-height:1.55;}.keet-orbit-coordinates{position:absolute;right:0;bottom:44px;z-index:5;display:flex;flex-direction:column;align-items:flex-end;gap:5px;color:var(--ink-muted);font-size:10px;letter-spacing:.04em;}

/* Brand browser chrome. */
body:not(.elementor-editor-active):not(.elementor-editor-preview) ::selection{background:#aa314b;color:#fff;text-shadow:none;}body:not(.elementor-editor-active):not(.elementor-editor-preview) ::-moz-selection{background:#aa314b;color:#fff;text-shadow:none;}
html:not(.elementor-html){scrollbar-width:thin;scrollbar-color:#aa314b #140508;}html:not(.elementor-html)::-webkit-scrollbar{width:11px;height:11px}html:not(.elementor-html)::-webkit-scrollbar-track{background:#140508}html:not(.elementor-html)::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#aa314b,#5a0f1c);border:3px solid #140508;border-radius:999px}html:not(.elementor-html)::-webkit-scrollbar-thumb:hover{background:#d6c3c7}

/* Editor + reduced motion. */
.elementor-editor-active .kc-section-curtain,.elementor-editor-preview .kc-section-curtain,.elementor-editor-active .kc-project-cursor,.elementor-editor-preview .kc-project-cursor,.elementor-editor-active .keet-site-progress,.elementor-editor-preview .keet-site-progress{display:none!important;}
.elementor-editor-active .keet-team-orbit,.elementor-editor-preview .keet-team-orbit{min-height:auto;}.elementor-editor-active .keet-orbit-pin,.elementor-editor-preview .keet-orbit-pin{position:relative;min-height:920px;}.elementor-editor-active .keet-orbit-card:nth-child(1),.elementor-editor-preview .keet-orbit-card:nth-child(1){transform:translate(-170%,-70%) rotate(-2deg);}.elementor-editor-active .keet-orbit-card:nth-child(2),.elementor-editor-preview .keet-orbit-card:nth-child(2){transform:translate(70%,-5%) rotate(2deg);}.elementor-editor-active .keet-orbit-card:nth-child(n+3),.elementor-editor-preview .keet-orbit-card:nth-child(n+3){opacity:.35;transform:translate(-50%,80%) scale(.84);}

@media(max-width:1080px){
 .keet-footer-links{grid-template-columns:repeat(2,1fr)}
 .keet-team-orbit{min-height:auto}.keet-orbit-pin{position:relative;min-height:auto;padding:90px 0}.keet-orbit-shell{min-height:auto;display:flex;flex-direction:column}.keet-orbit-center{position:relative;left:auto;top:auto;transform:none;margin:48px auto 64px}.keet-orbit-card-shell{position:relative;inset:auto;pointer-events:auto}.keet-orbit-cards{position:relative;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.keet-orbit-card{position:relative;left:auto;top:auto;width:100%;height:min(58vw,500px);transform:none!important;opacity:1!important}.keet-orbit-network-note,.keet-orbit-coordinates{position:relative;left:auto;right:auto;bottom:auto;transform:none;margin-top:48px;width:auto}.keet-orbit-coordinates{align-items:flex-start;margin-top:20px}
}
@media(max-width:760px){
 .keet-process-link-label{opacity:1;transform:none}.keet-process-step-link{position:static;display:inline-flex;margin-top:10px;padding-top:4px}.keet-team-visual>img{top:42%;left:58%;width:min(76%,460px)}.keet-team-visual>span{left:28px;right:28px;bottom:32px;max-width:300px;font-size:30px}.keet-footer{padding-top:84px}.keet-footer-top{grid-template-columns:1fr;gap:58px;padding-bottom:64px}.keet-footer-links{grid-template-columns:1fr;gap:24px;padding:48px 0 58px}.keet-footer-bottom{grid-template-columns:1fr 1fr;gap:18px 24px}
 .keet-concept[data-kc-mobile-swiper="1"] .keet-mobile-slider{width:100%;overflow:hidden}
 .keet-concept[data-kc-mobile-swiper="1"]:not([data-kc-swiper-ready="1"]) .keet-mobile-slider{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-snap-type:x mandatory;scroll-padding-inline:0}
 .keet-concept[data-kc-mobile-swiper="1"]:not([data-kc-swiper-ready="1"]) .keet-mobile-slider::-webkit-scrollbar{display:none}
 .keet-concept[data-kc-mobile-swiper="1"]:not([data-kc-swiper-ready="1"]) [data-kc-slider-track]{display:flex!important;gap:16px!important;width:max-content;border:0!important;padding-right:20px}
 .keet-concept[data-kc-mobile-swiper="1"]:not([data-kc-swiper-ready="1"]) [data-kc-slide]{margin:0!important;scroll-snap-align:start;scroll-snap-stop:always}
 .keet-values:not([data-kc-swiper-ready="1"]) [data-kc-slide]{flex:0 0 88vw;width:88vw}
 .keet-process:not([data-kc-swiper-ready="1"]) [data-kc-slide]{flex:0 0 calc(100vw - 40px);width:calc(100vw - 40px)}
 .keet-projects:not([data-kc-swiper-ready="1"]) [data-kc-slide]{flex:0 0 86vw;width:86vw}
 .keet-team:not([data-kc-swiper-ready="1"]) [data-kc-slide]{flex:0 0 72vw;width:72vw}
 .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"]):not([data-kc-swiper-ready="1"]) [data-kc-slide]{flex:0 0 86vw;width:86vw}
 .keet-concept[data-kc-mobile-swiper="1"] .keet-slider-ui{display:flex}
 .kc-swiper-bullet{width:22px;height:2px;padding:0;border:0;border-radius:0;background:currentColor;opacity:.25}.kc-swiper-bullet.is-active{opacity:1;transform:scaleX(1.18)}
 .keet-team-orbit{padding:92px 0;background:var(--paper)}.keet-orbit-pin{padding:0}.keet-orbit-shell{width:calc(100% - 40px)}.keet-orbit-center{width:min(86vw,440px);margin:40px auto 52px}.keet-orbit-center h2{font-size:clamp(56px,16vw,78px)}.keet-orbit-richtext{font-size:14px}.keet-orbit-ring::before{-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 calc(100% - 9px) calc(100% - 6px),transparent calc(100% - 5px));mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 calc(100% - 9px) calc(100% - 6px),transparent calc(100% - 5px))}.keet-orbit-card-shell{width:100%}.keet-orbit-cards{display:flex!important;grid-template-columns:none;gap:0}.keet-orbit-card{height:auto;aspect-ratio:.78 / 1}.keet-orbit-network-note{margin-top:42px;text-align:left}.keet-orbit-coordinates{font-size:9px}.keet-team-orbit .keet-slider-ui{display:flex}
}

@media(max-width:760px){
 .keet-hero::after,.keet-values::after,.keet-projects::after,.keet-closing::after,.keet-team-visual::before,.keet-team-orbit::after{display:none}
 .kc-project-cursor{display:none!important}
}
.keet-inline-icon{width:14px;height:14px;display:inline-block;vertical-align:-2px;flex:0 0 auto}.keet-text-link{display:inline-flex;align-items:center;gap:8px;width:fit-content;align-self:flex-start}.keet-process-link-label .keet-inline-icon{width:13px;height:13px}.keet-button-arrow,.keet-footer-cta-icon{display:block}
@media(prefers-reduced-motion:reduce){.kc-section-curtain,.kc-project-cursor,.keet-site-progress{display:none!important}.keet-process-list li,.keet-value-card,.keet-team-names li{opacity:1!important;transform:none!important}.keet-closing::before{display:none!important}.keet-team-orbit{min-height:auto}.keet-orbit-pin{position:relative;min-height:auto;padding:90px 0}.keet-orbit-cards{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}.keet-orbit-card{position:relative;left:auto;top:auto;width:100%;height:420px;transform:none!important;opacity:1!important}}


/* 1.3.2 — Mobile slider visual hardening. */
@media(max-width:760px){
  .keet-concept[data-kc-mobile-swiper="1"] .keet-slider-ui{
    display:grid;
    grid-template-columns:42px minmax(0,1fr) 42px;
    align-items:center;
    gap:14px;
    margin-top:18px;
    min-height:38px;
  }
  .keet-concept[data-kc-mobile-swiper="1"] .keet-slider-ui button[data-kc-prev],
  .keet-concept[data-kc-mobile-swiper="1"] .keet-slider-ui button[data-kc-next]{
    width:42px;
    height:34px;
    min-width:0;
    padding:0;
    display:grid;
    place-items:center;
    border:0;
    border-bottom:1px solid currentColor;
    border-radius:0;
    background:transparent;
    color:inherit;
    box-shadow:none;
    opacity:1;
    transition:opacity .25s ease,border-color .25s ease;
  }
  .keet-concept[data-kc-mobile-swiper="1"] .keet-slider-ui button[data-kc-prev] svg,
  .keet-concept[data-kc-mobile-swiper="1"] .keet-slider-ui button[data-kc-next] svg{
    width:20px;
    height:20px;
    display:block;
  }
  .keet-concept[data-kc-mobile-swiper="1"] .keet-slider-ui button.swiper-button-disabled{
    opacity:.24;
    cursor:default;
  }
  .keet-concept[data-kc-mobile-swiper="1"] .keet-slider-ui [data-kc-pagination]{
    min-width:0;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:6px;
    overflow:hidden;
  }
  .keet-concept[data-kc-mobile-swiper="1"] .kc-swiper-bullet{
    flex:0 1 30px;
    width:30px;
    max-width:30px;
    height:1px;
    padding:0;
    border:0;
    border-radius:0;
    background:currentColor;
    opacity:.2;
    transform:none;
    transition:opacity .3s ease,transform .4s var(--kc-ease);
  }
  .keet-concept[data-kc-mobile-swiper="1"] .kc-swiper-bullet.is-active{
    opacity:1;
    transform:scaleX(1.08);
  }

  /* Team Orbit is a portrait carousel, not a generic full-height slide. */
  .keet-team-orbit{
    scroll-margin-top:84px;
  }
  .keet-team-orbit .keet-orbit-card-shell{
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
  .keet-team-orbit .keet-orbit-cards{
    align-items:stretch;
  }
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card,
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-swiper-ready="1"] .keet-orbit-card.swiper-slide{
    width:min(82vw,340px)!important;
    max-width:calc(100vw - 58px);
    height:auto!important;
    aspect-ratio: .78 / 1;
    flex:0 0 auto;
    border-radius:14px;
    transform:none!important;
    opacity:1!important;
  }
  .keet-team-orbit .keet-orbit-card-copy{
    left:20px;
    right:20px;
    top:20px;
  }
  .keet-team-orbit .keet-orbit-name{
    font-size:clamp(24px,7vw,30px);
    line-height:1.02;
  }
  .keet-team-orbit .keet-orbit-role{
    margin-top:6px;
    font-size:12px;
  }
  .keet-team-orbit .keet-slider-ui{
    margin-top:16px;
  }
  .keet-team-orbit .keet-orbit-network-note{
    margin-top:34px;
    max-width:36em;
  }
  .keet-team-orbit .keet-orbit-coordinates{
    margin-top:16px;
  }
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"]):not([data-kc-swiper-ready="1"]) [data-kc-slider-track]{
    padding-right:10px;
  }
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"]):not([data-kc-swiper-ready="1"]) [data-kc-slide]{
    flex:0 0 min(82vw,340px)!important;
    width:min(82vw,340px)!important;
    height:auto!important;
    aspect-ratio:.78 / 1;
  }
}

@media(max-width:430px){
  .keet-team-orbit .keet-orbit-shell{width:calc(100% - 32px);}
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card,
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-swiper-ready="1"] .keet-orbit-card.swiper-slide,
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"]):not([data-kc-swiper-ready="1"]) [data-kc-slide]{
    width:min(84vw,326px)!important;
    max-width:calc(100vw - 48px);
  }
}


/* 1.3.3 — KEET interaction-state contract.
 * Component states are deliberately more specific than Elementor Kit global
 * a:hover/button:hover rules so the brand never falls back to Elementor pink. */
.keet-concept.keet-concept a,
.keet-concept.keet-concept a:link,
.keet-concept.keet-concept a:visited,
.keet-concept.keet-concept a:hover,
.keet-concept.keet-concept a:focus,
.keet-concept.keet-concept a:active{
  text-decoration:none;
  color:inherit;
}
.keet-concept.keet-concept button{
  -webkit-appearance:none;
  appearance:none;
  font:inherit;
}

/* Text links keep their authored color; only the editorial line animates. */
.keet-concept.keet-concept .keet-text-link,
.keet-concept.keet-concept .keet-text-link:link,
.keet-concept.keet-concept .keet-text-link:visited,
.keet-concept.keet-concept .keet-text-link:hover,
.keet-concept.keet-concept .keet-text-link:active{color:inherit;}

/* Buttons own all color/background states, independent of Elementor globals. */
.keet-concept.keet-concept .keet-button-primary,
.keet-concept.keet-concept .keet-button-primary:link,
.keet-concept.keet-concept .keet-button-primary:visited{
  background:var(--grape);color:var(--white);border-color:transparent;
}
@media(hover:hover) and (pointer:fine){
  .keet-concept.keet-concept .keet-button-primary:hover{background:var(--maroon);color:var(--white);}
}
.keet-concept.keet-concept .keet-button-primary:focus-visible,
.keet-concept.keet-concept .keet-button-primary:active{background:var(--maroon);color:var(--white);}

.keet-concept.keet-concept .keet-button-secondary,
.keet-concept.keet-concept .keet-button-secondary:link,
.keet-concept.keet-concept .keet-button-secondary:visited{
  background:transparent;color:var(--white);border-color:rgba(255,255,255,.56);
}
@media(hover:hover) and (pointer:fine){
  .keet-concept.keet-concept .keet-button-secondary:hover{background:var(--white);color:var(--asphalt);}
}
.keet-concept.keet-concept .keet-button-secondary:focus-visible,
.keet-concept.keet-concept .keet-button-secondary:active{background:var(--white);color:var(--asphalt);}

.keet-concept.keet-concept .keet-projects-button,
.keet-concept.keet-concept .keet-projects-button:link,
.keet-concept.keet-concept .keet-projects-button:visited{
  background:var(--white);color:var(--asphalt);border-color:var(--white);
}
@media(hover:hover) and (pointer:fine){
  .keet-concept.keet-concept .keet-projects-button:hover{background:var(--paper);color:var(--asphalt);}
}
.keet-concept.keet-concept .keet-projects-button:focus-visible,
.keet-concept.keet-concept .keet-projects-button:active{background:var(--paper);color:var(--asphalt);}

.keet-concept.keet-concept .keet-footer-cta,
.keet-concept.keet-concept .keet-footer-cta:link,
.keet-concept.keet-concept .keet-footer-cta:visited{color:var(--white);background:transparent;border-color:rgba(255,255,255,.36);}
@media(hover:hover) and (pointer:fine){
  .keet-concept.keet-concept .keet-footer-cta:hover{background:var(--white);color:var(--asphalt);border-color:var(--white);}
}
.keet-concept.keet-concept .keet-footer-cta:focus-visible,
.keet-concept.keet-concept .keet-footer-cta:active{background:var(--white);color:var(--asphalt);border-color:var(--white);}

/* Project/cards/overlay links never inherit a global hover accent. */
.keet-concept.keet-concept .keet-project-card,
.keet-concept.keet-concept .keet-project-card:link,
.keet-concept.keet-concept .keet-project-card:visited,
.keet-concept.keet-concept .keet-project-card:hover,
.keet-concept.keet-concept .keet-project-card:active,
.keet-concept.keet-concept .keet-process-step-link,
.keet-concept.keet-concept .keet-process-step-link:link,
.keet-concept.keet-concept .keet-process-step-link:visited,
.keet-concept.keet-concept .keet-process-step-link:hover,
.keet-concept.keet-concept .keet-process-step-link:active,
.keet-concept.keet-concept .keet-orbit-card-link,
.keet-concept.keet-concept .keet-orbit-card-link:link,
.keet-concept.keet-concept .keet-orbit-card-link:visited,
.keet-concept.keet-concept .keet-orbit-card-link:hover,
.keet-concept.keet-concept .keet-orbit-card-link:active{color:inherit;}

/* Footer links have a deliberate KEET state instead of Elementor Kit accent. */
.keet-concept.keet-footer .keet-footer-links a,
.keet-concept.keet-footer .keet-footer-links a:link,
.keet-concept.keet-footer .keet-footer-links a:visited,
.keet-concept.keet-footer .keet-footer-bottom a,
.keet-concept.keet-footer .keet-footer-bottom a:link,
.keet-concept.keet-footer .keet-footer-bottom a:visited{color:rgba(255,255,255,.72);}
@media(hover:hover) and (pointer:fine){
  .keet-concept.keet-footer .keet-footer-links a:hover,
  .keet-concept.keet-footer .keet-footer-bottom a:hover{color:var(--grape);}
}
.keet-concept.keet-footer .keet-footer-links a:focus-visible,
.keet-concept.keet-footer .keet-footer-links a:active,
.keet-concept.keet-footer .keet-footer-bottom a:focus-visible,
.keet-concept.keet-footer .keet-footer-bottom a:active{color:var(--grape);}

/* Swiper controls are buttons, not Elementor buttons. */
.keet-concept.keet-concept .keet-slider-ui button,
.keet-concept.keet-concept .keet-slider-ui button:hover,
.keet-concept.keet-concept .keet-slider-ui button:focus,
.keet-concept.keet-concept .keet-slider-ui button:active{
  background:transparent;
  color:inherit;
  box-shadow:none;
}
.keet-concept.keet-concept .keet-slider-ui button[data-kc-prev],
.keet-concept.keet-concept .keet-slider-ui button[data-kc-next]{border-color:currentColor;}
.keet-concept.keet-concept .kc-swiper-bullet,
.keet-concept.keet-concept .kc-swiper-bullet:hover,
.keet-concept.keet-concept .kc-swiper-bullet:focus,
.keet-concept.keet-concept .kc-swiper-bullet:active{
  background:currentColor;
  color:inherit;
  box-shadow:none;
}

/* Keyboard focus is brand-specific and remains visible. */
.keet-concept.keet-concept a:focus-visible,
.keet-concept.keet-concept button:focus-visible{
  outline:2px solid var(--grape);
  outline-offset:4px;
}

/* Touch devices never keep desktop hover transforms/colors after a tap. */
@media(hover:none), (pointer:coarse){
  .keet-concept .keet-button:hover{transform:none;}
  .keet-concept .keet-value-card:hover>*{transform:none;}
  .keet-concept .keet-project-card:hover .keet-project-image img,
  .keet-concept .keet-project-card:hover .keet-project-image-motion img{transform:none;}
  .keet-concept .keet-team-names li:hover{transform:none;color:inherit;}
}

/* Deprecated built-in header remains deterministic for legacy instances. */
.keet-concept.keet-site-header .keet-desktop-nav a,
.keet-concept.keet-site-header .keet-desktop-nav a:link,
.keet-concept.keet-site-header .keet-desktop-nav a:visited{color:inherit;}
@media(hover:hover) and (pointer:fine){
  .keet-concept.keet-site-header .keet-desktop-nav a:hover{color:var(--grape);}
}
.keet-concept.keet-site-header .keet-header-cta,
.keet-concept.keet-site-header .keet-header-cta:link,
.keet-concept.keet-site-header .keet-header-cta:visited{background:transparent;color:inherit;border-color:rgba(255,255,255,.72);}
@media(hover:hover) and (pointer:fine){
  .keet-concept.keet-site-header .keet-header-cta:hover{background:var(--white);color:var(--asphalt);}
}
.keet-concept.keet-site-header .keet-menu-toggle,
.keet-concept.keet-site-header .keet-menu-toggle:hover,
.keet-concept.keet-site-header .keet-menu-toggle:focus,
.keet-concept.keet-site-header .keet-menu-toggle:active{
  background:transparent;color:inherit;border-color:transparent;box-shadow:none;
}
.keet-concept.keet-site-header .keet-mobile-menu a,
.keet-concept.keet-site-header .keet-mobile-menu a:link,
.keet-concept.keet-site-header .keet-mobile-menu a:visited,
.keet-concept.keet-site-header .keet-mobile-menu a:hover,
.keet-concept.keet-site-header .keet-mobile-menu a:active{color:var(--white);}


/* 1.3.7 — shared KEET rich-text contract. */
.keet-concept .keet-richtext{margin:0;}
.keet-concept .keet-richtext > *{margin:0;}
.keet-concept .keet-richtext > * + *{margin-top:1.4em;}
.keet-concept .keet-richtext ul,
.keet-concept .keet-richtext ol{padding-left:1.25em;}
.keet-concept .keet-richtext a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;}
.keet-projects-heading .keet-richtext{max-width:400px;}


/* 1.3.9 project presentation safeguards: keep uniform cards equal at every breakpoint. */
.keet-projects.is-project-layout-uniform .keet-project-card-small{margin-top:0;}
@media(max-width:760px){
  .keet-projects.is-project-layout-uniform .keet-project-card-large .keet-project-image,
  .keet-projects.is-project-layout-uniform .keet-project-card-small .keet-project-image{aspect-ratio:4 / 3;}
}

/* ========================================================================== 
   KEET 1.4.5 — Team Orbit UX consolidation
   - cards layer above copy/kicker when paths cross
   - network note/coordinates live in a separate footer zone
   - optional member detail reveal (blur or flip) uses inner transforms only
   ========================================================================== */
.keet-team-orbit.is-kc-orbit-live{min-height:auto;}
.keet-orbit-scroll-scene{position:relative;min-height:auto;}
.keet-team-orbit.is-kc-orbit-live .keet-orbit-scroll-scene{min-height:320vh;}
.keet-team-orbit .keet-orbit-card-shell{z-index:8;}
.keet-team-orbit .keet-section-kicker{z-index:5;}
.keet-team-orbit .keet-orbit-center{z-index:2;}

.keet-orbit-footer{
  position:relative;
  z-index:10;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:clamp(32px,6vw,110px);
  margin-top:clamp(34px,5vw,78px);
  padding:clamp(28px,3.4vw,52px) 0 clamp(72px,7vw,120px);
  border-top:1px solid rgba(20,5,8,.14);
}
.keet-team-orbit .keet-orbit-footer .keet-orbit-network-note,
.keet-team-orbit .keet-orbit-footer .keet-orbit-coordinates{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  width:auto;
  margin:0;
  transform:none;
}
.keet-team-orbit .keet-orbit-footer .keet-orbit-network-note{
  max-width:780px;
  text-align:left;
  font-size:clamp(18px,1.55vw,26px);
  line-height:1.48;
}
.keet-team-orbit .keet-orbit-footer .keet-orbit-coordinates{
  min-width:max-content;
  align-items:flex-end;
  padding-top:.35em;
}

.keet-orbit-card-inner,
.keet-orbit-card-front,
.keet-orbit-card-detail{position:absolute;inset:0;width:100%;height:100%;}
.keet-orbit-card-inner{border-radius:inherit;transform-style:preserve-3d;}
.keet-orbit-card-front{overflow:hidden;border-radius:inherit;background:var(--asphalt);backface-visibility:hidden;-webkit-backface-visibility:hidden;}
.keet-orbit-card.has-profile-details{cursor:pointer;perspective:1400px;}
.keet-orbit-card.has-profile-details.is-profile-open{z-index:99!important;}
.keet-orbit-card.has-profile-details .keet-orbit-card-copy{transition:opacity .35s ease,transform .5s var(--kc-ease);}
.keet-orbit-card-toggle{
  position:absolute;
  inset:auto 18px 18px;
  z-index:4;
  display:flex;
  justify-content:flex-start;
  width:auto;
  min-width:0;
  padding:10px 0 4px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.65);
  border-radius:0;
  background:transparent;
  color:#fff;
  font:600 10px/1.2 var(--sans);
  letter-spacing:.1em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:none;
}
.keet-orbit-card-toggle-label{display:inline-flex;align-items:center;gap:8px;color:inherit;}
.keet-orbit-card-toggle-icon{width:14px;height:14px;display:block;transition:transform .45s var(--kc-ease);}
.keet-orbit-card-toggle:hover .keet-orbit-card-toggle-icon,
.keet-orbit-card-toggle:focus-visible .keet-orbit-card-toggle-icon{transform:translateX(4px);}
.keet-orbit-card-toggle:focus-visible,
.keet-orbit-card-close:focus-visible,
.keet-orbit-card-detail a:focus-visible{outline:2px solid #fff;outline-offset:4px;}

.keet-orbit-card-detail{
  z-index:6;
  overflow:hidden;
  border-radius:inherit;
  color:#fff;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .42s ease,visibility .42s ease;
}
.keet-orbit-card-detail-image{position:absolute;inset:-5%;width:110%;height:110%;object-fit:cover;filter:blur(var(--kc-orbit-profile-blur,14px)) saturate(.72);transform:scale(1.06);}
.keet-orbit-card-detail-shade{position:absolute;inset:0;background:rgba(20,5,8,.78);backdrop-filter:blur(2px);}
.keet-orbit-card-detail-content{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  width:100%;
  height:100%;
  padding:clamp(28px,2.2vw,38px);
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
}
.keet-orbit-card-detail-label{margin-bottom:14px;color:#d6c3c7;font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.keet-orbit-card-detail-name{margin:0;color:inherit;font-family:var(--sans);font-size:clamp(28px,2.4vw,40px);font-weight:500;line-height:1;letter-spacing:-.035em;}
.keet-orbit-card-detail-role{margin-top:9px;color:rgba(255,255,255,.76);font-size:12px;}
.keet-orbit-card-detail-story{margin-top:clamp(22px,2vw,30px);color:rgba(255,255,255,.86);font-size:13px;line-height:1.65;}
.keet-orbit-card-detail-story>*{margin:0;}.keet-orbit-card-detail-story>*+*{margin-top:12px;}
.keet-orbit-card-detail-contact{display:flex;flex-direction:column;gap:7px;margin-top:auto;padding-top:24px;color:rgba(255,255,255,.8);font-size:11px;line-height:1.4;}
.keet-orbit-card-detail-contact a,.keet-orbit-card-detail-contact a:link,.keet-orbit-card-detail-contact a:visited{color:inherit;text-decoration:none;}
.keet-orbit-card-detail-cta{display:inline-flex;align-items:center;gap:9px;margin-top:18px;padding-bottom:5px;border-bottom:1px solid currentColor;color:#fff!important;font-size:11px;font-weight:600;text-decoration:none;}
.keet-orbit-card-detail-cta-icon{width:15px;height:15px;display:block;}
.keet-orbit-card-close{
  position:absolute;
  top:18px;
  right:18px;
  z-index:8;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(255,255,255,.38);
  border-radius:50%;
  background:rgba(20,5,8,.2);
  color:#fff;
  font:300 25px/1 var(--sans);
  cursor:pointer;
}

/* Blur reveal: front image remains the visual substrate; details sit above it. */
.keet-team-orbit[data-kc-orbit-profile="blur"] .keet-orbit-card-detail-image{display:none;}
.keet-team-orbit[data-kc-orbit-profile="blur"] .keet-orbit-card.is-profile-open .keet-orbit-card-image{
  transform:scale(1.09)!important;
  filter:blur(var(--kc-orbit-profile-blur,14px)) saturate(.72) brightness(.7)!important;
}
.keet-team-orbit[data-kc-orbit-profile="blur"] .keet-orbit-card.is-profile-open .keet-orbit-card-copy,
.keet-team-orbit[data-kc-orbit-profile="blur"] .keet-orbit-card.is-profile-open .keet-orbit-card-toggle{opacity:0;pointer-events:none;}
.keet-team-orbit[data-kc-orbit-profile="blur"] .keet-orbit-card.is-profile-open .keet-orbit-card-detail{opacity:1;visibility:visible;pointer-events:auto;}

/* Flip reveal: GSAP owns the outer card; the inner layer alone rotates. */
.keet-team-orbit[data-kc-orbit-profile="flip"] .keet-orbit-card-inner{transition:transform .78s var(--kc-ease);}
.keet-team-orbit[data-kc-orbit-profile="flip"] .keet-orbit-card-front,
.keet-team-orbit[data-kc-orbit-profile="flip"] .keet-orbit-card-detail{backface-visibility:hidden;-webkit-backface-visibility:hidden;}
.keet-team-orbit[data-kc-orbit-profile="flip"] .keet-orbit-card-detail{opacity:1;visibility:visible;transform:rotateY(180deg);}
.keet-team-orbit[data-kc-orbit-profile="flip"] .keet-orbit-card.is-profile-open .keet-orbit-card-inner{transform:rotateY(180deg);}
.keet-team-orbit[data-kc-orbit-profile="flip"] .keet-orbit-card.is-profile-open .keet-orbit-card-detail{pointer-events:auto;}

@media(max-width:1080px){
  .keet-team-orbit.is-kc-orbit-live .keet-orbit-scroll-scene{min-height:auto;}
  .keet-orbit-footer{grid-template-columns:1fr;margin-top:54px;padding-bottom:84px;}
  .keet-team-orbit .keet-orbit-footer .keet-orbit-coordinates{align-items:flex-start;padding-top:0;}
}
@media(max-width:760px){
  .keet-orbit-footer{margin-top:40px;padding:26px 0 72px;gap:20px;}
  .keet-team-orbit .keet-orbit-footer .keet-orbit-network-note{font-size:18px;line-height:1.5;}
  .keet-orbit-card-toggle{inset:auto 20px 18px;}
  .keet-orbit-card-detail-content{padding:26px 22px 24px;}
}
@media(prefers-reduced-motion:reduce){
  .keet-team-orbit[data-kc-orbit-profile="flip"] .keet-orbit-card-inner{transition:none;}
  .keet-orbit-card-detail{transition:none;}
}

/* ========================================================================== 
   KEET 1.4.6 — Team Orbit video profiles
   - optional uniform 16:9 cards
   - photo -> video fade/scale transition
   - WordPress hosted video + Bunny HLS player
   ========================================================================== */
.keet-team-orbit{
  --kc-orbit-video-card-w:min(42vw,620px);
  --kc-orbit-video-transition:500ms;
  --kc-video-control:#fff;
  --kc-video-progress:var(--grape);
}
.keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card{
  width:var(--kc-orbit-video-card-w);
  height:auto!important;
  aspect-ratio:16 / 9;
}
.keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card-front,
.keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card-inner,
.keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card-detail,
.keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card-video{aspect-ratio:16 / 9;}
.keet-orbit-card.has-video-profile{cursor:default;}
.keet-orbit-card.has-video-profile.is-video-open{z-index:100!important;}
.keet-orbit-card.has-video-profile .keet-orbit-card-front{
  transition:opacity var(--kc-orbit-video-transition) ease,visibility var(--kc-orbit-video-transition) ease,transform var(--kc-orbit-video-transition) var(--kc-ease);
}
.keet-orbit-card-video{
  position:absolute;
  inset:0;
  z-index:10;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:inherit;
  background:#000;
  color:var(--kc-video-control);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:scale(1);
  transition:opacity var(--kc-orbit-video-transition) ease,visibility var(--kc-orbit-video-transition) ease,transform var(--kc-orbit-video-transition) var(--kc-ease);
}
.keet-team-orbit[data-kc-video-transition="fade-scale"] .keet-orbit-card-video{transform:scale(.985);}
.keet-team-orbit[data-kc-video-transition="fade-scale"] .keet-orbit-card.is-video-open .keet-orbit-card-front{transform:scale(.985);}
.keet-orbit-card.is-video-open .keet-orbit-card-front{opacity:0;visibility:hidden;pointer-events:none;}
.keet-orbit-card.is-video-open .keet-orbit-card-video{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1);}
.keet-orbit-card-video-close{
  position:absolute;
  top:14px;
  right:14px;
  z-index:40;
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  padding:0;
  border:1px solid rgba(255,255,255,.46);
  border-radius:50%;
  background:rgba(20,5,8,.28);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  color:#fff;
  font:300 25px/1 var(--sans);
  cursor:pointer;
}
.keet-orbit-card-video-close:focus-visible{outline:2px solid #fff;outline-offset:3px;}
.keet-orbit-native-video{display:block;width:100%;height:100%;object-fit:cover;background:#000;}

/* Team Orbit wrapper around the unmodified Osmo Bunny player. */
.keet-orbit-card-video .bunny-player{
  border-radius:inherit;
  color:var(--kc-video-control,#fff);
}
.keet-orbit-card-video .bunny-player__timeline-progress,
.keet-orbit-card-video .bunny-player__timeline-handle{background-color:var(--kc-video-progress,#ff4c24);}

@media(max-width:1080px){
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card{width:100%;aspect-ratio:16 / 9;}
}
@media(max-width:760px){
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card,
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"][data-kc-swiper-ready="1"] .keet-orbit-card.swiper-slide,
  .keet-team-orbit:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"]:not([data-kc-swiper-ready="1"]) [data-kc-slide]{
    width:min(88vw,620px)!important;
    max-width:calc(100vw - 40px);
    height:auto!important;
    aspect-ratio:16 / 9!important;
  }
  .keet-orbit-card-video .bunny-player__time{display:none;}
  .keet-orbit-card-video .bunny-player__interface-bottom{gap:.6em;padding:16px 14px;}
  .keet-orbit-card-video-close{top:10px;right:10px;width:32px;height:32px;}
}
@media(prefers-reduced-motion:reduce){
  .keet-orbit-card.has-video-profile .keet-orbit-card-front,
  .keet-orbit-card-video{transition:none!important;}
}

/* ========================================================================== 
   KEET 1.4.7 — Team Orbit interaction hardening + card socials
   - hard-reset native buttons/links against Elementor Pro global accent styles
   - LinkedIn, e-mail and up to three custom icon links per card
   ========================================================================== */
.keet-team-orbit{
  --kc-orbit-social-size:38px;
  --kc-orbit-social-icon:17px;
  --kc-orbit-social-gap:8px;
  --kc-orbit-social-color:#fff;
  --kc-orbit-social-bg:rgba(20,5,8,.28);
  --kc-orbit-social-border:rgba(255,255,255,.36);
  --kc-orbit-social-hover-color:#fff;
  --kc-orbit-social-hover-bg:rgba(255,255,255,.16);
}

/* Native Team Orbit controls must never inherit Elementor Kit button states. */
.keet-concept.keet-team-orbit button.keet-orbit-card-toggle,
.keet-concept.keet-team-orbit button.keet-orbit-card-toggle:hover,
.keet-concept.keet-team-orbit button.keet-orbit-card-toggle:focus,
.keet-concept.keet-team-orbit button.keet-orbit-card-toggle:focus-visible,
.keet-concept.keet-team-orbit button.keet-orbit-card-toggle:active{
  -webkit-appearance:none!important;
  appearance:none!important;
  background:transparent!important;
  background-color:transparent!important;
  color:#fff!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.65)!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
  text-shadow:none!important;
}
.keet-concept.keet-team-orbit button.keet-orbit-card-close,
.keet-concept.keet-team-orbit button.keet-orbit-card-close:hover,
.keet-concept.keet-team-orbit button.keet-orbit-card-close:focus,
.keet-concept.keet-team-orbit button.keet-orbit-card-close:focus-visible,
.keet-concept.keet-team-orbit button.keet-orbit-card-close:active,
.keet-concept.keet-team-orbit button.keet-orbit-card-video-close,
.keet-concept.keet-team-orbit button.keet-orbit-card-video-close:hover,
.keet-concept.keet-team-orbit button.keet-orbit-card-video-close:focus,
.keet-concept.keet-team-orbit button.keet-orbit-card-video-close:focus-visible,
.keet-concept.keet-team-orbit button.keet-orbit-card-video-close:active{
  -webkit-appearance:none!important;
  appearance:none!important;
  background:rgba(20,5,8,.28)!important;
  background-color:rgba(20,5,8,.28)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.46)!important;
  box-shadow:none!important;
  text-decoration:none!important;
  text-shadow:none!important;
}
.keet-concept.keet-team-orbit .keet-slider-ui button,
.keet-concept.keet-team-orbit .keet-slider-ui button:hover,
.keet-concept.keet-team-orbit .keet-slider-ui button:focus,
.keet-concept.keet-team-orbit .keet-slider-ui button:focus-visible,
.keet-concept.keet-team-orbit .keet-slider-ui button:active{
  -webkit-appearance:none!important;
  appearance:none!important;
  background:transparent!important;
  background-color:transparent!important;
  color:var(--asphalt)!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
.keet-concept.keet-team-orbit .keet-slider-ui [data-kc-pagination] button,
.keet-concept.keet-team-orbit .keet-slider-ui [data-kc-pagination] button:hover,
.keet-concept.keet-team-orbit .keet-slider-ui [data-kc-pagination] button:focus,
.keet-concept.keet-team-orbit .keet-slider-ui [data-kc-pagination] button:active{
  border:0!important;
  background:currentColor!important;
  background-color:currentColor!important;
}
.keet-concept.keet-team-orbit .keet-orbit-card-detail a,
.keet-concept.keet-team-orbit .keet-orbit-card-detail a:link,
.keet-concept.keet-team-orbit .keet-orbit-card-detail a:visited,
.keet-concept.keet-team-orbit .keet-orbit-card-detail a:hover,
.keet-concept.keet-team-orbit .keet-orbit-card-detail a:focus,
.keet-concept.keet-team-orbit .keet-orbit-card-detail a:active{
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
  text-decoration-color:currentColor;
}
.keet-concept.keet-team-orbit .keet-orbit-card-detail-cta,
.keet-concept.keet-team-orbit .keet-orbit-card-detail-cta:link,
.keet-concept.keet-team-orbit .keet-orbit-card-detail-cta:visited,
.keet-concept.keet-team-orbit .keet-orbit-card-detail-cta:hover,
.keet-concept.keet-team-orbit .keet-orbit-card-detail-cta:focus,
.keet-concept.keet-team-orbit .keet-orbit-card-detail-cta:active{
  color:#fff!important;
  background:transparent!important;
  background-color:transparent!important;
  border-color:currentColor!important;
  box-shadow:none!important;
}

.keet-orbit-card-socials{
  position:absolute;
  top:18px;
  right:18px;
  z-index:9;
  display:flex;
  align-items:center;
  gap:var(--kc-orbit-social-gap);
  transition:opacity .3s ease,transform .45s var(--kc-ease);
}
.keet-orbit-card-social{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:grid!important;
  place-items:center;
  flex:0 0 var(--kc-orbit-social-size);
  width:var(--kc-orbit-social-size);
  height:var(--kc-orbit-social-size);
  margin:0!important;
  padding:0!important;
  border:1px solid var(--kc-orbit-social-border)!important;
  border-radius:50%!important;
  background:var(--kc-orbit-social-bg)!important;
  background-color:var(--kc-orbit-social-bg)!important;
  color:var(--kc-orbit-social-color)!important;
  box-shadow:none!important;
  text-decoration:none!important;
  -webkit-backdrop-filter:blur(9px);
  backdrop-filter:blur(9px);
  transition:background-color .3s ease,color .3s ease,border-color .3s ease,transform .4s var(--kc-ease)!important;
}
.keet-orbit-card-social:hover,
.keet-orbit-card-social:focus,
.keet-orbit-card-social:focus-visible,
.keet-orbit-card-social:active{
  background:var(--kc-orbit-social-hover-bg)!important;
  background-color:var(--kc-orbit-social-hover-bg)!important;
  color:var(--kc-orbit-social-hover-color)!important;
  border-color:var(--kc-orbit-social-border)!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
@media(hover:hover) and (pointer:fine){
  .keet-orbit-card-social:hover{transform:translateY(-2px);}
}
.keet-orbit-card-social:focus-visible{outline:2px solid #fff!important;outline-offset:3px!important;}
.keet-orbit-card-social svg,
.keet-orbit-card-social i{
  width:var(--kc-orbit-social-icon)!important;
  height:var(--kc-orbit-social-icon)!important;
  display:block!important;
  color:currentColor!important;
  fill:currentColor;
  font-size:var(--kc-orbit-social-icon)!important;
  line-height:1!important;
}
.keet-orbit-card-social i::before{color:currentColor!important;}
.keet-orbit-card.is-profile-open .keet-orbit-card-socials,
.keet-orbit-card.is-video-open .keet-orbit-card-socials{opacity:0;pointer-events:none;transform:translateY(-4px);}

@media(max-width:760px){
  .keet-orbit-card-socials{top:14px;right:14px;}
}

/* ========================================================================== 
   KEET 1.4.8 — Mobile UX hardening
   Screenshots QA: Intro, Projecten and Team Orbit.
   ========================================================================== */
@media(max-width:760px){
  /* INTRO — enforce a true one-column document flow on phones. */
  .elementor-element .keet-intro.keet-concept{
    overflow:hidden;
  }
  .elementor-element .keet-intro.keet-concept > .keet-container{
    width:calc(100% - 40px)!important;
    max-width:none!important;
  }
  .elementor-element .keet-intro.keet-concept .keet-editorial-title{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    font-size:clamp(44px,13vw,56px)!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  .elementor-element .keet-intro.keet-concept .keet-editorial-title br{
    display:none;
  }
  .elementor-element .keet-intro.keet-concept .keet-intro-grid{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:none!important;
    width:100%!important;
    max-width:100%!important;
    margin-top:48px!important;
    gap:32px!important;
  }
  .elementor-element .keet-intro.keet-concept .keet-intro-mark{
    order:2;
    width:100%!important;
    min-height:clamp(250px,72vw,340px)!important;
  }
  .elementor-element .keet-intro.keet-concept .keet-intro-mark img{
    max-width:74%!important;
  }
  .elementor-element .keet-intro.keet-concept .keet-intro-copy{
    order:1;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:100%!important;
    padding:0!important;
    transform:none!important;
  }
  .elementor-element .keet-intro.keet-concept .keet-intro-copy .keet-richtext{
    width:100%!important;
    max-width:100%!important;
    font-size:16px;
    line-height:1.68;
  }
  .elementor-element .keet-intro.keet-concept .keet-intro-copy .keet-text-link{
    margin-top:24px;
  }

  /* PROJECTS — one complete card per viewport, no accidental next-card sliver. */
  .elementor-element .keet-projects.keet-concept{
    overflow:hidden;
  }
  .elementor-element .keet-projects.keet-concept .keet-mobile-slider{
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
  .elementor-element .keet-projects.keet-concept .keet-project-grid{
    width:100%;
    max-width:100%;
    margin-top:54px!important;
    gap:0!important;
  }
  .elementor-element .keet-projects.keet-concept .keet-project-card,
  .elementor-element .keet-projects.keet-concept[data-kc-swiper-ready="1"] .keet-project-card.swiper-slide,
  .elementor-element .keet-projects.keet-concept:not([data-kc-swiper-ready="1"]) [data-kc-slide]{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    margin-top:0!important;
  }
  .elementor-element .keet-projects.keet-concept .keet-project-image,
  .elementor-element .keet-projects.keet-concept.is-project-layout-creative .keet-project-card-large .keet-project-image,
  .elementor-element .keet-projects.keet-concept.is-project-layout-creative .keet-project-card-small .keet-project-image,
  .elementor-element .keet-projects.keet-concept.is-project-layout-uniform .keet-project-image{
    position:relative!important;
    width:100%!important;
    aspect-ratio:4 / 3!important;
    overflow:hidden!important;
  }
  .elementor-element .keet-projects.keet-concept .keet-project-image-motion{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
  }
  .elementor-element .keet-projects.keet-concept .keet-project-image img,
  .elementor-element .keet-projects.keet-concept .keet-project-image-motion img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center center;
    display:block!important;
  }
  .elementor-element .keet-projects.keet-concept .keet-project-meta{
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;
    gap:18px!important;
    padding-top:24px;
  }
  .elementor-element .keet-projects.keet-concept .keet-project-meta strong{
    font-size:clamp(22px,6vw,28px);
  }
  .elementor-element .keet-projects.keet-concept .keet-project-meta dl div{
    grid-template-columns:minmax(72px,.85fr) minmax(0,1fr);
    gap:10px;
  }
  .elementor-element .keet-projects.keet-concept .keet-slider-ui{
    margin-top:28px;
  }
  .elementor-element .keet-projects.keet-concept .keet-projects-action{
    margin-top:56px!important;
    padding-bottom:max(24px,env(safe-area-inset-bottom));
  }
  .elementor-element .keet-projects.keet-concept .keet-projects-action .keet-button{
    width:100%;
    min-width:0;
  }

  /* TEAM ORBIT — one full card, consistent gutters and reliable cover. */
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]){
    padding:80px 0 96px;
    overflow:hidden;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-shell{
    width:calc(100% - 32px)!important;
    max-width:none!important;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-center{
    width:100%!important;
    max-width:440px;
    margin:28px auto 46px;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card-shell,
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-mobile-slider{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-cards{
    width:100%!important;
    max-width:100%!important;
    gap:0!important;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card,
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"])[data-kc-swiper-ready="1"] .keet-orbit-card.swiper-slide,
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]):not([data-kc-swiper-ready="1"]) [data-kc-slide],
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card,
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"][data-kc-swiper-ready="1"] .keet-orbit-card.swiper-slide,
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"]:not([data-kc-swiper-ready="1"]) [data-kc-slide]{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    margin:0!important;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card,
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card-front,
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"])[data-kc-orbit-card-format="video-16-9"] .keet-orbit-card-inner{
    aspect-ratio:16 / 9!important;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card-front,
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card-inner{
    overflow:hidden;
    border-radius:inherit;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card-image{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center center;
    display:block!important;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card-copy{
    left:18px;
    right:62px;
    top:18px;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card-toggle{
    left:18px!important;
    right:18px!important;
    bottom:16px!important;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-card-socials{
    top:14px;
    right:14px;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-slider-ui{
    margin-top:20px;
  }
}

@media(max-width:430px){
  .elementor-element .keet-projects.keet-concept .keet-project-meta{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  .elementor-element .keet-projects.keet-concept .keet-project-meta dl{
    gap:8px;
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-name{
    font-size:clamp(22px,7vw,28px);
  }
  .elementor-element .keet-team-orbit.keet-concept:not([data-kc-orbit-presentation="uniform-video"]) .keet-orbit-role{
    font-size:11px;
  }
}

/* 1.4.8 — Closing CTA mobile flow: no split/overlap, compact readable hierarchy. */
@media(max-width:760px){
  .elementor-element .keet-closing.keet-concept{
    min-height:auto!important;
    height:auto!important;
    align-items:stretch!important;
    overflow:hidden;
  }
  .elementor-element .keet-closing.keet-concept .keet-closing-content{
    width:calc(100% - 40px)!important;
    max-width:none!important;
    padding:88px 0 max(92px,calc(72px + env(safe-area-inset-bottom)))!important;
  }
  .elementor-element .keet-closing.keet-concept h2{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    font-size:clamp(48px,14vw,62px)!important;
    line-height:.95!important;
    letter-spacing:-.05em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  .elementor-element .keet-closing.keet-concept h2 br{
    display:none;
  }
  .elementor-element .keet-closing.keet-concept .keet-closing-lower{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:none!important;
    width:100%!important;
    max-width:100%!important;
    margin-top:40px!important;
    gap:28px!important;
    align-items:stretch!important;
    transform:none!important;
  }
  .elementor-element .keet-closing.keet-concept .keet-closing-lower > p{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    font-size:16px;
    line-height:1.65;
    transform:none!important;
  }
  .elementor-element .keet-closing.keet-concept .keet-closing-lower .keet-button{
    width:100%!important;
    min-width:0!important;
    justify-self:stretch!important;
  }
}

/* KEET 1.5.0 — Bunny embed fallback (Osmo HLS core lives in osmo-bunny-player.css). */
.keet-orbit-card-video .keet-bunny-embed{
  position:absolute;inset:0;width:100%;height:100%;background:#000;
}
.keet-orbit-card-video .keet-bunny-embed iframe{
  display:block;width:100%;height:100%;border:0;background:#000;
}


/* ========================================================================== 
   KEET 1.5.1 — Team Orbit Bunny failure UX + loader refinement
   Osmo Bunny HLS core remains unmodified; these rules only skin Team Orbit.
   ========================================================================== */
.keet-team-orbit .keet-orbit-card.is-video-open{
  opacity:1!important;
  filter:none!important;
}
.keet-team-orbit .keet-orbit-card.is-video-open .keet-orbit-card-video{
  opacity:1!important;
  visibility:visible!important;
}
.keet-team-orbit .keet-orbit-card-video .bunny-player__loading{
  z-index:26;
  background:rgba(20,5,8,.22);
  -webkit-backdrop-filter:blur(2px);
  backdrop-filter:blur(2px);
}
.keet-team-orbit .keet-orbit-card-video .bunny-player__loading-svg{
  display:none!important;
}
.keet-team-orbit .keet-orbit-card-video .bunny-player__loading::before{
  content:"";
  width:38px;
  height:38px;
  border:2px solid rgba(255,255,255,.34);
  border-top-color:#fff;
  border-radius:50%;
  animation:keet-orbit-video-spin .8s linear infinite;
}
@keyframes keet-orbit-video-spin{to{transform:rotate(360deg)}}
.keet-orbit-bunny-failure{
  position:absolute;
  inset:0;
  z-index:32;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#000;
  color:#fff;
}
.keet-orbit-bunny-failure[hidden]{display:none!important;}
.keet-orbit-bunny-fallback,
.keet-orbit-bunny-fallback iframe{
  width:100%;
  height:100%;
  border:0;
}
.keet-orbit-bunny-error-copy{
  max-width:320px;
  padding:28px;
  display:flex;
  flex-direction:column;
  gap:8px;
  text-align:center;
  font-family:var(--sans);
}
.keet-orbit-bunny-error-copy strong{font-size:18px;line-height:1.2;font-weight:600;}
.keet-orbit-bunny-error-copy span{font-size:13px;line-height:1.5;color:rgba(255,255,255,.68);}
.keet-orbit-card.has-bunny-failure .bunny-player{visibility:hidden;}
.keet-orbit-card.has-bunny-failure .keet-orbit-card-video-close{z-index:45;}
@media(max-width:760px){
  .keet-team-orbit .keet-orbit-card-video .bunny-player__loading::before{width:30px;height:30px;}
}
@media(prefers-reduced-motion:reduce){
  .keet-team-orbit .keet-orbit-card-video .bunny-player__loading::before{animation-duration:1.2s;}
}

/* 1.5.2 — Footer editor-driven sections & social icon controls */
.keet-footer-links.is-custom{
  --keet-footer-column-min:160px;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--keet-footer-column-min)),1fr));
  align-items:start;
}
.keet-footer-custom-column,
.keet-footer-social-column{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.keet-footer-social-icons{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}
.keet-concept.keet-footer .keet-footer-social-link,
.keet-concept.keet-footer .keet-footer-social-link:link,
.keet-concept.keet-footer .keet-footer-social-link:visited{
  width:42px;
  height:42px;
  padding:0;
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  color:var(--white);
  background:transparent;
  border:1px solid rgba(255,255,255,.28);
  border-radius:50%;
  box-shadow:none;
  text-decoration:none;
  line-height:1;
  transition:color .35s var(--kc-ease),background-color .35s var(--kc-ease),border-color .35s var(--kc-ease),transform .35s var(--kc-ease);
}
.keet-footer-social-link i{font-size:17px;line-height:1;}
.keet-footer-social-link svg{width:17px;height:17px;display:block;fill:currentColor;}
.keet-footer-social-link svg path{fill:currentColor;}
@media(hover:hover) and (pointer:fine){
  .keet-concept.keet-footer .keet-footer-social-link:hover{
    color:var(--asphalt);
    background:var(--white);
    border-color:var(--white);
    transform:translateY(-2px);
  }
}
.keet-concept.keet-footer .keet-footer-social-link:focus-visible{
  color:var(--asphalt);
  background:var(--white);
  border-color:var(--white);
  outline:2px solid var(--grape);
  outline-offset:3px;
}
.keet-concept.keet-footer .keet-footer-social-link:active{
  color:var(--asphalt);
  background:var(--white);
  border-color:var(--white);
  transform:translateY(0);
}
@media(max-width:760px){
  .keet-footer-links.is-custom{grid-template-columns:1fr;}
  .keet-footer-social-icons{gap:8px;}
}


/* 1.5.3 — opt-in equal-sized Team Orbit video profiles.
   Creative mode is untouched. All selectors are isolated to the new presentation. */
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"]{
  --kc-uniform-card-width:430px;
  --kc-uniform-copy-width:400px;
  --kc-uniform-gutter:clamp(20px,3vw,48px);
  --kc-uniform-slide-gap:16px;
  --kc-uniform-inset:clamp(16px,1.6vw,24px);
  --kc-uniform-photo-position:center center;
  --kc-orbit-video-transition:400ms;
  min-height:0;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-scroll-scene,
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-pin{
  min-height:0;position:relative;top:auto;padding:0;display:block;overflow:visible;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-shell{
  width:calc(100% - 2 * var(--kc-uniform-gutter))!important;
  max-width:1760px!important;min-height:0;padding-block:48px;display:block;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-section-kicker{z-index:1;margin-bottom:32px;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-uniform-stage{position:relative;min-width:0;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-center{
  position:relative;inset:auto;transform:none;width:100%!important;max-width:620px;min-width:0;
  aspect-ratio:auto;margin:32px auto 56px;padding:32px 20px;display:block;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-copy{width:100%;min-width:0;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-center h2{
  font-size:clamp(40px,4.6vw,72px);line-height:1.05;overflow-wrap:normal;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-richtext{font-size:15px;line-height:1.7;margin-top:24px;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card-shell,
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-mobile-slider{
  position:relative;inset:auto;width:100%!important;max-width:100%!important;pointer-events:auto;overflow:visible!important;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-cards{
  position:relative;inset:auto;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
  justify-items:center;gap:24px!important;width:100%!important;padding:0;pointer-events:auto;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card{
  position:relative;inset:auto;width:100%;max-width:var(--kc-uniform-card-width)!important;
  height:auto!important;min-height:0!important;aspect-ratio:16 / 9!important;flex:none!important;
  margin:0;transform:none!important;scale:none;rotate:none;opacity:1!important;visibility:visible!important;
  box-shadow:0 16px 40px rgba(20,5,8,.10);
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card-inner,
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card-front,
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card-video{
  position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto!important;border-radius:inherit;overflow:hidden;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card-image{
  position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;
  object-fit:cover!important;object-position:var(--kc-uniform-photo-position);transform:none!important;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card-video video{
  width:100%;height:100%;object-fit:contain!important;background:#000;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"][data-kc-video-fit="cover"] .keet-orbit-card-video video{object-fit:cover!important;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card-copy{
  left:var(--kc-uniform-inset);right:calc(var(--kc-uniform-inset) + var(--kc-orbit-social-size,38px) + 12px);top:var(--kc-uniform-inset);
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-name{font-size:clamp(20px,2vw,30px);line-height:1.08;overflow-wrap:anywhere;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-role{font-size:12px;line-height:1.3;margin-top:7px;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card-socials{right:var(--kc-uniform-inset);top:var(--kc-uniform-inset);}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-card-toggle{left:var(--kc-uniform-inset);right:var(--kc-uniform-inset);bottom:var(--kc-uniform-inset);font-size:12px;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-slider-ui{display:none;}

/* Compact (root width <=1099): CSS snap fallback, enhanced by the existing Swiper.
   Width/flex/margins below are reset for Swiper so Swiper alone sets their values. */
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"][data-kc-uniform-viewport="compact"] .keet-mobile-slider{
  max-width:min(100%,var(--kc-uniform-card-width))!important;margin-inline:auto;
  overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory;scrollbar-width:none;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"][data-kc-uniform-viewport="compact"] .keet-orbit-cards{
  display:flex!important;gap:var(--kc-uniform-slide-gap)!important;max-width:none!important;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"][data-kc-uniform-viewport="compact"] .keet-orbit-card{
  width:100%;max-width:100%!important;flex:0 0 100%!important;scroll-snap-align:start;scroll-snap-stop:always;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"][data-kc-uniform-viewport="compact"] .keet-slider-ui{display:none;margin-top:24px;gap:16px;}
/* These selectors are intentionally narrower than the legacy 1.4.8 mobile reset. */
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"][data-kc-swiper-ready="1"] .keet-mobile-slider{overflow:clip!important;scroll-snap-type:none;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"][data-kc-swiper-ready="1"] .keet-orbit-cards{gap:0!important;}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"][data-kc-swiper-ready="1"] .keet-orbit-card.swiper-slide{
  /* Swiper writes width/margin inline; revert-layer would discard those as well.
     Excluding uniform mode from the old forced-margin rule keeps them authoritative. */
  flex:0 0 auto!important;
}

/* Natural desktop stage: no pin spacer, no scroll runway. One shared geometry. */
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"].is-kc-uniform-orbit-live .keet-orbit-uniform-stage{height:var(--kc-uniform-stage-height);}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"].is-kc-uniform-orbit-live .keet-orbit-center{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;
  width:var(--kc-uniform-copy-resolved)!important;max-width:none;padding:20px 0;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"].is-kc-uniform-orbit-live .keet-orbit-ring{
  inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);
  width:var(--kc-uniform-ring-resolved);height:var(--kc-uniform-ring-resolved);
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"].is-kc-uniform-orbit-live .keet-orbit-card-shell,
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"].is-kc-uniform-orbit-live .keet-mobile-slider,
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"].is-kc-uniform-orbit-live .keet-orbit-cards{
  position:absolute;inset:0;display:block!important;max-width:100%!important;width:100%!important;height:100%;pointer-events:none;
}
section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"].is-kc-uniform-orbit-live .keet-orbit-card{
  position:absolute;left:50%;top:50%;width:var(--kc-uniform-card-resolved)!important;max-width:none!important;
  transform:translate3d(var(--kc-uniform-x,0px),var(--kc-uniform-y,0px),0) translate(-50%,-50%)!important;pointer-events:auto;
}
@media(max-width:1099px){
  section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"]{--kc-uniform-card-width:640px;}
}
@media(max-width:767px){
  section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"]{--kc-uniform-gutter:20px;--kc-uniform-card-width:640px;padding-block:56px 64px;}
  section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-shell{padding-block:0;}
  section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-center{padding:24px 8px;margin:24px auto 40px;}
  section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-center h2{font-size:clamp(38px,10vw,64px);}
  section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"] .keet-orbit-richtext{font-size:14px;line-height:1.65;margin-top:20px;}
}

section.keet-concept.keet-team-orbit[data-kc-orbit-presentation="uniform-video"][data-kc-swiper-ready="1"] .keet-slider-ui{display:flex;}
