:root {
  --bg:#080B0A; --graphite:#111613; --graphite-2:#151C18; --steel:#7F8A84;
  --text:#F5F7F6; --accent:#00D66B; --muted:rgba(245,247,246,.62);
  --muted-strong:rgba(245,247,246,.80); --line:rgba(245,247,246,.12);
  --line-soft:rgba(245,247,246,.07); --shell:1220px; --radius-lg:32px; --radius-md:22px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{min-width:320px;margin:0;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
a{color:inherit} ::selection{background:var(--accent);color:#06100A}
.shell{width:min(calc(100% - 48px),var(--shell));margin-inline:auto}
.ambient{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.ambient::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 48% 30%,transparent 0 28%,rgba(8,11,10,.35) 65%,var(--bg) 100%)}
.ambient__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(245,247,246,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(245,247,246,.025) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.65) 55%,transparent 92%)}
.ambient__glow{position:absolute;border-radius:50%;background:var(--accent);filter:blur(130px)}
.ambient__glow--one{width:44vw;height:44vw;min-width:480px;min-height:480px;right:-18vw;top:-18vw;opacity:.11}
.ambient__glow--two{width:38vw;height:38vw;min-width:440px;min-height:440px;left:-24vw;top:52vh;opacity:.045}
.site-header,main,.site-footer{position:relative;z-index:1}
.site-header{min-height:94px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:36px;border-bottom:1px solid var(--line-soft)}
.brand{display:inline-flex;align-items:center;width:178px;text-decoration:none}.brand-lockup{display:block;width:100%;height:auto}
.site-nav{display:flex;justify-content:center;gap:28px}.site-nav a{color:var(--muted);text-decoration:none;font-size:13px;transition:color .2s ease}.site-nav a:hover{color:var(--text)}
.header-cta{display:inline-flex;align-items:center;gap:9px;padding:11px 15px;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:12px;color:var(--muted-strong);background:rgba(8,11,10,.62)}
.eyebrow{margin:0 0 22px;color:rgba(245,247,246,.48);font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.18em}
h1,h2,h3,p{margin-top:0}
.hero{min-height:calc(100svh - 94px);padding:clamp(58px,6.5vw,92px) 0 clamp(64px,7vw,96px);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);align-items:center;gap:clamp(54px,8vw,106px)}
.hero__copy{max-width:800px} h1{max-width:900px;margin-bottom:30px;font-size:clamp(58px,7.7vw,112px);line-height:.92;letter-spacing:-.035em;font-weight:730} h1 .accent{display:block;color:var(--accent)}
.hero__lead{max-width:760px;margin-bottom:34px;color:var(--muted-strong);font-size:clamp(18px,2vw,24px);line-height:1.55;letter-spacing:-.022em}
.hero__actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 18px;border-radius:999px;text-decoration:none;font-size:13px;font-weight:650}
.button--primary{color:#06110A;background:var(--accent);border:1px solid var(--accent)}.button--ghost{color:var(--muted-strong);border:1px solid var(--line);background:rgba(245,247,246,.025)}
.hero__status{display:flex;align-items:center;gap:11px;margin-top:28px;color:var(--muted);font-size:12px}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 6px rgba(0,214,107,.08)}
.hero__visual{display:flex;justify-content:flex-end}
.system-card{position:relative;width:min(100%,450px);aspect-ratio:.86;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(145deg,rgba(245,247,246,.055),rgba(245,247,246,.01)),rgba(17,22,19,.46);box-shadow:0 42px 110px rgba(0,0,0,.38)}
.system-card::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,214,107,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,214,107,.03) 1px,transparent 1px);background-size:52px 52px}
.system-card__topline,.system-card__footer{position:absolute;left:24px;right:24px;z-index:2;display:flex;justify-content:space-between;align-items:center;font-family:ui-monospace,Consolas,monospace;font-size:10px;letter-spacing:.14em;color:rgba(245,247,246,.42)}
.system-card__topline{top:22px}.system-card__footer{bottom:22px}.system-card__axis{position:absolute;background:rgba(245,247,246,.09)}.system-card__axis--x{left:8%;right:8%;top:50%;height:1px}.system-card__axis--y{top:8%;bottom:8%;left:50%;width:1px}
.system-card__center{position:absolute;inset:0;display:grid;place-items:center}.system-ring{position:absolute;border:1px solid rgba(0,214,107,.15);border-radius:50%}.system-ring--outer{width:66%;aspect-ratio:1}.system-ring--inner{width:43%;aspect-ratio:1;border-color:rgba(245,247,246,.13)}
.brand-symbol-image{width:46%;height:auto;object-fit:contain;filter:none}.node{position:absolute;width:7px;height:7px;border:1px solid rgba(0,214,107,.8);background:var(--graphite);transform:rotate(45deg)}.node--a{left:17%;top:34%}.node--b{right:18%;top:27%}.node--c{left:26%;bottom:19%}.node--d{right:23%;bottom:25%}
.services{padding:clamp(64px,7vw,104px) 0;border-top:1px solid var(--line-soft)}.section-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:48px;align-items:end;margin-bottom:38px}
.section-head h2,.approach h2,.contact-card h2{margin-bottom:0;font-size:clamp(42px,5.6vw,78px);line-height:.98;letter-spacing:-.055em;font-weight:700}.section-head__lead{max-width:520px;margin:0;color:var(--muted);font-size:16px;line-height:1.65}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-card{min-height:330px;padding:30px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(150deg,rgba(245,247,246,.04),rgba(245,247,246,.012));position:relative;overflow:hidden}
.service-card--wide{grid-column:span 2;min-height:360px}.service-card--accent{border-color:rgba(0,214,107,.26);background:linear-gradient(145deg,rgba(0,214,107,.055),rgba(245,247,246,.014))}
.service-card__meta{display:flex;justify-content:space-between;gap:20px;margin-bottom:auto;color:rgba(245,247,246,.38);font-family:ui-monospace,Consolas,monospace;font-size:10px;letter-spacing:.16em}.service-card h3{max-width:760px;margin:54px 0 18px;font-size:clamp(25px,3.2vw,40px);line-height:1.06;letter-spacing:-.045em;font-weight:650}.service-card p{max-width:760px;margin:0;color:var(--muted);font-size:15px;line-height:1.67}
.service-card__tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.service-card__tags span{border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:10px;color:rgba(245,247,246,.52);text-transform:uppercase}.service-card__signal{display:flex;align-items:flex-end;gap:6px;height:40px;margin-top:30px}.service-card__signal span{width:3px;border-radius:99px;background:var(--accent)}.service-card__signal span:nth-child(1){height:10px}.service-card__signal span:nth-child(2){height:27px}.service-card__signal span:nth-child(3){height:17px}.service-card__signal span:nth-child(4){height:34px}.service-card__signal span:nth-child(5){height:13px}.service-card__signal span:nth-child(6){height:23px}
.approach{padding:clamp(66px,7.5vw,108px) 0;border-top:1px solid var(--line-soft)}.approach__rail{display:flex;align-items:center;gap:13px;margin-bottom:44px;overflow:hidden;color:rgba(245,247,246,.33);font-family:ui-monospace,Consolas,monospace;font-size:9px;letter-spacing:.16em;white-space:nowrap}.approach__rail i{width:100%;min-width:44px;height:1px;background:linear-gradient(90deg,var(--line),rgba(0,214,107,.55))}
.approach__content{max-width:1050px}.approach__lead{max-width:780px;margin:24px 0 40px;color:var(--muted-strong);font-size:clamp(18px,2.2vw,24px);line-height:1.56}.approach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.approach-item{padding:26px 0 8px;border-top:1px solid var(--line)}.approach-item__index{display:inline-block;margin-bottom:34px;color:var(--accent);font-family:ui-monospace,Consolas,monospace;font-size:11px}.approach-item h3{margin-bottom:12px;font-size:20px}.approach-item p{margin:0;color:var(--muted);font-size:14px;line-height:1.64}
.contact{padding:clamp(66px,7.5vw,108px) 0 56px;border-top:1px solid var(--line-soft)}.contact-card{position:relative;overflow:hidden;padding:clamp(34px,5.4vw,70px);border:1px solid rgba(0,214,107,.22);border-radius:34px;background:linear-gradient(135deg,rgba(0,214,107,.065),rgba(245,247,246,.018) 45%,rgba(17,22,19,.58));box-shadow:0 44px 130px rgba(0,0,0,.26)}
.contact-card__top{position:relative;z-index:2;display:flex;justify-content:space-between;gap:20px}.contact-card__availability{display:inline-flex;align-items:center;gap:9px;color:var(--muted);font-size:11px}.contact-card__availability i{width:7px;height:7px;border-radius:50%;background:var(--accent)}
.contact-card h2{position:relative;z-index:2;max-width:920px;margin-top:36px}.contact-card h2 span{color:var(--accent)}.contact-card__lead{position:relative;z-index:2;max-width:790px;margin:26px 0 44px;color:var(--muted-strong);font-size:18px;line-height:1.62}
.contact-links{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:920px}.contact-link{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:8px 20px;padding:22px 24px;border:1px solid var(--line);border-radius:18px;text-decoration:none;background:rgba(8,11,10,.34)}.contact-link__label{color:rgba(245,247,246,.45);font-family:ui-monospace,Consolas,monospace;font-size:10px;text-transform:uppercase}.contact-link__value{grid-column:1;font-size:clamp(17px,2vw,23px);overflow-wrap:anywhere}.contact-link__arrow{grid-column:2;grid-row:1/3;align-self:center;color:var(--accent);font-size:22px}
.contact-card__note{position:relative;z-index:2;max-width:730px;margin:28px 0 0;color:rgba(245,247,246,.43);font-size:12px;line-height:1.6}.contact-card__mark{position:absolute;right:4%;bottom:-18%;width:min(30vw,330px);opacity:.045}.contact-card__mark img{width:100%}
.site-footer{min-height:110px;display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line-soft);color:rgba(245,247,246,.4);font-size:11px}.site-footer div{display:flex;align-items:baseline;gap:10px}.site-footer strong{color:var(--text);letter-spacing:.13em;font-size:12px}
@media(max-width:960px){.site-header{grid-template-columns:auto 1fr}.site-nav{display:none}.header-cta{justify-self:end}.hero{grid-template-columns:1fr;min-height:auto;padding-top:88px}.hero__visual{justify-content:flex-start}.system-card{width:min(100%,520px)}.section-head{grid-template-columns:1fr;gap:24px}.approach-grid{grid-template-columns:1fr}.contact-links{grid-template-columns:1fr}}
@media(max-width:640px){.shell{width:min(calc(100% - 28px),var(--shell))}.site-header{min-height:78px}.brand{width:145px}.header-cta{padding:9px 12px;font-size:11px}.hero{padding:60px 0 72px;gap:46px}h1{font-size:clamp(48px,15.5vw,74px);line-height:.94;letter-spacing:-.025em}.hero__lead{font-size:17px}.hero__actions{flex-direction:column}.button{width:100%}.services,.approach{padding:68px 0}.section-head{margin-bottom:34px}.section-head h2,.approach h2,.contact-card h2{font-size:clamp(39px,11.5vw,58px)}.service-grid{grid-template-columns:1fr}.service-card,.service-card--wide{grid-column:auto;min-height:300px;padding:24px}.service-card h3{margin-top:48px;font-size:29px}.approach__rail{margin-bottom:48px}.contact{padding:68px 0 44px}.contact-card{padding:28px 22px 30px;border-radius:24px}.contact-card__lead{font-size:16px}.contact-link{padding:19px 18px}.site-footer{min-height:96px;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* v0.4.1 refinement */
.capability-rail{
  position:relative;z-index:1;
  min-height:72px;
  display:flex;align-items:center;gap:14px;
  border-top:1px solid var(--line-soft);
  border-bottom:1px solid var(--line-soft);
  overflow:hidden;
  color:rgba(245,247,246,.34);
  font-family:ui-monospace,Consolas,monospace;
  font-size:9px;letter-spacing:.17em;white-space:nowrap
}
.capability-rail i{
  flex:1 1 54px;min-width:30px;height:1px;
  background:linear-gradient(90deg,var(--line),rgba(0,214,107,.42))
}

.service-card{
  transition:border-color .18s ease, transform .18s ease, background .18s ease
}
@media (hover:hover){
  .service-card:hover{
    transform:translateY(-2px);
    border-color:rgba(245,247,246,.2);
    background:linear-gradient(150deg,rgba(245,247,246,.055),rgba(245,247,246,.015))
  }
  .service-card--accent:hover{border-color:rgba(0,214,107,.42)}
  .contact-link:hover{border-color:rgba(0,214,107,.34)}
  .header-cta:hover,.button--ghost:hover{border-color:rgba(245,247,246,.24)}
}

.start{
  padding:clamp(66px,7.5vw,108px) 0;
  border-top:1px solid var(--line-soft)
}
.section-head--start{margin-bottom:34px}
.start-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px
}
.start-step{
  min-height:250px;
  padding:28px;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:linear-gradient(145deg,rgba(245,247,246,.032),rgba(245,247,246,.008))
}
.start-step__num{
  display:inline-block;margin-bottom:54px;
  color:var(--accent);
  font-family:ui-monospace,Consolas,monospace;
  font-size:10px;letter-spacing:.16em
}
.start-step h3{
  margin:0 0 13px;
  font-size:22px;
  letter-spacing:-.03em
}
.start-step p{
  margin:0;color:var(--muted);
  font-size:14px;line-height:1.66
}

.contact-card::after{
  content:"";
  position:absolute;
  left:-10%;right:-10%;bottom:-120px;
  height:180px;
  background:radial-gradient(ellipse at center,rgba(0,214,107,.16),transparent 66%);
  filter:blur(18px);
  pointer-events:none
}

@media(max-width:960px){
  .start-grid{grid-template-columns:1fr}
  .start-step{min-height:auto}
  .start-step__num{margin-bottom:34px}
}
@media(max-width:640px){
  .capability-rail{
    width:100%;padding-inline:14px;min-height:62px;
    overflow-x:auto;scrollbar-width:none
  }
  .capability-rail::-webkit-scrollbar{display:none}
  .capability-rail i{flex:0 0 34px}
  .start{padding:68px 0}
  .start-step{padding:24px}
}


/* v0.4.3 — crisp vector TTAKT mark */
.brand-symbol-mark{
  width:46%;
  height:auto;
  overflow:visible;
  display:block;
  shape-rendering:geometricPrecision;
  filter:none;
}
.brand-symbol-mark__t{
  fill:#F5F7F6;
}
.brand-symbol-mark__corner{
  fill:#00D66B;
}
.contact-symbol-mark{
  width:100%;
  height:auto;
  display:block;
  color:#F5F7F6;
  shape-rendering:geometricPrecision;
  filter:none;
}


/* v0.4.6 — rigid logo-group centering
   The white T is centered in the target; the green corner moves with it as one mark. */
.brand-symbol-mark__group{
  transform-box:fill-box;
  transform-origin:center;
}


/* ==================================================================
   TTAKT MOTION SYSTEM v0.5.0 — experimental
   Progressive enhancement: the accepted v0.4.8 page remains static
   until JS adds .ttakt-motion to <html>.
   ================================================================== */

:root{
  --ttakt-energy:0;
  --ttakt-grid-shift:0px;
  --ttakt-field-x:0px;
  --ttakt-field-y:0px;
  --ttakt-pulse-y:50vh;
  --ttakt-contact-glow:0;
}

.ambient__grid{
  will-change:transform,opacity;
  transform:translate3d(0,var(--ttakt-grid-shift),0);
  transition:opacity .16s linear;
}
.ttakt-motion .ambient__grid{
  opacity:calc(.62 + (var(--ttakt-energy) * .26));
}
.ttakt-motion .ambient__glow--one{
  opacity:calc(.08 + (var(--ttakt-energy) * .07));
}

/* --- 1. SYSTEM ENTERS THE BEAT ----------------------------------- */
.ttakt-motion.ttakt-syncing .site-header{
  transform:translate3d(-4px,0,0);
}
.ttakt-motion.ttakt-syncing .hero__copy{
  transform:translate3d(3px,-2px,0);
}
.ttakt-motion.ttakt-syncing .system-ring--outer{
  transform:translate3d(8px,-5px,0) scale(.965);
}
.ttakt-motion.ttakt-syncing .system-ring--inner{
  transform:translate3d(-6px,7px,0) scale(1.025);
}
.ttakt-motion.ttakt-syncing .system-card__axis--x{
  transform:translate3d(-7px,4px,0);
}
.ttakt-motion.ttakt-syncing .system-card__axis--y{
  transform:translate3d(5px,-8px,0);
}
.ttakt-motion .site-header,
.ttakt-motion .hero__copy,
.ttakt-motion .system-ring,
.ttakt-motion .system-card__axis{
  transition:transform 900ms cubic-bezier(.2,.85,.24,1);
}
.ttakt-motion.ttakt-synced .site-header,
.ttakt-motion.ttakt-synced .hero__copy{
  transform:none;
}

.system-card__scan{
  position:absolute;
  z-index:5;
  left:7%;
  right:7%;
  top:15%;
  height:1px;
  opacity:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(0,214,107,.9),transparent);
  box-shadow:0 0 18px rgba(0,214,107,.34);
}
.ttakt-motion.ttakt-syncing .system-card__scan{
  opacity:1;
  animation:ttakt-sync-scan 1.22s cubic-bezier(.2,.75,.2,1) both;
}
@keyframes ttakt-sync-scan{
  0%{transform:translateY(0);opacity:0}
  14%{opacity:.82}
  88%{opacity:.56}
  100%{transform:translateY(340px);opacity:0}
}

