/* FH046 1.1.2: readable type by content role, with a quieter contact dock. */
:root{--muted:#526573;--orange:#c94b1c}
body{font-size:17px;line-height:1.8}
html{scroll-padding-top:calc(var(--fi-header-height,88px) + 20px)}
.detail-navigation{top:var(--fi-header-height,88px)}
.admin-bar .detail-navigation{top:calc(var(--fi-header-height,88px) + 32px)}
.utility-bar{font-size:14px;letter-spacing:.025em}
.utility-bar>.container{min-height:34px}
.site-nav a{font-size:16px;padding-block:28px}
.site-nav .menu{gap:24px}
.header-actions .header-search{font-size:16px;min-width:40px}
.site-header .header-inner .fh-language,.site-header .header-inner .fh-language>summary{font-size:15px}
.header-actions .language-switcher-wrap{max-width:150px}
.site-header .header-inner .fh-language-current{max-width:94px}
.site-header .language-switcher-wrap .fh-language-panel button{font-size:16px;max-width:none}
.eyebrow,.micro-label{font-size:14px;letter-spacing:.085em}
.section-intro,.page-hero p:not(.eyebrow),.product-excerpt{font-size:17px;line-height:1.85}
.hero-description{font-size:18px;line-height:1.85;max-width:535px}
.hero-note{font-size:14px;line-height:1.75;max-width:510px}
.button,.text-link,.plain-button{font-size:16px}
.hero-actions .button,.section-heading>.text-link,.site-search .button{font-size:16px}
.hero-machine-caption span,.hero-machine-caption small,.image-register{font-size:14px;letter-spacing:.02em}
.hero-machine-caption strong{font-size:22px}
.hero-machine-caption small{max-width:155px}
.system-index>div{grid-template-columns:26px 1fr;gap:2px 10px}
.system-index>div>span,.system-index small{font-size:14px;letter-spacing:0}
.system-index strong{font-size:18px}
.product-model,.product-card-top .micro-label,.product-index{font-size:14px;letter-spacing:.015em}
.product-card-top{align-items:flex-start;flex-wrap:wrap;gap:3px 8px}
.product-card h3{font-size:23px}
@media(min-width:901px){.product-grid>.product-card:only-child{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.product-grid>.product-card:only-child .product-photo{min-height:330px;max-height:400px}.product-grid>.product-card:only-child .product-card-copy{padding:30px}.product-grid>.product-card:only-child h3{font-size:28px}}
.product-card-copy>p,.case-card p,.company-copy>p:not(.eyebrow),.workflow-card p,.news-row p{font-size:16px;line-height:1.85}
.mini-specs{font-size:15px;line-height:1.7}
.mini-specs>div{align-items:flex-start;gap:12px}
.mini-specs dt,.mini-specs dd{overflow-wrap:anywhere}
.product-card-copy>.text-link,.case-card .text-link,.news-row>.text-link{font-size:15px;min-height:44px}
.company-photo>span,.company-principles span,.workflow-photo>span,.review-rating,.review-author span,.news-row time{font-size:14px;letter-spacing:.03em}
.company-principles p{font-size:16px}
.company-principles strong{font-size:18px}
.workflow-card h3{font-size:21px}
.review-card{width:390px;padding:28px}
.review-card blockquote{font-size:17px;line-height:1.85}
.review-author strong{font-size:16px}
.news-row{grid-template-columns:145px 108px minmax(0,1fr) auto}
.news-row h3{font-size:22px}
.inquiry-grid>div>p:not(.eyebrow),.inquiry-checklist li{font-size:17px}
.inquiry-checklist span{font-size:14px}
.fh-inquiry-form>label,.fh-inquiry-form>label:not(.fh-inquiry-consent),.fh-inquiry-form>button{font-size:16px}
.fh-inquiry-form{grid-template-columns:112px minmax(0,1fr)}
.fh-inquiry-consent,.fh-form-help{font-size:14px!important;line-height:1.8!important}
.footer-brand p,.footer-grid>div>p,.footer-grid .menu,.footer-contact-item,.footer-contact-item strong,.footer-inquiry{font-size:16px}
.footer-grid h2{font-size:18px}
.footer-contact-item span,.footer-bottom,.footer-bottom .plain-button{font-size:14px}
.footer-contact-item span{color:#b2c4cf}
.category-tabs a,.pagination .page-numbers{font-size:16px}
.catalog-toolbar>.micro-label,.breadcrumb,.small-note{font-size:14px}
.overview-specs,.spec-table,.contact-details{font-size:16px}
.contact-page-form{align-self:start}
.detail-navigation a{font-size:16px}
.document-label>p:not(.eyebrow),.feature-grid p,.feature-copy p{font-size:16px}
.feature-copy>span,.prose figure figcaption,.article-heading time{font-size:14px}
.feature-copy h3{font-size:21px}
.prose{font-size:17px;line-height:1.9}
.detail-checklist li,.case-fact-grid section>p:not(.eyebrow){font-size:16px}
.case-detail-hero>.container>p:not(.eyebrow),.article-heading>p:not(.eyebrow),.contact-page-form>p,.search-result p,.not-found>.container>p:not(.eyebrow){font-size:17px}
.search-result-with-photo{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:center}
.search-result-photo{aspect-ratio:1.45;overflow:hidden;background:var(--soft)}
.search-result-photo img{height:100%;object-fit:cover}
.search-result-copy{min-width:0}
.contact-tools{width:86px;top:auto;bottom:30px;right:20px;padding:6px;gap:3px;border:1px solid #dfe6e8;border-radius:13px;background:#fffffffa;box-shadow:0 10px 34px #132d4015}
.contact-tools>a,.contact-tools>button{display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:76px;width:100%;padding:11px 5px;border:0;border-radius:8px;background:transparent;color:var(--navy);font-size:14px;font-weight:500;line-height:1.4}
.contact-tools>a:first-child{background:var(--navy);color:#fff}
.contact-tools>button:hover,.contact-tools>button:focus-visible{background:#edf3f5;color:var(--navy)}
.contact-tools>a:hover{background:#254e66;color:#fff}
.contact-tools .contact-icon{width:25px;height:25px;flex-shrink:0}
.contact-top-mark{font-size:14px;font-weight:700;line-height:25px;letter-spacing:.04em}
@media(max-width:1100px){
 .site-header .header-inner{gap:18px}.site-nav .menu{gap:17px}.header-actions{gap:12px}
 .site-header .brand strong{font-size:23px}.news-row{grid-template-columns:120px 102px minmax(0,1fr)}
 .news-row>.text-link{grid-column:3}
}
@media(max-width:1535px),(max-height:540px){
 html{scroll-padding-bottom:88px}
 .site-footer{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
 .contact-tools{width:auto;left:0;right:0;bottom:0;top:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:6px max(12px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));border-radius:0;border:0;border-top:1px solid #e2e7e9;z-index:45;box-shadow:0 -4px 22px #132d400c}
 .contact-tools>a,.contact-tools>button{min-height:64px;border:0;padding:7px 3px;gap:4px;border-radius:8px;font-size:14px}
 .contact-tools .contact-icon{width:23px;height:23px}
 .contact-top-mark{line-height:23px}
}
@media(max-width:900px){
 .site-header .site-nav{margin:0}.site-header .site-nav a{font-size:17px;padding:13px 0}
 .header-actions .menu-toggle{font-size:16px}
 .feature-copy h3{font-size:20px}.feature-copy p{font-size:16px}
}
@media(min-width:651px) and (max-width:1535px),(min-width:651px) and (max-height:540px){
 .contact-tools{left:50%;right:auto;bottom:14px;transform:translateX(-50%);width:min(620px,calc(100% - 40px));border:1px solid #dfe6e8;border-radius:14px;padding:5px;box-shadow:0 8px 30px #132d4018}
 .contact-tools>a,.contact-tools>button{min-height:60px}
 .site-footer{padding-bottom:98px}
}
@media(max-width:640px){
 .admin-bar .detail-navigation{top:calc(var(--fi-header-height,73px) + 46px)}
 body{font-size:16px}.utility-bar{font-size:14px}.utility-bar>.container{min-height:36px}
 .utility-bar span:last-child{display:none}
 .hero-copy h1{font-size:43px;line-height:1.24}.hero-description{font-size:17px;line-height:1.85}
 .hero-note{font-size:14px}.hero-machine-caption span,.hero-machine-caption small{font-size:14px}
 .hero-machine-caption{grid-template-columns:1fr;padding:15px}
 .hero-machine-caption small{grid-column:1;grid-row:auto;max-width:none}
 .image-register{font-size:14px}.hero-machine-caption strong{font-size:21px}
 .system-index strong{font-size:17px}.system-index small,.system-index>div>span{font-size:14px}
 .system-index>div{grid-template-columns:22px 1fr;padding:15px 10px;gap:2px 7px}
 .section-intro,.page-hero p:not(.eyebrow),.product-excerpt{font-size:16px}
 .product-card-copy>p,.case-card p,.company-copy>p:not(.eyebrow),.company-principles p,.workflow-card p,.news-row p{font-size:16px}
 .mini-specs{font-size:15px}.product-model,.case-card .micro-label{font-size:14px}
 .workflow-card h3{font-size:20px}.workflow-card p{line-height:1.75}
 .review-card{width:310px;padding:24px}.review-card blockquote{font-size:16px}
 .review-card .review-author span{font-size:14px}
 .news-row{grid-template-columns:90px minmax(0,1fr);gap:9px 16px}
 .news-row time{font-size:14px}.news-row h3{font-size:20px;line-height:1.45}
 .news-row>.text-link{grid-column:2;font-size:15px}
 .inquiry-grid>div>p:not(.eyebrow),.inquiry-checklist li{font-size:16px}
 .footer-grid .menu{grid-template-columns:repeat(2,minmax(0,1fr));font-size:16px}
 .footer-grid>div>p,.footer-brand p{font-size:16px}.footer-bottom{font-size:14px;line-height:1.8}
 .category-tabs a{font-size:15px}.catalog-toolbar>.micro-label,.breadcrumb,.small-note{font-size:14px}
 .overview-specs,.spec-table,.contact-details{font-size:15px}
 .detail-navigation>.container{gap:24px}.detail-navigation a{font-size:15px}
 .prose,.case-fact-grid section>p:not(.eyebrow),.document-label>p:not(.eyebrow),.feature-copy p,.detail-checklist li{font-size:16px}
 .feature-card{grid-template-columns:1fr}.feature-visual{aspect-ratio:1.65;min-height:0}.feature-visual img{min-height:0}
 .feature-copy{padding:19px}.feature-copy h3{font-size:21px}.prose figure figcaption{font-size:14px}
 .case-detail-hero>.container>p:not(.eyebrow),.article-heading>p:not(.eyebrow),.contact-page-form>p,.search-result p,.not-found>.container>p:not(.eyebrow){font-size:16px}
 .search-result-with-photo{grid-template-columns:1fr;gap:18px}
 .search-result-photo{aspect-ratio:1.7}
 .site-header .header-inner{flex-wrap:wrap;gap:6px 12px;padding-block:10px;min-height:76px}
 .site-header .brand{flex:1 1 auto}.site-header .brand strong{font-size:22px}
 .header-actions{margin-left:0;flex:0 0 auto;gap:10px}
 .site-header .header-inner .fh-language>summary{font-size:14px;padding-left:0;border:0}
 .site-header .header-inner .fh-language-current{max-width:73px}
 .header-actions .language-switcher-wrap{max-width:110px}
}
@media(max-width:359px){
 .header-actions{width:100%;justify-content:flex-end}.site-header .brand{min-height:40px}
 .site-header .header-inner{padding-block:8px}.hero-copy h1{font-size:38px}
}
