/* FH052 software-company layout. Content remains in CMS records and theme blocks. */
.design-cloud {--muted:#596273;line-height:1.85}
.design-cloud h1,.design-cloud h2,.design-cloud h3{color:var(--ink);letter-spacing:0;font-weight:700}
.design-cloud .site-section{padding-block:56px}
.design-cloud .space-compact{padding-block:36px}
.design-cloud .space-wide{padding-block:68px}
.design-cloud .section-title{max-width:820px;margin-bottom:28px}
.design-cloud .section-title h2{font-size:32px;line-height:1.4;margin:0 0 10px}
.design-cloud .section-title .eyebrow{color:var(--brand);letter-spacing:1px;margin-bottom:8px!important}
.design-cloud .section-title>p{font-size:17px;line-height:1.8}
.design-cloud .header-main{min-height:80px;gap:28px}
.design-cloud .hero-art img{aspect-ratio:3/2;object-fit:contain;border-radius:12px;box-shadow:none}
.design-cloud .hero-grid{gap:48px}
.design-cloud .hero-lead{text-wrap:balance}
.design-cloud .company-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;align-items:center}
.design-cloud .company-grid figure img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:10px}
.design-cloud .company-grid .section-title{margin-bottom:20px}
.design-cloud .company-description{margin:0;line-height:1.95}
.design-cloud .company-description p{margin:0 0 14px}
.design-cloud .company-description p:last-child{margin-bottom:0}
.company-video{width:100%;aspect-ratio:16/9;display:block;background:#e9edfb;object-fit:contain;border-radius:10px}
.company-video-caption{font-size:14px;color:var(--muted);margin-top:8px}
.design-cloud .company-grid .site-button{margin-top:20px}
.design-cloud .content-card{border:1px solid var(--line);border-radius:10px;box-shadow:none}
.design-cloud .content-grid{gap:24px}
.design-cloud .card-media{background:#f3f5fb}
.design-cloud .card-media img,.design-cloud .product-card .card-media img{aspect-ratio:3/2;object-fit:contain;padding:0;transition:none}
.design-cloud .content-card:hover .card-media img{transform:none}
.design-cloud .card-copy{padding:22px 24px}
.design-cloud .card-copy h3{font-size:22px;line-height:1.5;margin-bottom:12px}
.design-cloud .card-copy p:not(.eyebrow){font-size:17px;line-height:1.85;color:var(--muted);margin-bottom:18px}
.design-cloud .card-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.design-cloud .card-meta:empty{display:none}
.design-cloud .card-meta .demo-label{background:none;padding:0;color:#6d7480;margin:0;font-size:14px;order:2}
.design-cloud .card-meta .eyebrow{font-size:14px;letter-spacing:.6px;margin:0!important}
.design-cloud .text-link{font-size:16px;line-height:1.6;border-bottom:0}
.design-cloud .text-link:hover{text-decoration:underline}
.card-parameters{width:100%;margin:0 0 18px;border-top:1px solid var(--line);font-size:14px}
.card-parameters>div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;border-bottom:1px solid var(--line);padding:9px 0}
.card-parameters dt{color:var(--muted)}.card-parameters dd{margin:0}
.design-cloud .process-cards{gap:22px;align-items:stretch}
.design-cloud .process-cards article{padding:0;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}
.process-photo img{width:100%;aspect-ratio:3/2;object-fit:contain;height:auto}
.process-copy{padding:20px}
.process-heading{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.process-heading .step-number{font-size:24px;line-height:1.4;margin:0;color:var(--brand);font-variant-numeric:tabular-nums}
.process-heading h3{font-size:20px;margin:0;line-height:1.4}
.process-copy p{font-size:16px;line-height:1.85;color:var(--muted);margin:0}
.logo-carousel{overflow:hidden;max-width:100%;padding-block:6px}
.logo-rows{display:grid;gap:12px;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.logo-track{display:flex;width:max-content;gap:28px;will-change:transform}
.logo-group{display:flex;gap:28px;flex:none;align-items:center}
.logo-group .partner-item{width:210px;min-width:210px;max-width:210px;height:88px;min-height:0;padding:10px 16px;border:0;background:transparent;border-radius:0;box-shadow:none;justify-content:center}
.logo-group .partner-item img{width:100%;height:66px;object-fit:contain}
.logo-group .partner-item strong{font-size:18px}
.partner-item .partner-website{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:inherit;text-decoration:none}
.partner-item .partner-website:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:4px}
.logo-carousel.is-ready .logo-track{animation:logo-travel var(--logo-duration,30s) linear infinite}
.logo-carousel-reverse.is-ready .logo-track{animation-direction:reverse}
.logo-rows:hover .logo-track,.logo-rows:focus-within .logo-track{animation-play-state:paused}
.logo-carousel:hover .logo-track,.logo-carousel:focus-within .logo-track{animation-play-state:paused}
.logo-rows:has(.partner-website:focus-visible){mask-image:none}
.logo-carousel:has(.partner-website:focus-visible){overflow-x:auto}
.logo-carousel:has(.partner-website:focus-visible) .logo-track{animation:none;transform:none}
.logo-carousel:has(.partner-website:focus-visible) .logo-group[aria-hidden=true]{display:none}
@keyframes logo-travel{to{transform:translateX(calc(-1 * var(--logo-distance)))}}
.design-cloud .testimonial-strip{gap:24px;grid-auto-columns:calc((100% - 48px)/3);padding-bottom:2px}
.design-cloud .quote-card{border-radius:10px;padding:26px;display:flex;flex-direction:column}
.design-cloud .quote-card>p{font-size:17px;line-height:1.9;min-height:0;margin:0 0 24px;flex:1}
.design-cloud .quote-person{padding-top:18px;margin-top:auto}
.design-cloud .quote-person img{width:56px;height:56px;object-fit:cover;flex:none}
.design-cloud .quote-person strong{font-size:17px}.design-cloud .quote-person small{font-size:14px;margin-top:3px}
.design-cloud .article-feed{display:grid;grid-template-columns:1fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 28px}
.design-cloud .article-feed .content-card{display:grid;grid-template-columns:224px minmax(0,1fr);gap:28px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:24px 0}
.design-cloud .article-feed .content-card:last-child{border-bottom:0}
.design-cloud .article-feed .card-media{align-self:start;border-radius:7px}
.design-cloud .article-feed .card-copy{padding:0;display:block}
.design-cloud .article-feed .card-copy h3{font-size:22px;margin:0 0 8px}
.design-cloud .article-feed .card-copy p{margin:0 0 8px}
.design-cloud .article-feed .card-meta{margin-bottom:4px}
.design-cloud .article-feed .text-link{display:inline-block;margin-top:4px}
.design-cloud .page-banner{padding-block:24px 28px;background:#f5f7fb;border-bottom:1px solid var(--line)}
.design-cloud .page-banner h1{font-size:36px;line-height:1.4;margin:14px 0 0}
.design-cloud .page-banner p{font-size:17px;margin:10px 0 0;max-width:700px}
.listing-heading{display:flex;justify-content:space-between;align-items:center;gap:36px}
.listing-heading>div{min-width:0;flex:1}
.listing-heading .site-search{width:380px;max-width:42%;margin:0;gap:8px}
.listing-heading .site-search input{font-size:16px;padding:10px 12px}
.listing-heading .site-search .site-button{padding:10px 20px}
.design-cloud .listing-section{padding-block:32px 52px}
.design-cloud .listing-product .content-grid{grid-template-columns:1fr}
.design-cloud .listing-product .product-card{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:0}
.design-cloud .listing-product .card-media{align-self:stretch;display:flex;align-items:center}
.design-cloud .listing-product .card-media img{width:100%;height:auto}
.design-cloud .listing-product .card-copy{padding:28px 34px}
.design-cloud .listing-product .card-copy h3{font-size:26px}
.design-cloud .listing-product .card-parameters{margin-bottom:16px}
.design-cloud .listing-case .case-card{border:0;border-radius:0}
.design-cloud .listing-case .card-media{border-radius:10px}
.design-cloud .listing-case .card-copy{padding:20px 0 0}
.design-cloud .about-introduction{padding-block:44px}
.design-cloud .about-introduction .company-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:42px}
.design-cloud .about-introduction h2{font-size:30px;margin-bottom:18px}
.design-cloud .about-introduction p{margin-bottom:14px}
.about-photo img{width:100%;height:auto;object-fit:contain;border-radius:10px}
.design-cloud .about-section{padding-block:40px}
.design-cloud .about-section h2{font-size:28px;line-height:1.4;margin-bottom:22px}
.design-cloud .about-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}
.design-cloud .about-columns>section{border-top:3px solid var(--brand);padding:24px 0 0;background:transparent;border-radius:0}
.design-cloud .about-columns .article-prose p{margin:0 0 16px;line-height:1.95}
.design-cloud .about-history .history-list article{display:grid;grid-template-columns:90px minmax(0,1fr);gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}
.design-cloud .about-history .history-list article:first-child{padding-top:0}
.design-cloud .about-history strong{font-size:18px;color:var(--ink)}
.design-cloud .about-history p{margin:0;font-size:17px}
.company-contact-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) auto;gap:48px;align-items:center;border-top:1px solid var(--line);padding-top:30px}
.company-contact-heading h2{margin:0 0 10px!important}.company-contact-heading p{margin:0 0 12px;color:var(--muted)}
.company-contact-details{margin:0;display:grid;gap:12px}.company-contact-details>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:16px}.company-contact-details dt{font-size:15px;color:var(--muted)}.company-contact-details dd{margin:0;overflow-wrap:anywhere}
.company-contact-row .contact-qr{margin:0;width:124px;max-width:none}.company-contact-row .contact-qr img{width:124px;height:auto}.contact-qr figcaption{font-size:14px;line-height:1.6}
.design-cloud .contact-page{padding-block:28px 48px}
.design-cloud .contact-page .page-heading{margin:14px 0 26px}
.design-cloud .contact-page h1{font-size:34px;margin-bottom:10px}
.design-cloud .contact-page .grid-2{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:stretch}
.design-cloud .contact-page .panel{padding:28px;border-radius:10px;background:#fff}
.design-cloud .contact-page .contact-information{background:#f5f7fc;display:flex;flex-direction:column;border-color:#e5e9f2}
.contact-details{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:18px;align-items:center}
.contact-details p{font-size:17px;line-height:2;overflow-wrap:anywhere;margin:0}
.contact-details .contact-qr{width:112px;margin:0}.contact-details .contact-qr img{width:112px;height:auto}
.contact-scene{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:8px;margin-top:28px}
.design-cloud .contact-page h2{font-size:24px;line-height:1.4;margin-bottom:22px}
.design-cloud .contact-page .field-grid{gap:14px 18px}
.design-cloud .contact-page input:not([type=checkbox]),.design-cloud .contact-page textarea{border-color:#cbd2df;min-height:44px;padding:9px 11px}
.design-cloud .contact-page textarea{min-height:126px}
.design-cloud .contact-page .mt{margin-top:16px}
.design-cloud .block-cta.bg-dark{background:#fff;color:var(--ink);padding-block:0}
.design-cloud .block-cta .cta-row{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.design-cloud .block-cta h2{font-size:25px;margin-bottom:6px}
.design-cloud .block-cta p{font-size:17px;color:var(--muted);line-height:1.8}
.design-cloud .block-cta.bg-dark .site-button{background:var(--brand);color:#fff;border-color:var(--brand);flex:none}
.design-cloud .site-footer{background:#fff;border:0;padding-top:32px}
.design-cloud .footer-main{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 124px;gap:50px;padding-bottom:28px}
.design-cloud .footer-summary{font-size:16px;max-width:420px;margin-top:14px}
.design-cloud .footer-phone{font-size:24px;color:var(--ink)}
.design-cloud .footer-wechat,.design-cloud .footer-wechat img{width:124px}
.design-cloud .footer-email,.design-cloud .footer-address{font-size:16px}
.design-cloud .product-main{height:auto;aspect-ratio:3/2}.design-cloud .product-main img{object-fit:contain}
.design-cloud .detail-content{padding-top:24px}.design-cloud .detail-section{padding-block:26px}
.design-cloud .detail-sidebar{background:#f7f8fc;border:1px solid var(--line);border-radius:8px;padding:24px}
@media(max-width:1100px){.design-cloud .site-nav{gap:16px}.design-cloud .company-grid{gap:28px}.design-cloud .process-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.design-cloud .process-heading h3{font-size:20px}.contact-details{grid-template-columns:1fr}.contact-details .contact-qr{width:112px}.design-cloud .listing-product .card-copy{padding:24px}.design-cloud .about-introduction .company-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.design-cloud .company-grid,.design-cloud .about-introduction .company-grid{grid-template-columns:1fr}.design-cloud .company-grid>figure{max-width:720px}.design-cloud .contact-page .grid-2{grid-template-columns:1fr}.contact-details{grid-template-columns:minmax(0,1fr) 124px}.contact-scene{max-height:300px;object-fit:contain}.design-cloud .contact-page .contact-information{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}.design-cloud .contact-information h2{grid-column:1/-1;margin:0}.contact-information .contact-details{grid-template-columns:1fr}.contact-information .contact-scene{margin:0;align-self:center}.company-contact-row{gap:26px}.design-cloud .listing-product .product-card{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}
@media(max-width:700px){.design-cloud .site-section,.design-cloud .space-wide{padding-block:36px}.design-cloud .space-compact{padding-block:28px}.design-cloud .header-main{min-height:72px;gap:10px}.design-cloud .section-title h2{font-size:26px}.design-cloud .section-title>p{font-size:16px}.design-cloud .section-title{margin-bottom:22px}.design-cloud .company-grid{gap:24px}.design-cloud .content-grid{gap:20px}.design-cloud .card-copy p:not(.eyebrow){font-size:16px}.design-cloud .process-cards{gap:16px}.process-copy{padding:16px}.process-heading{gap:10px}.process-heading .step-number{font-size:22px}.process-heading h3{font-size:19px}.design-cloud .testimonial-strip{grid-auto-columns:86%;gap:16px}.design-cloud .quote-card{padding:22px}.design-cloud .quote-card>p{font-size:16px}.logo-group,.logo-track{gap:16px}.logo-rows{gap:4px}.logo-group .partner-item{width:164px;min-width:164px;max-width:164px;height:74px;min-height:0;padding:8px 10px}.logo-group .partner-item img{width:100%;height:56px}.design-cloud .article-feed{padding:0 18px;gap:0}.design-cloud .article-feed .content-card{grid-template-columns:120px minmax(0,1fr);gap:18px;padding:20px 0}.design-cloud .article-feed .card-copy h3{font-size:19px}.design-cloud .article-feed .card-copy p{font-size:16px}.design-cloud .article-feed .card-meta{display:none}.listing-heading{display:block}.listing-heading .site-search{max-width:none;width:100%;margin-top:18px}.design-cloud .page-banner{padding-block:20px 24px}.design-cloud .page-banner h1{font-size:29px;margin-top:12px}.design-cloud .page-banner p{font-size:16px}.design-cloud .listing-section{padding-block:24px 36px}.design-cloud .listing-product .product-card{grid-template-columns:1fr}.design-cloud .listing-product .card-copy{padding:22px}.design-cloud .listing-product .card-copy h3{font-size:24px}.design-cloud .about-columns{grid-template-columns:1fr;gap:30px}.design-cloud .about-introduction,.design-cloud .about-section{padding-block:30px}.design-cloud .about-section h2,.design-cloud .about-introduction h2{font-size:25px}.company-contact-row{grid-template-columns:minmax(0,1fr) 112px;gap:22px}.company-contact-heading{grid-column:1/-1}.company-contact-details>div{grid-template-columns:1fr;gap:2px}.company-contact-details dd{font-size:16px}.company-contact-row .contact-qr,.company-contact-row .contact-qr img{width:112px}.design-cloud .contact-page .panel{padding:22px}.design-cloud .contact-page h1{font-size:29px}.design-cloud .contact-page .contact-information{display:block}.contact-information .contact-details{grid-template-columns:minmax(0,1fr) 104px}.contact-information h2{margin-bottom:18px!important}.contact-details p{font-size:16px}.contact-details .contact-qr,.contact-details .contact-qr img{width:104px}.contact-information .contact-scene{margin-top:24px;max-height:none}.design-cloud .contact-page .field-grid{grid-template-columns:1fr}.design-cloud .block-cta .cta-row{display:block;padding-block:25px}.design-cloud .block-cta h2{font-size:23px}.design-cloud .block-cta p{font-size:16px}.design-cloud .block-cta .site-button{margin-top:18px}.design-cloud .footer-main{grid-template-columns:minmax(0,1fr) 112px;gap:24px}.design-cloud .footer-identity{grid-column:1/-1}.design-cloud .footer-summary{max-width:none}.design-cloud .footer-wechat,.design-cloud .footer-wechat img{width:112px}.design-cloud .footer-phone{font-size:22px}.design-cloud .footer-email,.design-cloud .footer-address{font-size:15px}}
@media(max-width:420px){.design-cloud .process-cards{grid-template-columns:1fr}.process-copy{padding:20px}.design-cloud .article-feed .content-card{grid-template-columns:1fr;gap:14px}.design-cloud .article-feed .card-media{max-width:none}.design-cloud .article-feed .card-copy h3{font-size:21px}.design-cloud .article-feed .card-meta{display:flex}.design-cloud .contact-page .panel{padding:18px}.contact-information .contact-details{grid-template-columns:1fr}.contact-information .contact-qr{margin-top:6px}.design-cloud .footer-main,.company-contact-row{grid-template-columns:1fr}.design-cloud .footer-wechat{justify-self:start}.company-contact-heading{grid-column:auto}.design-cloud .about-history .history-list article{grid-template-columns:1fr;gap:6px}.language-menu .language-options{position:fixed;top:72px;right:12px;width:296px}.design-cloud .header-tools{gap:8px}.design-cloud .site-logo strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){.logo-carousel{overflow-x:auto}.logo-carousel .logo-group[aria-hidden=true]{display:none}.logo-track{transform:none!important;animation:none!important}}

.logo-carousel.is-static{overflow-x:auto}.logo-carousel.is-static .logo-track{animation:none;transform:none}.logo-rows:has(.is-static){mask-image:none}
.related-resources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.related-resources article{border-top:2px solid var(--line);padding-top:18px}.related-resources a{display:inline-block;font-size:19px;font-weight:700;color:var(--ink);line-height:1.55;text-decoration:none}.related-resources a:hover{color:var(--brand);text-decoration:underline}.related-resources p{font-size:16px;line-height:1.8;margin:10px 0 0;color:var(--muted)}@media(max-width:700px){.related-resources{grid-template-columns:1fr;gap:20px}}