/* --- 2. STABILIZED T / MOVING FIELD ------------------------------ */
.ttakt-motion [data-ttakt-stabilizer]::before{
  will-change:transform;
  transform:translate3d(calc(var(--ttakt-field-x) * .45),calc(var(--ttakt-field-y) * .45),0) scale(1.04);
  transition:transform 90ms linear;
}
.ttakt-motion .system-ring--outer{
  transform:translate3d(var(--ttakt-field-x),var(--ttakt-field-y),0);
}
.ttakt-motion .system-ring--inner{
  transform:translate3d(calc(var(--ttakt-field-x) * -.52),calc(var(--ttakt-field-y) * -.52),0);
}
.ttakt-motion .system-card__axis--x{
  transform:translate3d(calc(var(--ttakt-field-x) * -.42),calc(var(--ttakt-field-y) * .28),0);
}
.ttakt-motion .system-card__axis--y{
  transform:translate3d(calc(var(--ttakt-field-x) * .28),calc(var(--ttakt-field-y) * -.42),0);
}
.ttakt-motion .system-card__nodes{
  position:absolute;inset:0;
  transform:translate3d(calc(var(--ttakt-field-x) * .68),calc(var(--ttakt-field-y) * .68),0);
  transition:transform 80ms linear;
}
.ttakt-motion .brand-symbol-mark{
  /* Deliberately fixed: the field moves around the logo, not the logo itself. */
  transform:translate3d(0,0,0);
  filter:drop-shadow(0 0 calc(3px + (var(--ttakt-energy) * 8px)) rgba(0,214,107,.16));
  transition:filter .16s linear;
}

