

/* Start:/local/templates/main/assets/css/block-css/company.css?179015632616388*/
/* Company page only. Shared header, footer and component styles stay intact. */
.company-page {
    --company-red: #ee193a;
    --company-violet: #5530ce;
    --company-blue: #bee7eb;
    --company-surface: #f5f5f9;
    --company-muted: #62676e;
    --company-radius: var(--border-radius-l);
    color: #111;
    font-family: var(--font-family-base);
    font-size: 18px;
    font-weight: 300;
    line-height: 1.45;
    padding-top: 24px;
}
.company-page :is(h1, h2, h3, p) { overflow-wrap: break-word; }
.company-page :is(section, article, figure, section > div) { min-width: 0; }
.company-page h1, .company-page h2, .company-page h3 { color: inherit; font-family: var(--font-family-base); font-weight: 200; margin: 0; }
.company-page h1 { text-align: left; padding: 0; font-size: clamp(36px, 4.3vw, 60px); line-height: 1.06; letter-spacing: -.055em; }
.company-page h2 { font-size: clamp(30px, 3.5vw, 48px); line-height: 1.08; letter-spacing: -.045em; }
.company-page h3 { font-size: 26px; line-height: 1.2; letter-spacing: -.025em; }
.company-page p { margin: 0; }
.company-page a { color: inherit; text-decoration: none; }
.company-page a:focus-visible { outline: 3px solid var(--company-violet); outline-offset: 5px; }
.company-page__section { margin-top: 110px; }
.company-page .company-page__eyebrow { color: var(--company-red); text-transform: uppercase; font-size: 14px; line-height: 1.3; margin-bottom: 6px; }
.company-page__label { font-size: 14px; text-transform: uppercase; }
.company-page__hero-copy { display: flex; flex-direction: column; align-items: flex-start; background: var(--gray-silver); border-radius: var(--company-radius); padding: 42px; }
.company-page__hero-copy .company-page__eyebrow { margin-bottom: 28px; }
.company-page__lead { font-size: 23px; line-height: 1.4; padding-top: 30px; }
.company-page__hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: auto; padding-top: 48px; }
.company-page .company-page__button { background: var(--company-red); color: white; border: 0; border-radius: 100px; padding: 15px 26px; min-height: 48px; font-family: var(--font-family-base); font-size: 18px; line-height: 1.2; text-align: center; justify-content: center; }
.company-page .company-page__button:hover { background: var(--company-red); text-decoration: underline; text-underline-offset: 3px; }
.company-page__facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 16px; }
.company-page__facts li { display: flex; flex-direction: column; gap: 28px; padding: 24px; border-radius: var(--company-radius); background: var(--gray-silver); }
.company-page__facts li:nth-child(1) { background: var(--company-red); color: white; }
.company-page__facts li:nth-child(2) { background: var(--company-blue); }
.company-page__facts li:nth-child(3) { background: var(--company-violet); color: white; }
.company-page__facts strong { font-size: 46px; line-height: 1; font-weight: 300; }
.company-page__facts span { line-height: 1.2; margin-top: auto; }
.company-page__heading { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 56px; align-items: start; margin-bottom: 36px; }
.company-page__heading > div { display: contents; }
.company-page__heading > .company-page__copy { display: block; grid-column: 2; grid-row: 2; }
.company-page__copy p + p { margin-top: 20px; }
.company-page .company-page__section-copy { margin-top: 28px; }
.company-page .company-page__text-link { text-decoration: underline; text-underline-offset: 3px; }
.company-page .company-page__heading .company-page__eyebrow { grid-column: 1 / -1; grid-row: 1; margin-bottom: 0; }
.company-page__heading h2 { grid-column: 1; grid-row: 2; }
.company-page__heading > p:not(.company-page__eyebrow) { grid-column: 2; grid-row: 2; }
.company-page__disciplines { margin: 0 0 20px; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.company-page__disciplines li { display: flex; flex-direction: column; gap: 16px; padding: 24px; background: var(--company-surface); color: #111; list-style: none; border-radius: 22px; font-size: 16px; }
.company-page .company-page__disciplines > li::before { content: none; }
.company-page .company-page__disciplines > li::marker { content: ""; }
.company-page__disciplines span { font-size: 28px; font-weight: 500; }
.company-page .team__cards { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; width: 100%; max-width: none; padding: 0; }
.company-page .team__cards .team__item { width: auto; min-width: 0; padding: 12px 12px 20px; border-radius: 20px; background: var(--company-surface); }
.company-page .team__cards .team__item img { width: 100%; aspect-ratio: 230 / 284; object-fit: cover; border-radius: 14px; margin-bottom: 16px; }
.company-page .team__cards .team__item-name { font-size: 18px; font-weight: 500; line-height: 1.12; margin-bottom: 6px; overflow-wrap: anywhere; }
.company-page .team__cards .team__item-post { font-size: 14px; font-weight: 300; line-height: 1.3; color: var(--company-muted); }
.company-page .company-page__note { color: var(--company-muted); font-size: 13px; line-height: 1.5; margin-top: 16px; }
.company-page__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.company-page .company-page__card { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 30px; border-radius: var(--company-radius); background: var(--company-surface); transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease, filter .25s ease; }
.company-page__card h3 { margin-top: 24px; margin-bottom: 12px; }
.company-page__card p { color: var(--company-muted); font-size: 17px; line-height: 1.4; }
.company-page__card .company-page__label { color: var(--company-muted); }
.company-page .company-page__card--red { color: white; background: var(--company-red); }
.company-page .company-page__card--red .company-page__eyebrow { color: #fff; }
.company-page .company-page__card--violet { color: white; background: var(--company-violet); }
.company-page .company-page__card--dark { color: white; background: #111; }
.company-page__card--red p, .company-page__card--violet p, .company-page__card--dark p { color: inherit; }
.company-page__card--red .company-page__label, .company-page__card--violet .company-page__label { color: white; }
.company-page__card--wide { grid-column: 1 / -1; }
.company-page .company-page__services .company-page__card--wide { background: var(--company-surface); }
.company-page__card--wide p { max-width: 580px; }
.company-page__arrow { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; align-self: flex-end; background: white; color: #25252b; margin-top: auto; font-size: 24px; transition: transform .25s ease, background-color .25s ease, color .25s ease; }
.company-page__services .company-page__card { min-height: 264px; }
.company-page__services .company-page__arrow { margin-top: 18px; }
.company-page__card-link { padding-top: 44px; margin-top: auto; font-size: 17px; }
@media (hover: hover) {
    .company-page a.company-page__card:hover {
        transform: translateY(-6px);
        box-shadow: 0 18px 38px rgba(24, 24, 32, .12);
    }
    .company-page a.company-page__card:not(.company-page__card--red):not(.company-page__card--violet):not(.company-page__card--wide):hover {
        background: #ededf3;
    }
    .company-page a.company-page__card--red:hover,
    .company-page a.company-page__card--violet:hover {
        color: white;
        filter: saturate(1.06) brightness(.96);
    }
    .company-page a.company-page__card:hover .company-page__arrow {
        color: white;
        background: #111;
        transform: translateX(5px);
    }
}
.company-page__medicine { display: grid; grid-template-columns: 1.1fr 1fr; gap: 40px; padding: 40px; border-radius: var(--company-radius); background: var(--company-blue); }
.company-page__medicine-copy { padding-top: 24px; }
.company-page__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.company-page__tags li { border-radius: 100px; background: white; padding: 8px 14px; font-size: 14px; }
.company-page__medical-rank { position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; padding: 24px; border-radius: 24px; background: #f4f8f8; }
.company-page__medical-image { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; opacity: .75; }
.company-page__medical-rank > :not(.company-page__medical-image) { position: relative; z-index: 1; }
.company-page__pill { padding: 8px 16px; background: white; border-radius: 100px; font-size: 16px; }
.company-page__medical-rank strong { font-size: 88px; line-height: 1.1; font-weight: 300; margin-top: auto; padding-top: 110px; }
.company-page__rank-note { font-size: 13px; padding-top: 18px; }
.company-page__research .company-page__card { min-height: 238px; }
.company-page__research .company-page__card:first-child { grid-column: 1 / -1; }
.company-page__research h3 { font-size: 24px; }
.company-page__ratings { display: grid; grid-template-columns: .9fr 1.1fr; gap: 16px; align-items: stretch; }
.company-page__rating-total { position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; color: white; background: var(--company-violet); border-radius: var(--company-radius); padding: 36px; }
.company-page__rating-image { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; object-position: right center; }
.company-page__rating-total::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(29, 13, 79, .65), rgba(29, 13, 79, .35) 65%, transparent); pointer-events: none; }
.company-page__rating-total > :not(.company-page__rating-image) { position: relative; z-index: 2; }
.company-page__rating-total strong { display: block; font-size: 140px; font-weight: 300; line-height: 1; margin: 105px 0 26px; }
.company-page .company-page__rating-total p { margin-top: auto; }
.company-page__rating-groups { padding: 24px 30px; border-radius: var(--company-radius); background: var(--company-surface); }
.company-page .company-page__rating-groups h3 { margin: 0 0 4px; color: var(--company-muted); font-size: 13px; font-weight: 400; line-height: 1.3; letter-spacing: .04em; text-transform: uppercase; }
.company-page__rating-list { margin: 0; }
.company-page .company-page__rating-list + h3 { margin-top: 16px; }
.company-page__rating-list > div { display: grid; grid-template-columns: 82px 1fr; gap: 16px; padding: 15px 0; align-items: center; }
.company-page__rating-list > div + div { border-top: 1px solid #dedee3; }
.company-page__rating-list dt { font-size: 32px; line-height: 1; }
.company-page__rating-list dd { margin: 0; font-size: 16px; line-height: 1.3; }
.company-page__rating-list dd span { display: block; color: var(--company-muted); }
.company-page__technology .company-page__card { background: white; border: 1px solid #dedee3; min-height: 245px; }
.company-page__technology h3 { font-family: var(--font-family-base); font-weight: 500; font-size: 26px; }
.company-page__icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 17px; background: var(--company-red); color: white; font-size: 26px; }
.company-page__technology .company-page__card:nth-child(even) .company-page__icon { background: var(--company-violet); }
.company-page__partnership { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; padding: 46px; border-radius: var(--company-radius); background: #f2f7fa; color: #111; }
.company-page__retention { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 40px; }
.company-page__retention li { display: flex; flex-direction: column; padding: 24px; border-radius: 24px; background: var(--company-red); color: white; line-height: 1.2; }
.company-page__retention strong { font-weight: 500; color: white; font-size: 56px; }
.company-page .company-page__partnership .company-page__retention li > span { color: white; }
.company-page__partnership-copy { align-self: center; }
.company-page__partnership-copy p + p { margin-top: 20px; }
.company-page__review { padding: 40px; border-radius: var(--company-radius); background: var(--company-surface); }
.company-page__review blockquote { font-size: 27px; line-height: 1.4; margin: 0; }
.company-page__review figcaption { display: flex; align-items: center; gap: 16px; margin-top: 36px; font-size: 17px; line-height: 1.25; }
.company-page__review figcaption strong { display: block; font-weight: 500; }
.company-page__review figcaption span > span { color: var(--company-muted); }
.company-page__avatar { width: 52px; height: 52px; flex-shrink: 0; border-radius: 50%; background: linear-gradient(135deg, var(--company-red), #efd6c8); }
@media (min-width: 768px) {
    .company-page { padding-inline: 32px; }
}
@media (max-width: 1199px) {
    .company-page__hero-copy { padding: 30px; }
    .company-page__heading { column-gap: 32px; }
    .company-page .team__cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .company-page__partnership { padding: 32px; gap: 28px; }
    .company-page__medicine { padding: 30px; gap: 28px; }
}
@media (max-width: 991px) {
    .company-page { font-size: 17px; }
    .company-page__section { margin-top: 72px; }
    .company-page__hero-copy { padding: 24px; }
    .company-page__lead { font-size: 20px; }
    .company-page__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .company-page__disciplines { grid-template-columns: 1fr; }
    .company-page .team__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .company-page__medicine, .company-page__partnership { grid-template-columns: 1fr; }
    .company-page__medical-rank { min-height: 340px; }
    .company-page__rating-groups { padding: 26px 20px; }
    .company-page__rating-list > div { grid-template-columns: 74px 1fr; gap: 12px; }
    .company-page__rating-total { padding: 26px; }
    .company-page__retention { margin-top: 24px; }
}
@media (max-width: 767px) {
    .company-page__heading, .company-page__grid, .company-page__ratings { grid-template-columns: 1fr; }
    .company-page__heading { gap: 6px; margin-bottom: 28px; }
    .company-page__heading > p:not(.company-page__eyebrow) { grid-column: 1; grid-row: 3; margin-top: 14px; }
    .company-page__heading > .company-page__copy { grid-column: 1; grid-row: 3; margin-top: 14px; }
    .company-page__card--wide { grid-column: auto; }
    .company-page__rating-total strong { margin: 28px 0 20px; }
    .company-page .team__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .company-page__review { padding: 28px; }
    .company-page__review blockquote { font-size: 23px; }
}
@media (max-width: 480px) {
    .company-page { padding-top: 16px; }
    .company-page__section { margin-top: 56px; }
    .company-page__facts, .company-page .team__cards, .company-page__disciplines { gap: 10px; }
    .company-page__facts li { padding: 20px 16px; border-radius: 22px; }
    .company-page__facts strong { font-size: clamp(28px, 7.5vw, 36px); }
    .company-page__facts span { font-size: 15px; }
    .company-page__disciplines li { padding: 18px; font-size: 15px; }
    .company-page .team__cards .team__item { padding: 8px 8px 16px; border-radius: 16px; }
    .company-page .team__cards .team__item-name { font-size: 16px; }
    .company-page .team__cards .team__item-post { font-size: 13px; }
    .company-page__medicine, .company-page__partnership, .company-page__review, .company-page .company-page__card { padding: 24px; }
    .company-page__retention li { padding: 18px; font-size: 15px; }
    .company-page__retention strong { font-size: clamp(32px, 8vw, 44px); }
    .company-page__review blockquote { font-size: 21px; }
    .company-page__rating-list dt { font-size: 34px; }
}

/* Reuse the site's gradient; keep the card content above its decorative layers. */
.company-page .bg-gradient > *,
.company-page .bg-gradient-half > * { position: relative; z-index: 1; }
.company-page .bg-gradient::before,
.company-page .bg-gradient::after,
.company-page .bg-gradient-half::after { pointer-events: none; }
.company-page a.company-page__card--red.bg-gradient:hover { color: white; }

/* End */
/* /local/templates/main/assets/css/block-css/company.css?179015632616388 */
