/* Blog family: /blog and /blog/<post>. Three layouts: desktop from 1200 px, tablet 810 to 1199 px,
   phone below 810 px. Base rules are desktop; the tablet and phone media blocks further down override
   them downwards (tablet first, then phone). */

/* The page root clips sideways overflow (the hero's zoom entrance is a little wider than the screen while it runs). */
.page--blog .main { overflow-x: clip; }

/* ---- Type --------------------------------------------------------------------------------- */
.bl-h1, .bl-h2, .bl-h3 { font-family: var(--serif); font-weight: 400; color: var(--ink); text-align: left; margin: 0; }
.bl-h1 { font-size: 64px; line-height: 64px; letter-spacing: -2.56px; }
.bl-h2 { font-size: 48px; line-height: 52.8px; letter-spacing: -1.92px; }
.bl-h3 { font-size: 27.2px; line-height: 32.64px; letter-spacing: -1.088px; }
.bl-p { font-family: var(--sans); font-size: 16px; line-height: 22.4px; color: var(--ink); text-align: left; margin: 0; }
.bl-small { font-family: var(--sans); font-size: 14px; line-height: 16.8px; letter-spacing: 0.42px; text-transform: uppercase; color: var(--ink); }
.bl-h1 span { display: inline-block; }

/* ---- White button ("Read post", "See all posts") ------------------------------------------ */
.bl-btn { position: relative; display: flex; width: min-content; height: min-content; justify-content: center; align-items: center; background: #fff; border-radius: 2px; overflow: hidden; }
.bl-btn__in { position: relative; display: flex; justify-content: center; align-items: center; flex: 0 0 auto; padding: 16px 32px; gap: 10px; }
.bl-btn__text { display: flex; justify-content: center; align-items: center; flex: 0 0 auto; gap: 10px; min-height: 20px; }
.bl-btn__label { display: flex; flex-direction: column; justify-content: flex-start; flex: 0 0 auto; white-space: pre; font-family: var(--sans); font-size: 16px; line-height: 19.2px; letter-spacing: 0.64px; text-transform: uppercase; color: var(--ink); text-align: left; }
.bl-arrow { position: absolute; z-index: 1; top: 50%; left: 100%; width: 19px; height: 19px; transform: translateY(-50%); overflow: hidden; flex: 0 0 auto; }

/* ---- /blog: heading ------------------------------------------------------------------------ */
.bl-top { display: flex; justify-content: flex-start; align-items: flex-end; background: var(--sand); }
.bl-top__bg { display: flex; position: relative; flex: 1 0 0; flex-direction: column; justify-content: flex-end; align-items: center; max-width: 100%; padding: 180px 48px 64px; background: var(--sand); }
.bl-top__content { position: relative; z-index: 2; display: flex; justify-content: center; align-items: flex-end; max-width: 1000px; width: 100%; gap: 64px; }
.bl-top__title { display: flex; flex: 2 0 0; flex-direction: column; justify-content: flex-start; white-space: pre-wrap; word-break: break-word; }

/* ---- /blog: the list ---------------------------------------------------------------------- */
.bl-list { display: flex; flex-direction: column; justify-content: flex-start; align-items: center; gap: 40px; max-width: 100%; padding: 0 48px 180px; background: var(--sand); }
.bl-list__inner { display: flex; flex-direction: column; justify-content: flex-start; align-items: center; gap: 64px; width: 100%; max-width: 1000px; }
.bl-item { display: flex; flex-direction: column; justify-content: flex-start; align-items: center; gap: 64px; width: 100%; }
.bl-divider { flex: 0 0 auto; width: 100%; height: 1px; background: var(--ink-10); overflow: clip; }
.bl-card { display: flex; justify-content: center; align-items: center; gap: 48px; width: 100%; overflow: clip; }
.bl-card__media { position: relative; flex: 1 0 0; border-radius: 4px; aspect-ratio: 1 / 1; min-width: 0; }
.bl-card__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: inherit; display: block; }
.bl-card__text { display: flex; flex: 2 0 0; flex-direction: column; justify-content: space-between; align-items: flex-start; align-self: stretch; min-width: 0; }
.bl-card__top { display: flex; justify-content: center; align-items: flex-start; gap: 48px; width: 100%; }
.bl-card__title { display: flex; flex: 1 0 0; flex-direction: column; justify-content: center; align-items: center; gap: 10px; min-width: 0; width: 100%; }
.bl-card__title .bl-h3 { display: flex; flex-direction: column; justify-content: flex-start; width: 100%; white-space: pre-wrap; overflow: clip; word-break: break-word; }
.bl-card__meta { display: flex; flex: 1 0 0; flex-direction: column; justify-content: flex-start; align-items: flex-end; gap: 10px; overflow: clip; min-width: 0; }
.bl-card__by { display: flex; justify-content: center; align-items: center; gap: 16px; overflow: clip; }
.bl-card__by .bl-small { display: flex; flex-direction: column; justify-content: flex-start; white-space: pre; text-wrap: nowrap; text-align: start; }
.bl-tag { display: flex; justify-content: flex-start; align-items: center; padding: 4px 8px; gap: 10px; background: var(--white-62); border-radius: 100px; }
.bl-tag .bl-small { display: flex; flex-direction: column; white-space: pre; text-wrap: nowrap; }
.bl-card__bottom { display: flex; justify-content: space-between; align-items: flex-end; width: 100%; overflow: clip; }
.bl-excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; position: relative; flex: 1 0 0; max-width: 300px; white-space: pre-line; overflow: clip; word-break: break-word; }
.bl-card__bottom .bl-btn { flex: 0 0 auto; }