/* --- 3. SCROLL PULSE --------------------------------------------- */
.ttakt-pulse-layer{
  position:fixed;
  inset:0;
  z-index:20;
  pointer-events:none;
  overflow:hidden;
  opacity:0;
}
.ttakt-pulse-layer__beam,
.ttakt-pulse-layer__echo{
  position:absolute;
  left:-24vw;
  top:var(--ttakt-pulse-y);
  width:24vw;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,214,107,.15) 18%,#00D66B 72%,transparent);
  box-shadow:0 0 22px rgba(0,214,107,.46);
  transform:translate3d(-20vw,0,0);
}
.ttakt-pulse-layer__echo{
  height:7px;
  filter:blur(9px);
  opacity:.22;
}
.ttakt-pulse-layer.is-pulsing{
  opacity:1;
}
.ttakt-pulse-layer.is-pulsing .ttakt-pulse-layer__beam{
  animation:ttakt-section-pulse 760ms cubic-bezier(.2,.75,.2,1) both;
}
.ttakt-pulse-layer.is-pulsing .ttakt-pulse-layer__echo{
  animation:ttakt-section-pulse 900ms 55ms cubic-bezier(.2,.75,.2,1) both;
}
@keyframes ttakt-section-pulse{
  from{transform:translate3d(-20vw,0,0)}
  to{transform:translate3d(144vw,0,0)}
}

/* --- 4. SERVICE X-RAY — CARD-LOCAL ONLY -------------------------- */
.service-grid{position:relative}
.ttakt-motion .service-card{isolation:isolate}
.ttakt-motion .service-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:0;
  background:
    linear-gradient(rgba(0,214,107,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,214,107,.045) 1px,transparent 1px);
  background-size:24px 24px;
  transition:opacity 180ms ease;
}
.ttakt-motion .service-card.is-xray{
  border-color:rgba(0,214,107,.48);
  box-shadow:
    inset 0 0 0 1px rgba(0,214,107,.06),
    0 0 42px rgba(0,214,107,.05);
}
.ttakt-motion .service-card.is-xray::after{opacity:1}

/* --- 5. GLOBAL BEAT ---------------------------------------------- */
.ttakt-motion.ttakt-beat .status-dot,
.ttakt-motion.ttakt-beat .contact-card__availability i{
  animation:ttakt-dot-beat 520ms cubic-bezier(.16,.8,.2,1);
}
.ttakt-motion.ttakt-beat .system-ring--inner{
  animation:ttakt-ring-beat 520ms cubic-bezier(.16,.8,.2,1);
}
.ttakt-motion.ttakt-beat .service-card__signal span{
  animation:ttakt-signal-beat 520ms cubic-bezier(.16,.8,.2,1);
}
@keyframes ttakt-dot-beat{
  0%,100%{box-shadow:0 0 0 6px rgba(0,214,107,.08)}
  44%{box-shadow:0 0 0 13px rgba(0,214,107,.02),0 0 26px rgba(0,214,107,.46)}
}
@keyframes ttakt-ring-beat{
  0%,100%{border-color:rgba(245,247,246,.13)}
  44%{border-color:rgba(0,214,107,.68)}
}
@keyframes ttakt-signal-beat{
  0%,100%{filter:none}
  44%{filter:drop-shadow(0 0 5px rgba(0,214,107,.8));transform:scaleY(1.18)}
}

/* --- 6. CONTACT SIGNAL ------------------------------------------- */
.contact-card{position:relative}
.contact-signal{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  pointer-events:none;
  opacity:0;
  transition:opacity 160ms ease;
}
.contact-signal.is-active{opacity:1}
.contact-signal__path{
  fill:none;
  stroke:#00D66B;
  stroke-width:1.2;
  vector-effect:non-scaling-stroke;
  stroke-dasharray:8 7;
  filter:drop-shadow(0 0 5px rgba(0,214,107,.42));
  animation:ttakt-contact-flow 600ms linear infinite;
}
.contact-signal__source,
.contact-signal__target{
  fill:#00D66B;
  filter:drop-shadow(0 0 5px rgba(0,214,107,.6));
}
@keyframes ttakt-contact-flow{to{stroke-dashoffset:-30}}
.ttakt-motion .contact-link.is-signal-target{
  border-color:rgba(0,214,107,.48);
  background:rgba(0,214,107,.035);
}
.ttakt-motion .contact-card__mark{
  transform:scale(calc(1 + (var(--ttakt-contact-glow) * .02)));
  filter:drop-shadow(0 0 calc(var(--ttakt-contact-glow) * 18px) rgba(0,214,107,.22));
  transition:transform .2s ease,filter .2s ease;
}

/* --- 7. EASTER TRIGGER / TTAKT MODE ------------------------------ */
.ttakt-easter-trigger{
  position:absolute;
  z-index:10;
  border:0;
  padding:0;
  margin:0;
  width:19%;
  height:19%;
  left:57%;
  top:18%;
  background:transparent;
  cursor:pointer;
  border-radius:10px;
  -webkit-tap-highlight-color:transparent;
}
.ttakt-easter-trigger:focus-visible{
  outline:1px solid #00D66B;
  outline-offset:5px;
}
.ttakt-mode{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  background:rgba(4,7,5,.94);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.ttakt-mode__grid{
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(0,214,107,.075) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,214,107,.075) 1px,transparent 1px);
  background-size:42px 42px;
  transform:perspective(700px) rotateX(58deg) scale(1.7) translateY(12%);
  transform-origin:center bottom;
}
.ttakt-mode__content{
  position:relative;
  width:min(86vw,760px);
  text-align:center;
}
.ttakt-mode__kicker,
.ttakt-mode__footer{
  display:block;
  font-family:ui-monospace,Consolas,monospace;
  font-size:10px;
  letter-spacing:.18em;
  color:rgba(245,247,246,.42);
}
.ttakt-mode strong{
  display:block;
  margin:24px 0 28px;
  font-size:clamp(42px,8vw,94px);
  line-height:.92;
  letter-spacing:-.045em;
  color:#F5F7F6;
}
.ttakt-mode__meter{
  display:block;
  width:min(100%,520px);
  height:3px;
  margin:0 auto 26px;
  overflow:hidden;
  background:rgba(245,247,246,.09);
}
.ttakt-mode__meter i{
  display:block;
  width:100%;
  height:100%;
  background:#00D66B;
  transform-origin:left center;
  transform:scaleX(0);
}
.ttakt-mode-active .ttakt-mode{
  visibility:visible;
  animation:ttakt-mode-in 2.35s cubic-bezier(.18,.78,.2,1) both;
}
.ttakt-mode-active .ttakt-mode__meter i{
  animation:ttakt-meter 1.25s .34s cubic-bezier(.18,.78,.2,1) both;
}
.ttakt-mode-active .ambient__grid{
  opacity:1 !important;
}
@keyframes ttakt-meter{to{transform:scaleX(1)}}
@keyframes ttakt-mode-in{
  0%{opacity:0}
  10%,82%{opacity:1}
  100%{opacity:0}
}

/* --- 8. SECTION REVEAL + SCROLL SEQUENCER ------------------------ */
.ttakt-motion .ttakt-section .section-head,
.ttakt-motion .ttakt-section .approach__content,
.ttakt-motion .ttakt-section .start-grid,
.ttakt-motion .ttakt-section .contact-card{
  transition:transform 620ms cubic-bezier(.2,.8,.2,1),opacity 620ms ease;
}
.ttakt-motion .ttakt-section:not(.is-seen) .section-head,
.ttakt-motion .ttakt-section:not(.is-seen) .approach__content,
.ttakt-motion .ttakt-section:not(.is-seen) .start-grid,
.ttakt-motion .ttakt-section:not(.is-seen) .contact-card{
  opacity:.72;
  transform:translateY(14px);
}
.ttakt-motion .capability-rail{
  transform:translate3d(calc(var(--ttakt-energy) * -8px),0,0);
}

/* Mobile tuning */
@media(max-width:640px){
  .ttakt-easter-trigger{width:24%;height:22%;left:56%;top:16%}
  .ttakt-pulse-layer__beam,.ttakt-pulse-layer__echo{width:38vw;left:-38vw}
}

/* Motion accessibility */
@media(prefers-reduced-motion:reduce){
  .ttakt-pulse-layer,
  .contact-signal,
  .system-card__scan,
  .ttakt-mode{display:none !important}

  .ttakt-motion *,
  .ttakt-motion *::before,
  .ttakt-motion *::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }

  .ttakt-motion [data-ttakt-stabilizer]::before,
  .ttakt-motion .system-ring,
  .ttakt-motion .system-card__axis,
  .ttakt-motion .system-card__nodes,
  .ttakt-motion .ambient__grid{
    transform:none !important;
  }
}


