/* ============================================================
   Las Vegas Tile & Bathroom Remodeling — design-a (Kiln Card, remapped)
   Slot-scoped [data-design="a"] throughout.
   ============================================================ */

[data-design="a"] {
  --design-a-primary: #C0684A;
  --kc-paper: #F4EDE1;
  --kc-paper-deep: #E9DDC9;
  --kc-ink: #2B221B;
  --kc-muted: #7A6A57;
  --kc-buff: #D9B98A;
  --kc-salmon: #C0684A;
  --kc-flash: #95463A;
  --kc-clinker: #4E312C;
  --kc-critical: #8A3B2E;
  --kc-success: #5C6B4A;

  --kc-t-caption: 0.8rem;
  --kc-t-body: clamp(1rem, 0.95rem + 0.25vw, 1.1875rem);
  --kc-t-sub: 1.25rem;
  --kc-t-h3: 1.5625rem;
  --kc-t-h2: 1.953rem;
  --kc-t-h1: clamp(1.953rem, 1.4rem + 2.6vw, 3.4rem);
  --kc-t-display: clamp(2.4rem, 1.6rem + 4vw, 4.2rem);

  --kc-ease-pull: cubic-bezier(0.33, 0, 0.15, 1);
  --kc-ease-seat: cubic-bezier(0.2, 0.9, 0.28, 1);
  --kc-d-press: 160ms;
  --kc-d-fire: 240ms;
  --kc-d-draft: 420ms;
  --kc-d-arrive: 700ms;

  background: var(--kc-paper);
  color: var(--kc-ink);
  font-family: "Source Serif 4", Georgia, serif;
  isolation: isolate;
}

[data-design="a"].dq-design * { box-sizing: border-box; }

/* ---------- Header ---------- */
[data-design="a"].kc-header { position: sticky; top: 0; z-index: 40; background: var(--kc-paper); }
[data-design="a"] .kc-header__bar {
  max-width: 1320px; margin-inline: auto; padding: 16px clamp(20px, 5vw, 48px);
  display: flex; align-items: center; justify-content: space-between; box-sizing: border-box;
}
[data-design="a"] .kc-logo {
  font-family: "Archivo Black", "Franklin Gothic Medium", "Arial Black", sans-serif;
  font-size: clamp(1.1rem, 1rem + 0.6vw, 1.45rem); line-height: 1.15; letter-spacing: 0.01em;
  color: var(--kc-ink); text-decoration: none; max-width: 70%;
}
[data-design="a"] .kc-header__range { height: 3px; overflow: hidden; position: relative; }
[data-design="a"] .kc-header__range-strip {
  position: absolute; inset-block: 0; left: 0; width: 200%;
  background: linear-gradient(90deg,
    var(--kc-buff) 0%, var(--kc-salmon) 20%, var(--kc-flash) 35%, var(--kc-clinker) 50%,
    var(--kc-flash) 65%, var(--kc-salmon) 80%, var(--kc-buff) 100%);
  animation: kc-range-drift 26s linear infinite; will-change: transform;
}
@keyframes kc-range-drift { from { transform: translateX(0); } to { transform: translateX(-50%); } }
[data-design="a"] .kc-burger {
  width: 48px; height: 48px; display: grid; place-content: center; gap: 7px;
  background: none; border: 2px solid var(--kc-ink); border-radius: 0; cursor: pointer;
}
[data-design="a"] .kc-burger__line {
  display: block; width: 20px; height: 2px; background: var(--kc-ink);
  transition: transform var(--kc-d-press) var(--kc-ease-seat);
}
[data-design="a"] .kc-burger[aria-expanded="true"] .kc-burger__line:first-child { transform: translateY(4.5px) rotate(45deg); }
[data-design="a"] .kc-burger[aria-expanded="true"] .kc-burger__line:last-child { transform: translateY(-4.5px) rotate(-45deg); }
[data-design="a"] .kc-drawer {
  position: fixed; inset: 0; z-index: 39; background: var(--kc-paper-deep);
  opacity: 0; display: none; transition: opacity 280ms var(--kc-ease-pull);
}
[data-design="a"] .kc-drawer.is-open { display: block; opacity: 1; }
[data-design="a"] .kc-drawer__inner {
  max-width: 1320px; margin-inline: auto; box-sizing: border-box;
  padding: 128px clamp(20px, 5vw, 48px) 48px; display: grid; gap: 24px;
}
[data-design="a"] .kc-drawer__link {
  font-family: "Archivo Black", "Franklin Gothic Medium", "Arial Black", sans-serif;
  font-size: clamp(1.5rem, 1.2rem + 1.8vw, 2.4rem); color: var(--kc-ink); text-decoration: none;
  padding: 8px 0 8px 20px; border-left: 12px solid var(--kc-buff);
  transition: border-color var(--kc-d-fire) var(--kc-ease-seat);
}
[data-design="a"] .kc-drawer__link:focus-visible { outline: 3px solid var(--kc-salmon); outline-offset: 2px; border-left-color: var(--kc-flash); }
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .kc-drawer__link:hover { border-left-color: var(--kc-flash); }
}
[data-design="a"] .kc-drawer__actions { margin-top: 32px; display: grid; gap: 16px; }
[data-design="a"] .kc-drawer__phone,
[data-design="a"] .kc-drawer__funnel {
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 1.1rem;
  color: var(--kc-ink); text-decoration: none; padding: 14px 20px; min-height: 44px;
  border: 2px solid var(--kc-ink); text-align: center; box-sizing: border-box;
  display: flex; align-items: center; justify-content: center;
}
[data-design="a"] .kc-drawer__funnel { background: var(--kc-salmon); color: var(--kc-paper); border-color: var(--kc-clinker); }
@media (max-width: 560px) { [data-design="a"] .kc-header__bar { padding-block: 12px; } }

