/* Opt-in composition for the refined, Elementor-editable Home sections.
 * The class travels with saved sections; existing pages remain unchanged. */
.elementor .e-con.if-home-refined {
  --if-type-section: clamp(2.15rem, 3.6vw, 3.5rem);
  --ifx-type-section: var(--if-type-section);
  --if-type-card: clamp(1.4rem, 1.8vw, 1.8rem);
  --ifx-type-card: var(--if-type-card);
  --if-section-space: clamp(4rem, 6vw, 6rem);
  --if-card-radius: 1.25rem;
  --if-panel-radius: 1.5rem;
  --padding-top: var(--if-section-space);
  --padding-bottom: var(--if-section-space);
  padding-block: var(--if-section-space);
}
.elementor .if-home-refined :is(h2.elementor-heading-title, .ifx-query-section__header h2, .ifx-expert-spotlight__heading, .ifx-faq__header h2) {
  max-width: 24ch;
  font-size: var(--if-type-section);
  font-weight: 540;
  letter-spacing: -0.05em;
  line-height: 1.06;
  text-wrap: balance;
}
.elementor .if-home-refined :is(.ifx-query-section__header, .if-home-process__header) { margin-bottom: 2.5rem; }
.elementor .if-home-refined :is(.ifx-query-section__intro, .if-home-process__intro, .if-home-split__intro) { max-width: 42rem; }
.elementor .if-home-refined .if-eyebrow { margin-bottom: 1.15rem; }
.elementor .if-home-refined :is(.ifx-eyebrow, .if-eyebrow .elementor-heading-title) { font-size: 0.75rem; letter-spacing: 0.1em; line-height: 1.5; }
.elementor .if-home-refined :is(.ifx-button, .elementor-button, .ifx-card__link) { box-shadow: none; }
.elementor .if-home-refined :is(a, button):focus-visible { outline: 2px solid var(--if-violet); outline-offset: 5px; }
.elementor .if-home-refined :is(.ifx-hero, .ifx-testimonial-card--dark, .if-home-region--uk, .if-home-consultation__promise) :is(a, button):focus-visible,
.elementor .if-home-refined.if-home-services .ifx-card:first-child a:focus-visible { outline-color: var(--if-lilac); }

