/* AILuce homepage experience — isolated from shared page styles. */
.home-main > :not(.home-hero):not(.home-film) { display: none; }
.home-hero > .hero-glow, .home-hero > .hero-grid { display: none; }

.home-main { --home-line: rgba(47,47,47,.12); --home-dark-line: rgba(223,227,231,.14); }
.home-section { padding-block: clamp(4.5rem,8vw,8rem); position: relative; overflow: hidden; }
.home-section-heading { max-width: 52rem; margin-bottom: clamp(2.25rem,5vw,4rem); }
.home-section-heading h2 { margin-block: .9rem 1.1rem; }
.home-section-heading > p:last-child { color: rgba(47,47,47,.68); max-width: 58ch; }
.dark .home-section-heading > p:last-child { color: rgba(223,227,231,.72); }
.home-kicker { display: flex; align-items: center; gap: .65rem; text-transform: uppercase; letter-spacing: .16em; font-size: .72rem; font-weight: 680; }
.home-kicker::before { content: ''; width: 20px; height: 2px; background: var(--teal); border-radius: 99px; }
.accent-dark { color: var(--teal-dark); }

/* Hero */
.home-hero { min-height: min(940px,100svh); display: grid; align-items: center; padding-block: clamp(7rem,13vh,10rem) clamp(3.5rem,7vh,6rem); position: relative; overflow: hidden; }
.home-hero::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(700px 500px at 78% 42%,rgba(88,194,176,.12),transparent 70%),linear-gradient(rgba(223,227,231,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(223,227,231,.025) 1px,transparent 1px); background-size: auto,48px 48px,48px 48px; mask-image: linear-gradient(to bottom,#000 55%,transparent); }
.home-hero-shell { display: grid; gap: clamp(2.5rem,6vw,6rem); align-items: center; position: relative; z-index: 1; }
.home-hero-copy { max-width: 640px; }
.home-hero-copy h1 { font-size: clamp(3rem,7vw,6.25rem); max-width: 10ch; margin-block: 1.15rem 1.35rem; }
.home-intro { color: rgba(223,227,231,.78); font-size: clamp(1.05rem,1rem + .35vw,1.25rem); max-width: 43ch; }
.home-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.25rem; margin-top: 2rem; }
.home-text-action { display: inline-flex; align-items: center; gap: .5rem; color: inherit; border: 0; border-bottom: 1px solid var(--teal); padding: .35rem 0; text-decoration: none; font-weight: 620; }
.home-text-action span { transition: transform .2s var(--ease); }
.home-text-action:hover span { transform: translateX(4px); }
.home-reassurance { color: rgba(223,227,231,.58); font-size: .82rem; margin-top: 1rem; }

.system-demo { min-width: 0; border: 1px solid var(--home-dark-line); background: rgba(20,20,20,.55); border-radius: 18px; overflow: hidden; box-shadow: 0 30px 90px rgba(0,0,0,.28); backdrop-filter: blur(10px); }
.system-demo-head { height: 48px; display: flex; align-items: center; justify-content: space-between; padding-inline: 1rem; border-bottom: 1px solid var(--home-dark-line); text-transform: uppercase; letter-spacing: .12em; font-size: .68rem; font-weight: 700; }
.system-demo-head > span { display: flex; align-items: center; gap: .5rem; }
.system-demo-head i { width: 7px; height: 7px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 0 5px rgba(88,194,176,.12); }
.system-pause { color: rgba(223,227,231,.62); font-size: .7rem; text-transform: uppercase; letter-spacing: .08em; }
.system-stage { position: relative; min-height: 400px; padding: 1.25rem 1.25rem 1rem; }
.system-rail { position: absolute; left: 39px; top: 48px; bottom: 66px; width: 1px; background: rgba(223,227,231,.13); }
.system-rail::after { content: ''; position: absolute; inset: 0; background: linear-gradient(var(--teal),transparent); transform-origin: top; animation: homeRail 6.5s ease-out both; }
.system-steps { list-style: none; display: grid; gap: .55rem; position: relative; }
.system-step { display: grid; grid-template-columns: 30px 1fr auto; align-items: center; gap: .8rem; min-height: 54px; padding: .55rem .75rem; border: 1px solid transparent; border-radius: 10px; opacity: .42; transform: translateY(6px); transition: opacity .3s,transform .3s,background .3s,border-color .3s; }
.system-step.is-active { opacity: 1; transform: none; background: rgba(88,194,176,.07); border-color: rgba(88,194,176,.28); }
.system-step.is-done { opacity: .76; transform: none; }
.system-node { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(223,227,231,.22); background: #292929; font-size: .72rem; }
.system-step.is-active .system-node,.system-step.is-done .system-node { color: var(--charcoal); background: var(--teal); border-color: var(--teal); }
.system-step strong { color: var(--white); font-size: .9rem; }
.system-step small { color: rgba(223,227,231,.55); font-size: .72rem; text-align: right; }
.system-receipt { margin-top: 1rem; border: 1px solid rgba(88,194,176,.25); background: rgba(88,194,176,.08); color: var(--teal); border-radius: 9px; padding: .7rem 1rem; font: 600 .78rem var(--font-body); }
.system-modes { display: flex; gap: .35rem; overflow-x: auto; padding: .8rem; border-top: 1px solid var(--home-dark-line); scrollbar-width: none; }
.system-modes::-webkit-scrollbar,.service-tabs::-webkit-scrollbar,.method-tabs::-webkit-scrollbar { display: none; }
.system-modes button { flex: 1 0 auto; color: rgba(223,227,231,.58); padding: .48rem .7rem; border-radius: 7px; font-size: .74rem; }
.system-modes button[aria-selected=true] { color: var(--charcoal); background: var(--teal); font-weight: 650; }
@keyframes homeRail { from{transform:scaleY(0)} to{transform:scaleY(1)} }

/* Transformation */
.transform-shell { border: 1px solid var(--home-line); border-radius: 18px; overflow: hidden; background: var(--white); box-shadow: 0 25px 70px rgba(47,47,47,.08); }
.transform-tabs { display: grid; grid-template-columns: repeat(3,1fr); border-bottom: 1px solid var(--home-line); }
.transform-tabs button { padding: 1rem; color: rgba(47,47,47,.55); border-right: 1px solid var(--home-line); text-align: left; font-weight: 600; }
.transform-tabs button:last-child { border-right: 0; }
.transform-tabs button span { display: block; color: var(--teal-dark); font-size: .68rem; letter-spacing: .12em; margin-bottom: .2rem; }
.transform-tabs button[aria-selected=true] { color: var(--charcoal); background: rgba(88,194,176,.08); box-shadow: inset 0 -2px var(--teal); }
.transform-canvas { min-height: 390px; padding: clamp(1.5rem,4vw,3.5rem); display: grid; align-items: center; }
.scatter-grid,.running-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; }
.scatter-card,.running-card { min-height: 150px; border: 1px solid var(--home-line); border-radius: 13px; padding: 1.15rem; display: flex; flex-direction: column; justify-content: space-between; }
.scatter-card:nth-child(2) { transform: translateY(22px) rotate(1deg); }
.scatter-card:nth-child(3) { transform: translateY(-12px) rotate(-1deg); }
.scatter-card span,.running-card span { color: rgba(47,47,47,.58); font-size: .76rem; text-transform: uppercase; letter-spacing: .08em; }
.scatter-card strong,.running-card strong { font: 560 1.2rem var(--font-display); }
.scatter-card small { color: #8a5d55; }
.architecture { display: grid; grid-template-columns: repeat(9,auto); align-items: center; justify-content: center; gap: .65rem; }
.architecture span { min-width: 110px; padding: 1rem .8rem; border: 1px solid rgba(88,194,176,.45); background: rgba(88,194,176,.07); border-radius: 10px; text-align: center; font-weight: 640; }
.architecture b { color: var(--teal-dark); }
.architecture .human { grid-column: 5; margin-top: 1rem; border-style: dashed; }
.running-card { border-color: rgba(88,194,176,.4); background: linear-gradient(145deg,rgba(88,194,176,.08),transparent); }
.running-card i { width: 30px; height: 30px; display: grid; place-items: center; background: var(--teal); border-radius: 50%; font-style: normal; }

/* Services */
.home-services::before,.home-proof::before { content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(700px 400px at 90% 20%,rgba(88,194,176,.1),transparent 70%); }
.home-services .container,.home-proof .container { position: relative; }
.service-switcher { border: 1px solid var(--home-dark-line); border-radius: 18px; overflow: hidden; background: rgba(255,255,255,.025); }
.service-tabs { display: flex; overflow-x: auto; border-bottom: 1px solid var(--home-dark-line); padding: .6rem; gap: .35rem; }
.service-tabs button { flex: 0 0 auto; padding: .65rem .9rem; color: rgba(223,227,231,.58); border-radius: 8px; font-size: .82rem; }
.service-tabs button[aria-selected=true] { background: var(--teal); color: var(--charcoal); font-weight: 650; }
.service-stage { display: grid; min-height: 460px; }
.service-copy { padding: clamp(1.75rem,4vw,3.5rem); align-self: center; }
.service-copy .home-kicker { color: var(--teal); }
.service-copy h3 { font-size: clamp(1.8rem,3vw,3rem); max-width: 12ch; margin-block: .85rem 1rem; }
.service-copy > p { color: rgba(223,227,231,.68); max-width: 40ch; }
.service-deliverables { display: flex; flex-wrap: wrap; gap: .55rem; margin-block: 1.5rem; }
.service-deliverables span { border: 1px solid var(--home-dark-line); padding: .35rem .6rem; border-radius: 99px; font-size: .7rem; color: rgba(223,227,231,.74); }
.service-visual { min-height: 360px; display: grid; place-items: center; padding: clamp(1rem,3vw,2.5rem); background: rgba(0,0,0,.13); border-top: 1px solid var(--home-dark-line); }
.flow-visual { width: 100%; display: grid; grid-template-columns: repeat(4,1fr); align-items: center; gap: .8rem; }
.flow-node { min-height: 100px; padding: 1rem; border: 1px solid var(--home-dark-line); border-radius: 12px; display: grid; place-items: center; text-align: center; color: rgba(223,227,231,.76); font-size: .85rem; position: relative; }
.flow-node::after { content:'→'; position:absolute;right:-1.05rem;color:var(--teal); }
.flow-node:last-child::after { display:none; }
.flow-node.active { border-color: var(--teal); background: rgba(88,194,176,.09); color: var(--white); }

/* Products */
.product-stage { display: grid; border: 1px solid var(--home-line); border-radius: 22px; overflow: hidden; margin-top: 2rem; background: var(--white); box-shadow: 0 30px 80px rgba(47,47,47,.08); }
.product-copy { padding: clamp(2rem,5vw,4.5rem); align-self: center; }
.product-copy h3 { font-size: clamp(2rem,4vw,3.75rem); margin-block: 1rem; max-width: 11ch; }
.product-copy > p:not(.product-label) { color: rgba(47,47,47,.66); max-width: 38ch; margin-bottom: 1.5rem; }
.product-label { display: flex; align-items: center; gap: .55rem; font-size: .72rem; font-weight: 680; letter-spacing: .11em; text-transform: uppercase; }
.product-label span { width: 8px; height: 8px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 0 5px rgba(88,194,176,.14); }
.demo-product-ui,.content-product-ui { margin: 0 clamp(1rem,3vw,2.5rem) clamp(1rem,3vw,2.5rem); border: 1px solid var(--home-line); border-radius: 14px; overflow: hidden; background: #f7f8f8; min-width: 0; }
.product-ui-bar { height: 42px; display: flex; align-items: center; gap: 6px; border-bottom: 1px solid var(--home-line); padding: 0 .8rem; }
.product-ui-bar span { width: 7px; height: 7px; border-radius: 50%; background: var(--gray); }
.product-ui-bar b { margin-left: auto; font-size: .62rem; color: rgba(47,47,47,.48); text-transform: uppercase; letter-spacing: .08em; }
.demo-product-grid { display: grid; grid-template-columns: 1.25fr 1fr; }
.demo-screen,.demo-conversation { min-height: 260px; padding: 1rem; }
.demo-screen { border-right: 1px solid var(--home-line); }
.demo-screen-nav { display: flex; justify-content: space-between; font-size: .73rem; font-weight: 650; }
.demo-screen-nav span { color: var(--teal-dark); }
.demo-architecture { display: grid; grid-template-columns: repeat(3,1fr); gap: .6rem; align-items: center; height: 200px; }
.demo-architecture i { display:block;height:46px;border:1px solid rgba(88,194,176,.4);background:rgba(88,194,176,.09);border-radius:8px; }
.demo-architecture strong { grid-column: 1/-1; text-align:center; font-size:.75rem;color:var(--teal-dark); }
.demo-conversation { display:flex;flex-direction:column;gap:.7rem; }
.demo-prompt,.demo-answer { max-width: 88%; padding: .65rem .8rem; border-radius: 10px; font-size: .78rem; }
.demo-prompt { background: var(--white); align-self:flex-start; }
.demo-answer { background:rgba(88,194,176,.16);align-self:flex-end; }
.demo-handoff { grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:.85rem 1rem;border-top:1px solid var(--home-line);font-size:.75rem; }
.demo-handoff span { color:var(--teal-dark);font-weight:700;text-transform:uppercase;letter-spacing:.08em; }
.demo-handoff small { color:rgba(47,47,47,.5); }
.demo-questions { display:flex;gap:.5rem;overflow-x:auto;padding:.8rem;border-top:1px solid var(--home-line); }
.demo-questions button { flex:0 0 auto;padding:.48rem .65rem;border:1px solid var(--home-line);background:var(--white);border-radius:8px;font-size:.72rem; }
.demo-questions button:hover,.demo-questions button:focus-visible { border-color:var(--teal); }
.content-stage { margin-top: clamp(3rem,7vw,6rem); }
.content-steps { display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--home-line); }
.content-steps button { padding:.85rem;color:rgba(47,47,47,.5);font-size:.75rem;border-right:1px solid var(--home-line); }
.content-steps button:last-child{border-right:0}.content-steps button[aria-selected=true]{color:var(--charcoal);background:rgba(88,194,176,.12);box-shadow:inset 0 -2px var(--teal)}
.content-canvas{min-height:310px;padding:clamp(1.25rem,3vw,2.5rem);display:grid;align-items:center}.content-board{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.content-card{min-height:150px;padding:1rem;border:1px solid var(--home-line);background:var(--white);border-radius:11px}.content-card span{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:var(--teal-dark);font-weight:700}.content-card strong{display:block;margin:.7rem 0;font-family:var(--font-display)}.content-meter{height:5px;background:var(--light);border-radius:9px;margin:.55rem 0;overflow:hidden}.content-meter i{display:block;height:100%;background:var(--teal);border-radius:inherit}.calendar-dots{display:grid;grid-template-columns:repeat(7,1fr);gap:.3rem;margin-top:1rem}.calendar-dots i{aspect-ratio:1;border-radius:4px;background:var(--light)}.calendar-dots i.live{background:var(--teal)}

/* Method */
.method-shell { border:1px solid var(--home-line);border-radius:18px;overflow:hidden;background:var(--white); }
.method-tabs { display:flex;overflow-x:auto;border-bottom:1px solid var(--home-line); }
.method-tabs button{flex:1 0 auto;padding:.85rem .75rem;color:rgba(47,47,47,.52);font-size:.75rem;border-right:1px solid var(--home-line)}.method-tabs button span{display:block;color:var(--teal-dark);font-size:.62rem}.method-tabs button[aria-selected=true]{color:var(--charcoal);background:rgba(88,194,176,.09);box-shadow:inset 0 -2px var(--teal)}
.method-artifact{min-height:390px;padding:clamp(1.5rem,4vw,3.5rem);display:grid;grid-template-columns:.65fr 1.35fr;gap:2rem;align-items:center}.artifact-copy h3{font-size:clamp(1.7rem,3vw,2.7rem);margin:.75rem 0}.artifact-copy p{color:rgba(47,47,47,.65)}.artifact-view{min-height:260px;border:1px solid var(--home-line);border-radius:13px;background:#f7f8f8;padding:1.25rem;display:grid;align-content:center;gap:.75rem}.artifact-row{display:grid;grid-template-columns:1fr auto 1fr;gap:.6rem;align-items:center}.artifact-row span{padding:.75rem;border:1px solid var(--home-line);background:var(--white);border-radius:8px;text-align:center;font-size:.78rem}.artifact-row b{color:var(--teal-dark)}.artifact-note{border-left:2px solid var(--teal);padding:.65rem .8rem;background:rgba(88,194,176,.08);font-size:.75rem}

/* Proof */
.proof-grid,.accountability-grid,.final-grid,.faq-layout{display:grid;gap:clamp(2.5rem,6vw,6rem);align-items:center}.proof-grid .home-section-heading,.accountability-grid .home-section-heading,.faq-layout .home-section-heading{margin-bottom:0}.proof-console{border:1px solid var(--home-dark-line);border-radius:16px;overflow:hidden;background:#252525}.proof-console-head{display:flex;justify-content:space-between;padding:.85rem 1rem;border-bottom:1px solid var(--home-dark-line);text-transform:uppercase;letter-spacing:.1em;font-size:.67rem}.proof-console-head i{font-style:normal;color:var(--teal)}.proof-flow{display:flex;align-items:center;justify-content:center;gap:.55rem;padding:2rem 1rem;border-bottom:1px solid var(--home-dark-line)}.proof-flow span{padding:.7rem;border:1px solid var(--home-dark-line);border-radius:8px;font-size:.72rem}.proof-flow b{color:var(--teal)}.proof-log{padding:.7rem}.proof-log p{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;padding:.65rem;border-bottom:1px solid rgba(223,227,231,.07);font:500 .72rem var(--font-body)}.proof-log time{color:rgba(223,227,231,.43)}.proof-log strong{color:var(--teal);font-size:.64rem}.proof-log p.error strong{color:#f3aa9f}.proof-console.is-failing{border-color:#b86d63}.proof-console.is-recovered{border-color:var(--teal)}

/* Accountability, FAQ and final */
.accountability-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}.accountability-flow div{position:relative;border:1px solid var(--home-line);border-radius:12px;padding:1rem;min-height:150px}.accountability-flow div::after{content:'→';position:absolute;right:-.7rem;top:50%;color:var(--teal-dark);z-index:2}.accountability-flow div:last-child::after{display:none}.accountability-flow span{display:block;color:var(--teal-dark);font-size:.68rem;font-weight:700}.accountability-flow strong{display:block;margin:.7rem 0;font-family:var(--font-display)}.accountability-flow small{color:rgba(47,47,47,.58)}
.faq-layout{align-items:start}.home-faq .faq-list{margin:0}.home-final{background:radial-gradient(700px 400px at 85% 50%,rgba(88,194,176,.13),transparent 70%),var(--charcoal)}.final-grid h2{font-size:clamp(2.4rem,5vw,4.6rem);max-width:12ch;margin-block:1rem}.final-grid>div>p:not(.home-kicker){color:rgba(223,227,231,.7);max-width:45ch}.final-queue{border:1px solid var(--home-dark-line);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.025)}.final-queue p{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:1rem;border-bottom:1px solid var(--home-dark-line);font-size:.82rem}.final-queue p:last-child{border-bottom:0}.final-queue i{width:13px;height:13px;border:1px solid rgba(223,227,231,.35);border-radius:50%}.final-queue b{color:rgba(223,227,231,.38);font-size:.64rem;text-transform:uppercase;letter-spacing:.08em}.final-queue.is-mapping p:first-child i{background:var(--teal);border-color:var(--teal);box-shadow:0 0 0 5px rgba(88,194,176,.12)}.final-queue.is-mapping p:first-child b{color:var(--teal)}

@media (min-width: 900px){
  .home-hero-shell{grid-template-columns:.9fr 1.1fr}.service-stage{grid-template-columns:.72fr 1.28fr}.service-visual{border-top:0;border-left:1px solid var(--home-dark-line)}.product-stage{grid-template-columns:.68fr 1.32fr}.product-copy{padding-right:2rem}.demo-product-ui,.content-product-ui{margin:2.5rem 2.5rem 2.5rem 0}.proof-grid,.accountability-grid,.final-grid{grid-template-columns:.9fr 1.1fr}.faq-layout{grid-template-columns:.65fr 1.35fr}
}
@media (max-width: 899px){
  .home-hero{min-height:auto}.home-hero-shell{max-width:760px}.home-hero-copy h1{max-width:11ch}.system-stage{min-height:370px}.scatter-grid,.running-grid{grid-template-columns:repeat(2,1fr)}.architecture{grid-template-columns:1fr auto 1fr}.architecture span{min-width:0}.architecture span:nth-of-type(n+3){margin-top:.5rem}.architecture .human{grid-column:1/-1}.flow-visual{grid-template-columns:repeat(2,1fr)}.flow-node:nth-child(2)::after{display:none}.method-artifact{grid-template-columns:1fr}.accountability-flow{grid-template-columns:repeat(2,1fr)}.accountability-flow div:nth-child(2)::after{display:none}
}
@media (max-width: 599px){
  .home-section{padding-block:4.5rem}.home-hero{padding-top:7rem}.home-hero-copy h1{font-size:clamp(2.75rem,14vw,4.1rem)}.home-actions{align-items:stretch}.home-actions .btn{width:100%}.home-text-action{width:max-content;max-width:100%}.system-stage{min-height:380px;padding:.9rem}.system-rail{left:27px}.system-step{grid-template-columns:28px 1fr;padding:.45rem .25rem}.system-step small{display:none}.system-modes button{flex:0 0 auto}.transform-tabs button{font-size:.72rem;padding:.8rem .55rem}.transform-tabs button span{font-size:.58rem}.transform-canvas{min-height:480px}.scatter-grid,.running-grid{grid-template-columns:1fr}.scatter-card,.running-card{min-height:90px}.scatter-card:nth-child(n){transform:none}.architecture{grid-template-columns:1fr}.architecture b{transform:rotate(90deg);text-align:center}.architecture .human{grid-column:1}.service-tabs{padding:.45rem}.service-stage{min-height:0}.flow-visual{grid-template-columns:1fr}.flow-node{min-height:72px}.flow-node::after{content:'↓';right:auto;bottom:-1.15rem}.flow-node:nth-child(2)::after{display:block}.demo-product-grid{grid-template-columns:1fr}.demo-screen{border-right:0;border-bottom:1px solid var(--home-line);min-height:210px}.demo-conversation{min-height:190px}.demo-handoff{grid-template-columns:1fr;gap:.2rem}.content-steps button{font-size:.68rem;padding:.75rem .4rem}.content-canvas{min-height:380px}.content-board{grid-template-columns:1fr}.content-card{min-height:90px}.method-tabs button{flex-basis:29%}.method-artifact{min-height:480px}.artifact-row{grid-template-columns:1fr}.artifact-row b{transform:rotate(90deg);text-align:center}.proof-flow{display:grid;grid-template-columns:1fr;}.proof-flow b{transform:rotate(90deg);text-align:center}.proof-log p{grid-template-columns:1fr auto}.proof-log time{grid-column:1/-1}.accountability-flow{grid-template-columns:1fr}.accountability-flow div{min-height:110px}.accountability-flow div::after{content:'↓';right:auto;left:50%;top:auto;bottom:-1rem}.accountability-flow div:nth-child(2)::after{display:block}.final-queue p{grid-template-columns:auto 1fr}.final-queue b{grid-column:2}
}
@media (prefers-reduced-motion:reduce){.system-rail::after{animation:none}.system-step{transition:none}.home-text-action span{transition:none}}

/* ========================================================================== 
   AILuce operating film
   ========================================================================== */
.home-page,.home-page button,.home-page input{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif}.home-page h1,.home-page h2,.home-page h3,.home-page .display{font-family:inherit;font-weight:650;letter-spacing:-.055em}.home-film{background:var(--white)}.film-scene{min-height:100svh;position:relative;overflow:hidden;display:grid;isolation:isolate}.film-scene.dark{background:#202121}.film-copy{position:absolute;z-index:5;left:max(5vw,calc((100vw - 1200px)/2));top:clamp(5rem,10vh,8rem);max-width:min(560px,48vw);pointer-events:none}.film-copy-right{left:auto;right:max(5vw,calc((100vw - 1200px)/2));text-align:right}.film-copy h2{font-size:clamp(3.2rem,7vw,7.5rem);line-height:.88;color:var(--charcoal)}.dark .film-copy h2{color:var(--white)}.film-copy h2 span{color:var(--teal-dark)}.dark .film-copy h2 span{color:var(--teal)}.film-index{font-size:.68rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--teal-dark);margin-bottom:1rem}.dark .film-index{color:var(--teal)}.film-canvas{position:absolute;inset:0;z-index:1}.film-path{fill:none;stroke:rgba(88,194,176,.25);stroke-width:2;stroke-dasharray:8 10}.film-scene.is-playing .film-path{animation:filmDash 8s linear infinite}@keyframes filmDash{to{stroke-dashoffset:-180}}

/* Orchestration */
.film-orchestration{min-height:115svh}.orchestration-canvas{top:13vh}.orchestration-map{position:absolute;width:min(92vw,1450px);height:auto;left:50%;bottom:-4%;transform:translateX(-50%)}.film-node rect,.voice-routing rect,.control-map rect{fill:#252727;stroke:rgba(223,227,231,.18);stroke-width:2}.film-node path,.film-node circle,.voice-routing path{fill:none;stroke:rgba(223,227,231,.65);stroke-width:2}.film-node text,.voice-routing text,.control-map text{fill:rgba(223,227,231,.55);font:700 14px -apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:.12em;text-anchor:middle}.film-core circle:first-child{fill:rgba(88,194,176,.08);stroke:rgba(88,194,176,.25)}.film-core circle:nth-child(2){fill:var(--teal);stroke:rgba(255,255,255,.35)}.film-core text{fill:#202121;font:700 13px -apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:.08em}.film-scene.is-playing .film-core circle:first-child{animation:coreBreath 2.4s ease-in-out 2}@keyframes coreBreath{50%{transform:scale(1.18);transform-origin:center;opacity:.6}}.signal{fill:var(--teal);opacity:0}.film-scene.is-playing .signal-a{animation:signalA 6s ease-in-out forwards}.film-scene.is-playing .signal-b{animation:signalB 6s 2.2s ease-in-out forwards}@keyframes signalA{0%{opacity:0;transform:translate(90px,360px)}10%{opacity:1}38%{transform:translate(410px,175px)}68%{transform:translate(700px,360px)}100%{opacity:1;transform:translate(1055px,185px)}}@keyframes signalB{0%{opacity:0;transform:translate(90px,360px)}10%{opacity:1}38%{transform:translate(410px,545px)}68%{transform:translate(700px,360px)}100%{opacity:1;transform:translate(1055px,535px)}}.calendar-day{fill:rgba(88,194,176,.15)!important;stroke:var(--teal)!important}.chart-fill{fill:rgba(88,194,176,.11)!important;stroke:none!important}.film-event-stack{position:absolute;right:max(4vw,calc((100vw - 1300px)/2));bottom:6vh;display:grid;gap:.45rem}.film-event-stack p{background:rgba(25,26,26,.85);border:1px solid rgba(223,227,231,.12);color:rgba(223,227,231,.4);padding:.65rem .9rem;border-radius:8px;font-size:.72rem;transform:translateX(20px);opacity:0}.film-scene.is-playing .film-event-stack p{animation:eventArrive .45s forwards}.film-scene.is-playing .film-event-stack p:nth-child(2){animation-delay:1.2s}.film-scene.is-playing .film-event-stack p:nth-child(3){animation-delay:2.3s}.film-scene.is-playing .film-event-stack p:nth-child(4){animation-delay:3.9s}.film-scene.is-playing .film-event-stack p:nth-child(5){animation-delay:5.2s}@keyframes eventArrive{to{opacity:1;transform:none;color:var(--teal);border-color:rgba(88,194,176,.35)}}

/* Voice */
.phone-system{position:absolute;left:7vw;top:28%;width:min(38vw,560px);height:56%;border:1px solid rgba(223,227,231,.15);border-radius:28px;background:#272929;box-shadow:0 35px 100px rgba(0,0,0,.3)}.phone-ring{height:42%;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid rgba(223,227,231,.1);position:relative}.phone-ring span{width:82px;height:82px;border-radius:50%;border:1px solid rgba(88,194,176,.45);background:rgba(88,194,176,.08)}.phone-ring i{position:absolute;width:82px;height:82px;border-radius:50%;border:1px solid var(--teal)}.film-scene.is-playing .phone-ring i{animation:ringCall 1.2s ease-out 3}@keyframes ringCall{to{transform:scale(1.7);opacity:0}}.phone-ring b{color:white;margin-top:1rem}.phone-ring small{color:rgba(223,227,231,.5)}.voice-wave{height:50px;display:flex;align-items:center;justify-content:center;gap:7px}.voice-wave i{width:4px;height:10px;border-radius:5px;background:var(--teal)}.film-scene.is-playing .voice-wave i{animation:voiceBars 1s ease-in-out infinite alternate}.voice-wave i:nth-child(3n){animation-delay:.2s}.voice-wave i:nth-child(2n){animation-delay:.4s}@keyframes voiceBars{to{height:38px}}.live-transcript{margin:0 1.2rem;border:1px solid rgba(223,227,231,.1);border-radius:12px;padding:1rem;min-height:92px}.live-transcript span{font-size:.6rem;color:var(--teal);letter-spacing:.14em}.live-transcript p{color:rgba(223,227,231,.78);font-size:.85rem;margin-top:.6rem}.voice-routing{position:absolute;width:52vw;right:2vw;bottom:7vh}.voice-routing text{text-anchor:start;font-size:12px}.voice-routing .route-status{fill:var(--teal);font-weight:500;letter-spacing:0}.film-scene.is-playing .voice-signal{animation:voiceRoute 5s 2s ease-in-out forwards}@keyframes voiceRoute{0%{opacity:0;transform:translate(50px,180px)}15%{opacity:1}55%{transform:translate(320px,180px)}100%{opacity:1;transform:translate(650px,90px)}}

/* CRM */
.crm-canvas{inset:24vh 4vw 5vh;background:#f7f8f8;border:1px solid var(--home-line);border-radius:22px;box-shadow:0 40px 100px rgba(47,47,47,.12);overflow:hidden}.crm-top{height:76px;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--home-line);font-weight:700}.crm-top>div{text-align:right}.crm-top b{display:block;font-size:1.35rem}.crm-top small{color:rgba(47,47,47,.45)}.crm-board{position:absolute;inset:76px 240px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--home-line)}.crm-column{padding:1rem;background:#f7f8f8}.crm-column header{display:flex;justify-content:space-between;font-size:.74rem;margin-bottom:1rem}.crm-column header b{background:var(--light);padding:.1rem .45rem;border-radius:99px}.crm-column article{padding:1rem;border:1px solid var(--home-line);border-radius:10px;background:white;margin-bottom:.7rem;box-shadow:0 7px 20px rgba(47,47,47,.05)}.crm-column article span,.crm-column article strong,.crm-column article small{display:block}.crm-column article span{font-size:.78rem;font-weight:650}.crm-column article strong{font-size:1.1rem;margin:.6rem 0}.crm-column article small{color:rgba(47,47,47,.5);font-size:.65rem}.deal-target{opacity:.18}.film-scene.is-playing .deal-moving{animation:dealMove 5s 1s ease-in-out forwards}.film-scene.is-playing .deal-target{animation:targetShow .3s 5.4s forwards}@keyframes dealMove{0%,25%{transform:none;opacity:1}75%,100%{transform:translateX(calc(200% + 2rem));opacity:0}}@keyframes targetShow{to{opacity:1;border-color:var(--teal)}}.crm-activity{position:absolute;right:0;top:76px;bottom:0;width:240px;background:white;border-left:1px solid var(--home-line);padding:1rem}.crm-activity span{font-size:.62rem;color:var(--teal-dark);letter-spacing:.13em;font-weight:700}.crm-activity p{padding:.8rem 0;border-bottom:1px solid var(--home-line);font-size:.73rem;opacity:.25}.film-scene.is-playing .crm-activity p{animation:activityOn .3s forwards}.film-scene.is-playing .crm-activity p:nth-child(2){animation-delay:1.3s}.film-scene.is-playing .crm-activity p:nth-child(3){animation-delay:2.5s}.film-scene.is-playing .crm-activity p:nth-child(4){animation-delay:4s}.film-scene.is-playing .crm-activity p:nth-child(5){animation-delay:5.5s}@keyframes activityOn{to{opacity:1;color:var(--teal-dark)}}

/* Build track */
.build-track{position:absolute;left:4vw;right:4vw;bottom:9vh;height:52%;display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.build-phase{border:1px solid rgba(223,227,231,.14);border-radius:18px;padding:1rem;background:rgba(255,255,255,.025);display:flex;flex-direction:column;justify-content:space-between;color:white;opacity:.25}.film-scene.is-playing .build-phase{animation:phaseOn .5s forwards}.film-scene.is-playing .build-phase:nth-child(2){animation-delay:1.1s}.film-scene.is-playing .build-phase:nth-child(3){animation-delay:2.2s}.film-scene.is-playing .build-phase:nth-child(4){animation-delay:3.3s}.film-scene.is-playing .build-phase:nth-child(5){animation-delay:4.4s}@keyframes phaseOn{to{opacity:1;border-color:rgba(88,194,176,.45)}}.build-phase>span{color:var(--teal);font-size:.7rem}.build-phase>strong{font-size:.8rem}.wireframe div{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.wireframe i{height:55px;border:1px solid rgba(223,227,231,.25)}.design div{display:grid;gap:.5rem}.design i{height:38px;border-radius:7px;background:rgba(88,194,176,.12);border:1px solid rgba(88,194,176,.25)}.code div{font-size:.72rem;color:var(--teal);display:grid}.deploy div{display:grid;place-items:center}.deploy b{width:70px;height:70px;border-radius:50%;border:2px solid var(--teal);position:relative}.deploy b::after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:var(--teal)}.deploy em{font-size:.65rem;color:var(--teal);font-style:normal;margin-top:.5rem}.analytics svg{width:100%}.analytics path{fill:none;stroke:var(--teal);stroke-width:4;stroke-dasharray:220;stroke-dashoffset:220}.film-scene.is-playing .analytics path{animation:graphGrow 1.2s 4.8s forwards}@keyframes graphGrow{to{stroke-dashoffset:0}}.build-progress{position:absolute;left:5vw;right:5vw;bottom:5vh;height:2px;background:rgba(223,227,231,.1)}.build-progress i{display:block;width:0;height:100%;background:var(--teal)}.film-scene.is-playing .build-progress i{animation:buildProgress 5.5s linear forwards}@keyframes buildProgress{to{width:100%}}

/* Content */
.idea-core{position:absolute;left:50%;top:56%;transform:translate(-50%,-50%);width:260px;min-height:150px;padding:1.3rem;border-radius:22px;background:#202121;color:white;box-shadow:0 25px 70px rgba(47,47,47,.2);z-index:3}.idea-core span{font-size:.6rem;color:var(--teal);letter-spacing:.13em}.idea-core strong{display:block;font-size:1.1rem;line-height:1.25;margin-top:.8rem}.idea-core i{position:absolute;inset:-12px;border:1px solid rgba(88,194,176,.35);border-radius:30px}.film-scene.is-playing .idea-core i{animation:ideaPulse 2s ease-out 2}@keyframes ideaPulse{50%{inset:-24px;opacity:.2}}.idea-paths{position:absolute;inset:10% 8%;width:84%;height:80%}.idea-paths path{fill:none;stroke:rgba(88,194,176,.35);stroke-width:2;stroke-dasharray:500;stroke-dashoffset:500}.film-scene.is-playing .idea-paths path{animation:pathDraw 1.4s forwards}.film-scene.is-playing .idea-paths path:nth-child(n+4){animation-delay:.7s}@keyframes pathDraw{to{stroke-dashoffset:0}}.channel{position:absolute;width:160px;padding:1rem;border:1px solid var(--home-line);border-radius:14px;background:white;box-shadow:0 15px 40px rgba(47,47,47,.08);opacity:0;transform:scale(.9)}.film-scene.is-playing .channel{animation:channelOut .45s 1.1s forwards}.film-scene.is-playing .channel:nth-of-type(n+5){animation-delay:1.8s}@keyframes channelOut{to{opacity:1;transform:scale(1)}}.channel b{width:28px;height:28px;display:grid;place-items:center;background:var(--charcoal);color:white;border-radius:7px}.channel span,.channel small{display:block}.channel span{font-weight:700;font-size:.78rem;margin-top:.6rem}.channel small{font-size:.65rem;color:rgba(47,47,47,.5)}.ch-linkedin{left:12%;top:13%}.ch-blog{left:6%;top:41%}.ch-email{left:13%;bottom:8%}.ch-instagram{right:12%;top:13%}.ch-news{right:6%;top:45%}.ch-queue{right:13%;bottom:7%}.ch-queue b{background:var(--teal);color:var(--charcoal)}

/* Demosphere */
.film-demo .film-copy{top:9vh;max-width:42vw}.film-demo .film-copy h2{font-size:clamp(3rem,5.4vw,5.9rem)}
.demo-browser{position:absolute;left:5vw;right:28vw;bottom:6vh;height:63%;border:1px solid rgba(223,227,231,.16);border-radius:20px;overflow:hidden;background:#f7f8f8;box-shadow:0 35px 100px rgba(0,0,0,.3)}.demo-browser>header{height:44px;display:flex;align-items:center;gap:6px;background:#292a2a;color:rgba(223,227,231,.6);padding:0 1rem;font-size:.65rem}.demo-browser>header i{width:7px;height:7px;border-radius:50%;background:#696b6b}.demo-browser>header span{margin-left:1rem}.demo-browser>header b{margin-left:auto;color:var(--teal);letter-spacing:.1em}.demo-app{height:calc(100% - 44px);display:grid;grid-template-columns:160px 1fr;color:var(--charcoal)}.demo-app nav{display:flex;flex-direction:column;gap:.45rem;padding:1rem;border-right:1px solid var(--home-line);font-size:.72rem}.demo-app nav strong{margin-bottom:1rem}.demo-app nav span{padding:.5rem;border-radius:6px;color:rgba(47,47,47,.55)}.demo-app nav .active{background:rgba(88,194,176,.12);color:var(--teal-dark)}.demo-app main{display:grid;align-content:center;justify-items:center;gap:2rem;padding:2rem}.demo-app-title{text-align:center}.demo-app-title small{color:var(--teal-dark);font-weight:700;letter-spacing:.13em}.demo-app-title strong{display:block;font-size:clamp(1.4rem,3vw,2.8rem);margin-top:.5rem}.integration-map{display:flex;gap:.7rem}.integration-map i{width:62px;height:62px;border:1px solid var(--home-line);background:white;border-radius:14px;display:grid;place-items:center;font-style:normal;font-size:.65rem;font-weight:700}.film-scene.is-playing .integration-map i{animation:integrationWake .4s forwards}.film-scene.is-playing .integration-map i:nth-child(2){animation-delay:.25s}.film-scene.is-playing .integration-map i:nth-child(3){animation-delay:.5s}.film-scene.is-playing .integration-map i:nth-child(4){animation-delay:.75s}.film-scene.is-playing .integration-map i:nth-child(5){animation-delay:1s}@keyframes integrationWake{50%{transform:translateY(-8px);border-color:var(--teal)}to{border-color:rgba(88,194,176,.55)}}.demo-agent{position:absolute;right:4vw;bottom:23vh;width:300px;padding:1.2rem;border:1px solid rgba(223,227,231,.15);border-radius:18px;background:#292a2a;color:white}.agent-orb{width:55px;height:55px;border-radius:50%;background:rgba(88,194,176,.08);display:grid;place-items:center}.agent-orb i{width:24px;height:24px;border-radius:50%;background:var(--teal);box-shadow:0 0 25px rgba(88,194,176,.6)}.demo-agent p{font-size:.82rem;color:rgba(223,227,231,.72);margin:1rem 0;min-height:3.8em}.demo-agent button{width:100%;background:var(--teal);color:var(--charcoal);padding:.7rem;border-radius:8px;font-size:.75rem;font-weight:700}.intent-card{position:absolute;right:4vw;bottom:6vh;width:300px;padding:1rem;border:1px solid rgba(223,227,231,.15);border-radius:15px;color:white}.intent-card span{font-size:.6rem;color:var(--teal);letter-spacing:.12em}.intent-card strong{display:block;font-size:2rem;margin:.4rem 0}.intent-card small{color:rgba(223,227,231,.5)}

/* Control and finale */
.control-map{position:absolute;width:min(62vw,900px);left:4vw;bottom:5vh}.control-map text{text-anchor:middle;font-size:12px}.approval-node rect{stroke:var(--teal)}.failure-path{fill:none;stroke:#b56f68;stroke-width:2;stroke-dasharray:8 9}.exception-node{opacity:.35}.film-scene.is-playing .control-signal{animation:controlTravel 5s ease-in-out forwards}@keyframes controlTravel{0%{opacity:0;transform:translate(80px,290px)}15%{opacity:1}45%{transform:translate(310px,290px)}68%{transform:translate(590px,290px)}100%{opacity:1;transform:translate(810px,290px)}}.control-log{position:absolute;right:5vw;bottom:10vh;width:330px;border:1px solid var(--home-line);background:white;border-radius:14px;padding:.8rem}.control-log p{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;padding:.7rem;border-bottom:1px solid var(--home-line);font-size:.66rem}.control-log time{color:rgba(47,47,47,.45)}.control-log b{color:var(--teal-dark)}.film-finale{place-items:center}.finale-system{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);opacity:.2}.finale-system i{border:1px solid rgba(88,194,176,.2);position:relative}.finale-system i::after{content:'';position:absolute;width:6px;height:6px;border-radius:50%;background:var(--teal);left:50%;top:50%}.film-scene.is-playing .finale-system i::after{animation:finalDots 2.5s ease-in-out infinite alternate}.finale-system i:nth-child(2n)::after{animation-delay:.5s}.finale-system i:nth-child(3n)::after{animation-delay:1s}@keyframes finalDots{to{transform:translate(40px,-25px);opacity:.3}}.film-finale-copy{position:relative;z-index:2;text-align:center}.film-finale-copy h2{font-size:clamp(4rem,9vw,9rem);line-height:.87;letter-spacing:-.06em;color:white}.film-finale-copy h2 span{color:var(--teal)}.film-finale-copy .home-actions{justify-content:center}.film-finale-copy small{display:block;color:rgba(223,227,231,.5);margin-top:1.2rem}

@media(max-width:899px){.film-scene{min-height:100svh}.film-copy,.film-copy-right{left:1.25rem;right:1.25rem;top:5.5rem;text-align:left;max-width:none}.film-copy h2{font-size:clamp(3.1rem,13vw,5.8rem);max-width:10ch}.film-canvas{top:24vh}.orchestration-map{width:155vw;bottom:4%;left:54%}.film-event-stack{right:1rem;bottom:3vh}.film-event-stack p:nth-child(-n+2){display:none}.phone-system{left:1.25rem;top:19%;width:calc(100% - 2.5rem);height:51%}.voice-routing{width:100%;right:-18%;bottom:-2vh}.crm-canvas{inset:25vh 1rem 2vh;overflow-x:auto}.crm-top{position:sticky;left:0;min-width:790px}.crm-board{min-width:790px;right:190px}.crm-activity{width:190px;left:790px}.build-track{left:1rem;right:auto;width:1100px;overflow:visible}.web-canvas{overflow-x:auto}.build-progress{left:1rem;right:1rem}.idea-canvas{top:20vh}.idea-core{top:46%;width:210px}.idea-paths{inset:10% -30%;width:160%}.channel{width:125px;padding:.7rem}.ch-linkedin,.ch-email{left:2%}.ch-blog{left:-4%}.ch-instagram,.ch-queue{right:2%}.ch-news{right:-4%}.demo-browser{left:1rem;right:1rem;bottom:22vh;height:48%}.demo-app{grid-template-columns:95px 1fr}.demo-app nav{padding:.6rem}.demo-app main{padding:.7rem}.integration-map{gap:.25rem}.integration-map i{width:43px;height:43px}.demo-agent{right:1rem;bottom:5vh;width:calc(100% - 2rem)}.intent-card{display:none}.control-map{width:130vw;left:-20vw;bottom:8vh}.control-log{right:1rem;left:1rem;bottom:3vh;width:auto}.finale-system{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,1fr)}.film-finale-copy{padding:1.25rem}.film-finale-copy .home-actions{align-items:center}}
@media(max-width:520px){.film-copy h2{font-size:clamp(2.9rem,14vw,4.6rem)}.film-index{font-size:.58rem}.film-orchestration{min-height:100svh}.orchestration-canvas{top:27vh}.orchestration-map{width:195vw;left:51%;bottom:8%}.film-event-stack{display:none}.phone-system{top:18%;height:56%}.voice-routing{bottom:-5vh}.crm-canvas{top:25vh}.build-track{bottom:8vh;height:54%;width:900px;grid-template-columns:repeat(5,170px)}.idea-core{top:45%}.channel{width:110px}.channel small{display:none}.demo-browser{bottom:27vh;height:43%}.demo-agent{bottom:3vh}.control-canvas{top:23vh}.control-map{bottom:15vh}.film-finale-copy h2{font-size:16vw}}
@media(prefers-reduced-motion:reduce){.film-scene *{animation:none!important}.film-event-stack p,.channel,.deal-target{opacity:1;transform:none}.signal{opacity:0}.analytics path,.idea-paths path{stroke-dashoffset:0}.build-phase{opacity:1}.crm-activity p{opacity:1}}
@media(max-width:899px){.film-demo .film-copy{top:5.5rem;max-width:none}.film-demo .film-copy h2{font-size:clamp(2.8rem,11vw,5rem)}}

/* Precision responsive cleanup — spacing only, visual direction unchanged. */
@media(min-width:900px){
  .film-crm{min-height:max(100svh,980px)}
  .film-crm .film-copy{top:80px}
  .crm-canvas{top:310px;bottom:50px}
  .film-control{min-height:max(100svh,950px)}
  .control-map{width:min(58vw,820px);left:2vw;bottom:40px}
  .film-content .idea-core{top:62%}
}
@media(min-width:900px) and (max-width:1100px){
  .film-copy h2{font-size:clamp(3rem,6.4vw,5rem)}
  .film-crm .film-copy{top:90px}
  .crm-canvas{top:300px;left:2vw;right:2vw}
  .crm-board{right:205px}
  .crm-activity{width:205px}
  .film-demo .film-copy{max-width:44vw}
  .demo-browser{right:30vw}
  .demo-agent,.intent-card{right:2vw;width:270px}
}
@media(max-width:899px){
  .film-crm{min-height:1100px}
  .film-crm .film-copy{top:88px}
  .crm-canvas{top:300px;bottom:70px;overflow:hidden}
  .crm-top{position:absolute;left:0;right:0;min-width:0}
  .crm-board{min-width:0;right:0;bottom:160px;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}
  .crm-activity{left:0;right:0;top:auto;bottom:0;width:auto;height:160px;display:grid;grid-template-columns:repeat(4,1fr);align-content:start}
  .crm-activity>span{grid-column:1/-1;padding-bottom:.5rem}
  .crm-activity p{padding:.55rem .4rem;border-bottom:0;border-right:1px solid var(--home-line)}
  .film-scene.is-playing .deal-moving{animation:dealMoveMobile 5s 1s ease-in-out forwards}
  .film-control{min-height:1000px}
  .control-map{top:310px;bottom:auto}
  .control-log{bottom:85px}
  .demo-agent{bottom:80px}
  .film-finale-copy{padding-bottom:5rem}
}
@media(max-width:599px){
  .film-crm{min-height:1020px}
  .film-crm .film-copy{top:82px}
  .film-crm .film-copy h2{font-size:clamp(2.75rem,13vw,4.25rem);line-height:.91}
  .crm-canvas{top:270px;bottom:70px}
  .crm-top{height:68px}
  .crm-board{top:68px}
  .crm-activity{top:auto}
  .film-content .idea-core{top:51%}
  .film-control .film-copy h2{font-size:clamp(2.8rem,14vw,4.4rem)}
  .control-map{top:300px}
  .home-page .lucy-fab{right:.75rem;bottom:.75rem;width:52px;height:52px}
}
@media(max-width:360px){
  .home-hero-copy h1{font-size:clamp(2.5rem,13vw,3.25rem)}
  .home-intro{font-size:1rem}
  .film-copy h2{font-size:clamp(2.55rem,13vw,3.7rem)}
  .film-crm .film-copy h2{font-size:2.8rem}
  .crm-canvas{left:.7rem;right:.7rem}
  .film-finale-copy h2{font-size:15vw}
  .film-finale-copy .home-actions{gap:.7rem}
}
@keyframes dealMoveMobile{0%,25%{transform:none;opacity:1}75%,100%{transform:translateY(calc(100% + 1.5rem));opacity:0}}

/* ========================================================================== 
   Structural scene layout
   Static layout first: copy and visual occupy separate grid rows. All absolute
   positioning below this point is contained inside the visual zone.
   ========================================================================== */
.home-film{
  --scene-gap-desktop:64px;
  --scene-gap-tablet:40px;
  --scene-gap-mobile:28px;
  --section-padding-desktop:96px;
  --section-padding-tablet:72px;
  --section-padding-mobile:72px;
  --copy-visual-gap:64px;
}
.home-film .film-scene{
  min-height:max(100svh,960px);
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto minmax(620px,1fr);
  align-content:start;
  gap:var(--scene-gap-desktop);
  padding:var(--section-padding-desktop) max(4vw,calc((100vw - 1280px)/2)) 64px;
  overflow:clip;
  scroll-margin-top:72px;
}
.home-film .film-copy,
.home-film .film-copy-right,
.home-film .film-demo .film-copy{
  position:relative;
  inset:auto;
  width:100%;
  max-width:720px;
  min-width:0;
  text-align:left;
  pointer-events:none;
}
.home-film .film-copy h2,
.home-film .film-demo .film-copy h2{
  width:100%;
  max-width:11ch;
  margin:0;
  font-size:clamp(3.5rem,6.4vw,6.8rem);
  line-height:.95;
  overflow:visible;
  overflow-wrap:normal;
}
.home-film .film-copy-right{justify-self:end;text-align:right}
.home-film .film-copy-right h2{margin-left:auto}
.home-film .film-canvas{
  position:relative;
  inset:auto;
  width:100%;
  min-width:0;
  min-height:620px;
  height:100%;
  overflow:clip;
  border-radius:24px;
}

/* Visual canvases retain their approved art, now bounded by their own zone. */
.home-film .film-orchestration{min-height:1080px;grid-template-rows:auto minmax(680px,1fr)}
.home-film .orchestration-canvas{top:auto}
.home-film .orchestration-map{width:min(100%,1280px);max-height:100%;bottom:0;left:50%}
.home-film .film-event-stack{right:2rem;bottom:2rem}
.home-film .film-voice{min-height:1120px;grid-template-rows:auto minmax(680px,1fr)}
.home-film .phone-system{left:2%;top:24px;width:min(42%,560px);height:580px}
.home-film .voice-routing{width:58%;right:0;bottom:24px}
.home-film .film-crm{min-height:1120px;grid-template-rows:auto minmax(680px,1fr)}
.home-film .film-crm .film-copy{top:auto}
.home-film .crm-canvas{position:relative;inset:auto;min-height:680px;height:680px}
.home-film .film-web{min-height:1080px;grid-template-rows:auto minmax(620px,1fr)}
.home-film .build-track{left:2%;right:2%;bottom:64px;height:500px}
.home-film .build-progress{left:3%;right:3%;bottom:32px}
.home-film .film-content{min-height:1080px;grid-template-rows:auto minmax(650px,1fr)}
.home-film .idea-canvas{top:auto}
.home-film .idea-core,.home-film .film-content .idea-core{top:50%}
.home-film .idea-paths{inset:3% 8%;height:94%}
.home-film .film-demo{min-height:1120px;grid-template-rows:auto minmax(680px,1fr)}
.home-film .demo-browser{left:2%;right:29%;bottom:28px;height:620px}
.home-film .demo-agent{right:2%;bottom:220px;width:300px}
.home-film .intent-card{right:2%;bottom:28px;width:300px}
.home-film .film-control{min-height:1080px;grid-template-rows:auto minmax(650px,1fr)}
.home-film .control-map{top:auto;left:0;bottom:20px;width:min(65%,820px)}
.home-film .control-log{right:0;bottom:44px;width:min(31%,350px)}
.home-film .film-finale{min-height:100svh;display:grid;grid-template-rows:1fr;place-items:center;padding:96px 24px}
.home-film .film-finale-copy{position:relative;max-width:1100px}

@media(max-width:1099px){
  .home-film .film-scene{
    min-height:1040px;
    grid-template-rows:auto minmax(620px,1fr);
    gap:var(--scene-gap-tablet);
    padding:var(--section-padding-tablet) 32px 56px;
  }
  .home-film .film-copy,
  .home-film .film-copy-right,
  .home-film .film-demo .film-copy{justify-self:start;text-align:left;max-width:680px}
  .home-film .film-copy-right h2{margin-left:0}
  .home-film .film-copy h2,.home-film .film-demo .film-copy h2{font-size:clamp(3.4rem,7.8vw,5.6rem);max-width:11ch}
  .home-film .film-canvas{min-height:620px}
  .home-film .film-orchestration,.home-film .film-voice,.home-film .film-crm,.home-film .film-web,.home-film .film-content,.home-film .film-demo,.home-film .film-control{min-height:1040px;grid-template-rows:auto minmax(620px,1fr)}
  .home-film .orchestration-map{width:min(120%,1100px)}
  .home-film .phone-system{left:0;width:45%;height:550px}
  .home-film .voice-routing{width:61%;right:0}
  .home-film .crm-canvas{height:620px;min-height:620px;top:auto;bottom:auto}
  .home-film .build-track{width:auto;left:0;right:0;height:480px}
  .home-film .demo-browser{left:0;right:31%;height:570px}
  .home-film .demo-agent,.home-film .intent-card{right:0;width:280px}
  .home-film .control-map{width:64%;left:0;top:auto}
}

@media(max-width:899px){
  .home-film .film-scene{
    min-height:1120px;
    grid-template-rows:auto minmax(700px,1fr);
    gap:var(--scene-gap-tablet);
    padding:var(--section-padding-tablet) 24px 64px;
  }
  .home-film .film-copy h2,.home-film .film-demo .film-copy h2{font-size:clamp(3.2rem,9.6vw,5rem)}
  .home-film .film-canvas{min-height:700px;top:auto}
  .home-film .film-orchestration,.home-film .film-voice,.home-film .film-crm,.home-film .film-web,.home-film .film-content,.home-film .film-demo,.home-film .film-control{min-height:1120px;grid-template-rows:auto minmax(700px,1fr)}
  .home-film .orchestration-map{width:135%;bottom:2%}
  .home-film .phone-system{left:0;top:0;width:52%;height:600px}
  .home-film .voice-routing{width:58%;right:0;bottom:0}
  .home-film .crm-canvas{height:700px;min-height:700px;inset:auto}
  .home-film .build-track{left:0;right:auto;width:1080px;height:520px;bottom:70px}
  .home-film .web-canvas{overflow-x:auto;overflow-y:clip;scrollbar-width:thin}
  .home-film .idea-canvas{min-height:700px}
  .home-film .ch-blog{left:0}
  .home-film .ch-news{right:0}
  .home-film .demo-browser{left:0;right:0;bottom:250px;height:450px}
  .home-film .demo-agent{left:0;right:0;bottom:0;width:100%;min-height:220px}
  .home-film .intent-card{display:none}
  .home-film .control-map{left:0;top:0;bottom:auto;width:100%;height:530px}
  .home-film .control-log{left:0;right:0;bottom:0;width:100%;height:auto}
}

@media(max-width:599px){
  .home-film .film-scene{
    min-height:1040px;
    grid-template-rows:auto minmax(680px,1fr);
    gap:var(--scene-gap-mobile);
    padding:var(--section-padding-mobile) 16px 72px;
  }
  .home-film .film-copy,.home-film .film-copy-right,.home-film .film-demo .film-copy{max-width:100%}
  .home-film .film-copy h2,.home-film .film-demo .film-copy h2{font-size:clamp(2.8rem,13vw,4.25rem);line-height:.92;max-width:10ch}
  .home-film .film-canvas{min-height:680px;border-radius:18px}
  .home-film .film-orchestration,.home-film .film-voice,.home-film .film-crm,.home-film .film-web,.home-film .film-content,.home-film .film-demo,.home-film .film-control{min-height:1040px;grid-template-rows:auto minmax(680px,1fr)}
  .home-film .orchestration-map{width:190%;left:50%;top:0;bottom:auto;max-height:100%}
  .home-film .film-event-stack{display:none}
  .home-film .phone-system{left:0;top:0;width:100%;height:500px}
  .home-film .voice-routing{width:100%;right:0;bottom:0}
  .home-film .crm-canvas{height:680px;min-height:680px}
  .home-film .crm-column{overflow:clip}
  .home-film .build-track{width:900px;grid-template-columns:repeat(5,170px);height:520px;top:0;bottom:auto}
  .home-film .idea-core,.home-film .film-content .idea-core{top:38%;width:205px}
  .home-film .idea-paths{inset:4% -35%;width:170%;height:92%}
  .home-film .demo-browser{bottom:260px;height:420px}
  .home-film .demo-agent{bottom:0;min-height:230px}
  .home-film .control-canvas{overflow-x:auto;overflow-y:clip;scrollbar-width:thin}
  .home-film .control-map{top:0;width:440px;max-width:none;left:0;height:390px}
  .home-film .control-log{bottom:0}
  .home-film .film-finale{min-height:100svh;padding:80px 18px 96px}
}

@media(max-width:360px){
  .home-film .film-scene{padding-inline:12px;min-height:1000px;grid-template-rows:auto minmax(650px,1fr)}
  .home-film .film-copy h2,.home-film .film-demo .film-copy h2{font-size:clamp(2.55rem,13.2vw,3.35rem)}
  .home-film .film-canvas{min-height:650px}
  .home-film .film-orchestration,.home-film .film-voice,.home-film .film-crm,.home-film .film-web,.home-film .film-content,.home-film .film-demo,.home-film .film-control{min-height:1000px;grid-template-rows:auto minmax(650px,1fr)}
  .home-film .crm-canvas{height:650px;min-height:650px}
  .home-film .demo-browser{height:390px;bottom:250px}
  .home-film .demo-agent{min-height:220px}
}
.home-page .lucy-fab{transition:opacity .18s var(--ease),transform .18s var(--ease),background-color .18s var(--ease)}
@media(max-width:599px){
  .home-page .lucy-fab{width:44px;height:44px;right:.55rem;bottom:.55rem;opacity:.72}
  .home-page .lucy-fab:hover,.home-page .lucy-fab:focus-visible{opacity:1}
  .home-page .lucy-fab svg{width:21px;height:21px}
}
.home-page .book-modal[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.home-page .book-modal iframe{height:100%;min-height:0}
@media(max-width:360px){
  .home-page .home-hero-copy,.home-page .home-hero-copy h1,.home-page .home-intro{max-width:100%;overflow-wrap:break-word}
  .home-page .book-modal-bar{gap:.75rem;padding:.75rem}
  .home-page .book-modal-bar strong{font-size:.9rem;line-height:1.3;max-width:calc(100% - 48px)}
  .home-page .book-close{flex:0 0 36px}
}