/* ---------- CTA (Damper Handle) ---------- */
[data-design="a"] .kc-cta {
  position: relative; display: inline-flex; align-items: center; gap: 12px;
  min-height: 56px; padding: 16px 28px; box-sizing: border-box; max-width: min(100%, 340px);
  background: var(--kc-salmon); color: var(--kc-paper); text-decoration: none;
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 1.05rem;
  letter-spacing: 0.06em; text-transform: uppercase;
  border: 2px solid var(--kc-clinker); box-shadow: 4px 4px 0 var(--kc-clinker);
  transition: transform var(--kc-d-press) var(--kc-ease-seat),
              box-shadow var(--kc-d-press) var(--kc-ease-seat),
              background-color var(--kc-d-fire) var(--kc-ease-seat);
  overflow: hidden;
}
[data-design="a"] .kc-cta__ember {
  position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(120% 160% at 50% 110%, var(--kc-flash) 0%, rgba(149,70,58,0) 62%);
  opacity: 0.35; animation: kc-ember-breath 5s var(--kc-ease-pull) infinite; will-change: opacity;
}
@keyframes kc-ember-breath { 0%, 100% { opacity: 0.35; } 50% { opacity: 0.75; } }
[data-design="a"] .kc-cta__label,
[data-design="a"] .kc-cta__tick { position: relative; }
[data-design="a"] .kc-cta__tick { font-size: 0.7em; transform: translateY(1px); }
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .kc-cta:hover {
    background: var(--kc-flash); transform: translate(-1px, -1px); box-shadow: 5px 5px 0 var(--kc-clinker);
  }
}
[data-design="a"] .kc-cta:focus-visible { outline: 3px solid var(--kc-salmon); outline-offset: 3px; }
[data-design="a"] .kc-cta:active { transform: translate(3px, 3px); box-shadow: 0 0 0 var(--kc-clinker); }
[data-design="a"] .kc-cta--repeat { margin-top: 48px; }

