@font-face{font-family:"Ephraim Custom Kai";src:url("../assets/custom-service/fonts/Ephraim-Custom-Kai-8chars.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
/* Fixed front-end layout for the supplied 1024 × 1536 reference. All page rules are scoped. */
.custom-service{--cs-navy:#08084c;--cs-blue:#0c55e9;--cs-body:#455878;background:#fff;color:var(--cs-navy);font-family:"Ephraim Noto","Microsoft YaHei",sans-serif;font-size:.875rem;line-height:1.5;position:relative;isolation:isolate}
.custom-service:before,.custom-service:after{content:"";position:absolute;inset:0 0 auto;height:21.4375rem;pointer-events:none;z-index:-1;background-position:center top;background-size:100% 100%;background-repeat:no-repeat}
.custom-service:before{background-image:url('../assets/custom-service/hero/hero-lettering-underlay.svg')}
.custom-service:after{background-image:url('../assets/custom-service/hero/hero-full-reference.webp');mask:url('../assets/custom-service/hero/hero-lettering-mask.svg') center top/100% 100% no-repeat}
.custom-service #main{position:relative}.custom-service .site-header{height:3.75rem;color:white;background:transparent}
.custom-service .header-inner{width:57.25rem;max-width:calc(100% - 5rem);margin-left:5rem;gap:1.15rem}.custom-service .brand{gap:1.1rem;margin-right:1.1rem}.custom-service .brand-image{display:block;flex:none}.custom-service .brand img{width:7.25rem}.custom-service .brand span{font-size:1rem;font-weight:700}.custom-service .site-nav{border:0;gap:1.6rem;padding-left:1.2rem}.custom-service .site-nav a{font-size:.75rem}.custom-service .site-nav a[aria-current=page]:after{bottom:-.35rem;background:#38d8fe;height:.125rem}.custom-service .search-button{width:1.5rem;height:1.5rem}.custom-service .header-contact{font-size:.8125rem;border-radius:3rem;height:2.125rem;min-height:0;padding:0 1.3rem;gap:.8rem;background:linear-gradient(100deg,#009cff,#0055f7);border:0}
.custom-service .cs-container{width:59rem;max-width:calc(100% - 5rem);margin-inline:auto}.custom-service .cs-hero{height:17.6875rem;position:relative;color:#fff;overflow:hidden}.custom-service .cs-hero-copy{position:absolute;left:4.6875rem;top:.5rem;width:29rem;z-index:1}.custom-service .cs-hero h1{font-size:3.25rem;line-height:1.18;letter-spacing:.025em;font-weight:900;background:linear-gradient(#fff 20%,#eafcff 52%,#afebf3);background-clip:text;-webkit-background-clip:text;color:transparent}.custom-service .cs-hero-en{font:700 1.35rem/1.35 Arial,sans-serif;color:#90e1e9;margin-top:.08rem;white-space:nowrap}.custom-service .cs-hero-subtitle{font-size:1.25rem;line-height:1.45;font-weight:600;margin-top:.2rem;white-space:nowrap}.custom-service .cs-hero-description{font-size:.875rem;line-height:1.45;letter-spacing:.014em;margin-top:.32rem;white-space:nowrap;color:#e0edf9}.custom-service .cs-hero-actions{display:flex;gap:1rem;margin-top:.75rem}.custom-service .cs-button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;height:2.5rem;border:1px solid #169cfe;border-radius:.3rem;background:linear-gradient(105deg,#00b0ed,#0065fc 68%,#0445ef);color:white;font:700 .875rem/1.4 "Ephraim Noto",sans-serif;padding:0 1.45rem;box-shadow:0 .2rem .7rem #087eea22;white-space:nowrap}.custom-service .cs-button span{font:400 1.25rem/1 Arial,sans-serif}.custom-service .cs-button--outline{background:#052a5144;border-color:#a3b7d1;font-weight:400;padding-inline:1.65rem}.custom-service .cs-hero-tags{position:absolute;left:7.125rem;top:15.0625rem;display:flex;gap:3.45rem;margin:0;padding:0;list-style:none;font-size:.75rem;font-weight:500;line-height:1.5}.custom-service .cs-hero-tags li:nth-child(2){margin-left:.2rem}.custom-service .cs-hero-tags li:nth-child(3){margin-left:.55rem}.custom-service .cs-diagram{position:absolute;inset:0;pointer-events:none}.custom-service .cs-diagram-center{position:absolute;left:40.875rem;top:6.05rem;width:5.8rem;text-align:center;font-size:1.25rem;font-weight:700;line-height:1.25;color:#fff}.custom-service .cs-diagram-center small{display:block;font:400 .57rem/1.3 Arial,sans-serif;margin-top:.42rem;letter-spacing:.015em}.custom-service .cs-diagram-node{position:absolute;text-align:center;color:white;white-space:nowrap;width:4.4rem;font-size:.75rem;font-weight:500;line-height:1.3}.custom-service .cs-node-vector{left:41.5625rem;top:2.45rem}.custom-service .cs-node-link{left:34.75rem;top:6.5rem}.custom-service .cs-node-plan{left:48.45rem;top:6.5rem}.custom-service .cs-node-combination{left:36.55rem;top:14.45rem}.custom-service .cs-node-rna{left:46.55rem;top:14.45rem}.custom-service .cs-hero-slogan{position:absolute;left:53.125rem;top:9.875rem;width:10.875rem;height:7.8125rem;color:#fff;text-align:left}.custom-service .cs-hero-slogan p{font:400 1.40625rem/1 "Ephraim Custom Kai","KaiTi",serif;font-synthesis:none;margin:0}.custom-service .cs-slogan-line{position:absolute;display:block;white-space:nowrap;transform:rotate(-13deg);transform-origin:0 0}.custom-service .cs-slogan-line-one{left:1.843rem;top:1.8473rem}.custom-service .cs-slogan-line-two{left:2.9898rem;top:3.1565rem}.custom-service .cs-slogan-curve{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}.custom-service .cs-slogan-en{position:absolute;left:1.4844rem;top:5.51875rem;font:400 .58125rem/.859375rem Arial,sans-serif;color:#c5d8ef;transform:rotate(-10deg);transform-origin:0 0}.custom-service .cs-slogan-en>span{display:block;white-space:nowrap}.custom-service .cs-slogan-en>span+span{margin-left:-.1875rem}
.custom-service .cs-section{position:relative;background:linear-gradient(180deg,#f9fdff,#fff 45%,#f0faff)}.custom-service .cs-section-heading{height:3.1875rem;display:flex;align-items:center;gap:1.35rem;padding-inline:.5rem}.custom-service .cs-section-heading h2{display:flex;align-items:baseline;gap:1.375rem;font-size:1.375rem;line-height:1.3;font-weight:800;white-space:nowrap}.custom-service .cs-section-number{font:700 2.25rem/1.12 Arial,sans-serif;letter-spacing:-.04em;width:2.5rem;color:var(--cs-blue);position:relative;flex:none}.custom-service .cs-section-number:after{content:"";position:absolute;left:0;right:0;bottom:-.1rem;border-bottom:1px solid var(--cs-blue)}.custom-service .cs-section-heading>p{color:var(--cs-body);font-size:.75rem;line-height:1.6;white-space:nowrap}.custom-service .cs-card{min-width:0;border:1px solid #e2f1f7;border-radius:.375rem;background:linear-gradient(125deg,#fff,#fcfeff);box-shadow:0 .25rem .8rem #329fda17}.custom-service .cs-card h3{color:var(--cs-navy);font-weight:750}.custom-service .cs-card p{color:var(--cs-body)}.custom-service .cs-card img{flex:none}
.custom-service .cs-introduction{height:4.4375rem;background:linear-gradient(#fff,#f6fcff)}.custom-service .cs-introduction .cs-container{height:100%;display:flex;align-items:center;gap:1.75rem}.custom-service .cs-introduction .cs-section-heading{height:auto;padding-top:0;flex:none}.custom-service .cs-introduction-copy{font-size:.8125rem;line-height:1.55;color:var(--cs-body);white-space:nowrap}.custom-service .cs-introduction blockquote{margin:0 0 0 auto;min-width:10.6rem;height:3.4rem;display:flex;gap:.8rem;align-items:center;justify-content:center;background:linear-gradient(100deg,#e9f8fe,#dff2fc);border-radius:.4rem;color:#204778}.custom-service .cs-introduction blockquote p{font-size:.875rem;line-height:1.4;white-space:nowrap}.custom-service .cs-introduction blockquote span{font:700 2rem/1 Georgia,serif;color:#028ce1;align-self:flex-start}.custom-service .cs-introduction blockquote span:last-child{align-self:flex-end;transform:translateY(.3rem)}
.custom-service .cs-needs{height:19.5625rem}.custom-service .cs-needs-grid{display:grid;grid-template-columns:1.025fr 1fr 1.025fr;gap:.5rem}.custom-service .cs-need-card{height:7.5625rem;display:flex;align-items:center;gap:.75rem;padding:.625rem .625rem .45rem}.custom-service .cs-need-card>img{width:5.375rem;height:5.375rem;object-fit:contain;mix-blend-mode:multiply;border-radius:50%}.custom-service .cs-need-card>div{min-width:0;flex:1}.custom-service .cs-need-card h3{font-size:1.0625rem;line-height:1.45;white-space:nowrap}.custom-service .cs-need-card p{font-size:.75rem;line-height:1.45;margin-top:.24rem;white-space:nowrap}.custom-service .cs-consult{display:flex;width:8.8rem;height:1.6rem;align-items:center;justify-content:center;gap:.6rem;background:linear-gradient(100deg,#dfedf8,#c6eafb,#dbeaf5);color:var(--cs-navy);font-size:.75rem;font-weight:600;border-radius:.13rem;margin-top:.35rem}.custom-service .cs-consult span{font:1.05rem Arial,sans-serif;color:#2188c7}.custom-service .cs-need-rna{background:linear-gradient(115deg,#fcf5ff,#fff 90%)}.custom-service .cs-need-rna h3,.custom-service .cs-need-rna .cs-consult{color:#6513bc}.custom-service .cs-need-rna .cs-consult{background:linear-gradient(100deg,#f0e2fd,#e5d1fa)}.custom-service .cs-need-rna .cs-consult span{color:#7926c8}.custom-service .cs-need-delivery{background:linear-gradient(110deg,#ecffff,#fff 95%)}.custom-service .cs-need-delivery h3,.custom-service .cs-need-delivery .cs-consult{color:#168f88}.custom-service .cs-need-delivery .cs-consult{background:linear-gradient(100deg,#d5f4ef,#cdf0ef)}
.custom-service .cs-content{height:11.5625rem}.custom-service .cs-content .cs-section-heading{height:2.75rem;gap:1rem}.custom-service .cs-content-grid{display:grid;grid-template-columns:1.025fr .965fr 1fr 1fr;gap:.4rem}.custom-service .cs-content-card{height:6.3125rem;padding:.4rem .5rem;display:flex;align-items:center;gap:.6rem}.custom-service .cs-content-card>img{width:4.8125rem;height:4.8125rem;object-fit:contain;mix-blend-mode:multiply;border-radius:50%}.custom-service .cs-content-card h3{font-size:.9375rem;line-height:1.4;white-space:nowrap}.custom-service .cs-content-card p{font-size:.6875rem;line-height:1.55;margin-top:.32rem;white-space:nowrap}.custom-service .cs-content-notice{height:1.8rem;border-radius:.3rem;margin-top:.45rem;display:flex;align-items:center;justify-content:center;gap:.8rem;color:var(--cs-body);background:linear-gradient(100deg,#e1f3fa,#cfe8f8);font-size:.75rem}.custom-service .cs-content-notice span{font:bold .8rem Georgia,serif;border-radius:50%;background:#056ce9;color:white;width:1rem;height:1rem;text-align:center;line-height:1rem}
.custom-service .cs-workflow{height:9rem;background:linear-gradient(#fff,#fff 80%,#f8fcff)}.custom-service .cs-workflow .cs-section-heading{height:3.125rem}.custom-service .cs-workflow-list{display:grid;grid-template-columns:1.04fr 1fr 1fr 1fr .83fr;gap:1.75rem;list-style:none;margin:0;padding:0 .35rem}.custom-service .cs-workflow-list li{min-width:0;position:relative;display:flex;align-items:flex-start;gap:.45rem}.custom-service .cs-workflow-list img{width:4rem;height:4rem;flex:none;object-fit:contain;mix-blend-mode:multiply;border-radius:50%}.custom-service .cs-workflow-list h3{font-size:.8125rem;line-height:1.5;white-space:nowrap}.custom-service .cs-workflow-list p{font-size:.6875rem;line-height:1.5;color:var(--cs-body);white-space:nowrap;margin-top:.25rem}.custom-service .cs-step-number{font:700 .75rem/1.7 Arial,sans-serif;color:var(--cs-blue)}.custom-service .cs-workflow-list li:not(:last-child):after{content:"→";font:1.6rem/1 Arial,sans-serif;color:#095ccb;position:absolute;left:calc(100% + .35rem);top:1.45rem}
.custom-service .cs-request{height:22.4375rem;background:radial-gradient(ellipse at 100% 90%,#cfeeff55,transparent 35%),linear-gradient(180deg,#f5fbff,#fff 48%,#edf8fe)}.custom-service .cs-request .cs-section-heading{height:2.8125rem;gap:1.5rem}.custom-service .cs-inquiry-grid{display:grid;grid-template-columns:37.125rem 1fr;gap:.5rem}.custom-service .cs-inquiry-form,.custom-service .cs-help{height:19.0625rem}.custom-service .cs-inquiry-form{padding:.7rem 1rem .6rem;background:#ffffffed}.custom-service .cs-purpose{margin:0 0 .45rem;padding:0;border:0;display:flex;align-items:flex-start;min-height:2.55rem}.custom-service .cs-purpose legend{float:left;width:5.9rem;flex:none;color:var(--cs-navy);font-weight:750;font-size:.75rem;line-height:1.75rem}.custom-service .cs-purpose-options{display:grid;grid-template-columns:1fr 1.06fr 1.22fr 1.12fr;gap:.27rem .65rem;padding-top:.25rem;flex:1}.custom-service .cs-purpose-options label{display:flex;align-items:center;gap:.35rem;color:#475d7c;white-space:nowrap;font-size:.625rem}.custom-service .cs-purpose-options label:last-child{grid-column:3/5}.custom-service .cs-purpose-options input{margin:0;width:.85rem;height:.85rem;accent-color:#176ee8;flex:none}.custom-service .cs-purpose legend span,.custom-service .cs-field label>span{color:#c93137}.custom-service .cs-fields{display:grid;grid-template-columns:1fr 1fr;gap:.35rem 1.25rem}.custom-service .cs-field{display:grid;grid-template-columns:5.9rem 1fr;align-items:center;min-width:0}.custom-service .cs-field--wide{grid-column:1/-1}.custom-service .cs-field:nth-child(4),.custom-service .cs-field:nth-child(6),.custom-service .cs-file-field{grid-template-columns:4.65rem 1fr}.custom-service .cs-field label{font-size:.75rem;font-weight:750;white-space:nowrap;line-height:1.4;color:var(--cs-navy)}.custom-service .cs-field input:not([type=file]),.custom-service .cs-field textarea{min-width:0;width:100%;height:1.75rem;border:1px solid #d9dfe6;border-radius:.2rem;padding:.25rem .55rem;font:400 .6875rem/1.4 "Ephraim Noto",sans-serif;color:#263b66;background:linear-gradient(#fff,#fefefe)}.custom-service .cs-field textarea{height:2.6rem;resize:vertical;max-height:6rem}.custom-service .cs-field--textarea{align-items:start}.custom-service .cs-field--textarea label{padding-top:.2rem}.custom-service .cs-field input::placeholder,.custom-service .cs-field textarea::placeholder{color:#a0a8b5}.custom-service .cs-file-control{display:flex;align-items:center;gap:.25rem;min-width:0;position:relative}.custom-service .cs-file-control input{width:4rem;font-size:0;height:1.75rem;color:transparent;cursor:pointer;flex:none}.custom-service .cs-file-control input::file-selector-button{color:#355789;font:400 .65rem "Ephraim Noto",sans-serif;width:4rem;height:1.75rem;border:0;border-radius:.15rem;background:#e6f1fb;padding:.2rem}.custom-service .cs-file-control>span{font-size:.48rem;white-space:nowrap;color:#71849c}.custom-service .cs-file-control output{position:absolute;left:0;right:0;top:100%;font-size:.55rem;overflow-wrap:anywhere;background:white;color:#245389;z-index:2}.custom-service .cs-file-control output:empty{display:none}.custom-service .cs-submit{margin-top:.85rem;width:100%;height:2.55rem;border:0;font-size:1rem;letter-spacing:.045em}.custom-service .cs-submit:disabled{opacity:.6;cursor:wait}.custom-service .cs-form-status{font-size:.8125rem;line-height:1.5;margin-top:.6rem;overflow-wrap:anywhere;color:#254976}.custom-service .cs-form-status:empty{display:none}.custom-service .cs-request:has(.cs-form-status:not(:empty)){height:auto;padding-bottom:1rem}.custom-service .cs-inquiry-form:has(.cs-form-status:not(:empty)){height:auto;min-height:19.0625rem}
.custom-service .cs-help{overflow:hidden;border-color:#d2e9f8;background:linear-gradient(120deg,#fff,#edf8ff)}.custom-service .cs-help-heading{height:4.625rem;position:relative;color:white;background:linear-gradient(110deg,#00468c,#006bbb 90%,#0094e7);padding:.65rem 1rem}.custom-service .cs-help-heading h2{font-size:1.5rem;line-height:1.4;letter-spacing:.08em;font-weight:800}.custom-service .cs-help-heading p{font-size:.75rem;line-height:1.6;color:white;white-space:nowrap}.custom-service .cs-help-heading img{position:absolute;width:3.125rem;height:3.1875rem;right:.8rem;top:.8rem;mix-blend-mode:screen}.custom-service .cs-help-body{position:relative;height:14.4375rem;padding:.6rem .75rem}.custom-service .cs-help address{font-style:normal;display:grid;gap:.25rem;width:100%;color:#0b2458}.custom-service .cs-help address>a,.custom-service .cs-help address>div{display:flex;align-items:center;gap:.5rem;min-height:2.35rem;max-width:12.15rem;font-size:.875rem;line-height:1.25}.custom-service .cs-help address img{width:2.25rem;height:2.3rem;object-fit:contain;mix-blend-mode:multiply;flex:none;border-radius:50%}.custom-service .cs-help address small{display:block;font-size:.57rem;line-height:1.4;color:#8996aa}.custom-service .cs-help address>a[href^='mailto']{font-size:.81rem}.custom-service .cs-help address .cs-help-address{max-width:100%;font-size:.72rem;line-height:1.4}.custom-service .cs-help-address>span{white-space:normal}.custom-service .cs-help-qr{position:absolute;right:.7rem;top:.5rem;width:7rem}.custom-service .cs-help-qr img{width:7rem;height:7rem;object-fit:contain;background:white}.custom-service .cs-help-qr p{font-size:.7rem;text-align:center;line-height:1.4;margin-top:.15rem;white-space:pre-line;color:#133b74}.custom-service .cs-help-note{position:absolute;left:.6rem;right:.6rem;bottom:.35rem;background:#d2eafb;border-radius:.3rem;height:1.75rem;display:flex;justify-content:center;align-items:center;gap:.35rem;color:#547393!important;font-size:.65rem;white-space:nowrap}.custom-service .cs-help-note span{color:#056ddd}
.custom-service .site-footer{height:7.75rem;min-height:0;background:#032350 url('../assets/lentivirus/backgrounds/footer-background-strip-2172x264.webp') center/cover no-repeat;color:#fff;border:0;padding:0}.custom-service .footer-inner{width:57rem;max-width:calc(100% - 7rem);display:grid;grid-template-columns:29rem 1fr;gap:2.8rem;padding-top:1rem;height:100%}.custom-service .footer-brand{padding:0;border-right:1px solid #497cab;height:4.2rem}.custom-service .footer-identity{padding:0;gap:1rem;flex-wrap:nowrap}.custom-service .footer-identity img{width:7rem;height:auto}.custom-service .company-name{font-size:.875rem;line-height:1.55}.custom-service .company-en{font:400 .75rem Arial,sans-serif;letter-spacing:0;margin:0;line-height:1.5}.custom-service .slogan{margin-top:.7rem;font-size:.75rem;text-align:left;white-space:nowrap;padding-left:1.15rem}.custom-service .slogan span{font:400 .75rem Arial,sans-serif;display:inline;padding-left:.4rem;margin-left:.4rem}.custom-service .contact-details{font-size:.75rem;gap:.35rem;line-height:1.5}.custom-service .contact-details>a,.custom-service .contact-details>div{gap:1rem;align-items:center}.custom-service .contact-icon{width:1.3rem;height:1.3rem}.custom-service .contact-icon svg{width:.9rem;height:.9rem}.custom-service .footer-qr{display:none}.custom-service .contact-details>div>span:last-child{font-size:.65rem;white-space:nowrap}.custom-service .contact-details br{display:none}.custom-service .search-dialog{color:#082564;background:white}.custom-service a:focus-visible,.custom-service input:focus-visible,.custom-service textarea:focus-visible,.custom-service button:focus-visible{outline:2px solid #0098ef;outline-offset:3px}
@media(min-width:960px){html:has(body.custom-service){font-size:1.5625vw}.custom-service>header,.custom-service>main,.custom-service>footer{width:64rem;max-width:100%;margin-inline:auto}}
@media(max-width:959px){
.custom-service:before,.custom-service:after{height:46rem}.custom-service:before{background:#04265b}.custom-service:after{background-size:64rem 21.4375rem;background-position:calc(50% - 11rem) bottom;mask:none;clip-path:inset(26rem 0 0)}.custom-service .site-header{height:auto;min-height:5rem;background:#031f47}.custom-service .header-inner{width:auto;max-width:none;margin:0 1.5rem;gap:.7rem}.custom-service .brand{gap:.7rem;margin-right:0}.custom-service .brand img{width:6rem}.custom-service .brand span{font-size:.9rem}.custom-service .site-nav{padding:0;gap:.8rem 1.4rem}.custom-service .site-nav a{font-size:.9rem}.custom-service .menu-toggle{border-color:#7291bc;color:white}.custom-service .search-button{width:1.25rem}.custom-service .cs-container{width:auto;max-width:none;margin:0 1.5rem}.custom-service .cs-hero{height:41rem;background:linear-gradient(#04265b 0,#04265b 48%,transparent 68%)}.custom-service .cs-hero-copy{position:relative;left:auto;top:auto;margin:0 1.5rem;padding-top:1.2rem;width:auto}.custom-service .cs-hero h1{font-size:3rem;line-height:1.25}.custom-service .cs-hero-en{font-size:1.1rem;margin:.2rem 0 .4rem;white-space:normal}.custom-service .cs-hero-subtitle{font-size:1.2rem;white-space:normal}.custom-service .cs-hero-description{font-size:.9rem;white-space:normal;line-height:1.8;margin-top:.6rem;max-width:37rem}.custom-service .cs-hero-description br{display:none}.custom-service .cs-hero-actions{gap:.75rem;margin-top:1rem}.custom-service .cs-button{padding:0 1rem;height:2.9rem}.custom-service .cs-hero-tags{top:16.8rem;left:1.5rem;gap:1.1rem;align-items:center;font-size:.85rem}.custom-service .cs-hero-tags li{margin:0!important;display:flex;align-items:center;gap:.4rem}.custom-service .cs-hero-tags li:before{content:"";display:block;width:2rem;height:2rem;background:center/contain no-repeat url('../assets/custom-service/icons-hd/hero-icon-evaluation.svg');border-radius:50%}.custom-service .cs-hero-tags li:nth-child(2):before{background-image:url('../assets/custom-service/icons-hd/hero-icon-communication.svg')}.custom-service .cs-hero-tags li:nth-child(3):before{background-image:url('../assets/custom-service/icons-hd/hero-icon-delivery.svg')}.custom-service .cs-diagram{top:auto;bottom:0;left:calc(50% - 43rem);height:21.4375rem;right:auto;width:64rem}.custom-service .cs-diagram-center{top:9.8rem}.custom-service .cs-node-vector{top:6.2rem}.custom-service .cs-node-link,.custom-service .cs-node-plan{top:10.25rem}.custom-service .cs-node-combination,.custom-service .cs-node-rna{top:18.2rem}.custom-service .cs-hero-slogan{display:none}
.custom-service .cs-section{height:auto;padding:1.25rem 0}.custom-service .cs-section-heading,.custom-service .cs-content .cs-section-heading,.custom-service .cs-workflow .cs-section-heading,.custom-service .cs-request .cs-section-heading{height:auto;display:block;padding:0;margin-bottom:1rem}.custom-service .cs-section-heading h2{font-size:1.3rem;gap:.85rem;white-space:normal}.custom-service .cs-section-number{font-size:2rem;width:2.3rem}.custom-service .cs-section-heading>p{font-size:.85rem;white-space:normal;line-height:1.7;margin:.65rem 0 0}.custom-service .cs-introduction .cs-container{height:auto;display:block}.custom-service .cs-introduction-copy{font-size:.85rem;white-space:normal;line-height:1.7}.custom-service .cs-introduction-copy br{display:none}.custom-service .cs-introduction blockquote{margin:1rem 0 0;width:max-content;padding:.5rem 1rem;height:auto}.custom-service .cs-needs-grid{grid-template-columns:1fr 1fr;gap:.75rem}.custom-service .cs-need-card{height:auto;min-height:9rem;gap:.7rem;padding:.75rem}.custom-service .cs-need-card>img{width:4.2rem;height:4.2rem}.custom-service .cs-need-card h3{font-size:1rem;white-space:normal}.custom-service .cs-need-card p{font-size:.8rem;white-space:normal}.custom-service .cs-need-card p br{display:none}.custom-service .cs-consult{font-size:.8rem;height:2rem;margin-top:.65rem;width:9rem}.custom-service .cs-content-grid{grid-template-columns:1fr 1fr;gap:.75rem}.custom-service .cs-content-card{height:auto;min-height:8rem;padding:.75rem;gap:.8rem}.custom-service .cs-content-card h3{font-size:1rem}.custom-service .cs-content-card p{font-size:.8rem;white-space:normal}.custom-service .cs-content-card p br{display:none}.custom-service .cs-content-notice{height:auto;min-height:2.5rem;padding:.6rem .8rem;margin-top:.75rem;font-size:.8rem;align-items:flex-start}.custom-service .cs-content-notice span{flex:none;margin-top:.2rem}.custom-service .cs-workflow-list{grid-template-columns:1fr;gap:1.4rem;padding:0}.custom-service .cs-workflow-list li{gap:1rem}.custom-service .cs-workflow-list img{width:4.2rem;height:4.2rem}.custom-service .cs-workflow-list h3{font-size:1rem}.custom-service .cs-workflow-list p{font-size:.85rem;white-space:normal}.custom-service .cs-step-number{font-size:.85rem}.custom-service .cs-workflow-list li:not(:last-child):after{content:"↓";left:1.5rem;top:4.3rem;font-size:1.2rem}.custom-service .cs-inquiry-grid{grid-template-columns:1fr;gap:1rem}.custom-service .cs-inquiry-form,.custom-service .cs-help{height:auto}.custom-service .cs-inquiry-form{padding:1rem}.custom-service .cs-purpose{display:block;margin-bottom:1rem}.custom-service .cs-purpose legend{float:none;width:auto;font-size:.875rem;margin-bottom:.3rem}.custom-service .cs-purpose-options{grid-template-columns:1fr 1fr;gap:.65rem .5rem;padding:0}.custom-service .cs-purpose-options label{font-size:.85rem;white-space:normal;min-height:1.6rem}.custom-service .cs-purpose-options label:last-child{grid-column:1/-1}.custom-service .cs-purpose-options input{width:1rem;height:1rem}.custom-service .cs-fields{gap:.8rem 1rem}.custom-service .cs-field,.custom-service .cs-field:nth-child(4),.custom-service .cs-field:nth-child(6),.custom-service .cs-file-field{display:block}.custom-service .cs-field label{display:block;font-size:.875rem;margin-bottom:.35rem}.custom-service .cs-field input:not([type=file]){height:2.65rem;font-size:.85rem}.custom-service .cs-field textarea{height:5rem;max-height:12rem;font-size:.85rem}.custom-service .cs-file-control{min-height:2.65rem;gap:.5rem;flex-wrap:wrap}.custom-service .cs-file-control input{height:2.5rem;width:5.5rem}.custom-service .cs-file-control input::file-selector-button{height:2.5rem;width:5.5rem;font-size:.8rem}.custom-service .cs-file-control>span{font-size:.7rem;white-space:normal}.custom-service .cs-file-control output{position:static;width:100%;font-size:.75rem}.custom-service .cs-submit{margin-top:1rem;height:3rem;font-size:1rem}.custom-service .cs-help-heading{height:auto;min-height:4.9rem;padding:.7rem 1rem}.custom-service .cs-help-heading h2{font-size:1.6rem}.custom-service .cs-help-heading p{font-size:.85rem;white-space:normal;max-width:calc(100% - 4rem)}.custom-service .cs-help-body{height:auto;min-height:17rem;padding:1rem}.custom-service .cs-help address{gap:.6rem}.custom-service .cs-help address>a{max-width:calc(100% - 8rem);font-size:1rem;min-height:2.5rem;gap:.6rem}.custom-service .cs-help address small{font-size:.65rem}.custom-service .cs-help address>a[href^='mailto']{font-size:.9rem;overflow-wrap:anywhere}.custom-service .cs-help address img{width:2.4rem;height:2.4rem}.custom-service .cs-help address .cs-help-address{max-width:100%;font-size:.85rem;margin-bottom:2rem;gap:.6rem}.custom-service .cs-help-qr{top:1rem;right:1rem}.custom-service .cs-help-qr p{font-size:.75rem}.custom-service .cs-help-note{font-size:.73rem;white-space:normal;height:auto;min-height:2rem;padding:.3rem .6rem}.custom-service .cs-help-note span{flex:none}
.custom-service .site-footer{height:auto;padding:1.5rem 0;background-position:75% center}.custom-service .footer-inner{width:auto;max-width:none;margin:0 1.5rem;display:block;padding:0}.custom-service .footer-brand{height:auto;border:0}.custom-service .footer-identity{gap:.8rem}.custom-service .company-name{white-space:normal}.custom-service .company-en{font-size:.6rem;white-space:normal}.custom-service .contact-details{margin-top:1.25rem;gap:.5rem;font-size:.8rem}.custom-service .contact-details>div>span:last-child{white-space:normal;font-size:.75rem}.custom-service .contact-details br{display:block}.custom-service .slogan{white-space:normal;padding:0}.custom-service .slogan span{display:block;border:0;padding:0;margin:.3rem 0 0}
}
@media(max-width:599px){.custom-service .header-inner{margin:0 1.25rem;gap:.5rem}.custom-service .brand span{font-size:.8rem}.custom-service .brand img{width:5.3rem}.custom-service .menu-toggle{font-size:.75rem}.custom-service .cs-container{margin:0 1rem}.custom-service .cs-hero-copy{margin:0 1.25rem;padding-top:1rem}.custom-service .cs-hero h1{font-size:2.8rem}.custom-service .cs-hero-en{font-size:.98rem}.custom-service .cs-hero-subtitle{font-size:1rem;white-space:normal}.custom-service .cs-hero-description{font-size:.825rem}.custom-service .cs-hero-actions{gap:.65rem}.custom-service .cs-button{font-size:.79rem;padding:0 .75rem;height:2.8rem;gap:.4rem}.custom-service .cs-hero-tags{left:1.2rem;top:17.2rem;font-size:.7rem;gap:.75rem}.custom-service .cs-hero-tags li:before{width:1.75rem;height:1.75rem}.custom-service .cs-needs-grid,.custom-service .cs-content-grid{grid-template-columns:1fr}.custom-service .cs-need-card{min-height:9rem;padding:.9rem;gap:1rem}.custom-service .cs-need-card>img{width:5rem;height:5rem}.custom-service .cs-need-card h3{font-size:1.05rem}.custom-service .cs-need-card p{font-size:.85rem}.custom-service .cs-content-card{min-height:7.5rem;padding:1rem;gap:1rem}.custom-service .cs-content-card p{font-size:.85rem}.custom-service .cs-content-card>img{width:4.8125rem;height:4.8125rem}.custom-service .cs-section-heading h2{font-size:1.12rem;gap:.7rem}.custom-service .cs-section-number{font-size:1.9rem;width:2.2rem}.custom-service .cs-inquiry-form{padding:1rem .85rem}.custom-service .cs-purpose-options label{font-size:.79rem}.custom-service .cs-fields{grid-template-columns:1fr}.custom-service .cs-help-body{padding:.8rem;min-height:18.5rem}.custom-service .cs-help address>a{max-width:12.1rem;font-size:.85rem;gap:.35rem}.custom-service .cs-help address>a[href^='mailto']{font-size:.78rem}.custom-service .cs-help address img{width:2rem;height:2.1rem}.custom-service .cs-help-qr{right:.75rem;width:6.5rem;top:.8rem}.custom-service .cs-help-qr img{width:6.5rem;height:6.5rem}.custom-service .cs-help address .cs-help-address{font-size:.8rem;margin-top:1rem;align-items:flex-start}.custom-service .cs-help-heading h2{font-size:1.5rem}.custom-service .cs-help-heading p{font-size:.75rem}.custom-service .cs-help-heading img{right:.6rem}.custom-service .cs-help-note{font-size:.65rem}.custom-service .footer-identity img{width:6rem}.custom-service .cs-submit{font-size:.95rem;height:3rem}}
/* Keep the same source-art mask when the diagram is moved below the mobile copy. */
@media(max-width:959px){
.custom-service:after{mask:url('../assets/custom-service/hero/hero-lettering-mask.svg') calc(50% - 11rem) bottom/64rem 21.4375rem no-repeat;clip-path:none}
.custom-service .cs-hero{background:none}
}
/* SVG image masks use their luminance so black text-removal regions stay transparent. */
.custom-service:after{mask-mode:luminance}
.custom-service .cs-help-heading img{filter:grayscale(1) contrast(10)}
.custom-service .cs-file-select{position:relative;display:grid;place-items:center;flex:none;width:4rem;height:1.75rem;border-radius:.15rem;background:#e6f1fb;color:#355789;font-size:.65rem}
.custom-service .cs-file-select input{position:absolute;inset:0;opacity:0;width:100%;height:100%;z-index:1}
.custom-service .cs-file-select:focus-within{outline:2px solid #0098ef;outline-offset:3px}
@media(max-width:959px){.custom-service .cs-file-select{width:5.5rem;height:2.5rem;font-size:.8rem}}
@media(min-width:960px){.custom-service .cs-hero h1{line-height:1.1}.custom-service .cs-hero-actions{margin-top:.5625rem}}
@media(max-width:959px){
.custom-service:before{background:#04265b url('../assets/custom-service/hero/hero-lettering-underlay.svg') calc(50% - 11rem) bottom/64rem 21.4375rem no-repeat;mask:linear-gradient(#fff 0%,#fff 50%,transparent 56%,#fff 66%)}
.custom-service:after{mask-image:url('../assets/custom-service/hero/hero-lettering-mask.svg'),linear-gradient(transparent 0%,transparent 56%,#000 65%);mask-mode:luminance,alpha;mask-position:calc(50% - 11rem) bottom,0 0;mask-size:64rem 21.4375rem,100% 100%;mask-repeat:no-repeat;mask-composite:intersect}
.custom-service{background:#fff}.custom-service .cs-hero{background:linear-gradient(#04265b 52%,transparent 63%)}
}
@media(max-width:959px){.custom-service{background:#04265b}}
@media(min-width:960px){.custom-service .cs-introduction .cs-section-heading{transform:translateY(-.45rem)}}
/* Place live tag labels beside the untouched original icons at the reference coordinates. */
@media(min-width:960px){
.custom-service .cs-hero-tags{display:block;width:21rem}
.custom-service .cs-hero-tags li{position:absolute;left:0;top:0;white-space:nowrap;margin:0!important}
.custom-service .cs-hero-tags li:nth-child(2){left:7.5rem}
.custom-service .cs-hero-tags li:nth-child(3){left:15.375rem}
}
/* Long CMS contact values wrap inside their column, clear of the unchanged QR image. */
.custom-service .cs-help address>a>span{min-width:0;overflow-wrap:anywhere}
@media(max-width:599px){.custom-service .cs-help address>a{max-width:min(12.1rem,calc(100% - 7.2rem))}}
@media(min-width:960px){
.custom-service .cs-request{height:auto;min-height:22.4375rem;padding-bottom:.5625rem}
.custom-service .cs-help{height:auto;min-height:19.0625rem}
.custom-service .cs-help-body{height:auto;min-height:14.3125rem;padding-bottom:2.5rem}
.custom-service .cs-help-note{bottom:.225rem}
}

/* Crisp vectors replace only the three baked-in tag pictograms; original hero art and live labels stay in place. */
.custom-service .cs-hero-tag-icons{display:none}
@media(min-width:960px){
.custom-service .cs-hero-tag-icons{display:block;position:absolute;inset:0;pointer-events:none}
.custom-service .cs-hero-tag-icons img{position:absolute;width:2.125rem;height:2.125rem;object-fit:fill;top:15.609375rem;transform:translate(-50%,-50%)}
.custom-service .cs-hero-tag-icons img:nth-child(1){left:8.7890625%}
.custom-service .cs-hero-tag-icons img:nth-child(2){left:20.458984375%}
.custom-service .cs-hero-tag-icons img:nth-child(3){left:32.568359375%}
}
/* 1.18.4: detail-only DNA layer. Original lettering masks, diagram and background remain intact. */
.custom-service .cs-diagram::before{content:"";position:absolute;left:0;right:0;top:-3.75rem;height:21.4375rem;pointer-events:none;background:url('../assets/custom-service/hero/hero-dna-detail-1.18.4.webp') center top/100% 100% no-repeat;opacity:.78;mask-image:linear-gradient(to right,transparent 82%,#000 85%,#000),linear-gradient(to bottom,transparent 4%,#000 9%,#000 58%,transparent 67%);mask-composite:intersect}
@media(max-width:959px){.custom-service .cs-diagram::before{top:0;mask-image:linear-gradient(to right,transparent 82%,#000 85%,#000),linear-gradient(to bottom,transparent 18%,#000 24%,#000 58%,transparent 67%)}}

/* Redraw the five diagram nodes at the original circle coordinates. The full
   circular face covers both the old pictogram and its rectangular text patch;
   labels remain live HTML above the native SVG artwork. */
.custom-service .cs-diagram-node{isolation:isolate}
.custom-service .cs-diagram-node::before{content:"";position:absolute;z-index:-1;left:50%;top:-3.25rem;width:5rem;height:5rem;transform:translateX(-50%);background:center/contain no-repeat;pointer-events:none}
.custom-service .cs-node-vector::before{left:calc(50% + .05rem);top:-3.325rem;background-image:url('../assets/custom-service/icons/hero-diagram-vector.svg')}
.custom-service .cs-node-link::before{left:calc(50% - .0125rem);background-image:url('../assets/custom-service/icons/hero-diagram-link.svg')}
.custom-service .cs-node-plan::before{left:calc(50% - .025rem);background-image:url('../assets/custom-service/icons/hero-diagram-plan.svg')}
.custom-service .cs-node-combination::before{top:-3.3875rem;background-image:url('../assets/custom-service/icons/hero-diagram-combination.svg')}
.custom-service .cs-node-rna::before{left:calc(50% + .0625rem);top:-3.3875rem;background-image:url('../assets/custom-service/icons/hero-diagram-rna.svg')}

/* The desktop art stretches to the actual page width, excluding its scrollbar.
   Use that same width for node centers and faces instead of vw-derived rem x coordinates. */
@media(min-width:960px){
.custom-service .cs-diagram{container-type:inline-size}
.custom-service .cs-diagram-node::before{left:50%;width:7.8125cqw;background-size:100% 100%}
.custom-service .cs-node-vector{left:calc(68.45703125% - 2.2rem)}
.custom-service .cs-node-link{left:calc(57.71484375% - 2.2rem)}
.custom-service .cs-node-plan{left:calc(79.1015625% - 2.2rem)}
.custom-service .cs-node-combination{left:calc(60.546875% - 2.2rem)}
.custom-service .cs-node-rna{left:calc(76.26953125% - 2.2rem)}
}

/* Keep the top node's complete circular face at its original center. Extend
   only the hero's top paint boundary; the DNA layer retains its old crop. */
@media(min-width:960px){
.custom-service .cs-hero{overflow:visible;clip-path:inset(-.875rem 0 0)}
.custom-service .cs-diagram::before{clip-path:inset(3.75rem 0 0)}
}
