/* Approved Meridian homepage. Independent of the review collection. */
.meridian {
  --bg: #fafbff; --ink: #182236; --muted: #606d80;
  --accent: #255aff; --onaccent: #fff; --panel: #fff; --line: #dfe5ef;
  --font: 'Manrope', sans-serif; --radius: 9px;
  background: var(--bg); color: var(--ink); font-family: var(--font);
}
.meridian h1, .meridian h2, .meridian h3 { line-height: 1.08; letter-spacing: -.055em; }
.meridian a:focus-visible, .meridian button:focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
.meridian ::selection { background: var(--accent); color: var(--onaccent); }
.meridian .art { min-width: 0; position: relative; }
.meridian .meridian-art {
  height: 460px; background: #edf1ff; border-radius: 18px; overflow: hidden; padding: 25px;
  background-image: linear-gradient(#dfe5f5 1px, transparent 1px), linear-gradient(90deg, #dfe5f5 1px, transparent 1px);
  background-size: 38px 38px;
}
.meridian .meridian-art .route { position: absolute; inset: 70px 55px; width: calc(100% - 110px); height: 290px; }
.meridian .route-card { position: absolute; background: white; border: 1px solid #e1e7f4; padding: 20px; border-radius: 12px; box-shadow: 0 20px 35px #314c8120; min-width: 165px; }
.meridian .route-card b { font-size: 34px; display: block; letter-spacing: -.07em; line-height: 1.2; }
.meridian .route-a { left: 35px; top: 115px; }
.meridian .route-b { right: 30px; bottom: 50px; background: #255aff; color: white; }
@media(max-width:800px) { .meridian .art { max-width:540px; width:100%; margin:auto; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .meridian *, .meridian *::before, .meridian *::after { transition:none!important; } }
/* Meridian presentation applied to the original homepage's unchanged content. */
.meridian-original {
  --pb-color-primary: #255aff;
  --pb-color-primary-hover: #1745d2;
  --pb-color-accent: #255aff;
  --pb-color-ink: #182236;
  --pb-color-text: #182236;
  --pb-color-text-muted: #606d80;
  --pb-color-border: #dfe5ef;
  --pb-color-bg: #fafbff;
  --pb-font-display: 'Manrope', sans-serif;
  --pb-font-body: 'Manrope', sans-serif;
  --pb-layout-max: 1240px;
  --pb-layout-padding-x: 0;
}
.meridian-original .pb-site-header { background: transparent; border: 0; box-shadow: none; }
.meridian-original .pb-site-header__inner,
.meridian-original .pb-hero,
.meridian-original .pb-section,
.meridian-original .pb-site-footer__inner { width: min(1240px, calc(100% - 96px)); }
.meridian-original .pb-site-header__inner { min-height: 100px; padding: 24px 0; gap: 25px; }
.meridian-original .pb-site-header__name { font-size: 1.13rem; letter-spacing: -.035em; }
.meridian-original .pb-site-header__software { font-size: .56rem; letter-spacing: .17em; margin-top: 3px; }
.meridian-original .pb-site-header__software::before,
.meridian-original .pb-site-header__software::after { display: none; }
.meridian-original .pb-site-header__icon { width: 36px; height: 36px; }
.meridian-original .pb-site-nav__list { gap: 5px; }
.meridian-original .pb-site-nav__link { font-size: .73rem; font-weight: 600; padding: 9px 12px; }
.meridian-original .pb-site-nav__list li:last-child a { border: 1px solid var(--line); padding-inline: 19px; }
.meridian-original .pb-hero { display: grid; grid-template-columns: 1.08fr 1fr; gap: 65px; align-items: center; padding: 65px 0 90px; }
.meridian-original .meridian-copy { min-width: 0; }
.meridian-original .pb-hero__eyebrow { font-size: .65rem; letter-spacing: .13em; margin-bottom: 24px; line-height: 1.7; }
.meridian-original .pb-hero__title { font-size: clamp(3.1rem, 5.4vw, 4.75rem); font-weight: 800; line-height: 1.04; letter-spacing: -.065em; max-width: 14ch; margin-bottom: 28px; }
.meridian-original .pb-hero__title span { color: var(--accent); }
.meridian-original .pb-hero__lead { font-size: 1rem; line-height: 1.8; max-width: 520px; }
.meridian-original .meridian-art { height: 455px; }
.meridian-original .route-card { padding: 25px; }
.meridian-original .pb-section { border-top: 1px solid var(--line); padding: 70px 0; }
.meridian-original .pb-section__title { font-size: clamp(2.3rem, 4vw, 3.65rem); font-weight: 700; letter-spacing: -.055em; line-height: 1.1; max-width: 850px; margin-bottom: 18px; }
.meridian-original .pb-section__subtitle { font-size: .95rem; margin-bottom: 45px; max-width: 620px; }
.meridian-original .pb-product-category { margin-bottom: 50px; }
.meridian-original .pb-product-category:last-child { margin-bottom: 0; }
.meridian-original .pb-product-category__heading { font-size: 1.45rem; letter-spacing: -.035em; margin-bottom: 10px; }
.meridian-original .pb-product-category__subtitle { font-size: .82rem; margin-bottom: 22px; }
.meridian-original .pb-product-grid { grid-template-columns: 1fr 1fr; gap: 22px; }
.meridian-original .pb-product-grid--single { grid-template-columns: 1fr; }
.meridian-original .pb-product-card { border-radius: 12px; padding: 32px; gap: 20px; box-shadow: 0 5px 20px #18223603; }
.meridian-original .pb-product-card__title { font-size: 1.55rem; letter-spacing: -.04em; line-height: 1.2; }
.meridian-original .pb-product-card__desc { font-size: .87rem; line-height: 1.8; }
.meridian-original .pb-product-card__mark { background: #edf1ff; color: #255aff; border: 1px solid #dbe3ff; width: 40px; height: 40px; border-radius: 9px; font-size: .76rem; }
.meridian-original #finance .pb-product-card { background: #eef2ff; }
.meridian-original .pb-product-grid--single .pb-product-card { display: grid; grid-template-columns: 44px 1fr auto; align-items: start; gap: 16px 25px; }
.meridian-original .pb-product-grid--single .pb-product-card__mark { grid-column: 1; grid-row: 1 / 3; }
.meridian-original .pb-product-grid--single .pb-product-card__title { grid-column: 2; }
.meridian-original .pb-product-grid--single .pb-product-card__desc { grid-column: 2; max-width: 590px; }
.meridian-original .pb-product-grid--single .pb-product-card__actions { grid-column: 3; grid-row: 1 / 3; flex-direction: column; align-self: center; max-width: 235px; }
.meridian-original .pb-btn { border-radius: 8px; padding: 14px 20px; font-size: .77rem; line-height: 1.4; }
.meridian-original .pb-btn--secondary { background: transparent; }
.meridian-original .pb-product-card__actions { margin-top: auto; }
.meridian-original .pb-services { background: transparent; border: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 25px 75px; }
.meridian-original .pb-services__lead { font-size: 1rem; line-height: 1.85; margin: 0; }
.meridian-original .pb-services__list { list-style: none; padding: 0; counter-reset: services; }
.meridian-original .pb-services__list li { counter-increment: services; display: flex; gap: 20px; border-bottom: 1px solid var(--line); padding: 16px 0; font-size: .88rem; color: var(--ink); margin: 0; }
.meridian-original .pb-services__list li:first-child { padding-top: 0; }
.meridian-original .pb-services__list li::before { content: '0' counter(services); font-size: .7rem; color: var(--accent); padding-top: 3px; }
.meridian-original .pb-services__cta { margin: 0; grid-column: 1; }
.meridian-original .pb-about-company { border: 0; padding: 0; background: transparent; max-width: 900px; }
.meridian-original .pb-about-company p { color: var(--ink); font-size: 1.35rem; letter-spacing: -.025em; line-height: 1.7; }
.meridian-original .pb-contact { border-radius: 14px; box-shadow: 0 12px 40px #18223605; }
.meridian-original .pb-contact__layout { grid-template-columns: 1fr 1.45fr; }
.meridian-original .pb-contact__intro { background: #255aff; border: 0; padding: 40px; }
.meridian-original .pb-contact__lead { color: #fff; font-size: 1.05rem; line-height: 1.85; }
.meridian-original .pb-contact__direct-label { color: #d2ddff; }
.meridian-original .pb-contact__email { color: #fff; font-size: .9rem; overflow-wrap: anywhere; }
.meridian-original .pb-contact__panel { padding: 40px; }
.meridian-original .pb-contact-form__input { font-size: .88rem; border-radius: 8px; background: #fafbff; box-shadow: none; }
.meridian-original .pb-site-footer { margin: 10px 0 0; background: transparent; }
.meridian-original .pb-site-footer__inner { padding: 28px 0; font-size: .7rem; }
@media (max-width: 1100px) {
  .meridian-original .pb-site-header__inner { flex-wrap: wrap; }
  .meridian-original .pb-hero { gap: 35px; }
  .meridian-original .pb-site-header__inner,
  .meridian-original .pb-hero,
  .meridian-original .pb-section,
  .meridian-original .pb-site-footer__inner { width: calc(100% - 64px); }
  .meridian-original .pb-product-grid--single .pb-product-card { grid-template-columns: 44px 1fr; }
  .meridian-original .pb-product-grid--single .pb-product-card__actions { grid-column: 2; grid-row: auto; flex-direction: row; max-width: none; }
}
@media (max-width: 800px) {
  .meridian-original .pb-site-header__inner,
  .meridian-original .pb-hero,
  .meridian-original .pb-section,
  .meridian-original .pb-site-footer__inner { width: calc(100% - 40px); }
  .meridian-original .pb-site-header__inner { gap: 22px; padding: 22px 0; }
  .meridian-original .pb-site-nav__list { gap: 1px; }
  .meridian-original .pb-site-nav__link { padding: 7px 9px; font-size: .69rem; }
  .meridian-original .pb-hero { grid-template-columns: 1fr; padding: 35px 0 60px; gap: 38px; }
  .meridian-original .pb-hero__title { max-width: 16ch; }
  .meridian-original .pb-hero__lead { max-width: 600px; }
  .meridian-original .meridian-art { height: 360px; }
  .meridian-original .pb-section { padding: 55px 0; }
  .meridian-original .pb-product-card { padding: 25px; }
  .meridian-original .pb-services { grid-template-columns: 1fr; gap: 30px; }
  .meridian-original .pb-contact__layout { grid-template-columns: 1fr; }
  .meridian-original .pb-contact__intro, .meridian-original .pb-contact__panel { padding: 30px; }
}
@media (max-width: 540px) {
  .meridian-original .pb-hero__title { font-size: clamp(2.6rem, 11.5vw, 3.5rem); }
  .meridian-original .pb-hero__eyebrow { font-size: .59rem; }
  .meridian-original .pb-product-grid { grid-template-columns: 1fr; }
  .meridian-original .pb-product-grid--single .pb-product-card { display: flex; }
  .meridian-original .pb-product-grid--single .pb-product-card__actions { align-self: stretch; }
  .meridian-original .pb-product-card__actions { flex-direction: column; }
  .meridian-original .pb-about-company p { font-size: 1.13rem; }
  .meridian-original .pb-contact__intro, .meridian-original .pb-contact__panel { padding: 25px; }
  .meridian-original .meridian-art { height: 325px; }
  .meridian-original .route-card { min-width: 130px; padding: 20px; }
  .meridian-original .route-card b { font-size: 29px; }
  .meridian-original .route-a { top: 75px; left: 20px; }
  .meridian-original .route-b { bottom: 40px; right: 20px; }
}