/* TTAKT INTAKE v1 / PUBLIC UI v0.6.0 */
.intake{position:relative;overflow:hidden;border:1px solid rgba(245,247,246,.13);border-radius:30px;padding:clamp(26px,4vw,58px);background:radial-gradient(circle at 88% 12%,rgba(0,214,107,.075),transparent 27%),linear-gradient(145deg,rgba(245,247,246,.025),rgba(245,247,246,.008))}
.intake__ambient{position:absolute;inset:0;pointer-events:none;overflow:hidden}.intake__ambient span{position:absolute;border:1px solid rgba(0,214,107,.09);border-radius:50%}.intake__ambient span:nth-child(1){width:410px;height:410px;right:-175px;top:-190px}.intake__ambient span:nth-child(2){width:290px;height:290px;right:-115px;top:-130px}.intake__ambient span:nth-child(3){width:170px;height:170px;right:-55px;top:-70px}
.intake__head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:28px}.intake__head h2{margin:13px 0 0;font-size:clamp(38px,5vw,72px);line-height:.96;letter-spacing:-.045em}.intake__head h2 span{color:#00D66B}.intake__status{display:flex;gap:10px;align-items:center;margin-top:8px;font-family:ui-monospace,Consolas,monospace;font-size:10px;letter-spacing:.13em;color:rgba(245,247,246,.5)}.intake__status i{display:block;width:7px;height:7px;border-radius:50%;background:#00D66B;box-shadow:0 0 0 6px rgba(0,214,107,.08)}
.intake__lead{position:relative;max-width:760px;margin:26px 0 0;color:rgba(245,247,246,.64);font-size:17px;line-height:1.7}.intake__workspace{position:relative;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:22px;margin-top:42px}.intake-form,.intake-console{border:1px solid rgba(245,247,246,.105);border-radius:22px;background:rgba(8,11,10,.72);backdrop-filter:blur(14px)}.intake-form{padding:clamp(18px,3vw,32px)}
.intake-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding-bottom:24px;border-bottom:1px solid rgba(245,247,246,.08)}.intake-progress__step{-webkit-tap-highlight-color:transparent;appearance:none;border:0;background:transparent;color:rgba(245,247,246,.32);text-align:left;padding:0;cursor:pointer}.intake-progress__step:disabled{cursor:default}.intake-progress__step span{display:block;font:10px/1 ui-monospace,Consolas,monospace;letter-spacing:.12em}.intake-progress__step b{display:block;margin-top:8px;font-size:11px;font-weight:600;white-space:nowrap}.intake-progress__step::after{content:"";display:block;height:2px;margin-top:11px;background:rgba(245,247,246,.08)}.intake-progress__step.is-complete{color:rgba(245,247,246,.58)}.intake-progress__step.is-complete::after{background:rgba(0,214,107,.46)}.intake-progress__step.is-active{color:#F5F7F6}.intake-progress__step.is-active::after{background:#00D66B;box-shadow:0 0 12px rgba(0,214,107,.25)}
.intake-step{padding-top:29px;animation:intake-step-in .34s cubic-bezier(.2,.8,.2,1) both}.intake-step[hidden]{display:none}@keyframes intake-step-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.intake-step__code{font:10px/1 ui-monospace,Consolas,monospace;letter-spacing:.15em;color:#00D66B}.intake-step h3{margin:13px 0 8px;font-size:clamp(25px,3vw,36px);letter-spacing:-.03em}.intake-step>p{margin:0 0 25px;color:rgba(245,247,246,.53);line-height:1.55}
.intake-field{position:relative;display:block;margin-top:18px}.intake-field__label,.intake-choice-block__label{display:block;margin-bottom:9px;font-size:11px;font-weight:650;letter-spacing:.04em;color:rgba(245,247,246,.63)}.intake-field textarea,.intake-field input,.intake-field select{width:100%;box-sizing:border-box;border:1px solid rgba(245,247,246,.12);border-radius:14px;padding:15px 16px;background:rgba(245,247,246,.025);color:#F5F7F6;font:inherit;line-height:1.5;outline:none;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.intake-field textarea{resize:vertical;min-height:105px}.intake-field--large textarea{min-height:170px}.intake-field input::placeholder,.intake-field textarea::placeholder{color:rgba(245,247,246,.25)}.intake-field textarea:focus,.intake-field input:focus,.intake-field select:focus{border-color:rgba(0,214,107,.62);background:rgba(0,214,107,.025);box-shadow:0 0 0 3px rgba(0,214,107,.06)}.intake-field select{color-scheme:dark}.intake-field__meta{position:absolute;right:12px;bottom:9px;font:9px/1 ui-monospace,Consolas,monospace;color:rgba(245,247,246,.28)}
.intake-classifier{margin-top:14px;padding:14px 15px;border-left:2px solid #00D66B;background:rgba(0,214,107,.035)}.intake-classifier__label{display:block;font:9px/1 ui-monospace,Consolas,monospace;letter-spacing:.13em;color:rgba(0,214,107,.72)}.intake-classifier strong{display:block;margin-top:7px;font-size:13px;font-weight:600}.intake-classifier small{display:block;margin-top:5px;font-size:10px;color:rgba(245,247,246,.32)}
.intake-choice-block{margin-top:23px}.intake-chips{display:flex;flex-wrap:wrap;gap:8px}.intake-chips button{appearance:none;border:1px solid rgba(245,247,246,.12);border-radius:999px;padding:9px 12px;background:rgba(245,247,246,.018);color:rgba(245,247,246,.66);font:inherit;font-size:12px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:.16s ease}.intake-chips button:hover{border-color:rgba(0,214,107,.34);color:#F5F7F6}.intake-chips button.is-selected{border-color:#00D66B;background:rgba(0,214,107,.08);color:#F5F7F6}.intake-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.intake-consent{display:flex;gap:11px;align-items:flex-start;margin-top:22px;color:rgba(245,247,246,.52);font-size:12px;line-height:1.5;cursor:pointer}.intake-consent input{margin-top:3px;accent-color:#00D66B}.intake-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.intake-review{display:grid;gap:8px}.intake-review__row{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid rgba(245,247,246,.065)}.intake-review__row span{font:9px/1.3 ui-monospace,Consolas,monospace;letter-spacing:.1em;color:rgba(245,247,246,.33)}.intake-review__row strong{font-size:12px;line-height:1.55;font-weight:520;white-space:pre-wrap}
.intake-delivery-contract{display:flex;flex-wrap:wrap;gap:9px 15px;margin-top:22px;padding:14px;border:1px solid rgba(0,214,107,.13);border-radius:13px;background:rgba(0,214,107,.025)}.intake-delivery-contract>span{width:100%;font:9px/1 ui-monospace,Consolas,monospace;letter-spacing:.13em;color:#00D66B}.intake-delivery-contract div{display:flex;gap:6px;align-items:center;font-size:11px;color:rgba(245,247,246,.58)}.intake-delivery-contract div i{width:5px;height:5px;border-radius:50%;background:#00D66B}.intake-delivery-contract small{width:100%;color:rgba(245,247,246,.32);line-height:1.45}
.intake-form__footer{display:flex;align-items:center;gap:10px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(245,247,246,.08)}.intake-form__footer-spacer{flex:1}.intake-error{margin:16px 0 0;padding:11px 13px;border-left:2px solid #ff7d67;background:rgba(255,90,70,.05);color:#ffb4a8;font-size:12px}
.intake-console{position:sticky;top:92px;align-self:start;padding:19px;min-height:420px;overflow:hidden}.intake-console::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,214,107,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,214,107,.035) 1px,transparent 1px);background-size:27px 27px;mask-image:linear-gradient(to bottom,#000,transparent 82%);pointer-events:none}.intake-console__top{position:relative;display:flex;justify-content:space-between;font:8px/1 ui-monospace,Consolas,monospace;letter-spacing:.12em;color:rgba(245,247,246,.32)}.intake-console__signal{position:relative;width:150px;height:150px;margin:28px auto 21px;display:grid;place-items:center}.intake-console__signal svg{width:66px;position:relative;z-index:2}.intake-console__reticle{position:absolute;inset:0;border:1px solid rgba(0,214,107,.2);border-radius:50%;transition:transform .28s ease,border-color .28s ease}.intake-console__reticle::before,.intake-console__reticle::after{content:"";position:absolute;inset:19%;border:1px solid rgba(245,247,246,.09);border-radius:50%}.intake-console__reticle::after{inset:38%;border-color:rgba(0,214,107,.3)}
.intake-console__summary{position:relative;margin:0;display:grid;gap:10px}.intake-console__summary div{display:flex;justify-content:space-between;gap:15px;padding-bottom:9px;border-bottom:1px solid rgba(245,247,246,.055)}.intake-console__summary dt{font-size:9px;color:rgba(245,247,246,.3)}.intake-console__summary dd{margin:0;text-align:right;font-size:10px;color:rgba(245,247,246,.67)}.intake-console__meter{position:relative;height:2px;margin-top:23px;background:rgba(245,247,246,.08);overflow:hidden}.intake-console__meter i{display:block;height:100%;width:0;background:#00D66B;transition:width .32s cubic-bezier(.2,.8,.2,1)}.intake-console>small{position:relative;display:block;margin-top:9px;color:rgba(245,247,246,.27);font-size:9px;line-height:1.45}.intake.is-processing .intake-console__reticle{animation:intake-reticle-process .75s linear infinite;border-color:#00D66B}@keyframes intake-reticle-process{to{transform:rotate(360deg)}}
.intake-success{position:relative;min-height:520px;margin-top:42px;border:1px solid rgba(0,214,107,.18);border-radius:22px;background:rgba(0,214,107,.025);display:grid;place-items:center;align-content:center;text-align:center;padding:38px;overflow:hidden}.intake-success[hidden]{display:none}.intake-success__pulse{position:absolute;width:120px;height:120px;border:1px solid rgba(0,214,107,.55);border-radius:50%;animation:intake-success-pulse 1.8s ease-out infinite}@keyframes intake-success-pulse{0%{transform:scale(.5);opacity:.75}100%{transform:scale(5);opacity:0}}.intake-success__mark{position:relative;width:94px;height:94px;display:grid;place-items:center;margin-bottom:20px}.intake-success__mark svg{width:70px}.intake-success__kicker{position:relative;font:10px/1 ui-monospace,Consolas,monospace;letter-spacing:.18em;color:#00D66B}.intake-success strong{position:relative;margin-top:14px;font-size:clamp(30px,5vw,58px);letter-spacing:-.04em}.intake-success p{position:relative;max-width:580px;margin:14px auto 26px;color:rgba(245,247,246,.53);line-height:1.6}.intake-success .button{position:relative}.intake.is-success .intake__workspace{display:none}.intake.is-success>.intake__lead{display:none}.intake.is-success .intake__head{opacity:.35}
@media(max-width:900px){.intake__workspace{grid-template-columns:1fr}.intake-console{position:relative;top:auto;min-height:0;order:-1}.intake-console__signal{width:105px;height:105px;margin:17px auto}.intake-console__signal svg{width:48px}}
@media(max-width:640px){.intake{padding:23px 15px;border-radius:22px}.intake__head{display:block}.intake__status{margin-top:17px}.intake__lead{font-size:14px}.intake__workspace{margin-top:27px}.intake-form{padding:15px}.intake-progress{overflow-x:auto;gap:14px}.intake-progress__step{min-width:58px}.intake-progress__step b{font-size:9px}.intake-fields-grid{grid-template-columns:1fr}.intake-review__row{grid-template-columns:88px 1fr}.intake-form__footer{flex-wrap:wrap}.intake-form__footer-spacer{display:none}.intake-form__footer .button{flex:1}}
@media(prefers-reduced-motion:reduce){.intake-step,.intake-success__pulse,.intake.is-processing .intake-console__reticle{animation:none!important}}


/* ==================================================================
   TTAKT Intake visual/mobile corrective v0.6.1
   ================================================================== */
.ttakt-text-brand{
  color:#F5F7F6;
  white-space:nowrap;
}
.ttakt-text-brand__first{
  color:#00D66B;
}

/* CSS grid/flex items must be allowed to shrink inside the Intake shell. */
.intake,
.intake__workspace,
.intake__workspace > *,
.intake-form,
.intake-console,
.intake-step,
.intake-review,
.intake-review__row,
.intake-field{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}

.intake-form,
.intake-console{
  width:100%;
}

.intake-form textarea,
.intake-form input,
.intake-form select,
.intake-form button{
  max-width:100%;
  box-sizing:border-box;
}

/* hidden="" must win over the generic .button display rule. */
.intake-back[hidden],
.intake-next[hidden],
.intake-submit[hidden]{
  display:none !important;
}

.intake-console__top{
  min-width:0;
  gap:12px;
  flex-wrap:wrap;
}
.intake-console__top > span{
  min-width:0;
  overflow-wrap:anywhere;
}
.intake-console__top > span:last-child{
  margin-left:auto;
  text-align:right;
}

.intake-console__summary dd,
.intake-review__row strong{
  min-width:0;
  overflow-wrap:anywhere;
  word-break:break-word;
}

@media(max-width:640px){
  .intake-form__footer{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
    gap:10px;
  }
  .intake-form__footer-spacer{
    display:none;
  }
  .intake-form__footer .button{
    width:100%;
    min-width:0;
    flex:none;
  }
  .intake-progress{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
  }
}


/* ==================================================================
   TTAKT Public v0.6.2 — brand/status/marquee corrective
   ================================================================== */

/* Status indicator must stay a true circle in flex layouts. */
.hero__status .status-dot{
  width:7px;
  height:7px;
  min-width:7px;
  min-height:7px;
  flex:0 0 7px;
  aspect-ratio:1 / 1;
  border-radius:50%;
}

/*
  Canonical textual TTAKT treatment:
  first T = Signal Green, TAKT = white.
  !important is deliberate: it must override parent accent rules such as
  .intake__head h2 span { color: ... }.
*/
.ttakt-text-brand{
  color:#F5F7F6 !important;
}
.ttakt-text-brand > .ttakt-text-brand__first{
  color:#00D66B !important;
}
.intake__head h2 .ttakt-text-brand{
  color:#F5F7F6 !important;
}
.intake__head h2 .ttakt-text-brand > .ttakt-text-brand__first{
  color:#00D66B !important;
}

/* Running capability rail / seamless CSS-only marquee. */
.capability-rail{
  display:block;
  min-height:72px;
  overflow:hidden;
  position:relative;
}
.capability-rail__track{
  display:flex;
  align-items:center;
  width:max-content;
  min-height:72px;
  will-change:transform;
  animation:ttakt-capability-marquee 28s linear infinite;
}
.capability-rail__sequence{
  display:flex;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
  min-height:72px;
  padding-right:14px;
  color:rgba(245,247,246,.34);
  font-family:ui-monospace,Consolas,monospace;
  font-size:9px;
  letter-spacing:.17em;
  white-space:nowrap;
}
.capability-rail__sequence span{
  flex:0 0 auto;
}
.capability-rail__sequence i{
  flex:0 0 clamp(42px,7vw,96px);
  width:clamp(42px,7vw,96px);
  min-width:42px;
  height:1px;
  background:linear-gradient(90deg,var(--line),rgba(0,214,107,.42));
}
@keyframes ttakt-capability-marquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media (hover:hover){
  .capability-rail:hover .capability-rail__track{
    animation-play-state:paused;
  }
}
@media (prefers-reduced-motion:reduce){
  .capability-rail__track{
    animation:none;
    transform:none;
  }
  .capability-rail__sequence[aria-hidden="true"]{
    display:none;
  }
}


/* ==================================================================
   TTAKT Public v0.6.3 — Intake adaptive UX + custom channel select
   ================================================================== */

.ttakt-text-brand--headline{
  display:inline-block;
  margin-top:.02em;
}

/* Custom dropdown: consistent dark UI on Windows/macOS/mobile Chromium. */
.intake-select{
  position:relative;
  width:100%;
  min-width:0;
}
.intake-select__trigger{
  width:100%;
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  border:1px solid rgba(245,247,246,.12);
  border-radius:14px;
  background:rgba(245,247,246,.025);
  color:#F5F7F6;
  font:inherit;
  text-align:left;
  cursor:pointer;
  outline:none;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.intake-select__trigger:hover,
.intake-select.is-open .intake-select__trigger,
.intake-select__trigger:focus-visible{
  border-color:rgba(0,214,107,.62);
  background:rgba(0,214,107,.03);
  box-shadow:0 0 0 3px rgba(0,214,107,.06);
}
.intake-select__trigger svg{
  width:16px;
  height:16px;
  flex:0 0 16px;
  color:rgba(245,247,246,.65);
  transition:transform .16s ease;
}
.intake-select.is-open .intake-select__trigger svg{
  transform:rotate(180deg);
}
.intake-select__menu{
  position:absolute;
  z-index:50;
  left:0;
  right:0;
  top:calc(100% + 7px);
  padding:6px;
  border:1px solid rgba(0,214,107,.28);
  border-radius:14px;
  background:#0b100e;
  box-shadow:0 18px 48px rgba(0,0,0,.48);
}
.intake-select__menu[hidden]{
  display:none!important;
}
.intake-select__menu button{
  width:100%;
  display:flex;
  align-items:center;
  min-height:42px;
  padding:10px 12px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:rgba(245,247,246,.72);
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.intake-select__menu button:hover,
.intake-select__menu button:focus-visible{
  background:rgba(245,247,246,.055);
  color:#F5F7F6;
  outline:none;
}
.intake-select__menu button[aria-selected="true"]{
  background:rgba(0,214,107,.10);
  color:#00D66B;
}

/* Context assistant is active on every stage after initial classification. */
.intake-context-guide{
  margin:0 0 22px;
  padding:13px 15px;
  border-left:2px solid rgba(0,214,107,.72);
  background:rgba(0,214,107,.026);
}
.intake-context-guide span{
  display:block;
  margin-bottom:7px;
  font:9px/1 ui-monospace,Consolas,monospace;
  letter-spacing:.13em;
  color:rgba(0,214,107,.70);
  text-transform:uppercase;
}
.intake-context-guide strong{
  display:block;
  color:rgba(245,247,246,.66);
  font-size:12px;
  font-weight:520;
  line-height:1.55;
}

/* Review no longer exposes internal notification topology. */
.intake-step[data-step="5"] .intake-review{
  margin-bottom:2px;
}

@media(max-width:640px){
  .intake-select__menu{
    position:absolute;
  }
}


/* ==================================================================
   TTAKT Public v0.7.0 — Candidate 2 / Situations
   Purpose: client self-recognition, not repetition of Services/Approach/Start
   ================================================================== */

.situations{
  padding:clamp(70px,8vw,116px) 0;
  border-top:1px solid var(--line-soft)
}
.situations__head h2{
  margin-bottom:0;
  font-size:clamp(42px,5.7vw,80px);
  line-height:.98;
  letter-spacing:-.055em;
  font-weight:700
}
.situation-board{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px
}
.situation-card{
  position:relative;
  overflow:hidden;
  min-height:330px;
  padding:25px 27px 27px;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:
    linear-gradient(145deg,rgba(245,247,246,.028),rgba(245,247,246,.008)),
    rgba(8,11,10,.38)
}
.situation-card::after{
  content:"";
  position:absolute;
  right:-110px;
  bottom:-155px;
  width:330px;
  height:330px;
  border:1px solid rgba(245,247,246,.035);
  border-radius:50%;
  box-shadow:
    0 0 0 44px rgba(245,247,246,.012),
    0 0 0 88px rgba(245,247,246,.008);
  pointer-events:none
}
.situation-card--accent{
  border-color:rgba(0,214,107,.22);
  background:
    linear-gradient(145deg,rgba(0,214,107,.055),rgba(245,247,246,.01) 68%),
    rgba(8,11,10,.42)
}
.situation-card__top{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(245,247,246,.075);
  color:rgba(245,247,246,.36);
  font:9px/1 ui-monospace,Consolas,monospace;
  letter-spacing:.14em
}
.situation-card__index{
  color:rgba(0,214,107,.76)
}


.situation-card h3{
  position:relative;
  z-index:2;
  max-width:520px;
  margin:54px 0 13px;
  font-size:clamp(24px,2.7vw,36px);
  line-height:1.04;
  letter-spacing:-.045em
}
.situation-card p{
  position:relative;
  z-index:2;
  max-width:580px;
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.68
}
.situations__match{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  margin-top:14px;
  padding:24px 27px;
  border:1px solid rgba(0,214,107,.2);
  border-radius:var(--radius-md);
  background:
    linear-gradient(90deg,rgba(0,214,107,.055),transparent 62%),
    rgba(8,11,10,.34)
}
.situations__match>div{
  min-width:0
}
.situations__match-code{
  display:block;
  margin-bottom:13px;
  color:rgba(0,214,107,.72);
  font:9px/1 ui-monospace,Consolas,monospace;
  letter-spacing:.15em
}
.situations__match strong{
  display:block;
  margin-bottom:6px;
  font-size:20px;
  letter-spacing:-.025em
}
.situations__match p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.55
}
.situations__cta{
  flex:0 0 auto;
  white-space:nowrap
}

.ttakt-motion .situations:not(.is-seen) .situation-card,
.ttakt-motion .situations:not(.is-seen) .situations__match{
  opacity:0;
  transform:translate3d(0,18px,0)
}
.ttakt-motion .situations.is-seen .situation-card{
  animation:ttakt-situation-reveal 700ms cubic-bezier(.2,.75,.2,1) both
}
.ttakt-motion .situations.is-seen .situation-card:nth-child(2){animation-delay:70ms}
.ttakt-motion .situations.is-seen .situation-card:nth-child(3){animation-delay:120ms}
.ttakt-motion .situations.is-seen .situation-card:nth-child(4){animation-delay:170ms}
.ttakt-motion .situations.is-seen .situations__match{
  animation:ttakt-situation-reveal 760ms 210ms cubic-bezier(.2,.75,.2,1) both
}
@keyframes ttakt-situation-reveal{
  from{opacity:0;transform:translate3d(0,18px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}

@media(hover:hover){
  .situation-card{
    transition:border-color .18s ease,transform .18s ease,background .18s ease
  }
  .situation-card:hover{
    transform:translateY(-2px);
    border-color:rgba(0,214,107,.26)
  }
}

@media(max-width:780px){
  .situation-board{
    grid-template-columns:1fr
  }
  .situation-card{
    min-height:285px
  }
  .situations__match{
    align-items:flex-start;
    flex-direction:column
  }
}
@media(max-width:640px){
  .situations{
    padding:68px 0
  }
  .situations__head h2{
    font-size:clamp(39px,11.2vw,58px)
  }
  .situation-card{
    min-height:auto;
    padding:22px
  }
  .situation-card h3{
    margin-top:38px;
    font-size:clamp(27px,8vw,36px)
  }
  .situations__match{
    padding:22px
  }
  .situations__cta{
    width:100%;
    justify-content:center
  }
}
@media(prefers-reduced-motion:reduce){
  .ttakt-motion .situations:not(.is-seen) .situation-card,
  .ttakt-motion .situations:not(.is-seen) .situations__match{
    opacity:1;
    transform:none
  }
  .ttakt-motion .situations.is-seen .situation-card,
  .ttakt-motion .situations.is-seen .situations__match{
    animation:none
  }
}


/* ==================================================================
   TTAKT Public v0.8.0 — Candidate 1 / Projects
   Function: proof through a real working system, not another services block.
   ================================================================== */

.projects{
  padding:clamp(72px,8.2vw,118px) 0;
  border-top:1px solid var(--line-soft)
}
.projects__head h2{
  margin-bottom:0;
  font-size:clamp(42px,5.7vw,80px);
  line-height:.98;
  letter-spacing:-.055em;
  font-weight:700
}
.projects__head h2 span{color:var(--accent)}

.project-case{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);
  gap:14px
}
.project-case__copy,
.project-map{
  min-height:620px;
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  background:
    linear-gradient(145deg,rgba(245,247,246,.035),rgba(245,247,246,.008)),
    rgba(8,11,10,.42)
}
.project-case__copy{
  display:flex;
  flex-direction:column;
  padding:30px
}
.project-case__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-bottom:19px;
  border-bottom:1px solid var(--line-soft);
  color:rgba(245,247,246,.36);
  font:9px/1 ui-monospace,Consolas,monospace;
  letter-spacing:.15em
}
.project-case__state{
  display:inline-flex;
  align-items:center;
  gap:8px
}
.project-case__state i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 5px rgba(0,214,107,.06)
}
.project-case__type{
  margin:66px 0 13px;
  color:rgba(245,247,246,.45);
  font:10px/1.4 ui-monospace,Consolas,monospace;
  letter-spacing:.13em;
  text-transform:uppercase
}
.project-case__copy h3{
  max-width:620px;
  margin:0 0 24px;
  font-size:clamp(42px,5vw,74px);
  line-height:.94;
  letter-spacing:-.055em;
  font-weight:700
}
.project-case__lead{
  max-width:610px;
  margin:0;
  color:var(--muted-strong);
  font-size:17px;
  line-height:1.62
}
.project-case__tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:28px 0 0
}
.project-case__tags span{
  padding:7px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  color:rgba(245,247,246,.5);
  font:9px/1 ui-monospace,Consolas,monospace;
  letter-spacing:.11em
}
.project-case__result{
  margin-top:auto;
  padding-top:28px;
  border-top:1px solid var(--line-soft)
}
.project-case__result span{
  display:block;
  margin-bottom:11px;
  color:rgba(0,214,107,.7);
  font:9px/1 ui-monospace,Consolas,monospace;
  letter-spacing:.15em
}
.project-case__result strong{
  display:block;
  max-width:590px;
  font-size:20px;
  line-height:1.36;
  letter-spacing:-.025em
}

.project-map{
  position:relative;
  overflow:hidden;
  padding:24px;
  border-color:rgba(0,214,107,.20);
  background:
    linear-gradient(145deg,rgba(0,214,107,.04),rgba(245,247,246,.008) 52%),
    rgba(8,11,10,.52)
}
.project-map::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(245,247,246,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(245,247,246,.018) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.72) 68%,transparent 100%)
}
.project-map__top,
.project-map__footer{
  position:relative;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  color:rgba(245,247,246,.36);
  font:9px/1 ui-monospace,Consolas,monospace;
  letter-spacing:.14em
}
.project-map__top{
  padding-bottom:18px;
  border-bottom:1px solid var(--line-soft)
}
.project-map__footer{
  padding-top:18px;
  border-top:1px solid var(--line-soft)
}
.project-map__ok{color:rgba(0,214,107,.68)}

.project-map__canvas{
  position:relative;
  z-index:2;
  min-height:510px;
  margin:8px 0
}
.project-map__links{
  position:absolute;
  z-index:1;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none
}
.project-map__links--mobile{display:none}
.project-map__links path{
  fill:none;
  stroke:rgba(245,247,246,.18);
  stroke-width:.46;
  vector-effect:non-scaling-stroke;
  stroke-linecap:square;
  stroke-linejoin:round
}
.project-map__links circle{
  fill:var(--accent);
  opacity:.62;
  filter:drop-shadow(0 0 5px rgba(0,214,107,.30))
}

.project-node{
  position:absolute;
  z-index:3;
  min-width:136px;
  padding:13px 14px 12px;
  border:1px solid rgba(245,247,246,.13);
  border-radius:14px;
  background:rgba(8,11,10,.88);
  box-shadow:0 14px 38px rgba(0,0,0,.18)
}
.project-node>span{
  display:block;
  margin-bottom:10px;
  color:rgba(0,214,107,.65);
  font:8px/1 ui-monospace,Consolas,monospace;
  letter-spacing:.14em
}
.project-node strong{
  display:block;
  margin-bottom:5px;
  font-size:15px;
  letter-spacing:-.02em
}
.project-node small{
  display:block;
  color:rgba(245,247,246,.40);
  font-size:10px;
  line-height:1.35
}
.project-node--client{left:5%;top:9%}
.project-node--core{
  left:50%;
  top:35%;
  transform:translate(-50%,-50%);
  min-width:156px;
  border-color:rgba(0,214,107,.34);
  box-shadow:0 0 0 8px rgba(0,214,107,.028),0 18px 46px rgba(0,0,0,.24)
}
.project-node--pay{right:4%;top:10%}
.project-node--account{left:4%;top:49%}
.project-node--operator{right:4%;top:48%}
.project-node--delivery{left:16%;bottom:7%}
.project-node--notify{right:12%;bottom:7%}

  48%{transform:scale(1);opacity:.82}
}

.project-proof{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:20px
}
.project-proof article{
  min-height:205px;
  padding:25px 26px;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:linear-gradient(145deg,rgba(245,247,246,.026),rgba(245,247,246,.006))
}
.project-proof article>span{
  display:block;
  margin-bottom:38px;
  color:rgba(0,214,107,.66);
  font:9px/1 ui-monospace,Consolas,monospace;
  letter-spacing:.14em
}
.project-proof strong{
  display:block;
  margin-bottom:10px;
  font-size:18px;
  line-height:1.3;
  letter-spacing:-.025em
}
.project-proof p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.62
}

.ttakt-motion .projects:not(.is-seen) .project-case,
.ttakt-motion .projects:not(.is-seen) .project-proof{
  opacity:0;
  transform:translate3d(0,20px,0)
}
.ttakt-motion .projects.is-seen .project-case{
  animation:ttakt-project-reveal 760ms cubic-bezier(.2,.75,.2,1) both
}
.ttakt-motion .projects.is-seen .project-proof{
  animation:ttakt-project-reveal 820ms 120ms cubic-bezier(.2,.75,.2,1) both
}
@keyframes ttakt-project-reveal{
  from{opacity:0;transform:translate3d(0,20px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}

@media(hover:hover){
  .project-proof article{
    transition:border-color .18s ease,transform .18s ease
  }
  .project-proof article:hover{
    transform:translateY(-2px);
    border-color:rgba(0,214,107,.24)
  }
}

@media(max-width:1050px){
  .project-case{
    grid-template-columns:1fr
  }
  .project-case__copy,
  .project-map{
    min-height:auto
  }
  .project-map__canvas{
    min-height:540px
  }
}
@media(max-width:780px){
  .project-proof{
    display:block;
    margin-top:30px
  }
  .project-proof article{
    min-height:auto;
    margin:0
  }
  .project-proof article + article{
    margin-top:30px
  }
  .project-proof article>span{
    margin-bottom:28px
  }
}
@media(max-width:640px){
  .projects{
    padding:68px 0
  }
  .project-map__links--desktop{display:none}
  .project-map__links--mobile{display:block}
  .project-proof{
    margin-top:30px
  }
  .project-proof article + article{
    margin-top:30px
  }
  .projects__head h2{
    font-size:clamp(39px,11.2vw,58px)
  }
  .project-case__copy,
  .project-map{
    padding:22px;
    border-radius:24px
  }
  .project-case__type{
    margin-top:46px
  }
  .project-case__copy h3{
    font-size:clamp(42px,12vw,62px)
  }
  .project-case__lead{
    font-size:15px
  }
  .project-case__result{
    margin-top:48px
  }
  .project-map__canvas{
    min-height:610px
  }
  .project-node{
    min-width:0;
    width:44%;
    padding:12px
  }
  .project-node--client{left:0;top:7%}
  .project-node--pay{right:0;top:7%}
  .project-node--core{
    left:50%;
    top:35%;
    width:54%;
  }
  .project-node--account{left:0;top:50%}
  .project-node--operator{right:0;top:50%}
  .project-node--delivery{left:0;bottom:4%}
  .project-node--notify{right:0;bottom:4%}
}
@media(prefers-reduced-motion:reduce){
  .ttakt-motion .projects:not(.is-seen) .project-case,
  .ttakt-motion .projects:not(.is-seen) .project-proof{
    opacity:1;
    transform:none
  }
  .ttakt-motion .projects.is-seen .project-case,
  .ttakt-motion .projects.is-seen .project-proof{
    animation:none
  }
}

/* ==================================================================
   TTAKT Public v0.9.0 — Candidate 1 refinement v1.0.34
   Scope: standalone refinement before production.
   Includes corrected top logo, hero status rows, system-loader,
   approach block, service-06 motion and clickable project case.
   ================================================================== */

/* --- Header brand: pure HTML/CSS lettermark ----------------------- */
.brand--lettermark{
  display:inline-flex;
  align-items:center;
  width:auto;
  min-width:178px;
  text-decoration:none
}
.brand-lettermark{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  line-height:1
}
.brand-lettermark__word{
  position:relative;
  display:flex;
  align-items:baseline;
  white-space:nowrap;
  font-family:Arial,Helvetica,sans-serif;
  font-size:35px;
  line-height:.88;
  font-weight:900;
  letter-spacing:.01em
}
.brand-lettermark__first{
  color:#00D66B
}
.brand-lettermark__rest{
  margin-left:.10em;
  color:#F5F7F6
}
.brand-lettermark__corner{
  position:absolute;
  top:-7px;
  right:-8px;
  width:12px;
  height:12px;
  border-top:5px solid #00D66B;
  border-right:5px solid #00D66B
}
.brand-lettermark__subtitle{
  margin-top:9px;
  padding-left:0;
  align-self:center;
  color:#00D66B;
  font-family:Arial,Helvetica,sans-serif;
  font-size:8px;
  line-height:1;
  font-weight:700;
  letter-spacing:.45em;
  white-space:nowrap
}
@media(max-width:640px){
  .brand--lettermark{min-width:145px}
  .brand-lettermark__word{font-size:31px}
  .brand-lettermark__corner{
    top:-6px;
    right:-7px;
    width:11px;
    height:11px;
    border-top-width:4px;
    border-right-width:4px
  }
  .brand-lettermark__subtitle{
    margin-top:8px;
    padding-left:0;
    align-self:center;
    font-size:7px;
    letter-spacing:.39em
  }
}

/* --- Hero status: exact shared text alignment ---------------------- */
.hero__status--two-lines{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  row-gap:7px;
  align-items:start
}
.hero__status--two-lines .hero-note--status,
.hero__status--two-lines .hero-note--live{
  grid-column:1;
  padding:0;
  margin:0
}
.hero__status--two-lines .hero-note--status{
  grid-row:1
}
.hero__status--two-lines .hero-note--live{
  grid-row:2
}
.project-case__state i{
  position:relative;
  animation:ttakt-live-pulse 2.1s ease-in-out infinite
}
@keyframes ttakt-live-pulse{
  0%,100%{
    box-shadow:0 0 0 0 rgba(0,214,107,.22),0 0 0 6px rgba(0,214,107,.08)
  }
  45%{
    box-shadow:0 0 0 8px rgba(0,214,107,0),0 0 0 6px rgba(0,214,107,.05),0 0 24px rgba(0,214,107,.34)
  }
}

/* --- SYSTEM 01 header and subtle loader --------------------------- */
.system-card__topline-brand{
  color:inherit !important
}
.system-card__topline-state{
  display:inline-flex;
  align-items:center;
  gap:8px
}
.system-card__topline-state i{
  width:8px;
  height:8px;
  display:block;
  flex:0 0 auto;
  border-radius:50%;
  background:#00D66B;
  box-shadow:0 0 0 4px rgba(0,214,107,.10),0 0 10px rgba(0,214,107,.34);
  animation:ttakt-live-pulse 2.2s ease-in-out infinite
}
.system-card__loader{
  position:absolute;
  left:50%;
  top:50%;
  z-index:0;
  width:56%;
  aspect-ratio:1/1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
  opacity:.88
}
.system-card__loader::before,
.system-card__loader::after,
.system-card__loader i{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%
}
.system-card__loader::before{
  border:1px dashed rgba(0,214,107,.18);
  animation:ttakt-orbit-slow 13s linear infinite
}
.system-card__loader::after{
  inset:7%;
  border-top:2px solid rgba(0,214,107,.52);
  border-right:2px solid transparent;
  border-bottom:2px solid transparent;
  border-left:2px solid transparent;
  animation:ttakt-orbit-fast 4.8s linear infinite
}
.system-card__loader i{
  inset:18%;
  border-top:1px solid rgba(245,247,246,.11);
  border-right:1px solid transparent;
  border-bottom:1px solid transparent;
  border-left:1px solid transparent;
  animation:ttakt-orbit-reverse 7.2s linear infinite
}
@keyframes ttakt-orbit-slow{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@keyframes ttakt-orbit-fast{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@keyframes ttakt-orbit-reverse{
  from{transform:rotate(360deg)}
  to{transform:rotate(0deg)}
}

.system-card__center .system-ring{z-index:1}
.system-card__center .brand-symbol-mark,
.system-card__center .ttakt-easter-trigger{z-index:2}

/* --- Approach Candidate 1 ---------------------------------------- */
.approach__content{
  max-width:none
}
.approach h2{
  max-width:1040px
}
.approach__lead{
  max-width:930px;
  margin:28px 0 48px;
  font-size:clamp(18px,2.05vw,24px);
  line-height:1.6
}
.approach-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px
}
.approach-item{
  position:relative;
  overflow:hidden;
  min-height:310px;
  padding:26px 28px 29px;
  display:flex;
  flex-direction:column;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:
    linear-gradient(145deg,rgba(245,247,246,.031),rgba(245,247,246,.008)),
    rgba(8,11,10,.36)
}
.approach-item__top{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(245,247,246,.075)
}
.approach-item__index{
  display:inline-block;
  margin:0;
  color:var(--accent);
  font-family:ui-monospace,Consolas,monospace;
  font-size:11px;
  line-height:1;
  letter-spacing:.14em
}
.approach-item__code{
  color:rgba(245,247,246,.34);
  font-family:ui-monospace,Consolas,monospace;
  font-size:9px;
  line-height:1;
  letter-spacing:.14em;
  text-align:right
}
.approach-item h3{
  position:relative;
  z-index:2;
  max-width:540px;
  margin:auto 0 14px;
  font-size:clamp(27px,3vw,39px);
  line-height:1.04;
  letter-spacing:-.045em;
  font-weight:650
}
.approach-item p{
  position:relative;
  z-index:2;
  max-width:590px;
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.7
}
.approach-item--accent{
  border-color:rgba(0,214,107,.27);
  background:
    linear-gradient(145deg,rgba(0,214,107,.058),rgba(245,247,246,.009) 70%),
    rgba(8,11,10,.4)
}
.approach-item--accent::after{
  content:"";
  position:absolute;
  right:-120px;
  bottom:-180px;
  width:360px;
  height:360px;
  border:1px solid rgba(0,214,107,.055);
  border-radius:50%;
  box-shadow:
    0 0 0 54px rgba(0,214,107,.014),
    0 0 0 108px rgba(0,214,107,.008);
  pointer-events:none
}
@media(hover:hover){
  .approach-item{
    transition:border-color .18s ease,transform .18s ease,background .18s ease
  }
  .approach-item:hover{
    transform:translateY(-2px);
    border-color:rgba(245,247,246,.19)
  }
  .approach-item--accent:hover{
    border-color:rgba(0,214,107,.42)
  }
}
@media(max-width:780px){
  .approach-grid{grid-template-columns:1fr}
  .approach-item{min-height:285px}
}
@media(max-width:640px){
  .approach__lead{
    margin:24px 0 38px;
    font-size:17px;
    line-height:1.62
  }
  .approach-grid{gap:14px}
  .approach-item{
    min-height:auto;
    padding:22px
  }
  .approach-item__top{
    margin-bottom:40px;
    padding-bottom:16px
  }
  .approach-item h3{
    margin:0 0 13px;
    font-size:clamp(27px,8vw,36px)
  }
  .approach-item p{
    font-size:14px;
    line-height:1.68
  }
}

/* --- Service 06 / technological telemetry scan -------------------- */
[data-ttakt-node="6"] .service-card__signal{
  position:relative;
  width:132px;
  height:46px;
  display:block;
  overflow:hidden
}
[data-ttakt-node="6"] .service-card__signal::before{
  content:"";
  position:absolute;
  left:2px;
  right:2px;
  top:10px;
  bottom:8px;
  opacity:.78;
  background:
    linear-gradient(rgba(0,214,107,.08),rgba(0,214,107,.08)) 0 50%/100% 1px no-repeat,
    repeating-linear-gradient(
      90deg,
      rgba(0,214,107,.10) 0 1px,
      transparent 1px 21px
    )
}
[data-ttakt-node="6"] .service-card__signal::after{
  content:"";
  position:absolute;
  left:3px;
  top:8px;
  width:2px;
  height:30px;
  border-radius:1px;
  background:#00D66B;
  box-shadow:
    0 0 8px rgba(0,214,107,.65),
    0 0 18px rgba(0,214,107,.28);
  animation:ttakt-service-telemetry-scan 6.4s cubic-bezier(.55,.08,.35,1) infinite
}
[data-ttakt-node="6"] .service-card__signal span{
  position:absolute;
  display:block;
  width:14px;
  height:4px;
  margin:0;
  border:0;
  border-radius:1px;
  background:rgba(0,214,107,.13);
  box-shadow:inset 0 0 0 1px rgba(0,214,107,.30);
  transform-origin:left center;
  animation:ttakt-service-telemetry-cell 6.4s ease-in-out infinite
}
[data-ttakt-node="6"] .service-card__signal span:nth-child(1){left:5px;top:25px;animation-delay:0s}
[data-ttakt-node="6"] .service-card__signal span:nth-child(2){left:26px;top:17px;animation-delay:.16s}
[data-ttakt-node="6"] .service-card__signal span:nth-child(3){left:47px;top:29px;animation-delay:.32s}
[data-ttakt-node="6"] .service-card__signal span:nth-child(4){left:68px;top:14px;animation-delay:.48s}
[data-ttakt-node="6"] .service-card__signal span:nth-child(5){left:89px;top:22px;animation-delay:.64s}
[data-ttakt-node="6"] .service-card__signal span:nth-child(6){left:110px;top:11px;animation-delay:.80s}
@keyframes ttakt-service-telemetry-scan{
  0%,8%{transform:translateX(0);opacity:0}
  13%{opacity:.9}
  76%{transform:translateX(118px);opacity:.95}
  82%{transform:translateX(124px);opacity:.18}
  86%,100%{transform:translateX(124px);opacity:0}
}
@keyframes ttakt-service-telemetry-cell{
  0%,100%{
    opacity:.34;
    transform:scaleX(.72);
    background:rgba(0,214,107,.10);
    box-shadow:inset 0 0 0 1px rgba(0,214,107,.24)
  }
  28%,54%{
    opacity:.96;
    transform:scaleX(1);
    background:rgba(0,214,107,.48);
    box-shadow:
      inset 0 0 0 1px rgba(0,214,107,.72),
      0 0 10px rgba(0,214,107,.16)
  }
  68%{
    opacity:.52;
    transform:scaleX(.86);
    background:rgba(0,214,107,.18)
  }
}

/* --- v1.0.35 mobile visual polish -------------------------------- */
.approach-title__accent,
.situations-title__accent{
  color:#00D66B
}

.site-footer__brand-mark{
  position:relative;
  display:inline-block;
  padding-right:7px
}
.site-footer__brand-corner{
  position:absolute;
  top:-4px;
  right:0;
  width:7px;
  height:7px;
  border-top:2px solid #00D66B;
  border-right:2px solid #00D66B;
  pointer-events:none
}

/* --- Project proof cards / visual-islands refinement v1.0.42 ----- */
/*
   V140 follows runtime diagnosis:
   actual mobile spacing is already applied correctly.
   The perceived merging is visual grouping, so stacked cards become
   narrower than the parent contour and receive stronger independent surfaces.
*/
#projects .project-proof{
  column-gap:24px;
  row-gap:24px;
  margin-top:24px
}
#projects .project-proof article{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:205px;
  padding:25px 26px;
  overflow:hidden;
  border:1px solid rgba(245,247,246,.20);
  border-radius:var(--radius-md);
  background:
    linear-gradient(145deg,rgba(245,247,246,.060),rgba(245,247,246,.014)),
    rgba(11,15,14,.78);
  box-shadow:
    0 16px 34px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(245,247,246,.028)
}
#projects .project-proof article::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(0,214,107,.025)
}
#projects .project-proof article>span{
  margin-bottom:0;
  padding-bottom:15px;
  border-bottom:1px solid rgba(245,247,246,.11)
}
#projects .project-proof strong{
  margin-top:26px;
  margin-bottom:10px;
  padding-top:0
}
#projects .project-proof p{
  margin:0
}