/* ---- Post: heading over the photograph ---------------------------------------------------- */
.bp-hero { display: flex; justify-content: flex-start; align-items: flex-end; }
.bp-hero__bg { position: relative; will-change: transform; display: flex; flex: 1 0 0; flex-direction: column; justify-content: flex-end; align-items: center; max-width: 100%; height: 100vh; padding: 160px 48px 64px; }
.bp-hero__photo { position: absolute; inset: 0; }
.bp-hero__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.bp-hero__content { position: relative; z-index: 2; display: flex; justify-content: center; align-items: flex-end; width: 100%; max-width: 1000px; gap: 64px; }
.bp-hero__title { display: flex; flex: 2 0 0; flex-direction: column; justify-content: flex-start; white-space: pre-wrap; word-break: break-word; min-width: 0; }
.bp-hero__lead { display: flex; flex: 1 0 0; flex-direction: column; justify-content: center; align-items: center; gap: 16px; min-width: 0; }
.bp-hero__text { display: flex; flex-direction: column; justify-content: flex-start; white-space: pre-wrap; word-break: break-word; }
.bp-hero .bl-h1, .bp-hero .bl-p { color: #fff; }
.bp-hero__darken { position: absolute; inset: 0; z-index: 1; overflow: clip; opacity: 0.8; background-image: linear-gradient(rgba(0,0,0,0) 45%, rgba(0,0,0,0.15) 55%, rgba(0,0,0,0.6) 80%, rgba(0,0,0,0.8) 100%); }
.bp-hero__blur { position: absolute; inset: 0; z-index: 1; overflow: clip; backdrop-filter: blur(5px); -webkit-mask: linear-gradient(rgba(0,0,0,0) 60%, #000 80%); mask: linear-gradient(rgba(0,0,0,0) 60%, #000 80%); }

/* ---- Post: sidebar and article ------------------------------------------------------------ */
.bp-main { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 10px; padding: 120px 48px 180px; background: var(--sand); overflow: clip; }
.bp-main__content { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 140px; width: 100%; max-width: 1000px; }
.bp-main__split { display: flex; justify-content: center; align-items: flex-start; gap: 64px; width: 100%; }
.bp-side { position: sticky; top: 140px; z-index: 1; display: flex; flex: 1 0 0; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 16px; min-width: 0; }
.bp-by { display: flex; justify-content: flex-start; align-items: center; gap: 6px; width: 100%; max-width: 600px; overflow: clip; }
.bp-by__avatar { position: relative; flex: 0 0 auto; width: 32px; height: 32px; border-radius: 100px; overflow: clip; }
.bp-by__img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }
.bp-by__name { display: flex; flex: 1 0 0; flex-direction: column; justify-content: flex-start; white-space: pre-wrap; word-break: break-word; min-width: 0; }
.bp-rule { flex: 0 0 auto; width: 100%; height: 1px; background: var(--ink-10); overflow: clip; }
.bp-fact { display: flex; flex-direction: column; justify-content: flex-start; width: 100%; max-width: 600px; white-space: pre-wrap; word-break: break-word; }
.bp-share { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center; gap: 12px; width: 100%; }
.bp-share__btn { display: flex; flex: 0 0 auto; justify-content: center; align-items: center; width: 32px; height: 32px; text-align: center; background: var(--ink-10); border-radius: 100px; transition: background-color 0.2s, transform 0.15s; cursor: pointer; }
@media (hover: hover) and (pointer: fine) { .bp-share__btn:hover, .bp-share__btn:focus-visible { transform: scale(1.1); } }
.bp-share__icon { display: flex; width: 16px; height: 16px; }
.bp-share__icon svg { display: block; width: 100%; height: 100%; overflow: hidden; }
.bp-article { display: flex; flex: 4 0 0; flex-direction: column; justify-content: flex-start; white-space: pre-wrap; word-break: break-word; min-width: 0; }
.bp-article > :not(:first-child).bp-h2 { margin-top: 40px; }
.bp-article > :not(:first-child).bp-p { margin-top: 20px; }
.bp-article > :empty { display: none; }
.bp-article em { font-style: italic; }
.bp-article strong { font-weight: 700; }

/* ---- Post: you might also like ------------------------------------------------------------ */
.bp-more { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 48px; width: 100%; }
.bp-more__head { display: flex; justify-content: space-between; align-items: center; width: 100%; }
.bp-more__lead { display: flex; flex: 1 0 0; justify-content: flex-start; align-items: center; gap: 10px; padding: 0 24px 0 0; min-width: 0; }
.bp-more__lead .bl-h2 { display: flex; flex-direction: column; justify-content: flex-start; flex: 0 0 auto; white-space: pre; text-wrap: nowrap; }
.bp-more__cards { display: flex; justify-content: center; align-items: flex-start; gap: 24px; width: 100%; }
.bp-more__cell { display: flex; flex: 1 0 0; justify-content: flex-start; align-items: center; gap: 10px; min-width: 0; }
.bp-more__card { position: relative; display: flex; flex: 1 0 0; flex-direction: column; justify-content: flex-end; align-items: flex-start; gap: 24px; min-height: 480px; padding: 48px 32px; background: var(--ink-10); border-radius: 4px; overflow: clip; min-width: 0; }
.bp-more__bg { position: absolute; inset: 0; z-index: 0; }
.bp-more__img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.bp-more__blur, .bp-more__dark-bottom, .bp-more__dark-top { position: absolute; inset: 0; display: block; }
.bp-more__blur { backdrop-filter: blur(5px); -webkit-mask: linear-gradient(rgba(0,0,0,0) 50%, #000 75%); mask: linear-gradient(rgba(0,0,0,0) 50%, #000 75%); }
.bp-more__dark-bottom { background: rgba(0,0,0,0.5); -webkit-mask: linear-gradient(rgba(0,0,0,0) 20%, #000 70%); mask: linear-gradient(rgba(0,0,0,0) 20%, #000 70%); }
.bp-more__dark-top { background: rgba(0,0,0,0.3); -webkit-mask: linear-gradient(233deg, #000 10%, rgba(0,0,0,0) 30%); mask: linear-gradient(233deg, #000 10%, rgba(0,0,0,0) 30%); }
.bp-more__badge { position: absolute; z-index: 1; left: 16px; right: 16px; bottom: 16px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 4px; padding: 16px 56px 16px 16px; }
.bp-more__title { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; position: relative; white-space: pre-line; overflow: clip; word-break: break-word; }
.bp-more__title .bl-h3 { color: #fff; }
.bp-more__arrow { position: absolute; z-index: 1; right: 8px; bottom: 14px; display: flex; justify-content: center; align-items: center; width: 40px; height: 40px; padding: 8px; gap: 10px; border-radius: 100px; }
.bp-more__arrow-in { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 24px; height: 24px; gap: 10px; }
.bp-more__arrow-mark { display: block; width: 22px; aspect-ratio: 1.21212 / 1; background: #fff; flex: 0 0 auto;
  -webkit-mask: var(--bl-arrow-mask) no-repeat 50% 50%; mask: var(--bl-arrow-mask) no-repeat 50% 50%; }
.bp-more__tag { position: absolute; z-index: 1; top: 16px; right: 16px; display: flex; flex-direction: column; justify-content: flex-start; white-space: pre; text-wrap: nowrap; color: #fff; }

/* ---- Post: closing call to action --------------------------------------------------------- */
.bp-cta { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 10px; padding: 0 48px 140px; overflow: clip; }
.bp-cta__content { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 10px; width: 100%; max-width: 1400px; overflow: clip; }
.bp-cta__grid { display: flex; justify-content: center; align-items: center; gap: 64px; width: 100%; }
.bp-cta__left { display: flex; flex: 1 0 0; flex-direction: column; justify-content: center; align-items: flex-start; gap: 24px; min-width: 0; }
.bp-cta__text { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 16px; max-width: 420px; }
.bp-cta__h { display: flex; flex-direction: column; justify-content: flex-start; max-width: 700px; }
.bp-cta__h2 { text-wrap: balance; }
.bp-cta__p { display: flex; flex-direction: column; justify-content: flex-start; overflow: clip; }
.bp-cta__ptext { text-wrap: balance; }
.bp-cta__actions { position: relative; flex: 0 0 auto; }
.bp-cta__primary { position: relative; display: flex; width: min-content; height: min-content; justify-content: center; align-items: center; background: var(--gold); border-radius: 2px; overflow: hidden; color: var(--ink); }
.bp-cta__primary-in { position: relative; display: flex; justify-content: center; align-items: center; flex: 0 0 auto; padding: 16px 32px; gap: 10px; }
.bp-cta__primary-text { display: flex; justify-content: center; align-items: center; flex: 0 0 auto; gap: 10px; min-height: 20px; }
.bp-cta__primary .bl-btn__label { color: var(--ink); }
.bp-cta__primary-arrow { position: absolute; z-index: 1; top: 50%; left: 100%; width: 19px; aspect-ratio: 1 / 1; transform: translateY(-50%); background: var(--ink); flex: 0 0 auto;
  -webkit-mask: var(--bl-arrow-mask) no-repeat 50% 50%; mask: var(--bl-arrow-mask) no-repeat 50% 50%; }
.bp-cta__secondary { display: inline-flex; justify-content: center; align-items: center; margin: 14px 0 0; padding: 16px 32px; font-family: var(--sans); font-size: 16px; letter-spacing: 0.64px; text-transform: uppercase; white-space: nowrap; text-wrap: nowrap; color: #fff; background: var(--navy); border: 1px solid var(--navy); border-radius: 2px; cursor: pointer; transition: filter 0.15s; }
.bp-cta__phone { display: flex; flex: 0 0 auto; width: 100%; flex-direction: column; justify-content: center; align-items: flex-start; gap: 4px; }
.bp-cta__label { display: flex; flex-direction: column; justify-content: flex-start; white-space: pre; text-wrap: nowrap; color: var(--ink-62); }
.bp-cta__tel { display: flex; width: 100%; flex-direction: column; justify-content: flex-start; white-space: pre-wrap; overflow: clip; word-break: break-word; font-family: var(--serif); font-size: 24px; line-height: 28.8px; letter-spacing: -0.96px; text-align: left; color: var(--ink); }
.bp-cta__tel a { color: #7d6320; text-decoration: underline; text-underline-offset: 6px; cursor: pointer; transition: color 0.2s cubic-bezier(0.44, 0, 0.56, 1), text-decoration-color 0.2s cubic-bezier(0.44, 0, 0.56, 1), text-decoration-thickness 0.2s cubic-bezier(0.44, 0, 0.56, 1), text-underline-offset 0.2s cubic-bezier(0.44, 0, 0.56, 1); }
.bp-cta__image { display: flex; flex: 1.5 0 0; justify-content: center; align-items: center; gap: 10px; border-radius: 4px; overflow: clip; min-width: 0; }
.bp-cta__frame { position: relative; flex: 1 0 0; aspect-ratio: 1.3125 / 1; overflow: clip; min-width: 0; }
.bp-cta__img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }

/* The arrow of the round buttons, as a mask (three strokes in a 19 x 19 box). */
:root { --bl-arrow-mask: url("data:image/svg+xml,%3Csvg display='block' role='presentation' viewBox='0 0 19 19' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M 0 0 L 16 0' fill='transparent' stroke='%23000' stroke-width='1' stroke-linecap='round' transform='translate(2 9.63)'/%3E%3Cpath d='M 0 6 C 0.167 4 1.6 0 6 0' fill='transparent' stroke='%23000' stroke-width='1' stroke-linecap='round' transform='translate(12 9.63)'/%3E%3Cpath d='M 6 6 C 4 5.833 0 4.4 0 0' fill='transparent' stroke='%23000' stroke-width='1' stroke-linecap='round' transform='translate(12 3.63)'/%3E%3C/svg%3E"); }

/* ---- Pointer states (tablet width and up; none on phones) ---------------------------- */
.bl-btn__helper { display: none; position: absolute; left: 32px; top: 50%; transform: translateY(-50%); opacity: 0; pointer-events: none; justify-content: center; align-items: center; gap: 10px; }
.bp-more__desc { display: none; max-width: 350px; flex-direction: column; justify-content: flex-start; white-space: pre-wrap; overflow: clip; word-break: break-word; }
.bp-more__desc-text { margin: 0; font-family: var(--sans); font-size: 12.8px; line-height: 17.92px; color: rgba(252,250,245,0.9); text-wrap: balance; text-align: left; }
@media (min-width: 810px) {
  .bl-btn__text, .bp-cta__primary-text { transition: transform 0.3s ease; }
  .bl-arrow, .bp-cta__primary-arrow { transition: left 0.3s ease; }
  .bp-cta__primary { transition: background-color 0.3s ease; }
  .bl-btn:hover .bl-btn__text, .bp-cta__primary:hover .bp-cta__primary-text { transform: translateX(-16px); }
  .bl-btn:hover .bl-btn__helper, .bp-cta__primary:hover .bl-btn__helper { display: flex; }
  .bl-btn:hover .bl-arrow, .bp-cta__primary:hover .bp-cta__primary-arrow { left: calc(100% - 35px); }
  .bp-cta__primary:hover { background: var(--gold-deep); }
  .bp-cta__primary:hover .bl-btn__label { color: #fff; }
  .bp-cta__primary:hover .bp-cta__primary-arrow { background: #fff; }
  .bp-cta__secondary:hover { filter: brightness(1.35); }
  .bp-more__bg { transition: transform 0.3s ease; }
  .bp-more__dark-bottom { transition: background-color 0.3s ease; }
  .bp-more__arrow { transition: background-color 0.3s ease; }
  .bp-more__card:hover .bp-more__bg { transform: scale(1.1); }
  .bp-more__card:hover .bp-more__dark-bottom { background: rgba(0,0,0,0.7); }
  .bp-more__card:hover .bp-more__desc { display: flex; }
  .bp-more__card:hover .bp-more__arrow { background: var(--gold); }
}

/* ================================ TABLET: 810 to 1199 px ================================== */
@media (max-width: 1199.98px) {
  .bl-h1 { font-size: 52px; line-height: 52px; letter-spacing: -2.08px; }
  .bl-h2 { font-size: 40px; line-height: 44px; letter-spacing: -1.6px; }
  .bl-h3 { font-size: 24.8px; line-height: 29.76px; letter-spacing: -0.992px; }
  .bl-top__bg { padding: 160px 48px 64px; }
  .bl-top__content { gap: 48px; }
  .bl-list { padding: 0 48px 120px; }
  .bl-list__inner { display: grid; grid-template-columns: repeat(2, minmax(50px, 1fr)); grid-auto-rows: minmax(0, 1fr); justify-content: center; align-items: normal; gap: 128px 64px; }
  .bl-item { align-self: start; }
  .bl-divider { display: none; }
  .bl-card { flex-direction: column; gap: 24px; }
  .bl-card__media { flex: 0 0 auto; width: 100%; }
  .bl-card__text { flex: 0 0 auto; align-self: auto; justify-content: center; gap: 24px; width: 100%; }
  .bl-card__top { flex-direction: column; gap: 24px; justify-content: center; }
  .bl-card__title { flex: 0 0 auto; }
  .bl-card__meta { flex: 0 0 auto; align-items: flex-start; gap: 12px; width: 100%; }
  .bl-card__bottom { flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 24px; }
  .bl-excerpt { flex: 0 0 auto; width: 100%; }
  .bp-hero__content { gap: 48px; }
  .bp-main { padding: 100px 48px 120px; }
  .bp-cta { padding: 0 48px 120px; }
  .bp-more__badge .bl-h3, .bp-more__title .bl-h3 { font-size: 24.8px; line-height: 29.76px; letter-spacing: -0.992px; }
}

/* ================================== PHONE: below 810 px =================================== */
@media (max-width: 809.98px) {
  .bl-h1 { font-size: 40px; line-height: 40px; letter-spacing: -1.6px; }
  .bl-h2 { font-size: 32px; line-height: 35.2px; letter-spacing: -1.28px; }
  .bl-h3 { font-size: 22.4px; line-height: 26.88px; letter-spacing: -0.896px; }
  .bl-h3--fr { font-size: 27.2px; line-height: 31.28px; letter-spacing: -1.088px; text-align: start; }
  .bl-p { font-size: 14.4px; line-height: 20.16px; }
  .bl-btn__in { padding: 12px 16px; }
  .bl-arrow { position: relative; top: auto; left: auto; width: 16px; height: 16px; transform: none; }
  .bl-top__bg { padding: 140px 24px 32px; }
  .bl-top__content { flex-direction: column; justify-content: center; align-items: flex-end; gap: 24px; }
  .bl-top__title { flex: 0 0 auto; width: 100%; }
  .bl-list { padding: 0 24px 80px; }
  .bl-list__inner { display: flex; gap: 64px; align-items: center; }
  .bl-item { align-self: auto; }
  .bl-divider { display: block; }
  .bp-hero__bg { flex: 0 0 auto; width: 100%; height: 650px; padding: 160px 48px 36px; }
  .bp-hero__content { flex-direction: column; justify-content: center; align-items: flex-end; gap: 16px; }
  .bp-hero__title { flex: 0 0 auto; width: 100%; }
  .bp-hero__lead { flex: 0 0 auto; width: 100%; }
  .bp-hero__darken { background-image: linear-gradient(rgba(0,0,0,0) 40%, rgba(0,0,0,0.15) 50%, rgba(0,0,0,0.6) 70%, rgba(0,0,0,0.8) 100%); }
  .bp-main { padding: 80px 24px; }
  .bp-main__content { gap: 80px; }
  .bp-main__split { flex-direction: column; gap: 64px; }
  .bp-side { position: relative; top: auto; flex: 0 0 auto; width: 100%; }
  .bp-share { gap: 16px; }
  .bp-article { flex: 0 0 auto; width: 100%; }
  .bp-more__head { flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 24px; }
  .bp-more__lead { flex: 0 0 auto; }
  .bp-more__cards { flex-direction: column; justify-content: flex-start; gap: 24px; }
  .bp-more__cell { flex: 0 0 auto; width: 100%; }
  .bp-more__badge .bl-h3, .bp-more__title .bl-h3 { font-size: 27.2px; line-height: 31.28px; letter-spacing: -1.088px; }
  .bp-cta { padding: 0 24px 80px; }
  .bp-cta__grid { flex-direction: column; gap: 24px; }
  .bp-cta__left { flex: 0 0 auto; order: 1; width: 100%; }
  .bp-cta__text { gap: 12px; }
  .bp-cta__image { flex: 0 0 auto; width: 100%; }
  .bp-cta__img { border-radius: 4px; }
  .bp-cta__primary-in { padding: 12px 16px; }
  .bp-cta__primary-arrow { position: relative; top: auto; left: auto; width: 16px; transform: none; }
  .bp-cta__secondary { padding: 12px 16px; }
}

/* ============================ Languages ====================================================== */
/* The typefaces, letter spacing and line heights of fa, hi, pa and zh come from the chrome stylesheet
   (families/_chrome/style.css, keyed on the root element's lang and dir attributes). Only the alignment of
   this family's own classes is set here: Farsi blocks are flush right. */
:root[dir="rtl"] .bl-h1, :root[dir="rtl"] .bl-h2, :root[dir="rtl"] .bl-h3, :root[dir="rtl"] .bl-p, :root[dir="rtl"] .bp-more__desc-text { text-align: right; }
:root[dir="rtl"] .bp-cta__tel a { direction: ltr; unicode-bidi: isolate; }

/* ---- scroll reveals: timing on top of the chrome's data-reveal="fade" ---------------------------------------------------- */
/* Same easing as the chrome's fade, opacity only, with a different duration: .48 s for a plain block and .74 s for
   photo cards (the chrome's default is .5 s). Specificity is raised so this wins whichever sheet loads last. */
html.js:root [data-reveal="fade"].is-in { transition-duration: .48s; }
html.js:root [data-reveal][data-reveal-slow].is-in { transition-duration: .74s; }