/* A direct proposition, a primary action and one restrained proof point. */
.elementor .e-con.if-home-refined.if-home-hero { --padding-top: 0; --padding-bottom: 0; padding: 0; }
.elementor .elementor-element.e-con.if-home-refined.if-home-hero .ifx-hero {
  min-height: clamp(43rem, 85svh, 54rem);
  padding-top: clamp(11rem, 15vw, 15rem);
  padding-bottom: clamp(4rem, 6vw, 6rem);
  grid-template-columns: minmax(0, 1fr) minmax(16rem, 20rem);
  align-items: center;
  gap: clamp(3rem, 6vw, 6rem);
}
.elementor .if-home-refined .ifx-hero__content { width: 100%; max-width: 58rem; }
.elementor .if-home-refined .ifx-hero__title { max-width: 17ch; margin: 1.25rem 0 0; font-size: clamp(3.25rem, 6.1vw, 6.5rem); line-height: 1.01; letter-spacing: -0.055em; }
.elementor .if-home-refined .ifx-hero__title > em { max-width: none; font-weight: 450; }
.elementor .if-home-refined .ifx-hero__description { max-width: 39rem; margin-top: 1.8rem; font-size: 1.125rem; line-height: 1.65; }
.elementor .if-home-refined .ifx-hero__actions { margin-top: 2rem; gap: 0.85rem; }
.elementor .if-home-refined .ifx-hero__actions .ifx-button--primary { color: var(--if-ink); background: var(--if-lilac); border-color: var(--if-lilac); }
.elementor .if-home-refined .ifx-hero__actions .ifx-button--primary:is(:hover, :focus-visible) { color: var(--if-ink); background: #fff; border-color: #fff; }
.elementor .if-home-refined .ifx-hero__actions .ifx-button--text { color: #fff; border-color: rgba(255,255,255,.45); }
.elementor .if-home-refined .ifx-hero__actions .ifx-button--text:is(:hover, :focus-visible) { color: var(--if-ink); background: #fff; }
.elementor .if-home-refined .ifx-hero__proof { width: 100%; padding: 2rem; border-radius: 1.25rem; background: rgba(255,255,255,.07); box-shadow: none; backdrop-filter: blur(12px); }
.elementor .if-home-refined .ifx-hero__proof-value { font-family: inherit; font-size: clamp(3.5rem, 4.5vw, 4.5rem); font-weight: 550; letter-spacing: -.06em; }
.elementor .if-home-refined .ifx-hero__proof-eyebrow { font-size: .7rem; letter-spacing: .08em; }
.elementor .if-home-refined .ifx-hero__proof-note { padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.2); font-family: inherit; font-size: .85rem; font-weight: 400; letter-spacing: 0; color: rgba(255,255,255,.72); }
.elementor .if-home-refined .ifx-hero__trails { opacity: .38; }

/* Compact supporting strip. */
.elementor .e-con.if-home-refined.if-home-trust { padding-block: 1.5rem; --padding-top: 1.5rem; --padding-bottom: 1.5rem; }
.elementor .if-home-refined .if-home-trust__intro .elementor-heading-title { max-width: 20ch; font-size: 1rem; line-height: 1.4; }
.elementor .if-home-refined .if-home-trust__item strong { font-size: .7rem; }
.elementor .if-home-refined .if-home-trust__item span { font-size: .82rem; }

/* Proof is legible evidence, with an image alongside—not nested floating cards. */
.elementor .if-home-refined .e-con.if-home-proof__inner { gap: clamp(2rem, 5vw, 4.5rem); }
.elementor .if-home-refined .e-con.if-home-proof__media { min-height: 29rem; border: 0; }
.elementor .if-home-refined .e-con.if-home-proof__metrics { min-height: 0; border: 0; border-radius: 0; background: transparent; }
.elementor .if-home-refined .if-home-proof__metrics .ifx-metric-stage { padding: 1rem 0; min-height: 0; overflow: visible; border: 0; box-shadow: none; }
.elementor .if-home-refined .if-home-proof__metrics .ifx-metric-stage__header h2 { max-width: 19ch; font-size: var(--if-type-section); line-height: 1.06; }
.elementor .if-home-refined .if-home-proof__metrics .ifx-metric-stage__proof-grid { margin-top: 2rem; gap: 0 1.75rem; }
.elementor .if-home-refined .if-home-proof__metrics .ifx-metric-stage__proof-card { padding: 1.4rem 0; border: 0; border-top: 1px solid var(--if-line); border-radius: 0; background: transparent; box-shadow: none; justify-content: start; }
.elementor .if-home-refined .if-home-proof__metrics .ifx-metric-stage__value { font-family: inherit; font-size: clamp(2.5rem, 3.3vw, 3.3rem); font-weight: 550; letter-spacing: -.06em; }
.elementor .if-home-refined .if-home-proof__metrics .ifx-metric-stage__label { margin-top: .65rem; font-size: .9rem; font-weight: 550; line-height: 1.45; }
.elementor .if-home-refined .if-home-proof__metrics .ifx-metric-stage__context { font-size: .8rem; line-height: 1.5; }
.elementor .if-home-refined .if-home-proof__caption-title .elementor-heading-title { max-width: 20ch; font-size: 1.75rem; line-height: 1.1; }

/* An even services grid with intentional emphasis on the core R&D service. */
.elementor .if-home-refined.if-home-services .ifx-card-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.1rem; }
.elementor .if-home-refined.if-home-services .ifx-card { grid-column: auto; min-height: 18.5rem; border-radius: 1.25rem; background: #fff; box-shadow: none; }
.elementor .if-home-refined.if-home-services .ifx-card__body { min-height: 0; padding: clamp(1.5rem,2.4vw,2.25rem); }
.elementor .if-home-refined.if-home-services .ifx-card__title { max-width: 25ch; font-size: 1.65rem; line-height: 1.12; }
.elementor .if-home-refined.if-home-services .ifx-card__excerpt { margin: 1rem 0 1.5rem; font-size: .95rem; line-height: 1.6; }
.elementor .if-home-refined.if-home-services .ifx-card a.ifx-card__link { align-self: flex-start; min-height: 2.75rem; padding: .65rem 0; border: 0; border-radius: 0; font-size: .75rem; color: var(--if-indigo); background: transparent; gap: .8rem; }
.elementor .if-home-refined.if-home-services .ifx-card a.ifx-card__link:is(:hover,:focus-visible) { color: var(--if-violet); text-decoration: underline; text-underline-offset: .3em; }
.elementor .if-home-refined.if-home-services .ifx-card:first-child { --ifx-card-text: #fff; --ifx-card-bg: var(--if-indigo); color: #fff; border-color: var(--if-indigo); background: linear-gradient(140deg,var(--if-deep),var(--if-indigo)); }
.elementor .if-home-refined.if-home-services .ifx-card:first-child :is(.ifx-card__title,.ifx-card__title a,.ifx-card__link) { color: #fff; }
.elementor .if-home-refined.if-home-services .ifx-card:first-child .ifx-card__excerpt { color: rgba(255,255,255,.78); }
.elementor .if-home-refined.if-home-services .ifx-card:first-child .ifx-card__link:is(:hover,:focus-visible) { color: var(--if-lilac); }
.elementor .if-home-refined.if-home-services .ifx-card:is(:hover,:focus-within) { border-color: var(--if-violet); box-shadow: 0 12px 30px rgba(19,13,28,.06); }

/* Larger, authentic Expert portrait; profile information remains open below it. */
.elementor .if-home-refined .ifx-expert-spotlight__inner { grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: clamp(2.5rem,6vw,6rem); align-items: center; }
.elementor .if-home-refined .ifx-expert-spotlight__profile { padding: 0; min-height: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; overflow: visible; color: var(--if-ink); }
.elementor .if-home-refined .ifx-expert-spotlight__profile::after { display: none; }
.elementor .if-home-refined .ifx-expert-spotlight__portrait { width: 100%; aspect-ratio: 1.35; border-radius: .75rem; }
.elementor .if-home-refined .ifx-expert-spotlight__portrait img { object-position: center 22%; }
.elementor .if-home-refined .ifx-expert-spotlight__credentials { top: .8rem; right: .8rem; max-width: 55%; padding: .7rem; border-radius: .4rem; background: rgba(37,32,70,.94); }
.elementor .if-home-refined .ifx-expert-spotlight__credential img { max-height: 2rem; max-width: 5.5rem; }
.elementor .if-home-refined .ifx-expert-spotlight__identity { margin-top: 1.2rem; }
.elementor .if-home-refined .ifx-expert-spotlight__name { color: var(--if-ink); font-size: 1.65rem; line-height: 1.15; }
.elementor .if-home-refined .ifx-expert-spotlight__role { color: var(--if-indigo); font-size: .95rem; }
.elementor .if-home-refined .ifx-expert-spotlight__proof-points { margin-top: 1rem; padding-top: 1rem; border-color: var(--if-line); gap: .4rem; }
.elementor .if-home-refined .ifx-expert-spotlight__proof-points li { color: var(--if-muted); font-weight: 400; font-size: .83rem; }
.elementor .if-home-refined .ifx-expert-spotlight__proof-points li::before { color: var(--if-violet); }
.elementor .if-home-refined .ifx-expert-spotlight__cta { color: var(--if-indigo); border: 0; padding: .5rem 0; font-size: .75rem; margin-top: 1rem; background: transparent; }
.elementor .if-home-refined .ifx-expert-spotlight__cta:is(:hover,:focus-visible) { color: var(--if-violet); background: transparent; text-decoration: underline; text-underline-offset: .3em; }
.elementor .if-home-refined .ifx-expert-spotlight__body { margin-top: 1.5rem; font-size: 1.05rem; }
.elementor .if-home-refined .ifx-expert-spotlight__assurances { margin-top: 2rem; }
.elementor .if-home-refined .ifx-expert-spotlight__assurance { padding-block: 1rem; }
.elementor .if-home-refined .ifx-expert-spotlight__assurance h3 { font-size: .95rem; }
.elementor .if-home-refined .e-con.if-home-expert__inner { --gap: 2.5rem; gap: 2.5rem; }

/* The sector image and useful deep links now live in one focused section. */
.elementor .if-home-refined .e-con.if-home-split__inner { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(2.5rem,5vw,5rem); align-items: stretch; }
.elementor .if-home-refined .e-con.if-home-split__media { min-height: 30rem; border-radius: 1.25rem; }
.elementor .if-home-refined .e-con.if-home-split__copy { padding: 0; --gap: 1.25rem; gap: 1.25rem; justify-content: center; }
.elementor .if-home-refined .if-home-split__title .elementor-heading-title { max-width: 23ch; }
.elementor .if-home-refined .if-home-split__intro p { margin: 0; }
.elementor .if-home-refined .if-home-sector-navigation { width: 100%; }
.if-home-refined .if-home-sector-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 1.5rem; list-style: none; padding: 0; margin: .5rem 0; }
.elementor .if-home-refined .if-home-sector-links a { display: flex; gap: .75rem; justify-content: space-between; align-items: center; min-height: 3.3rem; padding: .75rem 0; border-bottom: 1px solid var(--if-line); color: var(--if-indigo); font-size: .95rem; font-weight: 500; text-decoration: none; }
.elementor .if-home-refined .if-home-sector-links a:is(:hover,:focus-visible) { color: var(--if-violet); }
.if-home-refined .if-home-sector-links .if-icon { font-size: 1rem; flex: none; transition: transform 180ms ease; }
.if-home-refined .if-home-sector-links a:hover .if-icon { transform: translateX(.2rem); }

/* Readable client evidence without oversized quotes and internal empty space. */
.elementor .if-home-refined .ifx-testimonial-card { min-height: 0; padding: 2rem; gap: 1.5rem; border-radius: 1.25rem; }
.elementor .if-home-refined .ifx-testimonial-card__quote { font-size: clamp(1.4rem,2.1vw,2rem); line-height: 1.22; letter-spacing: -.035em; }
.elementor .if-home-refined .ifx-testimonial-card__logo { width: 8.5rem; max-width: 100%; height: 3.2rem; }
.elementor .if-home-refined .ifx-testimonial-card__logo img { object-fit: contain; }
.elementor .if-home-refined .ifx-testimonial-card__review { margin: 0; }
.elementor .if-home-refined .ifx-testimonial-card__rating { margin-top: .4rem; }
.elementor .if-home-refined .ifx-testimonial-card__attribution { margin-top: auto; padding-top: 1.3rem; }

/* Simple process steps, with the number as an aid—not a decoration. */
.elementor .if-home-refined .e-con.if-home-process__steps { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 1.5rem; border: 0; border-radius: 0; background: transparent; overflow: visible; }
.elementor .if-home-refined .e-con.if-home-process__step { min-height: 0; width: auto; padding: 1.5rem 0 0; border: 0; border-top: 1px solid var(--if-line); border-radius: 0; background: transparent; box-shadow: none; justify-content: flex-start; --gap: .8rem; gap: .8rem; }
.elementor .if-home-refined .if-home-process__number .elementor-heading-title { font-size: .85rem; font-family: Montserrat,Arial,sans-serif; letter-spacing: .06em; color: var(--if-violet); }
.elementor .if-home-refined .if-home-process__step h3.elementor-heading-title { min-height: 2.4em; font-size: 1.3rem; line-height: 1.2; color: var(--if-ink); }
.elementor .if-home-refined .if-home-process__step .elementor-widget-text-editor { color: var(--if-muted); }
.elementor .if-home-refined .if-home-process__step p { margin: 0; font-size: .9rem; }
.elementor .if-home-refined .e-con.if-home-process__inner { --gap: 2.25rem; gap: 2.25rem; }
.elementor .if-home-refined .if-home-process__header { margin-bottom: 0; }
.elementor .if-home-refined .e-con.if-home-dashboard { min-height: 0; padding: clamp(1.5rem,3vw,2.5rem); border-radius: 1.25rem; box-shadow: 0 15px 45px rgba(19,13,28,.08); }
.elementor .if-home-refined .if-home-securd__title .elementor-heading-title { max-width: 19ch; }

/* Market choices—no repeated service manifesto above them. */
.elementor .if-home-refined.if-home-editorial::before,
.elementor .if-home-refined.if-home-editorial::after { display: none; }
.elementor .if-home-refined .e-con.if-home-editorial__inner { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.2rem 4rem; }
.elementor .if-home-refined .if-home-editorial__eyebrow { grid-column: 1; margin: 0; }
.elementor .if-home-refined .if-home-editorial__manifesto { grid-column: 1; grid-row: 2; width: auto; max-width: none; }
.elementor .if-home-refined .if-home-editorial__intro { grid-column: 2; grid-row: 2; margin: 0; align-self: center; }
.elementor .if-home-refined .e-con.if-home-regions { grid-column: 1 / -1; margin-top: 1.5rem; --gap: 1.5rem; gap: 1.5rem; }
.elementor .if-home-refined .e-con.if-home-region { min-height: 0; padding: 2rem; border-radius: 1.25rem; --gap: .9rem; gap: .9rem; }
.elementor .if-home-refined .if-home-region__flag { width: 2rem; height: 2rem; }
.elementor .if-home-refined .if-home-region__flag img { width: 2rem; height: 2rem; }
.elementor .if-home-refined .if-home-region h3 { max-width: none; font-size: 1.65rem; line-height: 1.15; }
.elementor .if-home-refined .if-home-region .elementor-widget-text-editor p { margin: 0; font-size: .95rem; }

/* Three editorial cards, with room for real article titles. */
.elementor .if-home-refined.if-home-insights .ifx-card { --ifx-card-bg: #fff; --ifx-card-text: var(--if-ink); min-height: 22rem; border-radius: 1.25rem; background: #fff; color: var(--if-ink); box-shadow: none; }
.elementor .if-home-refined.if-home-insights .ifx-card__title { max-width: none; font-size: 1.5rem; line-height: 1.2; }
.elementor .if-home-refined.if-home-insights .ifx-card__meta,
.elementor .if-home-refined.if-home-insights .ifx-card__date { font-size: .7rem; }
.elementor .if-home-refined.if-home-insights .ifx-card__body { padding: 1.75rem; }
.elementor .if-home-refined.if-home-insights .ifx-card__excerpt { font-size: .9rem; }
.elementor .if-home-refined.if-home-insights a.ifx-card__link { align-self: flex-start; min-height: 2.75rem; padding: .65rem 0; border: 0; border-radius: 0; color: var(--if-indigo); background: transparent; font-size: .75rem; }
.elementor .if-home-refined.if-home-insights a.ifx-card__link:is(:hover,:focus-visible) { color: var(--if-violet); text-decoration: underline; text-underline-offset: .3em; }
.elementor .if-home-refined .e-con.if-home-insights__inner { --gap: 2.5rem; gap: 2.5rem; }
.elementor .if-home-refined .ifx-faq { gap: clamp(2.5rem,6vw,6rem); }
.elementor .if-home-refined .ifx-faq__intro { margin-top: 1.3rem; }

/* Same calm form hierarchy as the refined Contact pages. */
.elementor .if-home-refined .e-con.if-home-consultation__inner { --align-items: flex-start; align-items: flex-start; --gap: clamp(2.5rem,6vw,6rem); gap: clamp(2.5rem,6vw,6rem); }
.elementor .if-home-refined .if-home-consultation__promise { padding-top: 1.5rem; }
.elementor .if-home-refined .if-home-consultation__title .elementor-heading-title { max-width: 14ch; font-size: clamp(2.5rem,4vw,4rem); line-height: 1.05; }
.elementor .if-home-refined .ifx-form-shell { padding: clamp(1.5rem,3vw,3rem); border-radius: 1.25rem; box-shadow: none; }
.elementor .if-home-refined .ifx-form-shell__header { margin-bottom: 2rem; }
.elementor .if-home-refined .ifx-form-shell__intro { margin-top: 1rem; font-size: 1rem; }
.elementor .if-home-refined .ifx-field textarea { height: 7rem; min-height: 7rem; }
.elementor .if-home-refined .ifx-field:has(input[name="company"]) { grid-column: 1 / -1; }
.elementor .if-home-refined :is(.ifx-field__error,.ifx-form__status):empty { min-height: 0; margin: 0; }
.elementor .if-home-refined .ifx-field__error:empty { line-height: 0; }
/* The theme's document scroll-padding already clears the sticky header. */
.if-home-refined:is(#consultation, #services) { scroll-margin-top: 0; }
.home .if-site-footer a.if-footer-region { color: #fff; }
.home .if-site-footer a.if-footer-region:is(:hover, :focus-visible) { color: var(--if-lilac); }

@media (max-width: 1100px) {
  .elementor .elementor-element.e-con.if-home-refined.if-home-hero .ifx-hero { grid-template-columns: minmax(0,1fr) 16rem; gap: 2rem; min-height: 40rem; }
  .elementor .if-home-refined .ifx-hero__title { font-size: clamp(3rem,6vw,4.5rem); }
  .elementor .if-home-refined .ifx-hero__proof { padding: 1.5rem; }
  .elementor .if-home-refined.if-home-services .ifx-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .elementor .if-home-refined .e-con.if-home-process__steps { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 767px) {
  .elementor .if-home-refined :is(.elementor-button, .ifx-button) { max-width: 100%; min-width: 0; padding: .85rem 1rem; font-size: .75rem; white-space: normal; }
  .elementor .if-home-refined .elementor-button-content-wrapper { min-width: 0; }
  .elementor .if-home-refined .elementor-button::after { flex: none; }
  .elementor .elementor-element.e-con.if-home-refined.if-home-hero .ifx-hero { min-height: 0; padding-top: 8.5rem; padding-bottom: 3rem; grid-template-columns: minmax(0,1fr); gap: 2.5rem; }
  .elementor .if-home-refined .ifx-hero__title { font-size: clamp(2.45rem,10vw,4rem); max-width: none; }
  .elementor .if-home-refined .ifx-hero__description { font-size: 1rem; margin-top: 1.5rem; }
  .elementor .if-home-refined .ifx-hero__actions { display: flex; flex-wrap: wrap; margin-top: 1.5rem; }
  .elementor .if-home-refined .ifx-hero__actions .ifx-button { min-width: 0; width: auto; padding: .85rem 1rem; font-size: .73rem; }
  .elementor .if-home-refined .ifx-hero__proof { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .75rem 1.25rem; padding: 1.25rem; max-width: none; }
  .elementor .if-home-refined .ifx-hero__proof-eyebrow { grid-column: 1 / -1; }
  .elementor .if-home-refined .ifx-hero__proof-value { margin-top: 0 !important; font-size: 2.8rem; align-self: center; }
  .elementor .if-home-refined .ifx-hero__proof-label { margin-top: 0 !important; font-size: .85rem; align-self: center; }
  .elementor .if-home-refined .ifx-hero__proof-note { display: none; }
  .elementor .if-home-refined .e-con.if-home-trust__inner { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.1rem; }
  .elementor .if-home-refined .if-home-trust__intro { grid-column: 1 / -1; }
  .elementor .if-home-refined .if-home-trust__intro .elementor-heading-title { max-width: none; }
  .elementor .if-home-refined .if-home-trust__item { width: auto; padding: 0; border: 0; }
  .elementor .if-home-refined .e-con.if-home-proof__inner,
  .elementor .if-home-refined .e-con.if-home-split__inner,
  .elementor .if-home-refined .ifx-expert-spotlight__inner { grid-template-columns: minmax(0,1fr); gap: 2.25rem; }
  .elementor .if-home-refined .e-con.if-home-proof__media { min-height: 18rem; }
  .elementor .if-home-refined .e-con.if-home-proof__metrics { min-height: 0; }
  .elementor .if-home-refined .if-home-proof__metrics .ifx-metric-stage__proof-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 1rem; }
  .elementor .if-home-refined .if-home-proof__metrics .ifx-metric-stage__value { font-size: 2.5rem; }
  .elementor .if-home-refined.if-home-services .ifx-card-grid { grid-template-columns: minmax(0,1fr); }
  .elementor .if-home-refined.if-home-services .ifx-card { min-height: 0; }
  .elementor .if-home-refined.if-home-services .ifx-card__body { padding: 1.5rem; }
  .elementor .if-home-refined .ifx-expert-spotlight__inner { grid-template-areas: 'content' 'profile'; }
  .elementor .if-home-refined .ifx-expert-spotlight__portrait { aspect-ratio: 1.12; }
  .elementor .if-home-refined .ifx-expert-spotlight__assurances { grid-template-columns: minmax(0,1fr); }
  .elementor .if-home-refined .ifx-expert-spotlight__assurance:nth-child(even) { border-left: 0; padding-left: 0; }
  .elementor .if-home-refined .e-con.if-home-split__media { min-height: 19rem; }
  .elementor .if-home-refined .if-home-sector-links { grid-template-columns: minmax(0,1fr); }
  .elementor .if-home-refined .ifx-testimonial-card { padding: 1.5rem; gap: 1.25rem; }
  .elementor .if-home-refined .ifx-testimonial-card__quote { font-size: 1.5rem; }
  .elementor .if-home-refined .e-con.if-home-process__steps { grid-template-columns: minmax(0,1fr); gap: 1.5rem; }
  .elementor .if-home-refined .e-con.if-home-process__step { padding-top: 1.25rem; }
  .elementor .if-home-refined .if-home-process__step h3.elementor-heading-title { min-height: 0; }
  .elementor .if-home-refined .e-con.if-home-editorial__inner { grid-template-columns: minmax(0,1fr); gap: 1.25rem; }
  .elementor .if-home-refined .if-home-editorial__intro { grid-column: 1; grid-row: 3; }
  .elementor .if-home-refined .e-con.if-home-regions { margin-top: .5rem; }
  .elementor .if-home-refined .e-con.if-home-region { padding: 1.5rem; }
  .elementor .if-home-refined.if-home-insights .ifx-card { min-height: 0; }
  .elementor .if-home-refined .if-home-consultation__promise { padding-top: 0; }
}