@media(max-width:780px){
  #projects .project-proof{
    display:block !important;
    margin-top:26px;
    row-gap:0 !important;
    column-gap:0 !important
  }
  #projects .project-proof article{
    width:auto !important;
    min-height:190px;
    margin-top:0 !important;
    margin-bottom:0 !important;
    margin-left:12px !important;
    margin-right:12px !important;
    padding:23px 24px
  }
  #projects .project-proof article + article{
    margin-top:32px !important
  }
  #projects .project-proof strong{
    margin-top:24px
  }
}

@media(max-width:640px){
  #projects .project-proof{
    margin-top:22px
  }
  #projects .project-proof article{
    width:auto !important;
    min-height:0;
    margin-left:10px !important;
    margin-right:10px !important;
    padding:20px;
    border-radius:24px
  }
  #projects .project-proof article + article{
    margin-top:30px !important
  }
  #projects .project-proof article>span{
    padding-bottom:14px
  }
  #projects .project-proof strong{
    margin-top:22px;
    margin-bottom:9px
  }
}

/* --- Project case: client logo + title link only ----------------- */
.project-case__brand-heading{
  max-width:none !important;
  margin:0 0 24px !important
}
.project-case__brand-link{
  display:inline-flex;
  align-items:center;
  gap:16px;
  width:fit-content;
  max-width:100%;
  color:inherit;
  text-decoration:none;
  -webkit-tap-highlight-color:transparent
}
.project-case__client-logo{
  flex:0 0 auto;
  width:104px;
  margin-top:0;
  line-height:0;
  opacity:.96;
  transition:opacity .18s ease,transform .18s ease
}
.project-case__client-logo img{
  display:block;
  width:100%;
  height:auto
}
.project-case__brand-name{
  min-width:0
}
.project-case__external-arrow{
  display:inline-block;
  margin-left:.10em;
  color:var(--accent);
  font-size:.60em;
  line-height:1;
  vertical-align:.22em;
  transition:transform .18s ease,opacity .18s ease
}
.project-case__brand-link:focus-visible{
  outline:1px solid rgba(0,214,107,.65);
  outline-offset:7px;
  border-radius:6px
}
@media(hover:hover){
  .project-case__brand-link:hover .project-case__external-arrow{
    transform:translate(2px,-2px)
  }
  .project-case__brand-link:hover .project-case__client-logo{
    opacity:.78;
    transform:translateY(-1px)
  }
}
@media(max-width:640px){
  .project-case__brand-link{
    gap:12px
  }
  .project-case__client-logo{
    width:90px;
    margin-top:0
  }
}


