.kemotech-concept {
  position: relative;
  overflow: hidden;
  padding: 92px 5%;
  border-top: 1px solid #263326;
  border-bottom: 1px solid #263326;
  background:
    radial-gradient(ellipse at 14% 42%, rgba(154, 45, 255, .28), transparent 38%),
    radial-gradient(ellipse at 85% 20%, rgba(92, 24, 180, .22), transparent 34%),
    radial-gradient(ellipse at 58% 105%, rgba(177, 55, 255, .16), transparent 35%),
    #020203;
}

.kemotech-concept::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .9;
  background:
    linear-gradient(90deg, transparent 0%, rgba(255,255,255,.035) 50%, transparent 100%),
    radial-gradient(ellipse at 28% 50%, rgba(184, 70, 255, .16), transparent 46%);
}

.kemotech-concept > * { position: relative; z-index: 1; }

.kemotech-status {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 24px;
  padding: 9px 13px;
  border: 1px solid var(--acid);
  color: var(--acid);
  font: 800 12px/1 var(--font-mono), monospace;
  letter-spacing: .16em;
}

.kemotech-status::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--acid);
  box-shadow: 0 0 14px var(--acid);
}

.kemotech-layout {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(400px, 1.08fr);
  gap: clamp(34px, 6vw, 90px);
  align-items: center;
}

.kemotech-gallery {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  gap: 18px;
  min-height: 620px;
  align-items: center;
  filter: drop-shadow(0 0 48px rgba(155, 46, 255, .22));
}

.kemotech-photo {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.2);
  background: #050506;
}

.kemotech-photo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.kemotech-photo-main img { object-position: center 38%; }
.kemotech-photo-detail {
  aspect-ratio: 1 / 1;
  align-self: center;
  background: #e6e3e1;
}
.kemotech-photo-detail img { object-fit: contain; object-position: center; filter: contrast(1.04) saturate(.88); }

.kemotech-photo figcaption {
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  padding: 10px 12px;
  background: rgba(2, 4, 2, .82);
  border-left: 3px solid var(--acid);
  color: #fff;
  font: 800 11px/1.4 var(--font-mono), monospace;
  letter-spacing: .09em;
  text-transform: uppercase;
  backdrop-filter: blur(5px);
}

.kemotech-brand-logo {
  display: block;
  width: min(100%, 510px);
  height: auto;
  margin: 0 0 34px;
  filter: drop-shadow(0 0 22px rgba(8,226,0,.11));
}
.kemotech-copy .section-kicker { margin-bottom: 12px; color: #fff; }
.kemotech-copy h2 {
  margin: 0;
  font-size: clamp(40px, 4.8vw, 70px);
  line-height: .94;
  letter-spacing: -.045em;
}
.kemotech-copy h2 span { color: #fff; }
.kemotech-lead { max-width: 620px; margin: 26px 0 30px; color: #c8cec8; font-size: 18px; line-height: 1.65; }

.kemotech-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  padding: 24px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(3, 3, 5, .86);
  box-shadow: 0 24px 80px rgba(104, 21, 184, .16);
}
.kemotech-form label { display: grid; gap: 8px; color: #b7c0b7; font: 700 12px/1.35 var(--font-mono), monospace; letter-spacing: .07em; text-transform: uppercase; }
.kemotech-form label:first-child,
.kemotech-form label:nth-child(4),
.kemotech-consent,
.kemotech-form button,
.kemotech-form-message { grid-column: 1 / -1; }
.kemotech-form input,
.kemotech-form select {
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(255,255,255,.2);
  background: #050506;
  color: #fff;
  padding: 12px 13px;
  font: 15px/1.3 Arial, sans-serif;
}
.kemotech-form input:focus,
.kemotech-form select:focus { outline: 2px solid var(--acid); outline-offset: 2px; border-color: transparent; }
.kemotech-consent { display: flex !important; grid-template-columns: auto 1fr; align-items: start; gap: 10px !important; text-transform: none !important; letter-spacing: 0 !important; line-height: 1.45 !important; }
.kemotech-consent input { width: 18px; min-height: 18px; margin-top: 1px; accent-color: var(--acid); }
.kemotech-form button {
  min-height: 54px;
  border: 1px solid var(--acid);
  background: var(--acid);
  color: #020302;
  padding: 13px 18px;
  cursor: pointer;
  font: 900 13px/1.35 var(--font-mono), monospace;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.kemotech-form button:hover,
.kemotech-form button:focus-visible { background: #fff; border-color: #fff; }
.kemotech-form-message { min-height: 20px; margin: 0; color: var(--acid); font: 700 12px/1.45 var(--font-mono), monospace; }
.kemotech-disclaimer { margin: 14px 0 0; color: #899189; font-size: 12px; line-height: 1.55; }

@media (max-width: 1050px) {
  .kemotech-layout { grid-template-columns: 1fr; }
  .kemotech-gallery { min-height: 560px; }
}

@media (max-width: 650px) {
  .kemotech-concept { padding: 64px 5%; }
  .kemotech-gallery { grid-template-columns: 1fr; min-height: 0; }
  .kemotech-photo-main { height: 520px; }
  .kemotech-photo-detail { width: 100%; height: auto; }
  .kemotech-form { grid-template-columns: 1fr; padding: 18px; }
  .kemotech-form label { grid-column: 1 / -1; }
}