/* ---------- Hero ---------- */
[data-design="a"] .kc-hero {
  position: relative; min-height: 76vh; display: flex; align-items: flex-end;
  overflow: hidden; background: var(--kc-paper-deep); isolation: isolate;
}
@media (max-width: 768px) { [data-design="a"] .kc-hero { min-height: 100svh; } }
[data-design="a"] .kc-hero__field {
  position: absolute; inset: 0; display: grid; z-index: 1;
  grid-template-columns: repeat(auto-fill, minmax(min(11vw, 96px), 1fr));
  grid-auto-rows: minmax(min(8vw, 64px), 1fr); gap: 5px; padding: 5px; box-sizing: border-box;
}
[data-design="a"] .kc-hero__chip { background: var(--kc-buff); }
[data-design="a"] .kc-hero__chip:nth-of-type(3n) { background: var(--kc-salmon); }
[data-design="a"] .kc-hero__chip:nth-of-type(4n) { background: var(--kc-paper); }
[data-design="a"] .kc-hero__chip:nth-of-type(7n) { background: var(--kc-flash); }
[data-design="a"] .kc-hero__chip:nth-of-type(11n) { background: var(--kc-clinker); }
[data-design="a"] .kc-hero__chip:nth-of-type(13n) { background: var(--kc-paper-deep); }
[data-design="a"] .kc-hero__shimmer {
  position: absolute; top: -20%; left: -30%; width: 55%; height: 140%;
  background: linear-gradient(105deg, rgba(244,237,225,0) 0%, rgba(244,237,225,0.5) 45%, rgba(217,185,138,0.35) 55%, rgba(244,237,225,0) 100%);
  animation: kc-shimmer 9s var(--kc-ease-pull) infinite; will-change: transform; pointer-events: none;
}
@keyframes kc-shimmer {
  0% { transform: translateX(-40%) skewX(-8deg); }
  100% { transform: translateX(320%) skewX(-8deg); }
}
[data-design="a"] .kc-hero__tint {
  position: absolute; inset: 0; background: var(--kc-clinker); opacity: 0; pointer-events: none;
}
[data-design="a"] .kc-hero__content {
  position: relative; z-index: 5; width: 100%; max-width: 1320px; margin-inline: auto;
  box-sizing: border-box; padding: 96px clamp(20px, 5vw, 48px) 64px;
  background: linear-gradient(180deg, rgba(244,237,225,0) 0%, rgba(244,237,225,0.88) 34%, rgba(244,237,225,0.96) 100%);
}
[data-design="a"] .kc-hero__title {
  font-family: "Archivo Black", "Franklin Gothic Medium", "Arial Black", sans-serif;
  font-size: var(--kc-t-display); line-height: 1.05; color: var(--kc-ink);
  margin: 0 0 16px; max-width: 18ch; opacity: 1; position: relative; z-index: 6;
}
[data-design="a"] .kc-hero__sub {
  font-family: "Source Serif 4", Georgia, serif; font-size: var(--kc-t-sub); line-height: 1.5;
  color: var(--kc-ink); margin: 0 0 32px; max-width: 52ch; opacity: 1; position: relative; z-index: 6;
}

/* ---------- Pointer ---------- */
[data-design="a"] .kc-pointer {
  display: grid; justify-items: center; gap: 12px; padding: 48px 0 32px;
  background: var(--kc-paper); cursor: pointer; opacity: 1;
}
[data-design="a"] .kc-pointer__flue { display: flex; gap: 10px; height: 72px; }
[data-design="a"] .kc-pointer__path {
  display: block; width: 3px; height: 100%;
  background: linear-gradient(180deg, var(--kc-buff) 0%, var(--kc-salmon) 55%, var(--kc-flash) 100%);
  clip-path: inset(0 0 100% 0);
  animation: kc-downdraft 5s var(--kc-ease-pull) infinite;
}
[data-design="a"] .kc-pointer__path:nth-child(2) { animation-delay: 0.5s; height: 85%; align-self: flex-end; }
[data-design="a"] .kc-pointer__path:nth-child(3) { animation-delay: 1s; height: 70%; }
@keyframes kc-downdraft {
  0% { clip-path: inset(0 0 100% 0); opacity: 1; }
  45% { clip-path: inset(0 0 0 0); opacity: 1; }
  70% { clip-path: inset(0 0 0 0); opacity: 0; }
  100% { clip-path: inset(0 0 100% 0); opacity: 0; }
}
[data-design="a"] .kc-pointer__label {
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 0.8rem; letter-spacing: 0.12em;
  text-transform: uppercase; color: var(--kc-muted); opacity: 1;
}