/* --- Block 07 / Intake exact refinement v1.0.22 ------------------ */
.contact-intake-refined-v122 #contact-title .contact-title__brand--white{
  display:inline-flex;
  align-items:baseline;
  color:#F5F7F6 !important
}
.contact-intake-refined-v122 #contact-title .contact-title__brand-first{
  color:#F5F7F6 !important
}
.contact-intake-refined-v122 #contact-title .contact-title__brand-rest{
  margin-left:.05em;
  color:#F5F7F6 !important
}

.contact-intake-refined-v122 .contact-mini-brand{
  display:inline-flex;
  align-items:center;
  white-space:nowrap
}
.contact-intake-refined-v122 .contact-mini-brand__word{
  display:inline-block;
  color:#F5F7F6
}
.contact-intake-refined-v122 .contact-mini-brand__suffix{
  color:inherit
}

.contact-intake-refined-v122 .intake__status--no-dot{
  display:block !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  gap:0 !important;
  text-align:left !important;
  padding-left:0 !important
}
.contact-intake-refined-v122 .intake__status--no-dot::before,
.contact-intake-refined-v122 .intake__status--no-dot::after{
  display:none !important;
  content:none !important
}
.contact-intake-refined-v122 .intake__status--no-dot span{
  margin:0 !important
}

