
:root{--bg:#0b0d0c;--panel:#121713;--paper:#f0f1e9;--muted:#a0a99e;--line:#edf5df21;--green:#c6ff62;--violet:#ae9dff;--mono:Consolas,"Liberation Mono",monospace;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--paper);font:16px/1.65 var(--sans)}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 85% 10%,#9c8cff10,transparent 45%),radial-gradient(ellipse at 5% 45%,#c6ff6209,transparent 45%);pointer-events:none}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:5px}::selection{background:var(--green);color:var(--bg)}.shell{max-width:1240px;width:calc(100% - 64px);margin:auto}.skip{position:fixed;top:-90px;z-index:100;background:var(--green);color:var(--bg);padding:12px}.skip:focus{top:10px}header{position:sticky;top:0;z-index:20;background:#0b0d0ceb;backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;gap:25px;min-height:84px}.brand{display:flex;align-items:center;gap:11px;margin-right:auto}.mark{width:36px;height:36px;border:1px solid #c6ff6270;border-radius:10px;display:grid;place-items:center;color:var(--green);font:20px var(--mono);background:#c6ff6209}.brand strong{display:block;font-size:14px;letter-spacing:-.02em}.brand small{display:block;font:9px var(--mono);letter-spacing:.2em;color:var(--muted);margin-top:3px}.links{display:flex;gap:22px;font-size:12px;color:var(--muted)}.links a:hover{color:var(--green)}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:46px;border:1px solid var(--line);border-radius:9px;padding:10px 17px;background:transparent;color:var(--paper);font-size:12px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#ffffff09;transform:translateY(-2px)}.button.primary{background:var(--green);border-color:var(--green);color:var(--bg)}.lang{min-width:46px}.menu{display:none}.eyebrow,.label{font:10px/1.6 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.eyebrow{display:flex;align-items:center;gap:10px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 15px #c6ff6260}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:65px;align-items:center;min-height:760px;padding:95px 0 85px}h1{font-size:clamp(48px,5.8vw,80px);line-height:1.03;letter-spacing:-.065em;font-weight:550;margin:24px 0}h1 em{color:var(--green);font-style:normal}p{margin:0 0 18px}.intro{max-width:540px;color:var(--muted);font-size:17px;line-height:1.85}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.hero-tags{font:10px/1.8 var(--mono);color:var(--muted);display:flex;gap:18px;flex-wrap:wrap}.hero-tags span:before{content:"/ ";color:var(--green)}.console{border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,#1c241c80,#101411);overflow:hidden;box-shadow:0 30px 90px #0004}.bar{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line);font:9px var(--mono);letter-spacing:.1em;color:var(--muted)}.window{display:flex;gap:5px}.window i{width:5px;height:5px;background:#64725e;border-radius:50%}.window i:first-child{background:var(--green)}.network{position:relative;height:320px;margin:18px;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:23px 23px}.network svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.wire{fill:none;stroke:#c6ff6238;stroke-width:1}.signal{fill:none;stroke:var(--green);stroke-width:1.6;stroke-dasharray:5 160;animation:flow 4s linear infinite}.node{position:absolute;transform:translate(-50%,-50%);border:1px solid #edf5df30;border-radius:9px;background:#171e17;color:#c1c9bb;min-width:84px;padding:12px 8px;font:10px var(--mono);transition:background .3s,border-color .3s,box-shadow .3s}.node:hover{border-color:var(--green)}.node.active{color:var(--bg);background:var(--green);border-color:var(--green);box-shadow:0 0 28px #c6ff621c}.node.done{border-color:#c6ff6280;color:var(--green)}.node.review{border-color:#ae9dff80}.n0{left:15%;top:50%}.n1{left:39%;top:50%}.n2{left:62%;top:22%}.n3{left:62%;top:78%}.n4{left:85%;top:50%}.hero-info{border-top:1px solid var(--line);padding:18px 22px;min-height:108px}.hero-info strong{font-size:13px;font-weight:500}.hero-info p{font-size:12px;color:var(--muted);margin:6px 0 0}.ticker{border-block:1px solid var(--line);padding:20px 0;display:flex;gap:28px;justify-content:space-between;flex-wrap:wrap;color:#a1aa9c;font:11px var(--mono)}.ticker span{display:flex;align-items:center;gap:10px}.ticker b{font-size:10px;color:var(--green);font-weight:400}.section{padding:105px 0;border-bottom:1px solid var(--line)}.section-head{display:grid;grid-template-columns:190px 1fr;gap:30px;margin-bottom:45px}.section-head .label{padding-top:9px}.label b{color:var(--green);margin-right:12px;font-weight:400}h2{font-size:clamp(32px,4vw,52px);line-height:1.14;letter-spacing:-.045em;font-weight:500;margin:0 0 18px}.section-head p{max-width:650px;color:var(--muted);font-size:15px;margin:0}.services{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.service{padding:35px 32px;border-bottom:1px solid var(--line);position:relative}.service:nth-child(odd){border-right:1px solid var(--line);padding-left:0}.service:nth-child(even){padding-right:0}.service .num{color:var(--green);font:11px var(--mono)}h3{font-size:23px;font-weight:500;letter-spacing:-.025em;line-height:1.3;margin:18px 0 13px}.service p{font-size:14px;color:var(--muted);max-width:460px}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{font:10px var(--mono);color:#b3bfa8;padding:7px 9px;background:#ffffff03;border:1px solid var(--line);border-radius:5px}.text-link{display:inline-flex;gap:22px;color:var(--green);font-size:12px;margin-top:25px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.work-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#ffffff02}.work-art{height:175px;display:grid;place-content:center;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at center,#c6ff620b,transparent 65%);font:12px var(--mono);color:var(--green);text-align:center;gap:13px}.work-art.purple{color:var(--violet);background:radial-gradient(ellipse at center,#ae9dff12,transparent 65%)}.art-path{font-size:22px;letter-spacing:10px}.work-copy{padding:24px;display:flex;flex-direction:column;flex:1}.work-copy h3{font-size:20px;margin-top:12px}.work-copy p{font-size:13px;color:var(--muted)}.work-copy a{margin-top:auto;padding-top:15px}.lab{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#111611}.lab-top{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:20px;border-bottom:1px solid var(--line)}.scenarios{display:flex;gap:6px;flex-wrap:wrap}.scenario{border:1px solid transparent;background:transparent;color:var(--muted);padding:10px 12px;border-radius:7px;font-size:12px;min-height:44px}.scenario.selected{border-color:#c6ff6250;color:var(--green);background:#c6ff620a}.lab-grid{display:grid;grid-template-columns:1.35fr 1fr}.lab-map{border-right:1px solid var(--line);padding:15px}.lab-map .network{height:290px}.node-detail{font-size:12px;color:var(--muted);min-height:68px;padding:0 16px}.node-detail strong{color:var(--paper);font-weight:500}.log-panel{padding:27px}.log-title{display:flex;justify-content:space-between;gap:15px}.status{color:var(--green);font:10px var(--mono)}.event-list{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:13px}.event-list li{font-size:12px;color:var(--muted);display:flex;gap:12px;padding-bottom:12px;border-bottom:1px solid #edf5df0a}.event-list b{font:10px/1.9 var(--mono);color:var(--green);font-weight:400}.lab-bottom{padding:20px;border-top:1px solid var(--line)}.controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.controls .button{min-height:44px}.review-actions{display:flex;gap:8px;flex-wrap:wrap;padding:15px 0}.review-actions[hidden]{display:none}.result{margin-top:20px;padding:18px;background:#0b0d0c;border:1px solid var(--line);border-radius:9px}.result p{font-size:13px;color:var(--muted);margin:9px 0 0;white-space:pre-line}.hint{font-size:11px;color:var(--muted);margin-top:16px;margin-bottom:0}.process{display:grid;grid-template-columns:repeat(5,1fr);gap:25px}.process article{border-top:1px solid #c6ff6250;padding-top:20px}.process b{font:11px var(--mono);color:var(--green)}.process h3{font-size:18px}.process p{font-size:12px;color:var(--muted)}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.studio-grid p{color:var(--muted);font-size:15px}.principles{display:grid;gap:0}.principle{padding:21px 0;border-bottom:1px solid var(--line)}.principle:first-child{padding-top:0}.principle strong{font-size:16px;font-weight:500}.principle p{font-size:13px;margin:7px 0 0}.research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.research-grid article{border-top:1px solid var(--line);padding-top:25px}.research-grid h3{font-size:20px}.research-grid p{color:var(--muted);font-size:13px}.contact{padding:75px;border:1px solid var(--line);border-radius:20px;background:radial-gradient(ellipse at right top,#c6ff6210,transparent 65%)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.contact p{color:var(--muted);font-size:14px}.field{display:grid;gap:7px;margin-bottom:17px}.field label{font-size:12px;color:#c3ccbc}input,select,textarea{width:100%;background:#0b0d0c;color:var(--paper);border:1px solid #edf5df30;border-radius:7px;padding:12px;font-size:13px}textarea{resize:vertical;min-height:120px}.feedback{font-size:12px;margin:12px 0 0;min-height:22px}.contact .button{width:100%}footer{padding:35px 0}.footer-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font:10px/1.8 var(--mono);color:var(--muted)}.footer-row button{color:var(--muted);border:0;background:transparent;font:inherit;min-height:44px}.footer-row button:hover{color:var(--green)}html[lang=zh-CN] h1{font-size:clamp(46px,5vw,68px);line-height:1.25;letter-spacing:-.035em}html[lang=zh-CN] h2{line-height:1.3}html[lang=zh-CN] .intro{line-height:1.9}.motion-off *, .motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off{scroll-behavior:auto}@keyframes flow{to{stroke-dashoffset:-330}}
@media(min-width:1500px){.hero{min-height:820px}}@media(max-width:1050px){.nav{gap:12px}.links{gap:13px}.nav>.primary{display:none}.hero{gap:30px}.section-head{grid-template-columns:140px 1fr}.contact{padding:40px}.studio-grid{gap:40px}.node{min-width:68px;font-size:9px}.process{gap:16px}}
@media(max-width:760px){.shell{width:calc(100% - 36px)}.nav{min-height:72px}.brand strong{font-size:12px}.brand small{font-size:8px}.menu{display:inline-flex}.links{display:none;position:absolute;top:72px;left:0;right:0;background:#111711;padding:22px;flex-direction:column;border-bottom:1px solid var(--line)}.links.open{display:flex}.links a{padding:8px}.hero{grid-template-columns:1fr;padding:60px 0;min-height:auto;gap:35px}h1{font-size:58px}.intro{font-size:15px}.hero .network{height:270px}.ticker{gap:15px;font-size:9px}.section{padding:65px 0}.section-head{grid-template-columns:1fr;gap:14px;margin-bottom:30px}.section-head .label{padding:0}.services{grid-template-columns:1fr}.service,.service:nth-child(even),.service:nth-child(odd){padding:28px 0;border-right:0}.work-grid,.research-grid{grid-template-columns:1fr}.work-art{height:145px}.lab-top{align-items:flex-start;flex-direction:column}.lab-grid{grid-template-columns:1fr}.lab-map{border-right:0;border-bottom:1px solid var(--line)}.lab-map .network{height:400px;margin:12px}.lab-map svg{display:none}.lab-map .node{left:0;top:auto;transform:none;position:relative;display:block;width:100%;padding:15px;margin-bottom:16px;text-align:left}.lab-map .node:after{content:'↓';position:absolute;bottom:-17px;left:50%;color:var(--green)}.lab-map .node:last-child:after{content:''}.node-detail{min-height:65px}.log-panel{padding:22px}.process{grid-template-columns:1fr 1fr;gap:25px}.studio-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.contact{padding:27px 22px}.footer-row{font-size:9px}.scenario{font-size:11px;padding:8px}.bar{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* Company presentation */
body{overflow-x:clip}.orbit-label{gap:12px}.brand{min-width:0}.brand small{max-width:100%}
.shell{max-width:1200px}.hero{min-height:740px;grid-template-columns:1.13fr 1fr;gap:60px;padding-block:100px}h1{font-size:clamp(50px,5.7vw,78px);font-weight:520;line-height:1.06}.intro{font-size:16px;max-width:525px}.hero-note{font-size:12px;color:var(--muted);margin-top:28px}.brand small{letter-spacing:.14em}.section{padding:96px 0}.section-head{grid-template-columns:180px 1fr}.hero-visual{position:relative;padding:30px 0}.orbit-label{display:flex;justify-content:space-between;font:9px var(--mono);color:var(--muted);letter-spacing:.1em;padding:16px 0;border-block:1px solid var(--line)}.visual-title{font-size:25px;letter-spacing:-.035em;font-weight:500;padding-top:25px}.visual-sub{font-size:12px;color:var(--muted);max-width:360px}.hero-visual .network{height:290px;margin-inline:0}.hero-visual:before{content:'';position:absolute;inset:45px -20px;background:radial-gradient(ellipse,#c6ff620a,transparent 65%);pointer-events:none}.visual-foot{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.visual-foot strong{color:var(--green);font-weight:400}.service{padding-block:37px}.service h3{font-size:26px}.service p{max-width:none}.deliverables{padding:18px 0 0;list-style:none;margin:0;display:grid;gap:8px}.deliverables li{font-size:13px;color:#d0d7c9;display:flex;gap:10px}.deliverables li:before{content:'↳';color:var(--green)}.service-bottom{padding-top:24px;color:var(--muted);font-size:11px;display:flex;gap:12px;flex-wrap:wrap}.service-bottom b{color:var(--green);font-weight:400}.service details{margin-top:24px;border-top:1px solid var(--line);padding-top:15px}.service summary{cursor:pointer;font-size:12px;min-height:38px;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--green)}.service summary:after{content:'+'}.service details[open] summary:after{content:'−'}.service details p{font-size:13px;margin:10px 0 0}.applications{display:grid;grid-template-columns:1.15fr 1fr;gap:70px}.application-list{display:grid}.application-item{padding:24px 0;border-top:1px solid var(--line)}.application-item:first-child{padding-top:0;border:0}.application-item h3{font-size:20px;margin:0 0 10px}.application-item p{font-size:13px;color:var(--muted);margin:0}.architecture{background:linear-gradient(135deg,#151c14,#0d110e);border:1px solid var(--line);border-radius:14px;padding:28px;align-self:start}.architecture .network{height:300px;margin:0}.architecture .node{min-width:76px}.architecture-note{border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:var(--muted);margin:0}.role-panel{min-height:84px;margin:10px 0 20px}.role-panel strong{font-weight:500;font-size:15px}.role-panel p{font-size:12px;color:var(--muted);margin:6px 0}.engagements{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}.engagement{padding:25px;border:1px solid var(--line);border-radius:10px;background:#ffffff02}.engagement h3{font-size:19px;margin:12px 0}.engagement p{font-size:13px;color:var(--muted);margin:0}.faq-list{max-width:850px;margin-left:auto}.faq-list details{border-top:1px solid var(--line);padding:20px 0}.faq-list summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:25px;align-items:center;min-height:44px;font-size:16px}.faq-list summary:after{content:'+';font:20px var(--mono);color:var(--green)}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:14px;color:var(--muted);max-width:720px;margin:10px 0}.contact{padding:55px}.brief-list{list-style:none;margin:0;padding:0}.brief-list li{display:grid;grid-template-columns:30px 1fr;gap:15px;padding:17px 0;border-top:1px solid var(--line);font-size:13px}.brief-list b{font:10px/2 var(--mono);color:var(--green);font-weight:400}.contact-state{font-size:12px;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);margin-top:25px}.footer-links{display:flex;gap:20px;align-items:start;flex-wrap:wrap}.footer-links a{min-height:44px;display:inline-flex;align-items:center}.privacy-dialog{width:min(580px,calc(100% - 36px));background:#151b15;color:var(--paper);border:1px solid var(--line);border-radius:14px;padding:32px}.privacy-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.privacy-dialog h2{font-size:27px}.privacy-dialog p{font-size:14px;color:var(--muted)}.motion-off .signal{animation:none!important}.node{min-height:44px}.node[aria-pressed=true]{border-color:var(--green);background:#c6ff6210;color:var(--green)}summary:focus-visible{outline:2px solid var(--green);outline-offset:4px}summary::-webkit-details-marker{display:none}body{overflow-wrap:break-word}.hero>*,.applications>*,.contact-grid>*,.studio-grid>*{min-width:0}
@media(max-width:1050px){.nav>.primary{display:inline-flex}.links{gap:14px}.hero{gap:30px}.section-head{grid-template-columns:140px 1fr}.applications{gap:30px}.architecture{padding:20px}.contact{padding:35px}}
@media(max-width:850px){.nav>.primary{display:none}.hero{gap:20px}.node{min-width:63px}.architecture .node{min-width:63px;font-size:9px}.engagements{grid-template-columns:1fr}.engagement{display:grid;grid-template-columns:150px 1fr;column-gap:20px}.engagement .label{grid-column:1/-1}.engagement h3{margin-top:8px}.engagement p{margin-top:8px}}
@media(max-width:760px){.hero{grid-template-columns:1fr;padding-block:60px}.hero-visual{padding:5px 0}.hero-visual .network{height:260px}.section{padding:65px 0}.section-head{grid-template-columns:1fr}.applications{grid-template-columns:1fr;gap:35px}.architecture .network{height:260px}.engagement{display:block}.contact{padding:28px 22px}.process{grid-template-columns:1fr 1fr}.intro{font-size:15px}.footer-links{gap:14px}.contact-grid{gap:20px}.service h3{font-size:24px}}
@media(max-width:380px){.brand strong{font-size:11px}.brand small{font-size:7px}.nav{gap:8px}.nav .button{padding:8px}.mark{width:30px;height:30px}.hero .node,.architecture .node{min-width:55px;font-size:8px;padding:10px 4px}}

/* Multi-page site */
.links a[aria-current=page]{color:var(--green)}.page-hero{padding:65px 0 60px;border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font:11px/1.8 var(--mono);color:var(--muted);margin-bottom:48px}.breadcrumbs a:hover{color:var(--green)}.breadcrumbs span[aria-hidden]{color:#66705f}.page-hero h1{font-size:clamp(40px,5.1vw,68px);max-width:960px;margin:18px 0 24px;line-height:1.1}.page-hero .intro{max-width:780px}.page-hero .eyebrow{color:var(--green)}.page-content>.section:first-child{padding-top:70px}.page-content .section-head{grid-template-columns:160px 1fr}.page-content .section-head h2{font-size:clamp(29px,3.5vw,43px)}.page-content .section-head .label{padding-top:6px}.page-content .section-head:has(h2:empty){display:none}.page-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.page-services{display:grid;grid-template-columns:1fr 1fr;gap:22px}.page-service{display:block;padding:32px;border:1px solid var(--line);border-radius:12px;background:#ffffff02;transition:background .2s,border-color .2s}.page-service:hover{background:#c6ff6205;border-color:#c6ff6260}.page-service h3{font-size:25px}.page-service p{font-size:14px;color:var(--muted)}.page-service .text-link{margin-top:22px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.detail-copy p{font-size:15px;color:var(--muted)}.detail-copy h3{font-size:25px;margin-top:0}.detail-copy ul{padding:0;list-style:none;margin:22px 0}.detail-copy li{border-top:1px solid var(--line);padding:14px 0;font-size:14px;color:#c8d0c1}.detail-copy li:before{content:'↳';color:var(--green);margin-right:12px}.detail-panel{padding:30px;border:1px solid var(--line);border-radius:12px;background:#ffffff02;align-self:start}.detail-panel h3{font-size:21px;margin-top:10px}.detail-panel p{font-size:14px;color:var(--muted)}.next-panel{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding:40px 0}.next-panel h2{font-size:30px;margin:0 0 10px}.next-panel p{font-size:14px;color:var(--muted);margin:0}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.related-card{padding:24px;border:1px solid var(--line);border-radius:9px}.related-card h3{font-size:18px;margin:12px 0}.related-card p{color:var(--muted);font-size:13px}.overview-links{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.overview-link{border-top:1px solid var(--line);padding:28px 0}.overview-link h3{font-size:24px}.overview-link p{color:var(--muted);font-size:14px}.home-service-link{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);padding-top:18px;margin-top:22px;color:var(--green);font-size:13px}.section-actions{margin-top:35px}.page-content .contact{margin-top:0}.research-note{margin-top:35px;color:var(--muted);font-size:13px;max-width:800px}.footer-links{gap:16px}.footer-links a{min-height:44px}html[lang=zh-CN] .page-hero h1{font-size:clamp(38px,4.5vw,60px)}
@media(max-width:760px){.hero-visual:before{inset-inline:0}.page-hero{padding:35px 0 45px}.breadcrumbs{margin-bottom:30px;font-size:10px}.page-hero h1{font-size:43px}.page-content .section-head{grid-template-columns:1fr}.page-services,.detail-grid{grid-template-columns:1fr;gap:25px}.related-grid,.overview-links{grid-template-columns:1fr}.page-service{padding:25px}.next-panel{align-items:flex-start;flex-direction:column}.page-content>.section:first-child{padding-top:45px}.detail-panel{padding:24px}.page-hero .intro{font-size:15px}}

/* Latte — studio mascot */
.brand .mark{object-fit:cover;border-color:#ead9bd66;background:#f5f1e9}.mascot-section{padding:65px 0;border-bottom:1px solid var(--line)}.mascot-card{display:grid;grid-template-columns:240px 1fr;gap:55px;align-items:center;padding:28px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(120deg,#ccb08a09,#ffffff02)}.mascot-photo{margin:0;position:relative;border-radius:11px;overflow:hidden;background:#d0bda7}.mascot-photo>img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 40%;transition:transform .6s}.mascot-photo:hover>img{transform:scale(1.025)}.mascot-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:24px 16px 13px;background:linear-gradient(transparent,#000b);font:10px var(--mono);color:#fff;display:flex;justify-content:space-between;gap:12px}.mascot-heading{display:flex;align-items:center;gap:15px;margin:18px 0}.mascot-avatar{width:52px;height:52px;border-radius:50%;border:1px solid #d8c7ac80;object-fit:cover;background:#f5f1e9}.mascot-heading h2{margin:0;font-size:37px}.mascot-copy>p{max-width:630px;font-size:15px;color:var(--muted)}.mascot-copy .label{color:#d5bea0}.mascot-copy .text-link{margin-top:9px}.mascot-full{grid-template-columns:minmax(220px,360px) 1fr;gap:65px;padding:35px}.mascot-full .mascot-heading h2{font-size:46px}.mascot-full .mascot-photo>img{aspect-ratio:4/5}.mascot-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.mascot-tags span{border:1px solid var(--line);border-radius:30px;padding:5px 12px;font-size:11px;color:#cdbb9f}
@media(max-width:760px){.mascot-section{padding:45px 0}.mascot-card,.mascot-full{grid-template-columns:1fr;gap:28px;padding:22px}.mascot-photo{max-width:340px;width:100%;margin-inline:auto}.mascot-card:not(.mascot-full) .mascot-photo>img{aspect-ratio:5/4;object-position:center 33%}.mascot-heading h2,.mascot-full .mascot-heading h2{font-size:34px}.mascot-copy>p{font-size:14px}.mascot-avatar{width:46px;height:46px}}

.project-feature{display:grid;grid-template-columns:1fr 1.1fr;gap:45px;align-items:center;padding:35px;border:1px solid var(--line);border-radius:15px;background:radial-gradient(ellipse at left top,#c6ff6208,transparent 70%)}.project-feature h2{font-size:clamp(30px,3vw,43px);margin-top:18px}.project-feature p{font-size:14px;color:var(--muted)}.project-feature img{display:block;width:100%;height:auto;border-radius:8px;border:1px solid #ffffff26}.project-meta{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.project-meta span{padding:6px 10px;border:1px solid var(--line);border-radius:5px;font:10px var(--mono);color:var(--muted)}.project-hero{padding-bottom:55px}.project-hero h1{max-width:1000px}.project-intro-line{font-size:20px;color:var(--green);margin-top:20px;letter-spacing:-.02em}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.feature-item{padding:25px 0;border-top:1px solid var(--line)}.feature-item h3{font-size:20px}.feature-item p{font-size:14px;color:var(--muted)}.system-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin:25px 0}.system-stage{position:relative;border:1px solid var(--line);background:#131a12;border-radius:10px;padding:23px 16px}.system-stage:not(:last-child):after{content:'→';position:absolute;right:-14px;top:40%;color:var(--green);font:12px var(--mono);z-index:1}.system-stage strong{display:block;font-size:14px;font-weight:500;margin:15px 0 10px}.system-stage p{font-size:12px;color:var(--muted);margin:0}.system-stage .num{color:var(--green);font:10px var(--mono)}.system-stage.review{border-color:#ae9dff70}.architecture-footer{display:flex;gap:20px;flex-wrap:wrap;border-block:1px solid var(--line);padding:18px 0;font-size:12px;color:var(--muted)}.architecture-footer span:before{content:'↳ ';color:var(--green)}.screenshot{margin:0 0 38px}.screenshot a{display:block;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#eaf0f0}.screenshot img{display:block;width:100%;height:auto}.screenshot figcaption{display:flex;justify-content:space-between;gap:20px;padding:15px 0;color:var(--muted);font-size:12px}.showcase-note{padding:22px;border:1px solid var(--line);border-radius:10px;background:#ffffff02;font-size:13px;color:var(--muted);line-height:1.9}.project-back{font-size:12px;color:var(--green);margin-top:15px;display:inline-flex;gap:10px}.technical-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.technical-grid h3{font-size:22px}.technical-grid p{font-size:14px;color:var(--muted)}
@media(max-width:1100px){.nav>.primary{display:none}.nav{gap:18px}.links{gap:15px}}
@media(max-width:900px){.nav{min-height:72px}.menu{display:inline-flex}.links{display:none;position:absolute;top:72px;left:0;right:0;padding:22px;flex-direction:column;gap:12px;background:#111711;border-bottom:1px solid var(--line)}.links.open{display:flex}.links a{padding:8px}.feature-grid{grid-template-columns:1fr 1fr}.system-flow{grid-template-columns:1fr}.system-stage:not(:last-child):after{content:'↓';top:auto;bottom:-17px;left:50%;right:auto}.system-stage{padding:18px}.system-stage strong{margin-top:10px}.project-feature{gap:25px}}
@media(max-width:760px){.project-feature{grid-template-columns:1fr;padding:23px}.feature-grid,.technical-grid{grid-template-columns:1fr;gap:15px}.screenshot figcaption{flex-direction:column;gap:7px}.project-intro-line{font-size:18px}.showcase-note{padding:18px}.project-meta{gap:6px}}