/* ---------- Funnel / Kiln estimator ---------- */
[data-design="a"] .kc-kiln { padding: 96px 0; background: var(--kc-paper); }
@media (max-width: 768px) { [data-design="a"] .kc-kiln { padding: 64px 0; } }
[data-design="a"] .kc-kiln__card {
  --kc-open: 0;
  position: relative; max-width: min(92vw, 760px); margin-inline: auto; box-sizing: border-box;
  background: var(--kc-paper); border: 2px solid var(--kc-ink);
  box-shadow: 8px 8px 0 var(--kc-paper-deep); padding: clamp(24px, 4vw, 48px); overflow: hidden;
}
[data-design="a"] .kc-kiln__card::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(217,185,138,0.20) 0%, rgba(149,70,58,0.16) 55%, rgba(78,49,44,0.22) 100%);
  opacity: var(--kc-open); transition: opacity var(--kc-d-arrive) var(--kc-ease-pull);
}
[data-design="a"] .kc-kiln__title {
  position: relative; font-family: "Archivo Black", "Franklin Gothic Medium", "Arial Black", sans-serif;
  font-size: var(--kc-t-h2); line-height: 1.25; margin: 0 0 24px; color: var(--kc-ink);
}
[data-design="a"] .kc-kiln__damper { position: relative; height: 32px; margin: 0 0 8px; }
[data-design="a"] .kc-kiln__damper-track {
  position: absolute; left: 0; right: 0; top: 14px; height: 4px; background: var(--kc-paper-deep);
  border: 1px solid var(--kc-ink);
}
[data-design="a"] .kc-kiln__damper-handle {
  position: absolute; left: 0; top: 0; width: 48px; height: 32px;
  background: var(--kc-salmon); border: 2px solid var(--kc-clinker); box-sizing: border-box;
  transform: translateX(calc(var(--kc-open) * (100% * 5.8)));
  transition: transform var(--kc-d-draft) var(--kc-ease-pull), background-color var(--kc-d-fire) var(--kc-ease-seat);
  will-change: transform;
}
[data-design="a"] .kc-kiln__card.is-done .kc-kiln__damper-handle { background: var(--kc-clinker); }
[data-design="a"] .kc-kiln__damper-scale {
  position: absolute; inset: 0; display: flex; justify-content: space-between; align-items: flex-end;
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 0.65rem; color: var(--kc-muted);
  pointer-events: none;
}
[data-design="a"] .kc-kiln__damper-scale em { font-style: normal; transform: translateY(14px); }
[data-design="a"] .kc-kiln__stepline {
  position: relative; font-family: "IBM Plex Mono", "Courier New", monospace;
  font-size: var(--kc-t-caption); color: var(--kc-muted); margin: 16px 0 24px;
}

/* Live range readout (EST-4) */
[data-design="a"] .kc-kiln__range {
  position: relative; display: grid; gap: 4px; margin: 0 0 32px; padding: 16px 20px;
  background: var(--kc-paper-deep); border: 2px solid var(--kc-ink);
}
[data-design="a"] .kc-kiln__range-label {
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: var(--kc-t-caption);
  text-transform: uppercase; letter-spacing: 0.06em; color: var(--kc-muted);
}
[data-design="a"] .kc-kiln__range-value {
  font-family: "Archivo Black", "Franklin Gothic Medium", "Arial Black", sans-serif;
  font-size: var(--kc-t-h3); line-height: 1.2; color: var(--kc-ink);
}
[data-design="a"] .kc-kiln__range-note {
  font-family: "Source Serif 4", Georgia, serif; font-size: var(--kc-t-caption); color: var(--kc-flash);
}

