/* Migration 01: preserve R37 geometry around native WordPress block wrappers. */
.wp-site-blocks { padding: 0; }
.wp-site-blocks > *, .wp-block-post-content > *, .wp-block-template-part { margin-block: 0; }
.fts-site .wp-block-group { box-sizing: border-box; }
.wp-block-image, .wp-block-video { margin-block: 0; }
.fts-site .wp-block-image img { height: auto; }
.fts-site .wp-block-image > a { display: block; }
.fts-site .wp-block-post-content { width: 100%; max-width: none; }
.fts-site .wp-block-post-content :where(.wp-block-group) { min-width: 0; }
.fts-link-wrap { display: contents; }
.fts-site .wp-block-heading { overflow-wrap: normal; }
.fts-site :where(p,li,figcaption,td,th) { overflow-wrap: break-word; }
.fts-site .wp-block-table { margin: 0; overflow-x: auto; }
.fts-site .wp-block-table td, .fts-site .wp-block-table th { border-color: var(--light-grey); }
.fts-site .wp-block-table table { border-collapse: collapse; }
.fts-site .wp-block-buttons { gap: 12px; }
.fts-site .wp-element-button, .fts-site .wp-block-button__link { border-radius: 0; }

/* The navigation is ordinary WordPress Navigation content with one menu control. */
.site-header .wp-block-navigation__container { gap: inherit; flex: 0 1 auto; flex-wrap: nowrap; justify-content: inherit; }
.site-header .wp-block-navigation-item { margin: 0; }
.site-header .wp-block-navigation-item__content { display: inline-flex; align-items: center; }
.site-header .wp-block-navigation-item.nav-link { padding: 0; }
.site-header .wp-block-navigation-item.nav-link > a { padding: 14px 0; }
.site-header .wp-block-navigation-item.request-call { padding: 0; border: 0; background: none; }
.site-header .wp-block-navigation-item.request-call > a { padding: 17px 25px; color: var(--paper); background: var(--red); border: 1px solid var(--red); min-height: 52px; }
.site-header .wp-block-navigation-item.request-call > a:hover { background: var(--ink); border-color: var(--ink); }
.site-header .wp-block-navigation-item.header-search-link > a { padding-block: 10px 6px; }
.site-header .wp-block-navigation__responsive-container-content { gap: inherit; }
.site-header .wp-block-search__label { font-size: 12px; line-height: 1.4; display: block; margin-bottom: 7px; }
.site-header .wp-block-search__inside-wrapper { display: flex; gap: 0; margin: 0 0 7px 7px; box-shadow: -7px 7px 0 var(--lime), 0 5px 12px #24282b16; }
.site-header .wp-block-search__input { width: 100%; min-width: 0; min-height: 44px; background: white; border: 1px solid #a8afa9; border-radius: 0; padding: 12px; font: 16px/1.3 var(--sans); }
.site-header .wp-block-search__button { background: var(--red); color: var(--paper); margin: 0; border: 1px solid var(--red); border-radius: 0; padding: 12px 14px; min-height: 44px; font: 600 14px/1.3 var(--sans); }
.site-header .wp-block-search__button:hover { background: #ad240e; border-color: #ad240e; }
.site-header .brand, .site-header .wp-block-site-logo { margin: 0; }
.site-header .wp-block-site-logo { flex: 0 0 auto; width: clamp(160px,15vw,204px); }
.site-header .wp-block-site-logo img { width: 100%; height: auto; }
.site-footer .wp-block-navigation { display: block; }
.site-footer .wp-block-navigation__container { display: block; }
.footer-bottom .wp-block-navigation__container, .footer-social .wp-block-navigation__container { display: flex; flex-wrap: wrap; }
.site-footer .wp-block-navigation-item__content { font-size: inherit; }
.footer-company .fts-business-detail, .contact-business .fts-business-detail { display: block; }
.footer-address .fts-business-detail + .fts-business-detail { margin-top: 4px; }

/* The image itself is editable; presentation follows the container. */
.product-image-link > .wp-block-image { flex: 1 1 0; min-width: 0; }
.visual-cabinets > .wp-block-image:first-child { flex-basis: 56%; }
.visual-cabinets > .wp-block-image:last-child { flex-basis: 44%; }
.visual-cabinets > .wp-block-image img { width: 100%; }
.visual-cabinets > .wp-block-image:first-child img { max-height: 500px; }
.visual-cabinets > .wp-block-image:last-child img { max-height: 435px; margin-bottom: 10px; }
.visual-analyzers > .wp-block-image:first-child { width: 70%; }
.visual-analyzers > .wp-block-image:last-child { width: 88%; align-self: end; }
.visual-analyzers > .wp-block-image img { width: 100%; max-height: 245px; }
.home-page .additional-visual > .wp-block-group { display: flex; align-items: center; justify-content: center; gap: 10px; background: var(--paper); min-height: 230px; padding: 18px; border-bottom: 4px solid var(--lime); }
.home-page .additional-visual > .wp-block-group > .wp-block-image { min-width: 0; flex: 1 1 0; }
.home-page .additional-visual .wp-block-image a { padding: 0; min-height: 0; border: 0; display: block; }
.home-page .additional-visual .wp-block-image img { width: 100%; max-width: 100%; }
.catalog-figure > img, .catalog-figure > a > img { display: block; width: 100%; height: auto; object-fit: contain; }
.product-detail-page .product-card-media .catalog-figure img { max-height: 560px; }
.product-detail-page .product-card-media:has(> :nth-child(2)) .catalog-figure img { max-height: 310px; }
.product-detail-page .ciq-gallery-item { position: relative; }
.product-detail-page .ciq-gallery-item > img { box-shadow: 10px 10px 0 var(--frame-accent); }
.product-detail-page .burner-brand-feature .catalog-figure > img { width: 100%; max-height: none; padding: 0; background: none; border: 0; box-shadow: none; }
.turnkey-detail-page .turnkey-content .catalog-figure > img { padding: 18px; background: var(--light-grey); max-height: none; }
.turnkey-detail-page .turnkey-content .turnkey-burner-detail > img { background: color-mix(in srgb,var(--lime) 12%,var(--off-white)); }
.services-page .service-photograph > img { width: 100%; max-height: none; box-shadow: 10px 10px 0 var(--lime); }
.services-page .service-photograph figcaption { padding-top: 22px; }
.about-page .about-global-art.wp-block-image { aspect-ratio: auto; }
.about-page .about-global-art img { width: 100%; height: auto; max-height: none; object-fit: contain; }
.contact-photo > img { position: relative; z-index: 1; }
.service-brand-flame.wp-block-image { width: 60px; }
.service-brand-flame.wp-block-image img { width: 100%; height: auto; }
.hero-film .wp-block-video { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-film video { pointer-events: auto; }
.hero-film.is-enhanced video { pointer-events: none; }
.hero-play { border: 1px solid currentColor; }
.hero-play.is-playing { opacity: .75; padding: 8px 12px; min-height: 36px; font-size: 12px; }
.hero-play.is-playing:hover, .hero-play.is-playing:focus-visible { opacity: 1; }
.fts-site .fts-content-section { padding: clamp(32px,4vw,64px) var(--gutter); }
.fts-content-section > h2 { font: 400 clamp(32px,3.2vw,48px)/1.15 var(--serif); margin-bottom: 24px; }
.fts-content-section > p { max-width: 72ch; font-size: 18px; line-height: 1.7; }

/* Logos remain ordinary Media Library images. Clones exist only in the public DOM. */
.partners { --logo-gap: 48px; --banner-background: #fff; --banner-text: #24282B; }
.logo-group .logo-item.partner-logo { width: 180px; height: 105px; max-height: none; object-fit: initial; flex: 0 0 auto; }
.logo-item.partner-logo img { width: var(--logo-width,78%); height: auto; max-height: var(--logo-height,96px); max-width: 92%; object-fit: contain; margin-inline: auto; }
.logo-item.partner-logo > a { width: 100%; }
.logo-item.partner-logo figcaption { display: none; }

@media(max-width:1080px) {
 .site-header .primary-navigation { width: 100%; }
 .site-header .wp-block-navigation__container { flex-direction: column; align-items: stretch; width: 100%; gap: 0; }
 .site-header .wp-block-navigation-item.nav-link { border-top: 1px solid var(--rule); font-size: 19px; }
 .site-header .wp-block-navigation-item.nav-link > a { padding: 16px 0; width: 100%; }
 .site-header .wp-block-navigation__responsive-container, .site-header .wp-block-navigation__responsive-container-content { width: 100%; }
 .site-header .wp-block-navigation-item.request-call { align-self: flex-start; margin-top: 14px; }
 .site-header .wp-block-navigation-item.header-search-link { display: flex; }
 .site-header .wp-block-navigation-item.header-search-link > a { width: auto; }
 .site-header .mobile-toggle { gap: 12px; min-height: 44px; padding: 10px; }
 .site-header > .header-search { width: 100%; }
 .js-ready .site-header > .header-search { display: none; }
 .js-ready .site-header > .primary-navigation.is-open ~ .header-search { display: block; margin-top: 12px; }
}
@media(min-width:1081px) { .site-header .primary-navigation { flex: 1 1 auto; } }
@media(max-width:760px) {
 .site-header { gap: 12px; }
 .visual-cabinets > .wp-block-image:first-child img { max-height: 390px; }
 .visual-cabinets > .wp-block-image:last-child img { max-height: 340px; }
 .home-page .additional-visual > .wp-block-group { min-height: 180px; padding: 12px; }
 .logo-group .logo-item.partner-logo { width: 155px; height: 94px; }
 .services-page .service-photograph > img { box-shadow: 7px 7px 0 var(--lime); }
 .services-page .service-photograph figcaption { padding-top: 19px; }
 .product-detail-page .product-card-media .catalog-figure img { max-height: 440px; }
}
@media(max-width:600px) { .turnkey-detail-page .turnkey-content .catalog-figure > img { padding: 12px; } }
@media(prefers-reduced-motion:reduce) {
 .logo-track { transform: none !important; }
 .logo-viewport.is-animated .logo-track { width: 100%; }
 .logo-viewport.is-animated .logo-group { flex-wrap: wrap; justify-content: center; }
 .logo-clone { display: none !important; }
}
/* Approved logo fit ratios retained from Revision 37. Image replacement remains native. */
.fts-logo-27-inteva-products { --logo-width:78%; --logo-height:96px; }
.fts-logo-04-tesla { --logo-width:62%; --logo-height:114px; }
.fts-logo-23-faurecia { --logo-width:78%; --logo-height:96px; }
.fts-logo-01-ford { --logo-width:74%; --logo-height:82px; }
.fts-logo-02-toyota { --logo-width:79%; --logo-height:64px; }
.fts-logo-03-honda { --logo-width:73%; --logo-height:112px; }
.fts-logo-05-gm { --logo-width:44%; --logo-height:100px; }
.fts-logo-06-nissan { --logo-width:63%; --logo-height:108px; }
.fts-logo-07-yeti { --logo-width:64%; --logo-height:54px; }
.fts-logo-08-sherwin-williams { --logo-width:85%; --logo-height:72px; }
.fts-logo-09-rivian { --logo-width:65%; --logo-height:104px; }
.fts-logo-10-certainteed { --logo-width:83%; --logo-height:68px; }
.fts-logo-11-magna { --logo-width:76%; --logo-height:68px; }
.fts-logo-12-abb { --logo-width:66%; --logo-height:72px; }
.fts-logo-13-fanuc { --logo-width:48%; --logo-height:102px; }
.fts-logo-14-henkel { --logo-width:63%; --logo-height:70px; }
.fts-logo-15-hyundai-mobis { --logo-width:77%; --logo-height:83px; }
.fts-logo-16-akzonobel { --logo-width:78%; --logo-height:96px; }
.fts-logo-17-ap-plasman { --logo-width:78%; --logo-height:96px; }
.fts-logo-18-attabox { --logo-width:78%; --logo-height:96px; }
.fts-logo-19-calsonic-kansei { --logo-width:78%; --logo-height:96px; }
.fts-logo-20-continental-structural-plastics { --logo-width:78%; --logo-height:96px; }
.fts-logo-21-eissmann { --logo-width:78%; --logo-height:96px; }
.fts-logo-22-evco { --logo-width:78%; --logo-height:96px; }
.fts-logo-24-greenville-technology { --logo-width:78%; --logo-height:96px; }
.fts-logo-25-grupo-antolin { --logo-width:78%; --logo-height:96px; }
.fts-logo-26-iac { --logo-width:78%; --logo-height:96px; }
.fts-logo-28-kraussmaffei { --logo-width:78%; --logo-height:96px; }
.fts-logo-29-motus { --logo-width:78%; --logo-height:96px; }
.fts-logo-30-nb-coatings { --logo-width:78%; --logo-height:96px; }
.fts-logo-31-plastic-omnium { --logo-width:78%; --logo-height:96px; }
.fts-logo-32-rehau { --logo-width:78%; --logo-height:96px; }
.fts-logo-33-robroy-enclosures { --logo-width:78%; --logo-height:96px; }
.fts-logo-34-stahlin { --logo-width:78%; --logo-height:96px; }
.fts-logo-35-summit-polymers { --logo-width:78%; --logo-height:96px; }
.fts-logo-36-vuteq { --logo-width:78%; --logo-height:96px; }
.fts-logo-37-yanfeng { --logo-width:78%; --logo-height:96px; }
