/* Reference-observed section composition; original NLINEA content and implementation. */
.f-site .f-section-eyebrow{display:flex;align-items:center;gap:10px;font-size:18px;letter-spacing:-.02em;line-height:1.25}
.f-site .f-section-eyebrow:before{content:"";width:12px;height:12px;flex:none;border-radius:50%;background:#9299a3}
.f-site .f-services{grid-template-columns:1fr 2.1fr;column-gap:26px;padding:190px 26px 75px;min-height:0}
.f-site .f-services-main{min-width:0;grid-column:2}
.f-site .f-service-list{margin-top:36px}
.f-site .f-service-list>div{margin:0 0 10px;display:block}
.f-site .f-service-list h2{font-size:clamp(40px,6.53vw,122px);font-weight:700;line-height:1;letter-spacing:-.055em;color:#9a9fa7;transition:color .45s cubic-bezier(.16,1,.35,1);position:relative;z-index:3}
.f-site .f-service-list h2 a{display:inline-block;color:inherit;text-decoration:none}
.f-site .f-service-list .is-selected h2,.f-site .f-service-list h2:has(a:focus-visible){color:var(--f-white)}
.f-site .f-service-records{max-width:335px;align-self:start}
.f-service-record-nav{border-top:1px solid #65707c;display:flex;justify-content:space-between;align-items:center;padding-top:8px;margin-bottom:27px;font:12px/1.3 ui-monospace,monospace}
.f-service-record-nav>div{display:flex;gap:5px}
.f-service-record-nav button{border:0;background:none;color:inherit;font-size:25px;padding:0 2px;cursor:pointer;min-width:28px}
.f-service-record-nav button:hover{color:var(--f-ice)}
.f-service-record-label{font:11px/1.3 ui-monospace,monospace;letter-spacing:.025em;color:#aeb6c1}
.f-service-records article{margin-top:30px}
.f-section-enhanced .f-service-records article:not(.is-selected){display:none}
.f-service-records article h3{font-size:23px;line-height:1.1;letter-spacing:-.03em;margin-bottom:15px}
.f-site .f-service-records article p{font-size:17px;line-height:1.28;letter-spacing:-.014em;margin-bottom:22px}
.f-service-records article strong{display:block;font-size:13px;line-height:1.4;margin-bottom:18px;color:#c3ccd8}
.f-site .f-service-records .text-link{font-size:14px}
.f-service-gallery{position:absolute;left:26px;right:auto;top:0;transform:translateY(var(--service-image-y,180px));width:15.2vw;max-width:290px;aspect-ratio:4/5;z-index:5;pointer-events:none;overflow:hidden;contain:layout paint}
.f-service-gallery figure{position:absolute;inset:0;margin:0;opacity:0;transform:translateY(20px) scale(1.08);transition:opacity .5s ease,transform .7s cubic-bezier(.16,1,.35,1)}
.f-service-gallery figure.is-selected{opacity:1;transform:translateY(0) scale(1)}
.f-service-gallery img{width:100%;height:100%;object-fit:cover}
.f-service-gallery [data-service-art="3"] img{object-position:85% 50%}
.f-service-gallery [data-service-art="4"] img{object-position:30% 50%}
.f-service-gallery [data-service-art="5"] img{object-position:80% 50%}
.f-service-gallery>span{position:absolute;left:8px;right:8px;bottom:8px;font:8px/1.2 ui-monospace,monospace;letter-spacing:.025em;padding:4px;background:#171b20c9;color:#f6f7f8}
.f-site .f-process{padding:108px 26px 210px;overflow:clip}
.f-site .f-process>.f-journey-title{width:100%;margin:0 0 104px;transform:none;font-family:Inter,Arial,sans-serif;line-height:1;white-space:normal}
.f-journey-title svg{width:100%;height:auto;display:block;overflow:visible}
.f-journey-title text{font-family:Inter,Arial,sans-serif;font-size:190px;font-weight:700;letter-spacing:-.025em;fill:currentColor}
.f-site .f-process article{grid-template-columns:1.033fr 3.833fr 5.134fr;gap:26px;border-top:1px solid #68728226;margin:0;align-items:start}
.f-site .f-process-copy{padding:31px 0 0}
.f-site .f-process h3{font-size:23.75px;line-height:1.1;letter-spacing:-.03em;max-width:355px;margin:0 0 20px}
.f-site .f-process article p{font-size:17.75px;line-height:1.25;letter-spacing:-.015em;max-width:345px;color:#b8c0cd;margin:0 0 30px}
.f-process-step{padding-top:32px;font:11px/1.2 ui-monospace,monospace;display:flex;align-items:center;gap:5px;white-space:nowrap;color:#d7dee7}
.f-process-step i{display:inline-block;width:3px;height:3px;background:currentColor;border-radius:50%}
.f-process-media{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:#252c35;color:#14191f}
.f-process-media video{display:block;width:100%;height:100%;object-fit:cover}
.f-process-media>small{position:absolute;bottom:12px;right:12px;padding:4px 6px;font:9px/1.2 ui-monospace,monospace;letter-spacing:.035em;background:#171b20c9;color:#f6f7f8}
.f-process-cursor{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:15px;line-height:1.15;font-weight:600;padding:10px 14px;background:#eef1f5;color:#111820;border-radius:3px;white-space:nowrap;pointer-events:none;transition:background .2s,opacity .2s}
.f-process-media:hover .f-process-cursor,.f-process-media:focus-visible .f-process-cursor{background:#c4d8ff}
.f-site .f-faq{background:#292d33;grid-template-columns:1fr 2.1fr;gap:26px;padding:105px 26px 32px;border:0}
.f-site .f-faq>aside{display:flex;flex-direction:column;justify-content:space-between;gap:80px}
.f-faq-contact{max-width:230px}
.f-faq-contact>img{width:140px;height:140px;object-fit:cover;margin-bottom:22px;display:block}
.f-site .f-faq-contact h3{font-size:23px;line-height:1.15;letter-spacing:-.035em;color:#bec5cf;margin-bottom:20px}
.f-faq-contact .f-button{background:#e8ebed;color:#14191f}
.f-faq-contact .f-button>.f-btn-icon{background:#1b222c;color:#e8ebed}
.f-site .f-faq>div>h2{max-width:790px;font-size:clamp(40px,5.03vw,88px);line-height:1;letter-spacing:-.048em;margin:0 0 62px;font-weight:700}
.f-site .f-faq details{padding:0;border-top:1px dotted #8590a755;border-bottom:0}
.f-site .f-faq details:last-child{border-bottom:1px dotted #8590a755}
.f-site .f-faq summary{display:flex;align-items:center;justify-content:space-between;min-height:56px;gap:25px;padding:15px 0;font-size:19.75px;line-height:1.2;list-style:none;color:#f6f7f8;transition:background .65s cubic-bezier(.16,1,.35,1),color .65s cubic-bezier(.16,1,.35,1)}
.f-site .f-faq .f-faq-question{font-size:inherit;transition:transform .65s cubic-bezier(.16,1,.35,1)}
.f-faq-dot{width:5px;height:5px;border:1px solid #a2adba;flex:none;border-radius:50%;background:transparent;transition:transform .65s cubic-bezier(.16,1,.35,1),background .65s cubic-bezier(.16,1,.35,1)}
.f-site .f-faq details[open]>summary{background:#e8ebed;color:#14191f}
.f-site .f-faq details[open] .f-faq-question{transform:translateX(10px)}
.f-site .f-faq details[open] .f-faq-dot{background:#14191f;border-color:#14191f;transform:translateX(-10px)}
.f-site .f-faq .f-faq-answer{max-width:535px}
.f-site .f-faq .f-faq-answer p{font-size:17.75px;line-height:1.3;letter-spacing:-.012em;color:#c6cdd7;margin:0;padding:20px 0 28px;animation:none}
.f-site .f-faq details::details-content{block-size:0;overflow:hidden;transition:block-size .6s cubic-bezier(.625,.05,0,1),content-visibility .6s;transition-behavior:allow-discrete;interpolate-size:allow-keywords}
.f-site .f-faq details[open]::details-content{block-size:auto}
@media(hover:hover) and (pointer:fine){
 .f-site .f-faq summary:hover{background:#e8ebed;color:#14191f}
 .f-site .f-faq summary:hover .f-faq-question{transform:translateX(10px)}
 .f-site .f-faq summary:hover .f-faq-dot{background:#14191f;border-color:#14191f;transform:translateX(-10px)}
}
@media(max-width:1050px) and (min-width:651px){
 .f-site .f-services{padding-top:100px}
 .f-site .f-service-list h2{font-size:6.45vw}
 .f-service-gallery{width:16vw}
 .f-site .f-process h3{font-size:20px}.f-site .f-process article p{font-size:16px}
}
@media(max-width:650px){
 .f-site .f-services{display:flex;flex-direction:column;padding:65px 16px 75px;gap:55px}
 .f-site .f-service-records{max-width:100%;width:100%;order:2}
 .f-service-records article{margin-top:22px}
 .f-service-record-nav{margin-bottom:20px}
 .f-site .f-services-main{order:1}
 .f-site .f-section-eyebrow{font-size:16px}
 .f-site .f-service-list{margin-top:28px;padding-bottom:0}
 .f-site .f-service-list h2{font-size:10.2vw;line-height:1.13;letter-spacing:-.055em}
 .f-site .f-service-list>div{margin-bottom:6px}
 .f-site .f-service-gallery{position:relative;order:2;align-self:flex-start;width:110px;max-width:none;height:138px;aspect-ratio:auto;left:auto;right:auto;top:auto;transform:none}
 .f-site .f-process{padding:60px 16px 85px}
 .f-site .f-process>.f-journey-title{margin-bottom:48px}
 .f-site .f-process article{grid-template-columns:70px minmax(0,1fr);column-gap:24px;row-gap:0;margin:0;padding:0}
 .f-process-step{grid-column:1;grid-row:1/3;padding-top:28px;font-size:10px;gap:4px}
 .f-site .f-process-copy{grid-column:2;grid-row:1;padding:27px 0 25px}
 .f-site .f-process h3{font-size:17px;line-height:1.15;letter-spacing:-.028em;margin-bottom:15px;max-width:100%}
 .f-site .f-process article p{font-size:14px;line-height:1.3;max-width:100%;margin:0}
 .f-process-media{grid-column:2;grid-row:2;margin-bottom:14px}
 .f-process-cursor{font-size:11px;padding:8px 9px}
 .f-process-media>small{font-size:6px;bottom:5px;right:5px;left:5px;text-align:center;padding:3px}
 .f-site .f-faq{display:flex;flex-direction:column;padding:65px 16px 32px;gap:29px;position:relative}
 .f-site .f-faq>aside{display:contents}
 .f-faq-contact{order:3;margin:45px 0 10px;max-width:280px}
 .f-site .f-faq>div{order:2}
 .f-site .f-faq>aside>.f-section-eyebrow{order:1}
 .f-site .f-faq>div>h2{font-size:32px;line-height:1.04;letter-spacing:-.043em;margin-bottom:37px}
 .f-site .f-faq summary{font-size:18px;line-height:1.22;min-height:60px;padding:17px 0;gap:24px}
 .f-site .f-faq .f-faq-answer p{font-size:16px;line-height:1.35;padding:20px 0 26px}
 .f-site.lang-zh .f-process>.f-journey-title{font-size:10.2vw;line-height:1.1;letter-spacing:-.04em}
}
.f-site.large-text .f-process article{display:block}
.f-site.large-text .f-process>.f-journey-title{font-size:11.5vw}
.f-site.large-text .f-service-gallery{display:none}
.f-site.large-text .f-service-list h2{font-size:1.5rem}
.f-site.large-text .f-faq>div>h2{font-size:1.5rem}
.f-site.large-text .f-faq summary{font-size:1rem}
.f-site.large-text .f-process article p,.f-site.large-text .f-faq .f-faq-answer p{font-size:1rem}
.f-site.large-text .f-process-copy{padding-bottom:30px}
@media(prefers-reduced-motion:reduce){
 .f-service-gallery figure,.f-faq-question,.f-faq-dot,.f-site .f-faq summary,.f-site .f-faq details::details-content{transition:none!important}
 .f-site .f-faq details::details-content{block-size:auto}
 .f-process-cursor{transition:none}
}
