---
title: "AI Translation for Pharma: Connecting FIP’s Global Community with Interprefy"
description: "Discover how FIP enhances multilingual participation in global events through Interprefy AI, improving accessibility and reducing logistical challenges."
image: https://www.interprefy.com/hubfs/FIP_Interprefy.webp
canonical: https://www.interprefy.com/customer-stories/fip-interprefy-ai-translation-pharma
url: https://ai.interprefy.com/customer-stories/fip-interprefy-ai-translation-pharma.md
last_converted: 2026-09-16T09:28:58.291Z
---

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "VideoObject",
      "caption": {
        "@type": "MediaObject",
        "contentUrl": "https://www.interprefy.com/media-transcripts/159495977591/en.vtt",
        "inLanguage": "en",
        "name": "en Captions"
      },
      "contentUrl": "https://6564114.fs1.hubspotusercontent-na1.net/hubfs/6564114/What%20Is%20Interprefy.mp4",
      "dateModified": "2025-09-16T13:30:13.207Z",
      "duration": "PT2M46.24S",
      "height": 2160,
      "name": "What Is Interprefy",
      "thumbnailUrl": "https://api-na1.hubspot.com/filemanager/api/v3/files/thumbnail-redirect/159495977591?portalId=6564114&size=medium",
      "uploadDate": "2024-03-05T12:28:36.137Z",
      "width": 3840
    }
  ]
}
```

. `content:none` is the default, so a
blog with no entry below simply gets no pill rather than a wrong or empty
one — add a line for each new blog that adopts this stylesheet. */
body.hs-blog-listing.hs-blog-id-18068290575 .subscribe-strip-left::before{content:"Learning area"}  /* Learning Area / blog */
body.hs-blog-listing.hs-blog-id-30970945904 .subscribe-strip-left::before{content:"Company news"}   /* Press / Company News */

body.hs-blog-listing .subscribe-strip-left::before{
content:none;
display:inline-flex;align-items:center;gap:8px;
font-family:var(--f-ui);font-size:12px;font-weight:600;
letter-spacing:.14em;text-transform:uppercase;
color:rgba(255,255,255,.82);
background:rgba(255,255,255,.07);
border:1px solid var(--line-d);
border-radius:999px;padding:7px 15px;margin:0 0 20px;
}
body.hs-blog-listing .subscribe-strip-left h1{
font-family:var(--f-head) !important;
font-size:clamp(34px,5vw,64px) !important;
line-height:1.05 !important;
font-weight:700 !important;
letter-spacing:-.025em;
color:var(--white) !important;
margin:0 0 16px !important;
text-wrap:balance;
}
body.hs-blog-listing .subscribe-strip-left h5{
font-family:var(--f-body);
font-size:clamp(16px,1.35vw,18.5px) !important;
line-height:1.6 !important;
font-weight:400 !important;
color:rgba(255,255,255,.72) !important;
margin:0 !important;
max-width:52ch;
}

/* --------------------------------------------------------------------------
3. TOPIC FILTER — neutral chips, ink active state
   -------------------------------------------------------------------------- */
body.hs-blog-listing .topics-or-title{
padding:0 0 clamp(22px,3vw,36px) !important;
}
/* tinynav's mobile  is dropped — the pill row scrolls instead */
body.hs-blog-listing select.tinynav,
body.hs-blog-listing .tinynav1{display:none !important}

body.hs-blog-listing ul.l_tinynav1{
display:flex !important;
flex-wrap:wrap;
gap:9px;
margin:0;padding:0;
list-style:none;
}
body.hs-blog-listing ul.l_tinynav1 li{
display:block;
margin:0 !important;
}
body.hs-blog-listing ul.l_tinynav1 li a{
display:inline-flex;align-items:center;
font-family:var(--f-ui);
font-size:14px !important;
font-weight:500;
line-height:1;
white-space:nowrap;
color:var(--muted) !important;
background:var(--chip) !important;
border:1px solid transparent;
border-radius:999px !important;
padding:11px 18px !important;
text-decoration:none;
transition:background .25s var(--ease),color .25s var(--ease),
border-color .25s var(--ease),transform .25s var(--ease);
}
body.hs-blog-listing ul.l_tinynav1 li a:hover,
body.hs-blog-listing ul.l_tinynav1 li a:focus-visible{
color:var(--orange-text) !important;
background:var(--orange-tint) !important;
border-color:rgba(248,83,28,.35);
transform:translateY(-1px);
}
body.hs-blog-listing ul.l_tinynav1 li.active a{
color:var(--white) !important;
background:var(--ink) !important;
border-color:var(--ink);
}
body.hs-blog-listing ul.l_tinynav1 li.active a:hover{
background:var(--ink-2) !important;
color:var(--white) !important;
border-color:var(--ink-2);
}

/* --------------------------------------------------------------------------
4. POST GRID — real grid, equal-height cards
   -------------------------------------------------------------------------- */
body.hs-blog-listing .hhs-blog-post-mod{
background:var(--white) !important;
padding:0 0 clamp(30px,4vw,48px) !important;
}
/* ── :not(.grid) IS LOad-BEARING — DO NOT REMOVE ────────────────────────────
On Customer Stories the row carries `class="row grid"` and its columns carry
`.element-item`: that module is driven by **Isotope**, which the Event Type /
Industry filters and the Load More button both depend on. Isotope absolutely
positions every item and writes an inline height on the container.

Applying the grid there is destructive in two ways at once: `width:100%` on
an absolutely positioned item makes all 51 cards full-bleed and stacked on
top of each other, and `height:auto !important` beats Isotope's inline height
so the container collapses to 0 and the next section rides up over the cards.

So the grid is applied only to rows Isotope does NOT manage. On an Isotope
row the theme's own layout is left completely alone — every rule below this
block still styles the cards themselves, which is all that page needs.
────────────────────────────────────────────────────────────────────────── */
body.hs-blog-listing .hhs-blog-post-mod .row:not(.grid){
display:grid !important;
grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
gap:clamp(20px,2.4vw,30px);
margin:0 !important;
height:auto !important;
}
body.hs-blog-listing .hhs-blog-post-mod .row:not(.grid)::before,
body.hs-blog-listing .hhs-blog-post-mod .row:not(.grid)::after{display:none !important}

body.hs-blog-listing .hhs-blog-post-mod .row:not(.grid) .col-sm-4{
width:100% !important;
max-width:none !important;
float:none !important;
padding:0 !important;
margin:0 !important;
height:auto !important;
display:flex;
}

/* Row gutter for the Isotope rows, which get no `gap` because they are not a
grid. It has to be PADDING on the item, not margin: Isotope's fitRows takes
its row height from the item's offsetHeight, so a margin is measured as zero
and the rows end up flush against each other. Padding is inside that height
and lands as a real gutter. The theme's own `padding:0 15px` supplies the
column gutter, so only the bottom is set here. */
body.hs-blog-listing .hhs-blog-post-mod .row.grid > .col-sm-4{
padding-bottom:clamp(20px,2.4vw,30px) !important;
margin-bottom:0 !important;
}

/* the card */
body.hs-blog-listing .hhs-blog-post-card{
position:relative;
display:flex;
flex-direction:column;
width:100%;
height:auto !important;
margin:0 !important;
background:var(--white) !important;
border:1px solid var(--line);
border-radius:var(--r-card) !important;
box-shadow:0 1px 2px rgba(12,12,13,.04) !important;
overflow:hidden;
transition:transform .35s var(--ease),box-shadow .35s var(--ease),
border-color .35s var(--ease);
}
body.hs-blog-listing .hhs-blog-post-card:hover{
transform:translateY(-4px);
border-color:rgba(248,83,28,.30);
box-shadow:0 26px 48px -26px rgba(12,12,13,.34),
0 0 0 4px rgba(248,83,28,.06);
}
/* image link */
body.hs-blog-listing .hhs-blog-post-card > a{
display:block;
overflow:hidden;
background:var(--paper-2);
}
body.hs-blog-listing .hhs-post-feat-img{
height:auto !important;
aspect-ratio:16/10;
width:100%;
border-radius:0 !important;
background-size:cover !important;
background-position:center !important;
transition:transform .6s var(--ease);
}
body.hs-blog-listing .hhs-blog-post-card:hover .hhs-post-feat-img{
transform:scale(1.045);
}

/* card body */
/* The module's own script writes an inline height on every .hhs-post-content
to equalise cards. The grid does that now, and the inline height leaves a
dead 90px gap above the read-more, so it has to be overridden — an author
!important beats a non-important inline style. */
body.hs-blog-listing .hhs-post-content{
height:auto !important;
display:flex;
flex-direction:column;
flex:1 1 auto;
padding:clamp(18px,1.8vw,24px) clamp(18px,1.8vw,24px) clamp(20px,2vw,26px) !important;
}
/* reading time -> eyebrow with a pulsing orange dot */
body.hs-blog-listing .hhs-post-content .reading-minutes{
display:inline-flex;align-items:center;gap:8px;
font-family:var(--f-ui) !important;
font-size:11.5px !important;
font-weight:600 !important;
letter-spacing:.14em;
text-transform:uppercase !important;
color:var(--muted-2) !important;
margin:0 0 12px !important;
}
body.hs-blog-listing .hhs-post-content .reading-minutes::before{
content:"";width:6px;height:6px;border-radius:50%;flex:0 0 auto;
background:var(--orange);
box-shadow:0 0 0 3px var(--orange-tint);
}
body.hs-blog-listing .hhs-post-content > a{
text-decoration:none;
/* stretch the title link over the whole card so the summary is clickable */
}
body.hs-blog-listing .hhs-post-content > a::after{
content:"";position:absolute;inset:0;z-index:1;
}
body.hs-blog-listing .hhs-post-content h4{
font-family:var(--f-head) !important;
font-size:clamp(18px,1.45vw,20.5px) !important;
line-height:1.3 !important;
font-weight:700 !important;
letter-spacing:-.015em;
color:var(--text) !important;
margin:0 0 12px !important;
display:-webkit-box;
-webkit-line-clamp:3;
-webkit-box-orient:vertical;
overflow:hidden;
transition:color .25s var(--ease);
}
body.hs-blog-listing .hhs-blog-post-card:hover h4{color:var(--orange-text) !important}

/* the meta row renders empty on this blog — collapse it */
body.hs-blog-listing .hhs-post-meta{display:none}

body.hs-blog-listing .hhs-post-summary{margin:0}
body.hs-blog-listing .hhs-post-summary p{
font-family:var(--f-body) !important;
font-size:15px !important;
line-height:1.62 !important;
color:var(--muted) !important;
margin:0 !important;
display:-webkit-box;
-webkit-line-clamp:3;
-webkit-box-orient:vertical;
overflow:hidden;
}
/* read-more affordance, pinned to the bottom of every card */
body.hs-blog-listing .hhs-post-content::after{
content:"Read article →";
margin-top:auto;
padding-top:18px;
font-family:var(--f-ui);
font-size:13.5px;font-weight:600;
color:var(--orange-text);
transition:transform .25s var(--ease);
}
body.hs-blog-listing .hhs-blog-post-card:hover .hhs-post-content::after{
transform:translateX(3px);
}

/* --------------------------------------------------------------------------
5. EMPTY HUBSPOT LISTING SHELL
   The stock blog_content module renders nothing on this template (the custom
module above prints the posts) — stop it reserving vertical space.
-------------------------------------------------------------------------- */
body.hs-blog-listing .blog-section{padding:0 !important}
body.hs-blog-listing .blog-listing-wrapper{margin:0 !important;padding:0 !important}
/* The shell is empty on /resources/blog and /resources/blog/all (the custom
card module prints the posts there) — collapse it. On TOPIC pages it holds
the posts instead; section 11 turns those into the same card grid. */
body.hs-blog-listing .post-listing:empty{display:none !important}

/* --------------------------------------------------------------------------
6. "ALL POSTS" BUTTON
   -------------------------------------------------------------------------- */
body.hs-blog-listing .blog-pagination{
display:flex;justify-content:center;
padding:clamp(8px,1.6vw,18px) var(--gut) clamp(40px,5vw,72px);
}
body.hs-blog-listing .btn-all-posts,
body.hs-blog-listing .all-posts-link{
display:inline-flex !important;
align-items:center;gap:9px;
width:auto;
font-family:var(--f-ui) !important;
font-size:15px !important;
font-weight:600 !important;
line-height:1;
color:#fff !important;
background:var(--orange) !important;
border:0 !important;
border-radius:999px !important;
padding:15px 28px !important;
text-decoration:none;
transition:transform .25s var(--ease),box-shadow .25s var(--ease),
background .25s var(--ease);
}
body.hs-blog-listing .btn-all-posts::after{content:"→";font-size:16px;line-height:1}
body.hs-blog-listing .btn-all-posts:hover{
background:var(--orange-2) !important;
transform:translateY(-2px);
box-shadow:0 16px 32px -14px rgba(248,83,28,.7);
color:#fff !important;
}

/* --------------------------------------------------------------------------
7. MOTION — entrance only, no JS
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion:no-preference){
body.hs-blog-listing .subscribe-strip-left,
body.hs-blog-listing .topics-or-title,
body.hs-blog-listing .ifp-sub-copy,
body.hs-blog-listing .ifp-sub-card{
animation:ifpListRise .8s var(--ease) both;
}
body.hs-blog-listing .topics-or-title{animation-delay:.1s}
body.hs-blog-listing .ifp-sub-card{animation-delay:.08s}
}
@keyframes ifpListRise{
from{opacity:0;transform:translateY(16px)}
to{opacity:1;transform:none}
}

/* --------------------------------------------------------------------------
8. FOOT-OF-PAGE SUBSCRIBE BAND
   Styles the .ifp-sub block from the header comment, and falls back to any
bare HubSpot Form module dropped in the last row of the page.
-------------------------------------------------------------------------- */
body.hs-blog-listing .ifp-sub,
body.hs-blog-listing .body-container > .row-fluid-wrapper:last-child
.hs_cos_wrapper_type_form{
position:relative;
isolation:isolate;
overflow:hidden;
display:block;
float:none;
width:calc(100% - 30px);
max-width:var(--max);
margin:clamp(10px,1.6vw,20px) auto clamp(48px,6vw,88px);
border-radius:var(--r-panel);
background:var(--ink);
color:var(--white);
padding:clamp(34px,4.6vw,72px) clamp(24px,4vw,64px);
}
body.hs-blog-listing .ifp-sub::before,
body.hs-blog-listing .body-container > .row-fluid-wrapper:last-child
.hs_cos_wrapper_type_form::before{
content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;
background:
radial-gradient(48% 66% at 84% 8%,rgba(248,83,28,.32),transparent 62%),
radial-gradient(40% 52% at 6% 96%,rgba(248,83,28,.13),transparent 66%);
}
body.hs-blog-listing .ifp-sub::after{
content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
background-image:
linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
background-size:64px 64px;
-webkit-mask-image:radial-gradient(70% 70% at 50% 26%,#000,transparent 78%);
mask-image:radial-gradient(70% 70% at 50% 26%,#000,transparent 78%);
}

body.hs-blog-listing .ifp-sub-in{
display:grid;
grid-template-columns:1.05fr .95fr;
gap:clamp(26px,3.6vw,56px);
align-items:center;
}
body.hs-blog-listing .ifp-sub-eyebrow{
display:inline-flex;align-items:center;gap:8px;
font-family:var(--f-ui);font-size:11.5px;font-weight:600;
letter-spacing:.16em;text-transform:uppercase;
color:var(--orange-2);
margin:0 0 14px;
}
body.hs-blog-listing .ifp-sub-eyebrow::before{
content:"";width:6px;height:6px;border-radius:50%;
background:var(--orange-2);box-shadow:0 0 0 4px rgba(248,83,28,.22);
}
body.hs-blog-listing .ifp-sub-copy h2{
font-family:var(--f-head);
font-size:clamp(24px,2.8vw,38px);
line-height:1.14;font-weight:700;letter-spacing:-.02em;
color:var(--white);
margin:0 0 14px;
text-wrap:balance;
}
body.hs-blog-listing .ifp-sub-lede{
font-family:var(--f-body);
font-size:clamp(15.5px,1.2vw,17px);
line-height:1.65;
color:rgba(255,255,255,.72);
margin:0;
max-width:46ch;
}
/* translucent card holding the form */
body.hs-blog-listing .ifp-sub-card{
background:rgba(255,255,255,.05);
border:1px solid var(--line-d);
border-radius:var(--r-ink);
padding:clamp(22px,2.6vw,32px);
-webkit-backdrop-filter:blur(8px);
backdrop-filter:blur(8px);
}

/* --- HubSpot form reset (the site theme paints its own skin — see
claude/design-system.md → "styling embedded HubSpot forms") ----------- */
body.hs-blog-listing .ifp-sub .hbspt-form,
body.hs-blog-listing .ifp-sub .hs-form-frame,
body.hs-blog-listing .ifp-sub form.hs-form,
body.hs-blog-listing .ifp-sub form.hs-form fieldset,
body.hs-blog-listing .ifp-sub .hs-form-field,
body.hs-blog-listing .ifp-sub .hs_submit,
body.hs-blog-listing .ifp-sub .actions,
body.hs-blog-listing .body-container > .row-fluid-wrapper:last-child .hbspt-form,
body.hs-blog-listing .body-container > .row-fluid-wrapper:last-child form.hs-form,
body.hs-blog-listing .body-container > .row-fluid-wrapper:last-child form.hs-form fieldset{
background:none !important;
border:0 !important;
border-radius:0 !important;
box-shadow:none !important;
padding:0 !important;
margin-inline:0 !important;
max-width:none !important;
width:100% !important;
}
body.hs-blog-listing .ifp-sub .hs-form-field{
display:flex;flex-direction:column;
margin-bottom:16px !important;
}
body.hs-blog-listing .ifp-sub .form-columns-2,
body.hs-blog-listing .ifp-sub .form-columns-3{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:0 14px;
}
body.hs-blog-listing .ifp-sub .hs-form-field > label,
body.hs-blog-listing .ifp-sub .hs-form-field > label span{
font-family:var(--f-ui) !important;
font-size:11.5px !important;
font-weight:600 !important;
letter-spacing:.12em;
text-transform:uppercase;
color:rgba(255,255,255,.62) !important;
margin:0 0 8px !important;
}
body.hs-blog-listing .ifp-sub .hs-form-required{color:var(--orange-2) !important}

body.hs-blog-listing .ifp-sub input.hs-input:not([type=checkbox]):not([type=radio]),
body.hs-blog-listing .ifp-sub select.hs-input,
body.hs-blog-listing .ifp-sub textarea.hs-input{
width:100% !important;
box-sizing:border-box;
font-family:var(--f-body) !important;
font-size:15.5px !important;
color:var(--white) !important;
background:rgba(255,255,255,.06) !important;
border:1px solid var(--line-d) !important;
border-radius:var(--r-tile) !important;
padding:13px 16px !important;
box-shadow:none !important;
transition:border-color .25s var(--ease),background .25s var(--ease);
}
body.hs-blog-listing .ifp-sub input.hs-input::placeholder,
body.hs-blog-listing .ifp-sub textarea.hs-input::placeholder{
color:rgba(255,255,255,.38) !important;
}
body.hs-blog-listing .ifp-sub input.hs-input:focus,
body.hs-blog-listing .ifp-sub select.hs-input:focus,
body.hs-blog-listing .ifp-sub textarea.hs-input:focus{
outline:none !important;
border-color:rgba(248,83,28,.65) !important;
background:rgba(255,255,255,.09) !important;
}

/* consent checkboxes */
body.hs-blog-listing .ifp-sub .hs-form-booleancheckbox-display,
body.hs-blog-listing .ifp-sub .legal-consent-container,
body.hs-blog-listing .ifp-sub .hs-richtext{
font-family:var(--f-body) !important;
font-size:12.5px !important;
line-height:1.55 !important;
color:rgba(255,255,255,.60) !important;
text-transform:none !important;
letter-spacing:0 !important;
}
body.hs-blog-listing .ifp-sub .hs-form-booleancheckbox-display{
display:flex;align-items:flex-start;gap:10px;
}
body.hs-blog-listing .ifp-sub input[type=checkbox]{
flex:0 0 auto;margin-top:2px;accent-color:var(--orange);
width:16px;height:16px;
}
body.hs-blog-listing .ifp-sub .hs-richtext a,
body.hs-blog-listing .ifp-sub .legal-consent-container a{
color:var(--orange-2) !important;text-decoration:underline;
}

/* submit — pin every state, or the theme repaints the label on hover */
body.hs-blog-listing .ifp-sub input[type=submit].hs-button,
body.hs-blog-listing .ifp-sub .hs-button,
body.hs-blog-listing .body-container > .row-fluid-wrapper:last-child input[type=submit].hs-button{
display:inline-flex;align-items:center;justify-content:center;
width:auto !important;
margin-top:6px;
font-family:var(--f-ui) !important;
font-size:15px !important;
font-weight:600 !important;
line-height:1 !important;
cursor:pointer;
color:#fff !important;
-webkit-text-fill-color:#fff !important;
background:var(--orange) !important;
background-image:none !important;
border:1px solid var(--orange) !important;
border-radius:999px !important;
padding:14px 30px !important;
box-shadow:none !important;
opacity:1 !important;
transition:transform .25s var(--ease),box-shadow .25s var(--ease),
background .25s var(--ease);
}
body.hs-blog-listing .ifp-sub input[type=submit].hs-button:hover,
body.hs-blog-listing .ifp-sub input[type=submit].hs-button:focus,
body.hs-blog-listing .ifp-sub input[type=submit].hs-button:active,
body.hs-blog-listing .ifp-sub .hs-button:hover,
body.hs-blog-listing .ifp-sub .hs-button:focus,
body.hs-blog-listing .ifp-sub .hs-button:active{
color:#fff !important;
-webkit-text-fill-color:#fff !important;
background:var(--orange-2) !important;
background-image:none !important;
border-color:var(--orange-2) !important;
opacity:1 !important;
transform:translateY(-2px);
box-shadow:0 16px 32px -14px rgba(248,83,28,.7);
}

/* validation + success */
body.hs-blog-listing .ifp-sub .hs-error-msg,
body.hs-blog-listing .ifp-sub .hs-error-msgs label{
font-family:var(--f-ui) !important;
font-size:12.5px !important;
color:#FF8A66 !important;
margin-top:6px !important;
}
body.hs-blog-listing .ifp-sub .hs-error-msgs{list-style:none;margin:0;padding:0}
body.hs-blog-listing .ifp-sub .submitted-message{
font-family:var(--f-body);
font-size:16px;line-height:1.6;
color:rgba(255,255,255,.86);
}

/* the inline reCAPTCHA badge renders as a full blue block mid-form.
Delete this rule if submissions ever start failing. */
body.hs-blog-listing .ifp-sub .hs-recaptcha,
body.hs-blog-listing .ifp-sub .grecaptcha-badge{display:none !important}

/* --------------------------------------------------------------------------
9. RESPONSIVE
   -------------------------------------------------------------------------- */
@media (max-width:1080px){
body.hs-blog-listing .subscribe-strip-left{max-width:min(600px,78%)}
}
@media (max-width:860px){
body.hs-blog-listing .ifp-sub-in{grid-template-columns:1fr}
body.hs-blog-listing .subscribe-strip-wrap{
background-position:center 22% !important;
}
body.hs-blog-listing .subscribe-strip-wrap::before{
background:
linear-gradient(180deg,rgba(12,12,13,.90) 0%,rgba(12,12,13,.80) 55%,rgba(12,12,13,.62) 100%),
radial-gradient(60% 50% at 80% 6%,rgba(248,83,28,.30),transparent 64%);
}
body.hs-blog-listing .subscribe-strip-left{max-width:none}
}
@media (max-width:760px){
body.hs-blog-listing{--r-panel:26px;--r-ink:20px;--r-card:16px}
/* pills become a single scrolling row */
body.hs-blog-listing ul.l_tinynav1{
flex-wrap:nowrap;
overflow-x:auto;
scroll-snap-type:x proximity;
-webkit-overflow-scrolling:touch;
scrollbar-width:none;
margin-inline:calc(-1 * var(--gut));
padding-inline:var(--gut);
padding-bottom:4px;
}
body.hs-blog-listing ul.l_tinynav1::-webkit-scrollbar{display:none}
body.hs-blog-listing ul.l_tinynav1 li{scroll-snap-align:start}
}
@media (max-width:560px){
body.hs-blog-listing .hhs-blog-post-mod .row:not(.grid){
grid-template-columns:1fr;
}
body.hs-blog-listing .subscribe-strip-wrap{
padding:38px 0 42px !important;
}
body.hs-blog-listing .subscribe-strip-left h5{font-size:15.5px !important}
body.hs-blog-listing .ifp-sub{padding:28px 20px}
}

/* --------------------------------------------------------------------------
10. HEADER NAV — strikethrough fix (version-2 blog menu)

   The theme draws the nav hover underline as an absolutely positioned bar on
`a.item-number-one:hover:before`, sitting at `bottom:20px` with
`width:calc(100% - 60px)`. Those numbers are tuned for the MAIN site header,
where the same theme rule gives the link `padding:10px 25px 25px`.

The blog templates use the version-2 menu, where the link's padding is only
`9px 14px` — so the link's box is 38.4px tall instead of ~46px, and a bar
20px up from the bottom lands straight through the middle of the label. That
is the "strikethrough on hover" seen on blog pages; nothing in this
stylesheet causes it, it is a pre-existing mismatch this file corrects.

Bar repositioned to sit ~5px under the text and to span the label rather
than the wider main-site padding box. Both blog body classes are covered, so
the same block can be pasted into the blog POST header HTML as well.
-------------------------------------------------------------------------- */
body.hs-blog-listing .hd_menu a.item-number-one:hover::before,
body.hs-blog-post    .hd_menu a.item-number-one:hover::before{
bottom:4px !important;
left:0 !important;
right:0 !important;
width:calc(100% - 28px) !important;   /* link padding is 9px 14px */
margin:auto !important;
}

/* --------------------------------------------------------------------------
11. TOPIC LISTINGS — stock HubSpot markup, rendered as the same card grid

   /resources/blog and /resources/blog/all print their posts through the
custom card module (.hhs-blog-post-mod, section 4). Topic pages —
/resources/blog/tag/ — do NOT: HubSpot falls back to its stock
.post-listing markup there. That is why switching category turned the
grid into a plain list.

GOTCHA: the template writes class="“post-item”" with CURLY quotes, so
`.post-item` matches nothing at all. Target `.post-listing > div`.

Source order inside an item is: reading time, title, author, image,
summary, topics. `order` re-stacks it as image → reading time → title →
summary → read-more, and author + topics are hidden so these cards read
identically to the main grid.
-------------------------------------------------------------------------- */
body.hs-blog-listing .post-listing{
display:grid !important;
grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
gap:clamp(20px,2.4vw,30px);
width:100%;
max-width:var(--max);
margin:0 auto clamp(30px,4vw,48px) !important;
padding:0 15px !important;          /* matches the theme container inset */
box-sizing:border-box;
float:none !important;
}

/* the card */
body.hs-blog-listing .post-listing > div{
position:relative;
display:flex;
flex-direction:column;
width:auto !important;
max-width:none !important;
margin:0 !important;
padding:0 !important;
float:none !important;
background:var(--white);
border:1px solid var(--line);
border-radius:var(--r-card);
box-shadow:0 1px 2px rgba(12,12,13,.04);
overflow:hidden;
transition:transform .35s var(--ease),box-shadow .35s var(--ease),
border-color .35s var(--ease);
}
body.hs-blog-listing .post-listing > div:hover{
transform:translateY(-4px);
border-color:rgba(248,83,28,.30);
box-shadow:0 26px 48px -26px rgba(12,12,13,.34),
0 0 0 4px rgba(248,83,28,.06);
}

/* featured image — the theme caps it at max-height:170px / max-width:210px
and floats it right, so all four have to be unset before it can fill */
body.hs-blog-listing .post-listing .hs-featured-image-wrapper{
order:1;
width:100%;
aspect-ratio:16/10;
margin:0 !important;
padding:0 !important;
overflow:hidden;
background:var(--paper-2);
}
body.hs-blog-listing .post-listing .hs-featured-image-link{
display:block;width:100%;height:100%;
}
body.hs-blog-listing .post-listing img.hs-featured-image{
display:block !important;
width:100% !important;
height:100% !important;
max-width:none !important;
max-height:none !important;
float:none !important;
margin:0 !important;
padding:0 !important;
border:0 !important;
border-radius:0 !important;
object-fit:cover;
transition:transform .6s var(--ease);
}
body.hs-blog-listing .post-listing > div:hover img.hs-featured-image{
transform:scale(1.045);
}

/* reading time -> eyebrow. The theme puts 50px of top padding on it here. */
body.hs-blog-listing .post-listing .reading-minutes{
order:2;
display:inline-flex;align-items:center;gap:8px;
margin:20px 22px 12px !important;
padding:0 !important;
font-family:var(--f-ui) !important;
font-size:11.5px !important;
font-weight:600 !important;
line-height:1.2 !important;
letter-spacing:.14em;
text-transform:uppercase !important;
color:var(--muted-2) !important;
}
body.hs-blog-listing .post-listing .reading-minutes::before{
content:"";width:6px;height:6px;border-radius:50%;flex:0 0 auto;
background:var(--orange);
box-shadow:0 0 0 3px var(--orange-tint);
}

/* title */
body.hs-blog-listing .post-listing h2{
order:3;
margin:0 22px 12px !important;
padding:0 !important;
font-family:var(--f-head) !important;
font-size:clamp(18px,1.45vw,20.5px) !important;
line-height:1.3 !important;
font-weight:700 !important;
letter-spacing:-.015em;
display:-webkit-box;
-webkit-line-clamp:3;
-webkit-box-orient:vertical;
overflow:hidden;
}
body.hs-blog-listing .post-listing h2 a{
color:var(--text) !important;
text-decoration:none;
transition:color .25s var(--ease);
}
/* stretch the title link over the card */
body.hs-blog-listing .post-listing h2 a::after{
content:"";position:absolute;inset:0;z-index:1;
}
body.hs-blog-listing .post-listing > div:hover h2 a{color:var(--orange-text) !important}

/* author byline and topic chips are dropped, to match the main grid */
body.hs-blog-listing .post-listing .post-header,
body.hs-blog-listing .post-listing .topic-list{display:none !important}

/* summary */
body.hs-blog-listing .post-listing .post-body{
order:4;
margin:0 22px !important;
padding:0 !important;
font-family:var(--f-body) !important;
font-size:15px !important;
line-height:1.62 !important;
color:var(--muted) !important;
display:-webkit-box;
-webkit-line-clamp:3;
-webkit-box-orient:vertical;
overflow:hidden;
}
body.hs-blog-listing .post-listing .post-body p{
margin:0 !important;font:inherit !important;color:inherit !important;
}
body.hs-blog-listing .post-listing .post-body a{
color:inherit !important;text-decoration:none;
}

/* read-more affordance, pinned to the bottom of every card */
body.hs-blog-listing .post-listing > div::after{
content:"Read article →";
order:5;
margin:auto 22px 24px !important;
padding-top:18px;
font-family:var(--f-ui);
font-size:13.5px;font-weight:600;
color:var(--orange-text);
transition:transform .25s var(--ease);
}
body.hs-blog-listing .post-listing > div:hover::after{transform:translateX(3px)}

@media (max-width:560px){
body.hs-blog-listing .post-listing{grid-template-columns:1fr}
}

/* --------------------------------------------------------------------------
11b. THE "SIMPLE" LISTING VARIANT (Company News /all, and any blog like it)

Not every blog nests the stock listing the same way. The Learning Area's
topic pages give one flat container:

.post-listing > div."post-item"           div."post-item" > .post-listing > div.post-item

so the grid landed on 71 separate .post-listing containers holding one post
each, and everything stacked into a single column. The fix is to move the
grid up to .post-listing-simple and flatten the two wrappers with
display:contents — the innermost div still matches `.post-listing > div`,
so every card rule in section 11 applies unchanged.
-------------------------------------------------------------------------- */
body.hs-blog-listing .post-listing-simple{
display:grid !important;
grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
gap:clamp(20px,2.4vw,30px);
width:100%;
max-width:var(--max);
margin:0 auto clamp(30px,4vw,48px) !important;
padding:0 15px !important;
box-sizing:border-box;
float:none !important;
}
body.hs-blog-listing .post-listing-simple > div,
body.hs-blog-listing .post-listing-simple .post-listing{display:contents !important}

/* Company News posts carry no reading time, so the title would sit hard against
the image. Give it back the 20px the eyebrow would have contributed. */
body.hs-blog-listing .post-listing > div:not(:has(.reading-minutes)) h2{
margin-top:20px !important;
}

@media (max-width:560px){
body.hs-blog-listing .post-listing-simple{grid-template-columns:1fr}
}

/* --------------------------------------------------------------------------
12. CUSTOMER STORIES (blog id 29904626425)

   This blog carries .hs-blog-listing, so sections 1 and 4–11 already apply and
the story cards pick up the grid for free. Two modules on it are its own,
though, and are scoped to the blog id here so no other blog is touched:

- The hero is `.about-wrapper.solution-hp-banner`, a float-based two-column
block with an animated `.animatedtext` word, a Trustpilot badge inside the
rich text, and `.cta01`/`.cta02` buttons. It becomes the ink panel.
- The Event Type / Industry filter is `.filter-main`, a #2B3B55 band holding
two JS-built custom selects (the real  is display:none; the visible
control is `div.filter.custom-select > .custom-select-trigger` plus an
absolutely positioned `.custom-options` panel). It becomes a light chip bar.
Only paint is touched here — never display/visibility, or the dropdown JS
stops working.
-------------------------------------------------------------------------- */

/* --- hero -> ink panel ---------------------------------------------------- */
body.hs-blog-id-29904626425 .about-wrapper{
position:relative;
isolation:isolate;
overflow:hidden;
float:none !important;
display:grid;
grid-template-columns:1.02fr .98fr;
align-items:center;
gap:clamp(26px,3.6vw,56px);
width:calc(100% - 30px);
max-width:var(--max);
margin:clamp(14px,2vw,26px) auto clamp(30px,4vw,52px) !important;
padding:clamp(34px,4.6vw,72px) clamp(26px,3.4vw,64px) !important;
border-radius:var(--r-panel);
background:var(--ink);
color:var(--white);
}
body.hs-blog-id-29904626425 .about-wrapper::before{
content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;
background:
radial-gradient(48% 66% at 86% 6%,rgba(248,83,28,.32),transparent 62%),
radial-gradient(40% 52% at 4% 96%,rgba(248,83,28,.13),transparent 66%);
}
body.hs-blog-id-29904626425 .about-wrapper::after{
content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
background-image:
linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
background-size:64px 64px;
-webkit-mask-image:radial-gradient(72% 72% at 36% 30%,#000,transparent 78%);
mask-image:radial-gradient(72% 72% at 36% 30%,#000,transparent 78%);
}
/* the theme floats both columns — the grid needs them unfloated */
body.hs-blog-id-29904626425 .about-left-content,
body.hs-blog-id-29904626425 .about-img-wrap{
float:none !important;width:auto !important;margin:0 !important;padding:0 !important;
}
body.hs-blog-id-29904626425 .about-left-content::before{
content:"Customer stories";
display:inline-flex;align-items:center;
font-family:var(--f-ui);font-size:12px;font-weight:600;
letter-spacing:.14em;text-transform:uppercase;
color:rgba(255,255,255,.82);
background:rgba(255,255,255,.07);
border:1px solid var(--line-d);
border-radius:999px;padding:7px 15px;margin:0 0 20px;
}
body.hs-blog-id-29904626425 .about-wrapper h1{
font-family:var(--f-head) !important;
font-size:clamp(30px,3.8vw,52px) !important;
line-height:1.08 !important;
font-weight:700 !important;
letter-spacing:-.025em;
color:var(--white) !important;
margin:0 0 18px !important;
}
/* THE ANIMATED WORD.
The theme built the last word of the headline as `**`
holding one `` per character, and looped a wipe by
driving scaleX on the strong and opacity on each letter. The letters carry
IDs, so those declarations outrank anything written here — the animation
could not be frozen part-way, and it cycled with the word only half on
screen. Its white-on-#1C1B1B styling also read as a black block on the ink
panel. The headline now carries the word as plain text and the animated
element is empty, so it is simply hidden. Nothing is removed from the DOM,
so restoring the animation means deleting this one rule. */
body.hs-blog-id-29904626425 .about-wrapper h1 .animatedtext,
body.hs-blog-id-29904626425 .about-wrapper h1 animatedtext{display:none !important}

/* ACCENT WORD IN THE HEADLINE.
CSS cannot colour part of a text node, so the word to highlight has to be
wrapped in the HubSpot editor. Any of these work — pick whichever is easiest:
select the word and hit BOLD or ITALIC, or in the source view wrap it as
stories. All three render the same:
orange, same weight and style as the rest of the heading. */
body.hs-blog-id-29904626425 .about-wrapper h1 strong:not(.animatedtext),
body.hs-blog-id-29904626425 .about-wrapper h1 b,
body.hs-blog-id-29904626425 .about-wrapper h1 em,
body.hs-blog-id-29904626425 .about-wrapper h1 i:not(.letter),
body.hs-blog-id-29904626425 .about-wrapper h1 .ifp-accent{
color:var(--orange-2) !important;
font-style:normal !important;
font-weight:inherit !important;
background:transparent !important;
}
body.hs-blog-id-29904626425 .about-inner-content,
body.hs-blog-id-29904626425 .about-inner-content p{
font-family:var(--f-body) !important;
font-size:clamp(15.5px,1.15vw,16.5px) !important;
line-height:1.65 !important;
color:rgba(255,255,255,.72) !important;
}
body.hs-blog-id-29904626425 .about-inner-content a{color:var(--orange-2) !important}
/* the Trustpilot badge is dark artwork — give it a white chip to sit on */
body.hs-blog-id-29904626425 .about-inner-content img{
background:#fff;border-radius:10px;padding:8px 12px;margin-top:4px;
}
body.hs-blog-id-29904626425 .cta-wrap{
display:flex;gap:12px;flex-wrap:wrap;margin-top:22px !important;
}
body.hs-blog-id-29904626425 .cta-wrap > div:empty{display:none}
body.hs-blog-id-29904626425 .cta-wrap a{
display:inline-flex;align-items:center;gap:9px;
font-family:var(--f-ui) !important;
font-size:15px !important;font-weight:600 !important;line-height:1 !important;
border-radius:999px !important;
padding:15px 28px !important;
text-decoration:none;
transition:transform .25s var(--ease),box-shadow .25s var(--ease),
background .25s var(--ease);
}
body.hs-blog-id-29904626425 .cta01 a{
background:var(--orange) !important;color:#fff !important;
border:1px solid var(--orange) !important;
}
body.hs-blog-id-29904626425 .cta01 a:hover{
background:var(--orange-2) !important;color:#fff !important;
transform:translateY(-2px);box-shadow:0 16px 32px -14px rgba(248,83,28,.7);
}
body.hs-blog-id-29904626425 .cta02 a{
background:transparent !important;color:#fff !important;
border:1px solid var(--line-d) !important;
}
body.hs-blog-id-29904626425 .cta02 a:hover{
background:rgba(255,255,255,.08) !important;
border-color:rgba(255,255,255,.28) !important;color:#fff !important;
}
body.hs-blog-id-29904626425 .about-img-wrap img{
display:block;width:100% !important;height:auto !important;
border-radius:var(--r-card);
border:1px solid var(--line-d);
box-shadow:0 30px 60px -28px rgba(0,0,0,.75);
}

/* --- filter -> light chip bar --------------------------------------------- */
body.hs-blog-id-29904626425 .filter-main{
background:transparent !important;
border-top:1px solid var(--line) !important;   /* was 0.8px #ccc top AND bottom */
border-bottom:0 !important;
display:flex;justify-content:center;align-items:center;
gap:12px;flex-wrap:wrap;
max-width:var(--max);
margin:0 auto !important;
padding:clamp(6px,1vw,12px) 15px clamp(24px,3vw,38px) !important;
}
body.hs-blog-id-29904626425 .select-main{width:auto !important;margin:0 !important}
body.hs-blog-id-29904626425 div.filter.custom-select{
background:var(--chip) !important;
border:1px solid transparent !important;
border-radius:999px !important;
padding:0 !important;
width:auto !important;height:auto !important;
min-width:210px;
color:var(--muted) !important;
transition:background .25s var(--ease),border-color .25s var(--ease);
}
body.hs-blog-id-29904626425 div.filter.custom-select:hover{
background:var(--orange-tint) !important;
border-color:rgba(248,83,28,.35) !important;
}
body.hs-blog-id-29904626425 .custom-select-trigger{
position:relative;
font-family:var(--f-ui) !important;
font-size:14px !important;font-weight:500 !important;
color:var(--muted) !important;
padding:13px 42px 13px 20px !important;
}
body.hs-blog-id-29904626425 .custom-select-trigger::after{
content:"";position:absolute;right:19px;top:50%;margin-top:-5px;
width:7px;height:7px;
border-right:1.7px solid currentColor;
border-bottom:1.7px solid currentColor;
transform:rotate(45deg);
opacity:.65;
}
body.hs-blog-id-29904626425 .custom-options{
border:1px solid var(--line) !important;
border-radius:var(--r-tile) !important;
box-shadow:0 22px 44px -22px rgba(12,12,13,.4) !important;
padding:6px !important;
margin-top:8px;
}
body.hs-blog-id-29904626425 .custom-option{
font-family:var(--f-ui) !important;
font-size:14px !important;
color:var(--muted) !important;
border-radius:8px !important;
padding:9px 12px !important;
}
body.hs-blog-id-29904626425 .custom-option:hover{
background:var(--orange-tint) !important;
color:var(--orange-text) !important;
}

@media (max-width:860px){
body.hs-blog-id-29904626425 .about-wrapper{grid-template-columns:1fr}
}
@media (max-width:560px){
body.hs-blog-id-29904626425 div.filter.custom-select{min-width:0;width:100% !important}
body.hs-blog-id-29904626425 .select-main{width:100% !important}
}

The multilingual communication experience that gives you confidence at every step.
[Start Experiencing the Interprefy Difference!](https://www.interprefy.com/interprefy-agent)

[Solutions](https://www.interprefy.com/solutions)

[#### Our Solutions](https://www.interprefy.com/solutions)

[Remote Simultaneous Interpretation](https://www.interprefy.com/solutions/remote-simultaneous-interpretation)
[AI Speech Translation](https://www.interprefy.com/solutions/ai-speech-translation)
[Live Captions](https://www.interprefy.com/solutions/multilingual-live-captions-and-subtitles)

[#### Who We Serve](https://www.interprefy.com/who-we-serve)

[Event Organisers](https://www.interprefy.com/organisation-event-organisers)
[Corporate & Enterprise](https://www.interprefy.com/organisation-industry-corporates)
[Institutions](https://www.interprefy.com/orgnisation-institutions)
[Partners](https://www.interprefy.com/about-us/partners)

[#### Access Modes](https://www.interprefy.com/access-modes)

[Interprefy Web Platform](https://www.interprefy.com/web-platform)
[Interprefy Mobile App](https://www.interprefy.com/solutions/access-modes/interprefy-now)
[Integrations](https://www.interprefy.com/solutions/integrations)

[#### Use Cases](https://www.interprefy.com/solutions/use-cases)

[In-person & hybrid events](https://www.interprefy.com/solutions/use-cases/in-person-hybrid-events)
[Webinars & virtual events](https://www.interprefy.com/solutions/use-cases/webinars-and-online-events)
[Online meetings](https://www.interprefy.com/solutions/use-cases/online-meetings)

[Professional Services](https://www.interprefy.com/about/professional-services)

[#### Professional Services](https://www.interprefy.com/about/professional-services)

[Project Management](https://www.interprefy.com/project-management)
[Remote Support](https://www.interprefy.com/professional-remote-support-services-interprefy)
[Media Services](https://www.interprefy.com/media-services)

[#### More Insights](https://www.interprefy.com/)

[Can I get a report of my meeting?](https://knowledge.interprefy.com/can-i-get-a-report-of)
[How does Interprefy source and vet professional interpreters?](https://knowledge.interprefy.com/interpreter-recruitment)
[What training does Interprefy provide?](https://knowledge.interprefy.com/what-is-inteprefy-training-services?)
[Can you record my meeting or event?](https://knowledge.interprefy.com/can-you-record-my-event)

[#### Professional Services in a Nutshell](https://www.interprefy.com/)

[About Interprefy](https://www.interprefy.com/about-us)

[#### Company](https://www.interprefy.com/)

[About Us](https://www.interprefy.com/about-us)
[Why Choose Interprefy](https://www.interprefy.com/why-interprefy-expert-support-for-multilingual-events)
[The Interprefy Experience](https://www.interprefy.com/the-interprefy-experience)
[Careers](https://www.interprefy.com/about-us/careers)

[#### Security](https://www.interprefy.com/entreprise-grade-security)

[ISO 27001 Certified](https://www.interprefy.com/entreprise-grade-security)
[End-to-End Encryption](https://www.interprefy.com/entreprise-grade-security)
[Controlled Access](https://www.interprefy.com/entreprise-grade-security)
[Interpreters and NDA's](https://www.interprefy.com/entreprise-grade-security)

[#### Events](https://www.interprefy.com/resources/upcoming-public-events)

######  TEDAI Vienna 2026

[Check the latest event calendar](https://www.interprefy.com/resources/upcoming-public-events)

[Resources](https://www.interprefy.com/resources)

[#### News and Inspiration](https://www.interprefy.com/news-and-information)

[Blog](https://www.interprefy.com/resources/blog)
[Success Stories](https://www.interprefy.com/customer-stories)
[Company News](https://www.interprefy.com/resources/press/companynews)
[Webinars and Ebooks](https://www.interprefy.com/resources/webinars-and-ebooks)
[Video Library](https://www.interprefy.com/product-demo-videos)

[#### Help Center](https://www.interprefy.com/faq)

[Knowledge Base](https://knowledge.interprefy.com/)
[FAQs](https://www.interprefy.com/faq)
[Contact Us](https://www.interprefy.com/contact-us)

[#### What is interprefy](https://www.interprefy.com/)

[Pricing](https://www.interprefy.com/pricing)

[Contact us](https://www.interprefy.com/contact-us)

![Interprefy | FIP Customer Success Story](https://www.interprefy.com/hs-fs/hubfs/FIP_Interprefy.webp?width=1040&height=800&name=FIP_Interprefy.webp)

AI Translation for Pharma: Connecting FIP’s Global Community with Interprefy8:10

###### 6 min read

# AI Translation for Pharma: Connecting FIP’s Global Community with Interprefy

###### Topics:

In Person Events

Healthcare Pharmaceutical & Life Sciences

![Interprefy | FIP Customer Success Story](https://www.interprefy.com/hs-fs/hubfs/FIP_Interprefy.webp?width=1040&height=800&name=FIP_Interprefy.webp)

AI Translation for Pharma: Connecting FIP’s Global Community with Interprefy8:10

## Overview

The [International Pharmaceutical Federation (FIP)](https://www.fip.org/) is the global federation representing pharmacists, pharmacy educators and pharmaceutical scientists. Founded in 1912 and headquartered in The Hague, FIP brings together 157 member organisations** and represents more than **5.5 million professionals worldwide**. The organisation is also in official relations with the [World Health Organization (WHO)](https://www.who.int/).

Each year, FIP brings its international community together through its [World Congress of Pharmacy and Pharmaceutical Sciences](https://montreal2026.fip.org/), alongside smaller meetings and summits throughout the year. With participants and member organisations spanning the globe, ensuring people can follow important discussions regardless of the language they are most comfortable using has long been an important consideration for the organisation.

For several years, FIP has worked with [Interprefy](https://www.interprefy.com/) to make multilingual participation simpler, gradually moving from flying interpreters to congress destinations towards a flexible approach that now includes **AI speech translation and live captions**.

As **[Carola van der Hoeff](https://www.linkedin.com/in/carola-van-der-hoeff-8641761b/), Chief Operating Officer at FIP**, explains, the evolution has delivered more than a change in technology. It has reduced the cost and organisational workload associated with multilingual meetings while giving FIP confidence in the quality of the experience.

---

## The Challenge

### Supporting a Truly Global Membership

FIP’s membership spans countries and regions with very different linguistic needs. Although its World Congress is principally conducted in English, not every participant is equally comfortable following complex professional discussions in English.

Carola highlights Spanish-speaking member organisations in South America and French-speaking organisations across parts of Africa as examples where additional language support can make a meaningful difference.

Multilingual communication is particularly important during FIP’s council meetings. These meetings require translation into **Spanish, French and German**, ensuring representatives from across its membership can participate in key discussions.

Traditionally, meeting these requirements meant bringing interpreters to the congress location. While effective, this added another significant layer of planning for the FIP team.

Flights had to be considered. Hotels needed to be organised. Interpreters needed to be coordinated and looked after onsite. For a relatively lean organisation delivering a major global congress, every additional logistical task mattered.

**You need to make sure that they have hotels, you need to take care of the interpreters. It would be another task for me as organiser. And now, I don’t spend any time on it. It’s really easy. - Carola van der Hoeff, Chief Operating Officer, FIP

## The Approach

### Moving from Traditional Interpretation to AI Speech Translation

FIP’s journey with Interprefy began in 2017 with remote interpretation, providing an alternative to flying interpreters around the world.
In 2024, FIP began using Interprefy’s [AI speech translation](https://www.interprefy.com/solutions/ai-translation) technology to simplify multilingual delivery even further.
For Carola, the decision came down to two things: **quality and cost**.

It’s basically a combination of the quality and the price. AI might not be 100% perfect, but nowadays it’s really high standard. - Carola van der Hoeff, Chief Operating Officer, FIP

A former FIP president from Switzerland, whose first language is French and who is less comfortable following discussions in English, used Interprefy’s AI speech translation to listen in French. His reaction left a lasting impression.

He was impressed by the quality of AI. He said, ‘That’s amazing.’ For me, that was a no-brainer. He said the quality was superb. -  Carola van der Hoeff, Chief Operating Officer, FIP

### Preparing AI for Pharmaceutical Terminology

For a global pharmaceutical organisation, accuracy is not simply about everyday vocabulary. Congress discussions can include highly specialised terminology from pharmacy, pharmaceutical science, healthcare and education.
To support this, FIP supplied materials including congress abstracts that could be used to prepare **custom vocabulary** for its Interprefy’s AI speech translation sessions. This helps the AI speech translation system recognise terminology likely to arise during FIP discussions.
The result has given FIP confidence even when working with specialist subject matter.
When asked whether terminology or accuracy had caused concerns during their years using the solution, Carola’s answer was straightforward:

No, not at all. Not a problem.

### Making Delivery Easy for the FIP Team

Technology was only part of  what FIP valued about working with **Interprefy**.
Ahead of its meetings, Interprefy’s team worked with FIP to prepare access information and QR codes, coordinate with the onsite AV team and test the connection before sessions began.
For the FIP team, that support translated into a straightforward process from planning through to delivery.

Everything was very easy. Onsite, we had a meeting beforehand just to check everything. When it was connected, it went smoothly. -  Carola van der Hoeff, Chief Operating Officer, FIP

During FIP’s 2026 congress in Montreal, the setup worked so smoothly that additional support during the sessions was not necessary. Once the AV connection was established and tested, the team could focus on running the meeting rather than managing the language technology.

## The Outcome

### Giving More Members a Voice in the Conversation

For FIP, the value of multilingual access ultimately comes back to participation.
Attendees can choose to **listen to AI speech translation or follow live captions**, giving them different ways to engage with discussions in a language they are more comfortable using.
Carola sees particular value for French and Spanish-speaking members, including senior representatives who have important contributions to make but may not feel equally confident communicating in English.

They can continue the conversation or they can be part of the conversation, if needed, in their own language. It’s quite important. - Carola van der Hoeff, Chief Operating Officer, FIP

That ability to participate matters in an international federation where every member organisation brings expertise, perspectives and priorities from its own part of the world.

### Less Complexity Without Compromising on Quality

The operational difference for FIP has also been significant.
Moving away from a model that depended on bringing interpreters to each destination has reduced both the cost and the time required from the internal team.
For Carola, there is a “huge price difference”, but the reduction in organisational work is just as valuable. Instead of arranging travel, accommodation and onsite requirements for interpreters, multilingual delivery has become something that requires very little of her time.
And after seeing the quality AI speech translation can now provide, she does not currently see a need to return to the previous model for these use cases.

I don’t think so. I think the quality has shown that it’s not necessary.

## Looking Ahead

### Expanding Multilingual Access as FIP’s Global Community Evolves

FIP’s next World Congress will take place in **Kuala Lumpur, Malaysia, in September 2027**. With the federation expecting strong international participation, including a significant number of delegates from China, Carola says multilingual requirements will continue to be something the organisation considers as it plans future events.For FIP, AI speech translation represents a natural part of how international communication is evolving.

I think that it’s the future. And it’s already existing, so it can only get better and better. - Carola van der Hoeff, Chief Operating Officer, FIP

Just as importantly, the relationship extends beyond the technology itself. Carola points to the ease of communication with Interprefy’s sales and project teams, the professional support and the human relationships behind the service as reasons FIP has continued working with Interprefy.
And when asked to sum up her experience with Interprefy, her answer was simple:

It’s working perfectly, really.

Related articles:
[EMT Global Meeting 2024 Enhanced with Interprefy AI](https://www.interprefy.com/customer-stories/dlc-events-enhances-emt-global-meeting-2024-with-interprefy-ai)

[Tweet](https://twitter.com/share)

![Icons_Quality@4x](https://www.interprefy.com/hubfs/Pain%20Icons%202022/Icons_Quality@4x.png)

Event Type****On site Event

![Icons_Attendees@4x](https://www.interprefy.com/hubfs/Pain%20Icons%202022/Icons_Attendees@4x.png)

Number of Delegates****3,250

![Icons_Translate@4x](https://www.interprefy.com/hubfs/Pain%20Icons%202022/Icons_Translate@4x.png)

Languages****English<>Spanish English<>Fench English<>German

![Icons_Integration@4x](https://www.interprefy.com/hubfs/Pain%20Icons%202022/Icons_Integration@4x.png)

Interprefy services provided****AI Speech Translation, Live Captions, MT Captions, and project management******

![Interprefy Multiligual AI App](https://www.interprefy.com/hubfs/Imagery%20-%20New%20Pages%20March%202020/Inerpreters/Asset%2044-min.png)

## Our app is suited to meet your needs more than any other RSI provider

As events become increasingly international and multilingual, the ability to deliver content in different languages and in real time is becoming a key differentiator for event organisers. If you want to make your events more inclusive and attract wider audiences, it’s time to consider Interprefy.

[Book your demo today!](https://www.interprefy.com/contact-us)

[Download from the App Store](https://apps.apple.com/us/app/interprefy/id971176635)

[Download from Google Play](https://play.google.com/store/apps/details?id=com.interprefy.interprefy&hl=en&gl=US)

[More download links](https://www.interprefy.com/download-interprefy-app)

-

-

-

-

Our Solutions

- [Remote Interpreting](https://www.interprefy.com/solutions/remote-simultaneous-interpretation)

  - [AI Speech Translation](https://www.interprefy.com/solutions/ai-speech-translation)

  - [Live Captions & Subtitles](https://www.interprefy.com/solutions/multilingual-live-captions-and-subtitles)

  - [Integrations](https://www.interprefy.com/solutions/integrations)

  - [Book an Interpreter](https://www.interprefy.com/about-us/interpreter-sourcing)

About Us

- [Why Us?](https://www.interprefy.com/about-us/why-interprefy)

  - [About Us](https://www.interprefy.com/about-us-old)

  - [How We Work](https://www.interprefy.com/about-us/how-we-work)

  - [Customer Stories](https://www.interprefy.com/customer-stories)

  - [Our Partners](https://www.interprefy.com/javascript:void(0);)

  - [Careers](https://www.interprefy.com/about-us/careers-old)

Resources

- [Blog](https://www.interprefy.com/resources/blog)

  - [News](https://www.interprefy.com/resources/press/companynews)

  - [eBooks & Webinars](https://www.interprefy.com/resources/webinars-and-ebooks)

  - [Knowledge Base](https://knowledge.interprefy.com)

  - [Join your meeting](https://interprefy.interpret.world/user/sign-in)

  - [Join mailing list](https://www.interprefy.com/join-our-mailing-list)

  - [Contact Us](https://www.interprefy.com/contact-us)









@2026 Interprefy. This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

- [Term of Use](https://www.interprefy.com/terms-of-use)

  - [Privacy Policy](https://www.interprefy.com/privacy-policy)

  - [Run a Speed Test](https://interprefy.speedtestcustom.com/)