.contact-intake-refined-v122 .intake-progress--fit-v122{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:8px !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow:visible !important;
  box-sizing:border-box !important
}
.contact-intake-refined-v122 .intake-progress--fit-v122 .intake-progress__step{
  min-width:0 !important;
  width:100% !important;
  max-width:100% !important;
  padding-left:0 !important;
  padding-right:0 !important;
  overflow:visible !important;
  box-sizing:border-box !important
}
.contact-intake-refined-v122 .intake-progress--fit-v122 .intake-progress__step span,
.contact-intake-refined-v122 .intake-progress--fit-v122 .intake-progress__step b{
  min-width:0 !important;
  max-width:100% !important;
  overflow:visible !important;
  text-overflow:clip !important;
  white-space:normal !important
}

@media(max-width:640px){
  .contact-intake-refined-v122 .intake-progress--fit-v122{
    gap:4px !important
  }
  .contact-intake-refined-v122 .intake-progress--fit-v122 .intake-progress__step span{
    font-size:10px !important;
    line-height:1.15 !important
  }
  .contact-intake-refined-v122 .intake-progress--fit-v122 .intake-progress__step b{
    font-size:8px !important;
    line-height:1.15 !important;
    letter-spacing:-.015em !important
  }
}

/* --- Reduced motion ----------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  .project-case__state i,
  .system-card__topline-state i,
  [data-ttakt-node="6"] .service-card__signal span,
  [data-ttakt-node="6"] .service-card__signal::after,
  .system-card__loader::before,
  .system-card__loader::after,
  .system-card__loader i{
    animation:none !important
  }
  .approach-item{
    transition:none !important
  }
  .project-case__client-logo,
  .project-case__external-arrow{
    transition:none !important
  }
}