[data-design="a"] .kc-kiln__step { position: relative; border: 0; padding: 0; margin: 0; }
[data-design="a"] .kc-kiln__step.is-current { animation: kc-draft-in var(--kc-d-draft) var(--kc-ease-pull) both; }
@keyframes kc-draft-in {
  from { clip-path: inset(0 0 100% 0); opacity: 0.4; }
  to { clip-path: inset(0 0 0 0); opacity: 1; }
}
[data-design="a"] .kc-kiln__q {
  font-family: "Source Serif 4", Georgia, serif; font-size: var(--kc-t-h3); line-height: 1.35;
  color: var(--kc-ink); margin: 0 0 20px; padding: 0;
}
[data-design="a"] .kc-kiln__chips { display: flex; flex-wrap: wrap; gap: 12px; }
[data-design="a"] .kc-kiln__chip {
  min-height: 56px; padding: 14px 20px; box-sizing: border-box; cursor: pointer;
  background: var(--kc-buff); color: var(--kc-ink); border: 2px solid var(--kc-ink); border-radius: 0;
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 0.95rem; text-align: left;
  box-shadow: 3px 3px 0 var(--kc-clinker);
  transition: transform var(--kc-d-press) var(--kc-ease-seat),
              box-shadow var(--kc-d-press) var(--kc-ease-seat),
              background-color var(--kc-d-fire) var(--kc-ease-seat),
              color var(--kc-d-fire) var(--kc-ease-seat);
}
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .kc-kiln__chip:hover { background: var(--kc-salmon); color: var(--kc-paper); }
}
[data-design="a"] .kc-kiln__chip:focus-visible { outline: 3px solid var(--kc-salmon); outline-offset: 2px; }
[data-design="a"] .kc-kiln__chip:active,
[data-design="a"] .kc-kiln__chip.is-fired {
  background: var(--kc-clinker); color: var(--kc-paper);
  transform: translate(3px, 3px); box-shadow: 0 0 0 var(--kc-clinker);
}
[data-design="a"] .kc-kiln__note {
  margin: 20px 0 0; font-family: "Source Serif 4", Georgia, serif; font-size: var(--kc-t-caption);
  line-height: 1.6; color: var(--kc-muted); max-width: 60ch;
}
[data-design="a"] .kc-kiln__fields { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
@media (max-width: 560px) { [data-design="a"] .kc-kiln__fields { grid-template-columns: 1fr; } }
[data-design="a"] .kc-kiln__field { display: grid; gap: 8px; }
[data-design="a"] .kc-kiln__field--wide { grid-column: 1 / -1; }
[data-design="a"] .kc-kiln__field span {
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: var(--kc-t-caption);
  text-transform: uppercase; letter-spacing: 0.06em; color: var(--kc-muted);
}
[data-design="a"] .kc-kiln__field input,
[data-design="a"] .kc-kiln__field textarea {
  min-height: 48px; padding: 12px 14px; box-sizing: border-box; width: 100%;
  background: var(--kc-paper-deep); color: var(--kc-ink); border: 0; border-bottom: 2px solid var(--kc-ink);
  border-radius: 3px 3px 0 0; font-family: "Source Serif 4", Georgia, serif; font-size: 1rem;
}
[data-design="a"] .kc-kiln__field input:focus-visible,
[data-design="a"] .kc-kiln__field textarea:focus-visible {
  outline: 3px solid var(--kc-salmon); outline-offset: 1px;
}
[data-design="a"] .kc-kiln__error {
  color: var(--kc-critical); font-family: "IBM Plex Mono", "Courier New", monospace;
  font-size: var(--kc-t-caption); margin: 16px 0 0;
}
[data-design="a"] .kc-kiln__submit {
  margin-top: 24px; min-height: 56px; padding: 16px 28px; cursor: pointer;
  background: var(--kc-salmon); color: var(--kc-paper); border: 2px solid var(--kc-clinker); border-radius: 0;
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 1.05rem; text-transform: uppercase;
  letter-spacing: 0.06em; box-shadow: 4px 4px 0 var(--kc-clinker);
  transition: transform var(--kc-d-press) var(--kc-ease-seat), box-shadow var(--kc-d-press) var(--kc-ease-seat);
}
[data-design="a"] .kc-kiln__submit:active { transform: translate(3px, 3px); box-shadow: 0 0 0 var(--kc-clinker); }
[data-design="a"] .kc-kiln__submit:focus-visible { outline: 3px solid var(--kc-salmon); outline-offset: 3px; }
[data-design="a"] .kc-kiln__done { position: relative; }
[data-design="a"] .kc-kiln__done-head {
  font-family: "Archivo Black", "Franklin Gothic Medium", "Arial Black", sans-serif;
  font-size: var(--kc-t-h3); color: var(--kc-ink); margin: 0 0 12px;
}
[data-design="a"] .kc-kiln__done-body {
  font-family: "Source Serif 4", Georgia, serif; font-size: var(--kc-t-body); line-height: 1.65;
  color: var(--kc-ink); margin: 0; max-width: 56ch;
}
[data-design="a"] .kc-kiln__foot {
  position: relative; display: flex; justify-content: space-between; align-items: center; margin-top: 32px;
}
[data-design="a"] .kc-kiln__back {
  background: none; border: 0; padding: 12px; min-height: 44px; cursor: pointer;
  font-family: "IBM Plex Mono", "Courier New", monospace; color: var(--kc-muted); font-size: 0.9rem;
}
[data-design="a"] .kc-kiln__back:focus-visible { outline: 3px solid var(--kc-salmon); }
[data-design="a"] .kc-kiln__phone {
  font-family: "IBM Plex Mono", "Courier New", monospace; color: var(--kc-ink); font-size: 0.9rem;
  text-decoration: none; border-bottom: 2px solid var(--kc-salmon); padding: 8px 0; min-height: 44px;
  display: inline-flex; align-items: center;
}

/* ---------- Kiln Log (waterproofing / tile types) ---------- */
[data-design="a"] .kc-log {
  position: relative; overflow: hidden; background: var(--kc-paper-deep);
  padding: 96px 0;
}
[data-design="a"] .kc-log--alt { background: var(--kc-paper); }
@media (max-width: 768px) { [data-design="a"] .kc-log { padding: 64px 0; } }
[data-design="a"] .kc-log__heat {
  position: absolute; left: 0; right: 0; top: 0; height: 200%;
  background: linear-gradient(0deg, rgba(192,104,74,0.14) 0%, rgba(233,221,201,0) 40%, rgba(192,104,74,0.14) 60%, rgba(233,221,201,0) 100%);
  animation: kc-updraft 18s linear infinite; will-change: transform; pointer-events: none;
}
@keyframes kc-updraft { from { transform: translateY(0); } to { transform: translateY(-50%); } }
[data-design="a"] .kc-log__inner {
  position: relative; max-width: 1320px; margin-inline: auto; box-sizing: border-box;
  padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .kc-log__strip { display: flex; gap: 8px; margin: 0 0 48px; }
[data-design="a"] .kc-log__pos {
  position: relative; width: 64px; height: 40px; border: 2px solid var(--kc-ink); border-radius: 0;
  background: var(--kc-buff); cursor: pointer; padding: 0; overflow: hidden;
  transition: background-color var(--kc-d-fire) var(--kc-ease-seat), transform var(--kc-d-press) var(--kc-ease-seat);
}
[data-design="a"] .kc-log__pos:nth-child(2) { background: var(--kc-salmon); }
[data-design="a"] .kc-log__pos:nth-child(3) { background: var(--kc-flash); }
[data-design="a"] .kc-log__pos:nth-child(4) { background: var(--kc-clinker); }
[data-design="a"] .kc-log__pos span {
  position: absolute; inset: 0; display: grid; place-content: center;
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 0.65rem; letter-spacing: 0.08em;
  color: var(--kc-paper); opacity: 0; transition: opacity var(--kc-d-fire) var(--kc-ease-seat);
}
[data-design="a"] .kc-log__pos.is-flipped { transform: translateY(2px); }
[data-design="a"] .kc-log__pos.is-flipped span { opacity: 1; }
[data-design="a"] .kc-log__entries { margin: 0; display: grid; gap: 24px; }
[data-design="a"] .kc-log__entry {
  background: var(--kc-paper); border: 2px solid var(--kc-ink); box-shadow: 6px 6px 0 rgba(78,49,44,0.14);
  padding: 24px; max-width: 72ch; margin-inline: auto; box-sizing: border-box;
}
[data-design="a"] .kc-log__entry dt {
  font-family: "IBM Plex Mono", "Courier New", monospace; text-transform: uppercase;
  letter-spacing: 0.06em; font-size: var(--kc-t-caption); color: var(--kc-flash); margin: 0 0 8px;
}
[data-design="a"] .kc-log__entry dd {
  margin: 0; font-family: "Source Serif 4", Georgia, serif; font-size: var(--kc-t-body);
  line-height: 1.65; color: var(--kc-ink);
}

/* ---------- Scroll choreography handoff ---------- */
[data-design="a"] .kc-scrollhead {
  display: flex; align-items: center; gap: 16px; max-width: 1320px; margin-inline: auto;
  box-sizing: border-box; padding: 0 clamp(20px, 5vw, 48px); margin-bottom: 32px;
}
[data-design="a"] .kc-scrollhead__chip {
  width: 40px; height: 26px; background: var(--kc-flash); border: 2px solid var(--kc-ink); flex: none;
}
[data-design="a"] .kc-scrollhead__title {
  font-family: "Archivo Black", "Franklin Gothic Medium", "Arial Black", sans-serif;
  font-size: var(--kc-t-h2); line-height: 1.25; color: var(--kc-ink); margin: 0;
}
@supports (animation-timeline: view()) {
  [data-design="a"] .kc-hero__tint {
    animation: kc-fire-down linear both;
    animation-timeline: view();
    animation-range: exit 0% exit 100%;
  }
  @keyframes kc-fire-down { from { opacity: 0; } to { opacity: 0.45; } }
  [data-design="a"] .kc-scrollhead__chip {
    animation: kc-chip-fire linear both;
    animation-timeline: view();
    animation-range: entry 0% entry 80%;
  }
  [data-design="a"] .kc-scrollhead__title {
    animation: kc-title-seat linear both;
    animation-timeline: view();
    animation-range: entry 0% entry 80%;
  }
  @keyframes kc-chip-fire { from { opacity: 0.15; } to { opacity: 1; } }
  @keyframes kc-title-seat {
    from { transform: translateY(12px); opacity: 0.3; }
    to { transform: translateY(0); opacity: 1; }
  }
}

/* ---------- Gallery (no-photo blend-field treatment, honest) ---------- */
[data-design="a"] .kc-gallery { padding: 96px 0; background: var(--kc-paper); }
@media (max-width: 768px) { [data-design="a"] .kc-gallery { padding: 64px 0; } }
[data-design="a"] .kc-gallery__inner {
  max-width: 1320px; margin-inline: auto; box-sizing: border-box; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .kc-gallery__entries { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
@media (max-width: 768px) { [data-design="a"] .kc-gallery__entries { grid-template-columns: 1fr; } }
[data-design="a"] .kc-gallery__entry { display: grid; gap: 16px; }
[data-design="a"] .kc-gallery__media {
  display: grid; grid-template-columns: 1fr 1fr; gap: 4px; aspect-ratio: 16 / 10;
  border: 2px solid var(--kc-ink); overflow: hidden;
}
[data-design="a"] .kc-gallery__chip { background: var(--kc-buff); }
[data-design="a"] .kc-gallery__chip:nth-child(2) { background: var(--kc-salmon); }
[data-design="a"] .kc-gallery__chip:nth-child(3) { background: var(--kc-flash); }
[data-design="a"] .kc-gallery__chip:nth-child(4) { background: var(--kc-clinker); }
[data-design="a"] .kc-gallery__spec {
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: var(--kc-t-caption);
  color: var(--kc-muted); margin: 0; max-width: 60ch;
}

/* ---------- Process ---------- */
[data-design="a"] .kc-process { padding: 96px 0; background: var(--kc-paper-deep); }
@media (max-width: 768px) { [data-design="a"] .kc-process { padding: 64px 0; } }
[data-design="a"] .kc-process__inner {
  max-width: 1320px; margin-inline: auto; box-sizing: border-box; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .kc-process__track {
  list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 24px;
}
[data-design="a"] .kc-process__phase {
  display: grid; gap: 8px; min-width: 100px; flex: 1 1 140px;
}
[data-design="a"] .kc-process__num {
  font-family: "Archivo Black", "Franklin Gothic Medium", "Arial Black", sans-serif;
  font-size: var(--kc-t-h3); color: var(--kc-salmon);
}
[data-design="a"] .kc-process__label {
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 0.9rem; color: var(--kc-ink);
}

/* ---------- About / service area ---------- */
[data-design="a"] .kc-about { padding: 96px 0; background: var(--kc-paper); }
@media (max-width: 768px) { [data-design="a"] .kc-about { padding: 64px 0; } }
[data-design="a"] .kc-about__inner {
  max-width: 1320px; margin-inline: auto; box-sizing: border-box; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .kc-about__body {
  font-family: "Source Serif 4", Georgia, serif; font-size: var(--kc-t-body); line-height: 1.65;
  color: var(--kc-ink); max-width: 65ch; margin: 0 0 32px;
}

/* ---------- Footer ---------- */
[data-design="a"] .kc-footer { background: var(--kc-clinker); color: var(--kc-paper); padding: 64px 0 24px; }
[data-design="a"] .kc-footer__inner {
  max-width: 1320px; margin-inline: auto; box-sizing: border-box; padding-inline: clamp(20px, 5vw, 48px);
  display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 32px;
}
@media (max-width: 768px) { [data-design="a"] .kc-footer__inner { grid-template-columns: 1fr; } }
[data-design="a"] .kc-footer__group { display: grid; gap: 12px; align-content: start; }
[data-design="a"] .kc-footer__name {
  font-family: "Archivo Black", "Franklin Gothic Medium", "Arial Black", sans-serif;
  font-size: 1.1rem; margin: 0;
}
[data-design="a"] .kc-footer__meta {
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 0.85rem; color: var(--kc-buff); margin: 0;
}
[data-design="a"] .kc-footer__link,
[data-design="a"] .kc-footer__phone,
[data-design="a"] .kc-footer__funnel {
  color: var(--kc-paper); text-decoration: none; font-family: "IBM Plex Mono", "Courier New", monospace;
  font-size: 0.95rem; min-height: 44px; display: inline-flex; align-items: center;
  border-bottom: 2px solid transparent;
}
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .kc-footer__link:hover,
  [data-design="a"] .kc-footer__phone:hover { border-bottom-color: var(--kc-salmon); }
}
[data-design="a"] .kc-footer__funnel { color: var(--kc-salmon); font-weight: bold; }
[data-design="a"] .kc-footer__strip {
  height: 6px; margin-top: 32px;
  background: linear-gradient(90deg, var(--kc-buff), var(--kc-salmon), var(--kc-flash), var(--kc-clinker));
}
[data-design="a"] .kc-footer__copy {
  max-width: 1320px; margin: 16px auto 0; box-sizing: border-box; padding-inline: clamp(20px, 5vw, 48px);
  font-family: "IBM Plex Mono", "Courier New", monospace; font-size: 0.75rem; color: var(--kc-buff);
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  [data-design="a"] .kc-header__range-strip { animation: none; transform: translateX(-25%); }
  [data-design="a"] .kc-drawer { transition: none; }
  [data-design="a"] .kc-cta__ember { animation: none; opacity: 0.5; }
  [data-design="a"] .kc-cta { transition: none; }
  [data-design="a"] .kc-hero__shimmer { animation: none; transform: translateX(90%) skewX(-8deg); }
  [data-design="a"] .kc-pointer__path { animation: none; clip-path: inset(0 0 30% 0); opacity: 0.8; }
  [data-design="a"] .kc-kiln__step.is-current { animation: none; }
  [data-design="a"] .kc-kiln__damper-handle { transition: none; }
  [data-design="a"] .kc-kiln__card::before { transition: none; }
  [data-design="a"] .kc-kiln__chip, [data-design="a"] .kc-kiln__submit { transition: none; }
  [data-design="a"] .kc-log__heat { animation: none; transform: translateY(-25%); }
  [data-design="a"] .kc-log__pos, [data-design="a"] .kc-log__pos span { transition: none; }
  [data-design="a"] .kc-hero__tint,
  [data-design="a"] .kc-scrollhead__chip,
  [data-design="a"] .kc-scrollhead__title { animation: none; }
}

/* ============================================================
   MOBILE SAFETY — appended at bottom, scoped to .dq-design only
   ============================================================ */
[data-design="a"].dq-design,
[data-design="a"] .dq-design { max-width: 100%; overflow-x: clip; }
[data-design="a"].dq-design * { min-width: 0; }
[data-design="a"].dq-design img,
[data-design="a"].dq-design svg:not([data-keep-size]) { max-width: 100%; height: auto; }

/* stranded-wrapper autofix (drain 2026-07-03): every fixed max-width column centers — gate content_uncentered_left_stranded */
[data-design="a"] .kc-hero__sub { margin-inline: auto; }
[data-design="a"] .kc-kiln__note { margin-inline: auto; }
[data-design="a"] .kc-kiln__done-body { margin-inline: auto; }
[data-design="a"] .kc-gallery__spec { margin-inline: auto; }
[data-design="a"] .kc-about__body { margin-inline: auto; }

/* Phase-3.4 hero visibility floor (forge_assemble) */
[data-design="a"] [data-mf-role="hero"] :is(h1,h2,p,.headline,.subtitle,.proof,[class*="headline"],[class*="subtitle"],[class*="proof"]),
[data-design="a"] [data-mf-role="cta"] { opacity: 1 !important; }
