/* Shared viewport layout for every active fengchen business page. */
body.fc-business{
  --fc-gutter:clamp(20px,4vw,180px);
  --fc-header:clamp(80px,5.55vw,200px);
  --fc-text:clamp(16px,1.12vw,40px);
  --fc-small:clamp(14px,.95vw,34px);
  --fc-label:clamp(11px,.78vw,27px);
  --fc-title:clamp(38px,5vw,180px);
  --fc-heading:clamp(30px,3.25vw,116px);
  --fc-subheading:clamp(22px,1.85vw,66px);
  --fc-gap:clamp(20px,1.8vw,64px);
  --fc-space:clamp(45px,5.2vw,180px);
  --fc-art:clamp(300px,min(32vw,58svh),1120px);
  --fc-mobile-art:clamp(220px,30svh,340px);
  font-size:var(--fc-text);
}
body.fc-business .business-shell{width:calc(100% - 2 * var(--fc-gutter));max-width:none;margin-inline:auto}
body.fc-business .site-head.business-header .head-inner{width:calc(100% - 2 * var(--fc-gutter));max-width:none;height:var(--fc-header);min-height:var(--fc-header);margin-inline:auto;padding:0;gap:clamp(12px,1.4vw,50px)}
body.fc-business .business-header .main-nav{gap:clamp(4px,.85vw,30px)}
body.fc-business .business-header .nav-top-link{font-size:var(--fc-small);padding-inline:clamp(4px,.45vw,16px);min-height:clamp(44px,3.4vw,122px)}
body.fc-business .business-header .head-contact{font-size:var(--fc-small);min-height:clamp(44px,3.4vw,122px);padding-inline:clamp(10px,1vw,36px)}
body.fc-business .business-eyebrow{font-size:var(--fc-label)!important;margin-bottom:clamp(18px,1.4vw,50px)!important}
body.fc-business .business-page-heading{min-height:calc(100svh - var(--fc-header));padding-block:var(--fc-space);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
body.fc-business .business-page-heading h1{font-size:var(--fc-title);margin-bottom:clamp(24px,2vw,72px)}
body.fc-business .business-page-heading>p:not(.business-eyebrow){font-size:var(--fc-text);max-width:42em}
body.fc-business :is(.business-section,.fc-service-detail .business-section){padding-block:var(--fc-space);scroll-margin-top:calc(var(--fc-header) + 24px)}
body.fc-business .business-section-head{gap:var(--fc-gap);margin-bottom:clamp(28px,3vw,108px)}
body.fc-business :is(.business-section h2,.business-section-head h2,.business-cta h2,.service-project-cta h2){font-size:var(--fc-heading);line-height:1.4}
body.fc-business .service-help-section h2{font-size:var(--fc-heading)!important}
body.fc-business .business-section-head>p{flex-basis:32%;font-size:var(--fc-text)}
body.fc-business :is(.business-grid,.business-combinations,.business-process,.business-other-links,.service-visual-grid,.service-delivery-grid){gap:var(--fc-gap)}
body.fc-business a.business-card{padding:clamp(24px,2.2vw,80px)}
body.fc-business :is(.business-card h3,.business-combinations h3,.business-process h3,.fc-service-detail .business-module h3,.service-delivery-grid h3){font-size:var(--fc-subheading)}
body.fc-business :is(.business-card>p,.business-combinations p,.business-process p,.business-introduction>div>p:not(.business-eyebrow),.business-preparation p:not(.business-eyebrow),.business-cta p:not(.business-eyebrow),.fc-service-detail .business-module p,.service-module-copy li,.service-help-section>header>p:last-child,.business-faq details>p){font-size:var(--fc-text);line-height:1.9}
body.fc-business :is(.business-card-top,.business-card-art small,.service-module-art>span,.service-delivery-number){font-size:var(--fc-label)}
body.fc-business :is(.business-card>ul li,.business-card-link,.business-section-bottom,.business-check-list li,.business-other-links strong,.business-other-links>a,.business-anchor-nav a,.service-fit li,.service-fit>span,.service-section-note,.service-delivery-grid p,.service-preparation summary,.business-faq summary){font-size:var(--fc-small)}
body.fc-business .business-card-art{height:auto;aspect-ratio:2.9/1}
body.fc-business .business-glyph{font-size:clamp(60px,5vw,180px)}
body.fc-business .business-card-art .business-orbit{width:32%;height:70%}
body.fc-business .business-card-art .business-art-line{width:70%}
body.fc-business .business-heading-links{gap:var(--fc-gap);margin-top:clamp(24px,2.2vw,80px)}
body.fc-business a.business-button{font-size:var(--fc-small);min-height:clamp(50px,3.9vw,140px);padding:clamp(13px,1.15vw,42px) clamp(18px,1.7vw,60px);gap:clamp(24px,2.5vw,90px)}
body.fc-business .business-text-link{font-size:var(--fc-small)}
body.fc-business :is(.business-introduction,.service-help-section,.fc-contact-layout){gap:clamp(30px,5vw,180px)}
body.fc-business :is(.business-introduction aside,.business-combinations article,.business-cta,.fc-contact-form){padding:clamp(24px,3vw,108px)}
body.fc-business .business-cta{margin-bottom:var(--fc-space)}
body.fc-business .business-other-links>a{padding:clamp(20px,1.7vw,62px)}
body.fc-business .business-process li{padding-top:clamp(24px,2vw,72px)}
body.fc-business .business-process h3{margin-block:clamp(22px,2vw,72px) clamp(12px,1vw,36px)}
body.fc-business .business-process li>span{font-size:var(--fc-label)}
body.fc-business .fc-service-detail .business-process li>span{font-size:clamp(30px,2.65vw,95px)}
body.fc-business .fc-service-detail .business-process li::after{top:clamp(28px,2.1vw,76px);font-size:clamp(20px,1.5vw,54px)}
body.fc-business .service-hero-layout{min-height:calc(100svh - var(--fc-header));max-height:none;padding-bottom:clamp(20px,1.8vw,65px)}
body.fc-business .service-hero-copy{max-width:52%;padding-block:clamp(30px,3svh,90px)}
body.fc-business .fc-service-detail .service-hero-copy h1{font-size:var(--fc-title);margin-bottom:clamp(22px,2vw,72px)}
body.fc-business .service-hero-name{font-size:clamp(18px,1.4vw,50px)}
body.fc-business .service-hero-copy .business-summary{font-size:var(--fc-text)}
body.fc-business .fc-service-detail .business-breadcrumb{font-size:var(--fc-label);margin-block:clamp(20px,1.8vw,64px)}
body.fc-business .service-hero-foot{font-size:var(--fc-label);padding-top:clamp(16px,1.5vw,54px)}
body.fc-business .skip-link{top:12px;transform:translateY(calc(-100% - 24px));font-size:var(--fc-small)}
body.fc-business .skip-link:focus{transform:none;top:12px}
body.fc-business .service-motion-toggle{font-size:var(--fc-label);min-height:clamp(36px,2.6vw,94px);padding:clamp(6px,.5vw,18px) clamp(9px,.8vw,29px)}
body.fc-business .fc-service-detail .service-background-scene :is(.ed-art,.term-art,.neb-art){inset:0 0 0 50%;width:50%}
body.fc-business .fc-service-detail .service-background-scene :is(.ed-circle-1,.term-radar,.ring-a,.orbit-one){width:var(--fc-art);height:var(--fc-art)}
body.fc-business .fc-service-detail .service-background-scene :is(.ed-circle-2,.ring-b,.orbit-two){width:calc(var(--fc-art) * .73);height:calc(var(--fc-art) * .73)}
body.fc-business .fc-service-detail .service-background-scene .ring-c{width:calc(var(--fc-art) * .49);height:calc(var(--fc-art) * .49)}
body.fc-business .fc-service-detail .service-background-scene .orbit-three{width:calc(var(--fc-art) * 1.16);height:calc(var(--fc-art) * .6)}
body.fc-business .fc-service-detail .service-background-scene :is(.ed-leaf,.term-leaf){width:calc(var(--fc-art) * .53);height:calc(var(--fc-art) * .61)}
body.fc-business .fc-service-detail .service-background-scene .neb-glass{width:calc(var(--fc-art) * .68);height:calc(var(--fc-art) * .8);padding:clamp(15px,1.7vw,60px);border-radius:clamp(18px,1.8vw,64px)}
body.fc-business .fc-service-detail .service-background-scene .neb-glass svg{width:calc(var(--fc-art) * .46);height:calc(var(--fc-art) * .49)}
body.fc-business .fc-service-detail :is(.neb-glass-top,.neb-glass-bottom,.neb-glass small){font-size:clamp(7px,.63vw,23px)}
body.fc-business .fc-service-detail .service-background-scene .washi-moon{left:75%;top:50%;right:auto;bottom:auto;translate:-50% -50%;width:calc(var(--fc-art) * .84);height:calc(var(--fc-art) * .84)}
body.fc-business .service-washi-leaf{left:75%;top:50%;right:auto;bottom:auto;translate:-50% -50%;width:calc(var(--fc-art) * .5);height:calc(var(--fc-art) * .57)}
body.fc-business .fc-service-detail .service-background-scene .washi-vertical{font-size:var(--fc-label)}
body.fc-business .fc-service-detail .service-background-scene .washi-stamp{font-size:var(--fc-text)}
body.fc-business .service-module-art{height:auto;aspect-ratio:1.65/1}
body.fc-business .service-module-art>svg{max-width:none;width:100%;height:100%}
body.fc-business .service-module-copy{padding:clamp(24px,2vw,72px)}
body.fc-business .service-module-number{right:clamp(24px,2vw,72px);top:clamp(26px,2vw,72px);font-size:var(--fc-small)}
body.fc-business .service-module-copy ul{gap:clamp(8px,.7vw,26px);margin-top:clamp(20px,1.7vw,62px);padding-top:clamp(18px,1.5vw,54px)}
body.fc-business .service-delivery-grid article{padding:clamp(22px,2vw,72px)}
body.fc-business .service-delivery-symbol{width:clamp(50px,4.5vw,160px);height:clamp(50px,4.5vw,160px);margin-bottom:clamp(24px,2vw,72px)}
body.fc-business :is(.service-preparation,.business-faq details){padding-block:clamp(22px,1.7vw,60px)}
body.fc-business :is(#preparation,#faq,.service-fit){scroll-margin-top:calc(var(--fc-header) + 24px)}
body.fc-business .service-project-cta{padding:clamp(30px,4vw,144px);margin-bottom:var(--fc-space);gap:var(--fc-gap)}
body.fc-business .fc-contact-copy h2{font-size:var(--fc-heading)}
body.fc-business :is(.fc-contact-copy>p,.fc-contact-form label,.fc-contact-form input,.fc-contact-form textarea,.fc-contact-form select){font-size:var(--fc-text)}
body.fc-business .fc-contact-form :is(input,textarea,select){padding:clamp(12px,1vw,36px);margin-top:clamp(8px,.6vw,22px)}
body.fc-business :is(.fc-contact-form input,.fc-contact-form textarea,.fc-search-form input){font-size:var(--fc-text)!important;padding:clamp(12px,1vw,36px)!important}
body.fc-business .fc-search-form{width:min(100%,50em);max-width:none;gap:var(--fc-gap);margin-top:clamp(20px,2vw,72px)}
body.fc-business .fc-search-form button{font-size:var(--fc-small);padding-inline:clamp(20px,2vw,72px)}
body.fc-business .fc-contact-form .fc-button{font-size:var(--fc-text);padding:clamp(14px,1vw,36px) clamp(22px,2vw,72px)}
body.fc-business .fc-contact-form .fc-form-bottom>span{font-size:var(--fc-small)}
body.fc-business .business-footer{padding-top:var(--fc-space)}
body.fc-business .business-footer-main{gap:clamp(30px,4vw,144px);padding-bottom:clamp(35px,3vw,108px)}
body.fc-business .business-footer h2{font-size:var(--fc-subheading)}
body.fc-business .business-footer-main nav{font-size:var(--fc-small);gap:clamp(14px,1vw,36px)}
body.fc-business .business-footer-legal{font-size:var(--fc-label)}
body.fc-business .business-footer-friends{gap:var(--fc-gap);padding-block:clamp(20px,1.7vw,62px)}
body.fc-business .business-footer-friends>span,body.fc-business .business-footer .friend-image strong{font-size:var(--fc-small)}
body.fc-business .business-footer .friend-logo{width:clamp(38px,2.7vw,96px);height:clamp(38px,2.7vw,96px);flex-basis:clamp(38px,2.7vw,96px)}
body.fc-business .business-footer .friend-image{gap:clamp(10px,.85vw,30px);padding:clamp(8px,.6vw,22px) clamp(12px,1vw,36px)}
body.home-business.home-one-screen.home-fullscreen .home-hero{min-height:calc(100svh - var(--fc-header));height:calc(100svh - var(--fc-header));max-height:none;padding:clamp(28px,4svh,120px) var(--fc-gutter) clamp(24px,3svh,90px);gap:clamp(25px,3svh,90px)}
body.home-business .home-hero-inner{min-height:0;height:100%}
body.home-business .hero-copy h1.hero-statement{font-size:var(--fc-title)}
body.home-business .hero-copy .hero-lead{font-size:var(--fc-text)}
body.home-business .hero-keywords li,body.home-business .hero-service-label,body.home-business .hero-actions .action-primary{font-size:var(--fc-small)}
body.home-business .hero-visual{height:clamp(350px,60svh,1400px);max-height:100%}
body.home-business .hero-switcher button strong{font-size:var(--fc-small)}
@media(max-width:1100px){body.fc-business .business-header .nav-top-link{font-size:13px}}
@media(min-width:761px) and (max-width:980px){body.fc-business .service-module-art{aspect-ratio:auto;height:100%;min-height:260px}}
@media(max-width:980px){body.fc-business .business-header .main-nav{max-height:calc(100dvh - var(--fc-header))}body.fc-business .business-header .main-nav .nav-top-link{font-size:16px;min-height:50px}}
@media(max-width:760px){
  body.fc-business{--fc-gutter:20px;--fc-header:64px;--fc-title:clamp(36px,9.8vw,64px);--fc-heading:clamp(30px,7.8vw,48px);--fc-subheading:clamp(23px,5.7vw,34px);--fc-text:16px;--fc-small:14px;--fc-label:11px;--fc-space:45px;--fc-art:var(--fc-mobile-art)}
  body.fc-business .site-head.business-header .head-inner{width:calc(100% - 32px);gap:8px}
  body.fc-business .business-header .head-contact{font-size:14px;min-height:40px;padding-inline:9px}
  body.fc-business .business-page-heading{min-height:calc(100svh - var(--fc-header));padding-block:50px}
  body.fc-business .business-section-head>p{margin-top:20px}
  body.fc-business .service-hero-layout{grid-template-rows:auto auto minmax(var(--fc-mobile-art),1fr) auto;min-height:calc(100svh - var(--fc-header));padding-bottom:20px}
  body.fc-business .service-hero-copy{max-width:none;padding:0}
  body.fc-business .service-hero-foot{font-size:9px;padding-top:16px}
  body.fc-business .fc-service-detail .business-breadcrumb{font-size:11px;margin:20px 0 28px}
  body.fc-business .fc-service-detail .service-background-scene :is(.ed-art,.term-art,.neb-art){inset:auto 0 73px;width:100%;height:var(--fc-mobile-art)}
  body.fc-business .fc-service-detail .service-background-scene .neb-glass{padding:14px;border-radius:18px}
  body.fc-business .fc-service-detail :is(.neb-glass-top,.neb-glass-bottom,.neb-glass small){font-size:6px}
  body.fc-business .fc-service-detail .service-background-scene .washi-moon{left:50%;top:auto;bottom:calc(73px + var(--fc-mobile-art) * .08);translate:-50% 0}
  body.fc-business .service-washi-leaf{left:50%;top:auto;bottom:calc(73px + var(--fc-mobile-art) * .215);translate:-50% 0}
  body.fc-business .service-module-art{aspect-ratio:1.5/1}
  body.fc-business .service-module-copy{padding:24px}
  body.fc-business .service-delivery-grid article{padding:20px 15px}
  body.fc-business .service-delivery-grid p{font-size:13px}
  body.fc-business .service-delivery-grid h3{font-size:20px}
  body.fc-business .business-footer-legal{font-size:11px}
  body.home-business .home-hero-inner{min-height:0;height:auto;grid-template-columns:1fr;gap:25px}
  body.home-business.home-one-screen.home-fullscreen .home-hero{height:auto}
  body.home-business .hero-visual{height:var(--fc-mobile-art);min-height:var(--fc-mobile-art)}
  body.home-business .hero-switcher button strong{font-size:12px}
}
@media(min-width:761px) and (max-height:650px){body.home-business.home-one-screen.home-fullscreen .home-hero{height:auto;min-height:calc(100svh - var(--fc-header))}body.home-business .home-hero-inner{height:auto}}
/* Preserve full-height layouts when small/dynamic viewport units are unavailable. */
@supports not (height:100svh){
  body.fc-business{--fc-art:clamp(300px,min(32vw,58vh),1120px);--fc-mobile-art:clamp(220px,30vh,340px)}
  body.fc-business :is(.business-page-heading,.service-hero-layout,.atmosphere-layout){min-height:calc(100vh - var(--fc-header))}
  body.home-business.home-one-screen.home-fullscreen .home-hero{min-height:calc(100vh - var(--fc-header));height:calc(100vh - var(--fc-header))}
  body.fc-business .business-header .main-nav{max-height:calc(100vh - var(--fc-header))}
  @media(max-width:760px){body.fc-business{--fc-art:var(--fc-mobile-art)}body.home-business.home-one-screen.home-fullscreen .home-hero{height:auto}}
  @media(min-width:761px) and (max-height:650px){body.home-business.home-one-screen.home-fullscreen .home-hero{height:auto}}
}
