@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700&display=swap');
:root{--paper:#eeeee6;--ink:#282d25;--muted:#73776b;--line:#c9cbbf;--orange:#ed623c;--olive:#626d45}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans KR',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--orange);outline-offset:7px}a[href],button{cursor:pointer}::selection{background:var(--orange);color:var(--paper)}.header{margin:0 4.5%;height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ink)}.wordmark{font-family:'Manrope',sans-serif;font-size:33px;font-weight:800;letter-spacing:-2.2px;white-space:nowrap}.wordmark span{font-weight:500}.wordmark i{font-size:10px;font-style:normal;vertical-align:top;display:inline-block;margin:5px 0 0 5px;letter-spacing:0}nav{display:flex;align-items:center;gap:40px;font-size:13px}nav a span{margin-left:13px;font-size:10px}nav .nav-download{border:1px solid var(--ink);padding:13px 17px}nav a:hover,.text-link:hover{color:var(--orange)}.hero{padding:48px 4.5% 0;overflow:hidden}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.7px;display:flex;align-items:center;gap:9px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--orange)}h1{font-family:'Manrope',sans-serif;font-size:clamp(76px,10.6vw,165px);font-weight:500;letter-spacing:-.075em;line-height:1.03;margin:52px 0 41px;position:relative}h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em}.hero-period{color:var(--orange);font-size:1.1em;display:inline-block;line-height:.5;vertical-align:top;transform:translate(25px,30px)}.hero-bottom{display:grid;grid-template-columns:1fr 1fr 70px;align-items:center;gap:30px;margin:0 0 58px}.hero-bottom>p:first-child{font-size:24px;line-height:1.6;font-weight:500;letter-spacing:-1px}.hero-description{font-size:13px;line-height:1.95;color:#62675a}.circle-link{width:64px;height:64px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:28px;transition:background .2s}.circle-link:hover{background:var(--orange)}.hero-index{padding:18px 0;display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:9px;letter-spacing:1px}.studios{padding:82px 4.5% 0}.section-top{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:40px}.section-top h2{font-size:17px;font-weight:500;letter-spacing:-.4px;margin:0}.section-top>span{font-size:9px;letter-spacing:1px}.studio{border-top:1px solid var(--ink);padding:30px 0 48px;display:grid;grid-template-columns:20% 43% 37%;min-height:340px}.studio-number{font-size:9px;letter-spacing:1px;padding-top:8px}.studio-copy h3{font-family:'Manrope',sans-serif;font-size:68px;font-weight:500;letter-spacing:-5px;margin:0 0 20px;line-height:1.2}.studio-copy h3>span{font-size:24px;letter-spacing:-1px;margin-left:14px}.studio-tagline{font-size:18px;font-weight:500;letter-spacing:-.5px;margin-bottom:18px}.body-copy{font-size:12px;color:#707466;line-height:1.9;margin-bottom:27px}.text-link{font-size:11px;border-bottom:1px solid var(--line);padding-bottom:8px;display:inline-flex;gap:40px}.coming{font-size:8px;letter-spacing:1px;display:inline-flex;align-items:center;gap:15px;color:var(--olive)}.coming:before{content:'';width:5px;height:5px;background:var(--olive);border-radius:50%}.coming span{font-size:10px;color:var(--muted);letter-spacing:0}.visual{height:280px;position:relative;overflow:hidden;display:grid;place-items:center;background:#e4e6da}.visual>span{position:absolute;bottom:16px;left:19px;font-size:8px;letter-spacing:1px}.blueprint{background-color:#e3e6da;background-image:linear-gradient(#c9cebe60 1px,transparent 1px),linear-gradient(90deg,#c9cebe60 1px,transparent 1px);background-size:22px 22px;color:var(--olive)}.blueprint svg{height:230px;width:100%;padding:8px}.intelligence-art{background:#e9dfd2;color:#a45c3e}.orb{position:absolute;border:1px solid #b88c6f70;width:210px;height:210px;border-radius:50%}.orb-one{transform:translateX(-50px)}.orb-two{transform:translateX(50px)}.orb-three{width:265px;height:140px;transform:rotate(-35deg)}.intelligence-art b{font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:110px;letter-spacing:-9px;z-index:1}.intelligence-art b span{font-size:37px;vertical-align:top;display:inline-block;margin:25px 0 0 12px;color:var(--orange)}.factory-art{background:#dce0d3;color:var(--olive);padding:30px;display:block}.production{display:flex;gap:7px;position:absolute;right:26px;top:31px;align-items:end;height:48px}.production i{display:block;background:#a7b094;width:13px;height:28px}.production i:nth-child(2n){height:44px}.quality{border-top:1px solid #9da58c;border-bottom:1px solid #9da58c;margin-top:60px;padding:14px 0}.quality>span{font-size:7px;letter-spacing:1.4px}.quality strong{display:block;font-family:'Manrope',sans-serif;font-size:75px;font-weight:500;line-height:1.2}.quality strong span{font-size:45px;float:right}.quality>div{font-size:8px;letter-spacing:1px}.quality>div span{margin:0 18px}.tools{padding:72px 4.5% 85px;background:#e4e6da;margin-top:35px}.tools-intro{display:flex;align-items:end;justify-content:space-between;margin:54px 0 44px}.tools-intro>p{font-size:38px;font-weight:500;line-height:1.4;letter-spacing:-2px;margin:0}.tools-intro>span{font-size:12px;line-height:1.9;color:#707466;width:37%}.tool-row{display:grid;grid-template-columns:12% 35% 1fr 105px;align-items:center;gap:15px;border-top:1px solid #adb39f;padding:28px 0}.tool-row:last-child{border-bottom:1px solid #adb39f}.tool-icon{font-size:24px;color:var(--olive);letter-spacing:-4px}.db-icon{font-size:35px}.tool-row h3{font-family:'Manrope',sans-serif;font-size:22px;font-weight:500;letter-spacing:-.8px;margin:0}.tool-row h3 span{font-family:'Noto Sans KR',sans-serif;display:block;font-size:10px;letter-spacing:0;margin-top:8px;color:var(--muted)}.tool-row p{font-size:11px;color:#707466}.tool-action{font-size:10px;display:flex;justify-content:space-between;align-items:center}.tool-action span{font-size:20px}.unavailable{cursor:default;color:#777c6d}.download{background:var(--ink);color:var(--paper);padding:45px 4.5% 20px}.download>.eyebrow{font-size:9px;color:#b9bfa9}.download-main{display:grid;grid-template-columns:1.35fr 1fr;gap:60px;align-items:center;padding:45px 0 60px}.download h2{font-family:'Manrope',sans-serif;font-size:clamp(50px,6.7vw,100px);letter-spacing:-5px;line-height:1.1;font-weight:400;margin:0}.download h2 em{font-family:Georgia,serif;color:#c5cda9;font-weight:400}.edition{font-size:9px;letter-spacing:1.5px;color:#c5cda9}.download-copy p{font-size:12px;line-height:1.9;margin:20px 0 26px;color:#c4c8ba}.download-button{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:330px;background:#c5cda9;color:var(--ink);padding:18px 20px;font-size:12px}.download-button span{font-size:20px}.download-button[href]:hover{background:var(--paper)}.release-note{font-size:9px;color:#a6ad99;display:block;line-height:1.8;margin-top:13px}.download-foot{border-top:1px solid #545b4b;display:flex;align-items:center;justify-content:space-between;padding-top:16px;font-size:8px;letter-spacing:1.5px}.asterisk{color:var(--orange);font-size:45px;line-height:1}footer{padding:32px 4.5%;display:flex;align-items:center;gap:40px}footer .wordmark{font-size:26px}footer p{font-size:10px;color:var(--muted);flex:1}footer>span,.back-top{font-size:8px;letter-spacing:.7px}
@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:900px){nav{gap:20px}.studio{grid-template-columns:16% 47% 37%}.studio-number{font-size:7px;line-height:1.7;max-width:100px}.studio-copy h3{font-size:53px}.studio-copy h3>span{font-size:20px;margin-left:8px}.body-copy{font-size:11px}.visual{height:260px}.studio-tagline{font-size:15px}.tool-row{grid-template-columns:9% 36% 1fr 70px;gap:10px}.tool-row h3{font-size:18px}.download-main{gap:30px}.download h2{letter-spacing:-3px}footer{gap:25px}footer p{display:none}footer>span{flex:1}}
@media(max-width:600px){.header{height:82px;margin:0 6%}.wordmark{font-size:28px}nav{gap:18px;font-size:11px}nav a span{margin-left:3px}nav .nav-download{display:none}.hero{padding:32px 6% 0}.eyebrow{font-size:7px;letter-spacing:1.1px}h1{font-size:clamp(52px,12vw,74px);margin:46px 0 35px;letter-spacing:-4px}.hero-period{transform:translate(6px,14px);font-size:.9em}.hero-bottom{grid-template-columns:1fr 48px;gap:12px;margin-bottom:37px}.hero-bottom>p:first-child{font-size:21px;grid-column:1}.hero-description{grid-column:1;font-size:11px;margin:0}.circle-link{grid-column:2;grid-row:1/3;width:45px;height:45px;font-size:24px}.hero-index{font-size:7px;letter-spacing:.3px;gap:10px}.hero-index>span:nth-child(2){display:none}.studios{padding:52px 6% 0}.section-top{margin-bottom:24px;align-items:start}.section-top h2{font-size:14px}.section-top>span{font-size:7px;text-align:right;max-width:115px;line-height:1.6}.studio{grid-template-columns:1fr;padding:20px 0 32px;gap:22px}.studio-number{max-width:none;font-size:8px}.studio-copy h3{font-size:62px}.studio-copy h3>span{font-size:24px;margin-left:14px}.studio-tagline{font-size:18px}.body-copy{font-size:12px}.visual{height:240px}.blueprint svg{height:215px}.tools{padding:45px 6% 50px;margin-top:15px}.tools-intro{display:block;margin:35px 0}.tools-intro>p{font-size:30px}.tools-intro>span{display:block;width:100%;font-size:11px;margin-top:20px}.tool-row{grid-template-columns:38px 1fr 65px;gap:10px;padding:23px 0}.tool-row h3{font-size:18px}.tool-row p{grid-column:2;grid-row:2;margin:0;font-size:10px;line-height:1.7}.tool-action{grid-column:3;grid-row:1/3}.tool-icon{font-size:21px}.db-icon{font-size:30px}.download{padding:32px 6% 20px}.download-main{grid-template-columns:1fr;gap:38px;padding:35px 0 40px}.download h2{font-size:60px;letter-spacing:-3px}.download-button{max-width:none}.download-foot{font-size:6px;letter-spacing:.8px}footer{padding:27px 6%;gap:20px;flex-wrap:wrap}footer>span{font-size:7px}.back-top{font-size:7px}footer .wordmark{font-size:23px}footer .wordmark i{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.tool-icon{white-space:nowrap}
@media(max-width:600px){.factory-art .quality{margin-top:43px}.factory-art .production{top:23px;height:38px}.factory-art .quality strong{font-size:63px}.factory-art>span{bottom:12px;font-size:7px}}

/* Hero: a shared grid connects the headline, studio map and introduction. */
.hero-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.43fr);gap:5%;align-items:center;padding:56px 0 42px}
.hero-stage h1{font-size:clamp(65px,8.2vw,132px);margin:0;letter-spacing:-.075em;line-height:1.08;white-space:nowrap}
.hero-stage .hero-period{font-size:.63em;transform:translate(14px,20px)}
.hero-map{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding-top:8px;color:var(--olive)}
.hero-map-caption{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px;color:var(--muted)}
.hero-map svg{display:block;width:100%;max-height:310px;margin:10px 0}
.map-guide{stroke:var(--line);stroke-width:.7;stroke-dasharray:2 5}
.map-orbit{stroke:#9aa38b;stroke-width:.8}
.map-triangle{stroke:var(--olive);stroke-width:.8;opacity:.45}
.map-node{fill:var(--olive)}
.hero-map text{fill:var(--ink);font-family:'Manrope',sans-serif;font-size:15px;font-weight:500;letter-spacing:-.5px}
.map-center{stroke:var(--orange);stroke-width:5}
.hero-map-key{display:flex;justify-content:space-between;gap:8px;font-size:8px;letter-spacing:.25px}
.hero-bottom{grid-template-columns:minmax(0,1fr) minmax(260px,.43fr);column-gap:5%;position:relative;align-items:start;border-top:1px solid var(--line);padding:26px 0 32px;margin:0}
.hero-bottom>p:first-child{font-size:23px;line-height:1.65;letter-spacing:-.8px;margin:0;padding-left:18px;border-left:2px solid var(--orange)}
.hero-bottom .hero-description{font-size:12px;line-height:1.95;margin:0;padding-right:0;word-break:keep-all}
.hero-bottom .circle-link{position:absolute;left:calc(100% / 1.43 - 80px);top:31px;width:48px;height:48px;font-size:24px;border-color:#a5aa98}
.hero-index{padding:16px 0}
@media(min-width:1800px){.hero-stage h1{font-size:132px}}
@media(max-width:1000px) and (min-width:601px){.hero-stage{grid-template-columns:minmax(0,1fr) 230px;gap:24px;padding:46px 0 34px}.hero-stage h1{font-size:7.6vw}.hero-stage .hero-period{transform:translate(7px,15px)}.hero-map-key{font-size:7px}.hero-bottom{grid-template-columns:minmax(0,1fr) 230px;gap:24px}.hero-bottom>p:first-child{font-size:20px}.hero-bottom .hero-description{font-size:10px}.hero-bottom .circle-link{left:auto;right:270px;width:40px;height:40px}}
@media(max-width:600px){.hero-stage{grid-template-columns:1fr;gap:28px;padding:34px 0 26px}.hero-stage h1{font-size:12vw;letter-spacing:-.065em;line-height:1.12}.hero-stage .hero-period{transform:translate(7px,12px)}.hero-map{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;position:relative;padding:18px 0 0;border-top:1px solid var(--line);min-height:150px}.hero-map-caption{align-self:start;flex-direction:column;gap:8px;font-size:7px;line-height:1.5}.hero-map svg{grid-column:2;grid-row:1/3;width:100%;max-height:160px;margin:0}.hero-map-key{grid-column:1;grid-row:2;flex-direction:column;gap:7px;font-size:9px;align-self:end;padding-bottom:8px}.hero-bottom{grid-template-columns:1fr 44px;gap:19px;padding:24px 0 27px}.hero-bottom>p:first-child{grid-column:1;font-size:20px;padding-left:14px}.hero-bottom .hero-description{grid-column:1/3;font-size:11px;padding-left:16px}.hero-bottom .circle-link{position:static;grid-column:2;grid-row:1;width:42px;height:42px;align-self:center;font-size:22px}.hero-index{font-size:6px;letter-spacing:.4px}}

/* Editorial type: a staggered entrance, then a travelling wave of orange. */
.hero-line-clip{display:inline-block;overflow:hidden;vertical-align:bottom;padding:0 .08em .08em;margin:0 -.08em -.08em}
.hero-line{display:inline-block;animation:hero-arrive 1.1s cubic-bezier(.16,1,.3,1) both}
.hero-word{display:inline-flex;position:relative;isolation:isolate}
.hero-char{display:inline-block;animation:letter-arrive .95s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.18s + var(--char-index)*.045s)}
.hero-glyph{display:inline-block;animation:letter-wave 6.8s cubic-bezier(.45,0,.25,1) infinite;animation-delay:calc(1.5s + var(--char-index)*.085s)}
.hero-word::after{content:'';position:absolute;left:2%;right:-1%;bottom:-.12em;height:.13em;border-top:2px solid var(--orange);border-radius:50%;transform:rotate(-2deg);transform-origin:left;opacity:.8;animation:word-accent 1.1s cubic-bezier(.16,1,.3,1) 1s both;pointer-events:none}
.hero-stage .hero-period{font-size:.5em;transform:translate(14px,12px)}
.hero-asterisk{display:inline-block;line-height:1;animation:asterisk-turn 6.8s cubic-bezier(.65,0,.2,1) 1.5s infinite}
.hero-map svg{animation:map-arrive 1.6s ease-out both}
.map-orbit{stroke-dasharray:572;stroke-dashoffset:0;animation:orbit-draw 2s cubic-bezier(.25,.6,.3,1) both}
.map-orbit.map-phase-2{animation-delay:.2s}.map-orbit.map-phase-3{animation-delay:.4s}
.map-signal{stroke:var(--orange);stroke-width:1.5;stroke-linecap:round;stroke-dasharray:7 93;animation:signal-travel 6s linear infinite;opacity:.8}
.map-node{transform-box:fill-box;transform-origin:center;animation:node-awake 6s ease-in-out infinite}
.map-label{animation:label-awake 6s ease-in-out infinite}
.map-node.map-phase-1,.map-label.map-phase-1{animation-delay:0s}
.map-node.map-phase-2,.map-label.map-phase-2{animation-delay:2s}
.map-node.map-phase-3,.map-label.map-phase-3{animation-delay:4s}
.map-center{transform-origin:180px 154px;animation:center-turn 12s cubic-bezier(.45,0,.2,1) infinite}
.motion-toggle{appearance:none;border:0;padding:0;background:none;color:var(--muted);font:inherit;letter-spacing:1px;display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.motion-toggle span{color:var(--olive)}.motion-toggle i{font-style:normal;color:var(--orange);font-size:10px;letter-spacing:-2px;margin-left:3px}
.motion-toggle:hover{color:var(--ink)}.motion-toggle:focus-visible{outline:2px solid var(--orange);outline-offset:5px}
.hero.motion-paused *,.hero.motion-paused *::after,.hero.motion-idle *,.hero.motion-idle *::after{animation-play-state:paused!important}
@keyframes hero-arrive{from{opacity:0;transform:translateY(105%) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes letter-arrive{from{opacity:0;transform:translateY(.55em) rotate(7deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes letter-wave{0%,32%,100%{color:var(--ink);transform:translateY(0) rotate(0)}10%{color:var(--orange);transform:translateY(-.055em) rotate(-2deg)}21%{color:var(--ink);transform:translateY(.012em) rotate(.5deg)}}
@keyframes asterisk-turn{0%,8%{transform:rotate(0)}32%,100%{transform:rotate(180deg)}}
@keyframes map-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes orbit-draw{from{stroke-dashoffset:572;opacity:0}to{stroke-dashoffset:0;opacity:1}}
@keyframes word-accent{from{transform:rotate(-2deg) scaleX(0);opacity:0}to{transform:rotate(-2deg) scaleX(1);opacity:.8}}
@keyframes signal-travel{from{stroke-dashoffset:0}to{stroke-dashoffset:-100}}
@keyframes node-awake{0%,28%,100%{fill:var(--olive);transform:scale(1)}8%,18%{fill:var(--orange);transform:scale(1.5)}}
@keyframes label-awake{0%,28%,100%{fill:var(--ink)}8%,18%{fill:var(--orange)}}
@keyframes center-turn{0%,35%{transform:rotate(0)}50%,85%{transform:rotate(60deg)}100%{transform:rotate(120deg)}}
@media(prefers-reduced-motion:reduce){.hero *,.hero *::after{animation:none!important}.hero-word::after{display:none}.motion-toggle{display:none}}

/* Keep the complete neutral drawing visible beneath the animated colour. */
.blueprint-base{color:#aeb1a8}
.blueprint-guides{stroke:#aeb1a8}
.blueprint-tracer{opacity:0}
.blueprint.is-animated .blueprint-edge{stroke-dasharray:1;animation:blueprint-top-draw 9s cubic-bezier(.4,0,.2,1) infinite}
.blueprint.is-animated .blueprint-left{animation-name:blueprint-left-draw}
.blueprint.is-animated .blueprint-right{animation-name:blueprint-right-draw}
.blueprint.is-animated .blueprint-grid{animation-name:blueprint-grid-draw}
.blueprint.is-animated .blueprint-hidden,.blueprint.is-animated .blueprint-nodes{animation:blueprint-resolve 9s ease-in-out infinite}
.blueprint.is-animated .blueprint-tracer{stroke-dasharray:.07 .93;animation:blueprint-trace 9s linear infinite}
.blueprint.motion-paused *,.blueprint.motion-idle *{animation-play-state:paused!important}
@keyframes blueprint-top-draw{0%,5%{stroke-dashoffset:1;opacity:0}7%{opacity:1}28%,84%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes blueprint-left-draw{0%,20%{stroke-dashoffset:1;opacity:0}22%{opacity:1}41%,84%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes blueprint-right-draw{0%,31%{stroke-dashoffset:1;opacity:0}33%{opacity:1}50%,84%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes blueprint-grid-draw{0%,43%{stroke-dashoffset:1;opacity:0}45%{opacity:1}64%,84%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes blueprint-resolve{0%,52%{opacity:0}66%,84%{opacity:1}96%,100%{opacity:0}}
@keyframes blueprint-trace{0%,5%{stroke-dashoffset:.07;opacity:0}7%{opacity:1}28%{stroke-dashoffset:-.93;opacity:1}32%,100%{stroke-dashoffset:-.93;opacity:0}}
@media(prefers-reduced-motion:reduce){.blueprint.is-animated *{animation:none!important}.blueprint.is-animated .blueprint-edge{stroke-dasharray:none;stroke-dashoffset:0}.blueprint-tracer{display:none}}

/* AI: retain the quiet orbital structure while signals circulate through it. */
.intelligence-art .orb{border-color:#b9b2a6}
.ai-network{position:absolute;left:50%;top:50%;width:360px;height:280px;transform:translate(-50%,-50%);pointer-events:none;color:#b9b2a6}
.ai-signals{opacity:0}
.ai-neuron{transform-box:fill-box;transform-origin:center}
.intelligence-art.is-animated .ai-signals{opacity:.8}
.intelligence-art.is-animated .ai-signal{stroke-dasharray:7 93;animation:ai-signal-flow 7s linear infinite}
.intelligence-art.is-animated .ai-signal-two{animation-delay:-2.33s;animation-direction:reverse}
.intelligence-art.is-animated .ai-signal-three{animation-delay:-4.66s}
.intelligence-art.is-animated .ai-neuron{animation:ai-neuron-response 7s ease-in-out infinite}
.intelligence-art.is-animated .ai-neuron-two{animation-delay:-1.75s}
.intelligence-art.is-animated .ai-neuron-three{animation-delay:-3.5s}
.intelligence-art.is-animated .ai-neuron-four{animation-delay:-5.25s}
.intelligence-art.is-animated b{animation:ai-core-response 7s ease-in-out infinite}
.intelligence-art.is-animated b span{animation:ai-core-turn 7s cubic-bezier(.65,0,.2,1) infinite}
.intelligence-art.motion-paused *,.intelligence-art.motion-idle *{animation-play-state:paused!important}
@keyframes ai-signal-flow{from{stroke-dashoffset:0}to{stroke-dashoffset:-100}}
@keyframes ai-neuron-response{0%,35%,100%{fill:#b9b2a6;transform:scale(1)}12%,22%{fill:var(--orange);transform:scale(1.4)}}
@keyframes ai-core-response{0%,28%,80%,100%{color:#a45c3e;transform:scale(1)}48%,58%{color:var(--orange);transform:scale(1.025)}}
@keyframes ai-core-turn{0%,28%{transform:rotate(0)}58%,100%{transform:rotate(90deg)}}
@media(prefers-reduced-motion:reduce){.intelligence-art.is-animated *{animation:none!important}.intelligence-art.is-animated .ai-signals{opacity:0}}

/* Factory: collect process data, scan quality, then pass the result forward. */
.factory-art .production i{position:relative}
.factory-art .quality{position:relative}
.factory-art.is-animated .production i::after{content:'';position:absolute;inset:0;background:var(--olive);transform-origin:bottom;animation:factory-production 7s ease-in-out infinite}
.factory-art .production i:nth-child(2){--bar-delay:.2s}
.factory-art .production i:nth-child(3){--bar-delay:.4s}
.factory-art .production i:nth-child(4){--bar-delay:.6s}
.factory-art .production i:nth-child(5){--bar-delay:.8s}
.factory-art.is-animated .production i::after{animation-delay:var(--bar-delay,0s)}
.factory-art.is-animated .quality::after{content:'';position:absolute;left:0;right:0;top:20%;height:1px;background:linear-gradient(90deg,transparent,var(--orange),transparent);opacity:0;pointer-events:none;animation:factory-quality-scan 7s ease-in-out infinite}
.factory-art.is-animated .quality strong{animation:factory-quality-response 7s ease-in-out infinite}
.factory-art.is-animated .quality strong span{display:block;animation:factory-result 7s ease-in-out infinite}
.factory-art.is-animated .quality>div span{display:inline-block;animation:factory-data-flow 7s ease-in-out infinite}
.factory-art.motion-paused *,.factory-art.motion-paused *::after,.factory-art.motion-idle *,.factory-art.motion-idle *::after{animation-play-state:paused!important}
@keyframes factory-production{0%,62%,100%{transform:scaleY(.3);background:var(--olive)}12%{transform:scaleY(.85);background:var(--olive)}24%,32%{transform:scaleY(1);background:var(--orange)}44%{transform:scaleY(.65);background:var(--olive)}}
@keyframes factory-quality-scan{0%,18%{top:20%;opacity:0}24%{opacity:.65}50%{top:76%;opacity:.65}58%,100%{top:76%;opacity:0}}
@keyframes factory-quality-response{0%,42%,88%,100%{color:var(--olive)}58%,72%{color:var(--orange)}}
@keyframes factory-result{0%,48%,88%,100%{color:var(--olive);transform:translate(0,0)}62%,72%{color:var(--orange);transform:translate(3px,-3px)}}
@keyframes factory-data-flow{0%,52%,92%,100%{color:var(--olive);transform:translateX(0)}66%{color:var(--orange);transform:translateX(5px)}78%{color:var(--olive);transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.factory-art.is-animated *,.factory-art.is-animated *::after{animation:none!important}.factory-art.is-animated .production i::after,.factory-art.is-animated .quality::after{display:none}}

.footer-contact{white-space:nowrap}
