/* Homepage design ownership
 *
 * 1. Shared/base geometry and typography (top of file through the first
 *    endpoint snapshots).
 * 2. Figma endpoint snapshots: desktop (>= 1200px), mobile/touch, and the
 *    intermediate tablet corrections. These stay in source order because
 *    later blocks intentionally win the cascade.
 * 3. Section scenes and media geometry (premium, teams, recovery, evidence)
 *    are kept separate from CMS copy and interaction rules.
 * 4. Final stabilization blocks preserve the existing raster crop and copy
 *    contracts. Intermediate container behavior belongs in home-responsive.css.
 *
 * Main frames 67:10354 / 67:12855, prior hero frames 567:1790 / 567:1800,
 * PC hero revision 584:2725, checked against native version
 * 2397834723331450871 on 2026-09-11.
 * Loaded only on the homepage; CMS content and shared-page geometry stay intact.
 */

.iel-home .upper-profiles--women {
  position: relative;
}

.iel-home .upper-profiles--women > .upper-slider-controls {
  position: absolute;
  right: 0;
  top: -56px;
  margin: 0;
}

.iel-home .lower-review {
  background: #f8f8f8;
  border: 0;
  border-radius: 15px;
  min-height: 205.38px;
}

.iel-home .lower-review-source {
  font-family:
    Pretendard,
    -apple-system,
    BlinkMacSystemFont,
    'Segoe UI',
    sans-serif;
  font-size: 10px;
  font-style: normal;
  line-height: 1;
  letter-spacing: -0.1px;
}

.iel-home .lower-review-source-provider {
  font-weight: 800;
}

.iel-home .lower-review-source-label {
  font-weight: 500;
}

.iel-home .lower-review-source--google {
  color: #ffc8c8;
  background: #ff4646;
}

.iel-home .lower-review-source--naver {
  color: #bcff98;
  background: #4dba9b;
}

.iel-home .lower-review-controls {
  display: none;
}

/* Card styles live in case-study-card.css. */

@media (min-width: 768px) {
  .iel-home .upper-results {
    padding-bottom: 206px;
  }
}

@media (min-width: 768px) {
  .iel-home .upper-women > .upper-description {
    max-width: 872px;
  }
  .iel-home .upper-prosecutors {
    padding-top: 150px;
  }
  .iel-home .lower-cases {
    padding-bottom: 170px;
  }
}

@media (min-width: 1200px) {
  .iel-home .upper-evidence {
    margin-top: 224px;
  }
  .iel-home .upper-evidence-copy .upper-description {
    max-width: 540px;
  }
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-results {
    padding-top: 181px;
  }
  .iel-home .upper-result {
    margin-bottom: 69px;
  }
  .iel-home .upper-result:last-child {
    margin-bottom: 0;
  }
  .iel-home .upper-intro-grid {
    margin-top: 54px;
  }
  .iel-home .upper-profiles--women > .upper-slider-controls {
    display: flex;
  }
  .iel-home .upper-prosecutors .upper-profiles {
    margin-top: 32px;
  }
  .iel-home .upper-prosecutors {
    padding-top: 152px;
  }
  .iel-home .upper-evidence {
    margin-top: 171px;
  }
  .iel-home .upper-psychologists {
    padding-top: 181px;
  }
  .iel-home .lower-cases {
    padding-top: 100px;
    padding-bottom: 45px;
  }
  .iel-home .lower-process {
    padding-bottom: 116px;
  }
  .iel-home .lower-case-study-grid {
    row-gap: 21px;
  }
}

/* Card styles live in case-study-card.css. */

/* Card styles live in case-study-card.css. */

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .lower-reviews {
    padding-top: 142px;
  }
  .iel-home .lower-reviews h2 {
    font-size: 24px;
    line-height: 1;
  }
  .iel-home .lower-reviews .lower-intro {
    margin: 12px 0 36px;
  }
  .iel-home .lower-review-track {
    gap: 22px;
  }
  .iel-home .lower-review {
    flex-basis: 212.63px;
    min-height: 155.96px;
    border-radius: 11px;
  }
  .iel-home .lower-news {
    padding-top: 109px;
  }
  .iel-home .lower-news .lower-heading {
    margin-bottom: 64px;
  }
  .iel-home .lower-news h2 {
    font-size: 23px;
    line-height: 1.35;
    font-weight: 400;
  }
  .iel-home .lower-news .lower-card-track,
  .iel-home .lower-insights .lower-card-track {
    margin-left: -5px;
    width: calc(100% + 30px);
    gap: 12px;
  }
  .iel-home .lower-news .lower-editorial,
  .iel-home .lower-insights .lower-editorial {
    flex-basis: 325.58px;
    max-width: calc(100vw - 76px);
  }
  .iel-home .lower-editorial-image {
    height: 210.12px;
    border-radius: 30px;
  }
  .iel-home .lower-news .lower-editorial h3 {
    font-size: 16px;
    line-height: 1.5;
    margin: 10px 5px;
    letter-spacing: -0.16px;
  }
  .iel-home .lower-news .lower-editorial p {
    font-size: 13px;
    line-height: 1.7;
    margin-inline: 5px;
    -webkit-line-clamp: 3;
  }
  .iel-home .lower-news .lower-editorial time {
    font-size: 13px;
    line-height: 1.5;
    margin: 10px 5px 0;
  }
  .iel-home .lower-news .lower-more {
    margin-top: 39px;
  }
  .iel-home .lower-faq {
    min-height: 916px;
  }
}

/* September 10 latest Figma version 2397548386452854455 premium frames (584:49 / 584:2599), with copy nodes 584:2600–584:2603. */

@media (min-width: 1200px) {
  .iel-home .upper-premium {
    height: 1120.601px;
  }
  .iel-home .upper-premium .upper-background img {
    height: 970px;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: none;
    object-fit: cover;
  }
  .iel-home .upper-premium-copy {
    position: relative;
    z-index: 1;
    padding-top: 189.95px;
  }
  .iel-home .upper-premium-copy > p {
    max-width: 454.028px;
    margin: 34.03px auto 29.52px;
  }
  .iel-home .upper-premium-note {
    margin: 14.55px auto 0;
    padding-inline: 20px;
    text-align: center;
    color: #3b3b3b;
  }
}

@media (min-width: 1200px) {
  /* Figma 887:55 PC profile geometry. */
  .iel-home .upper-profiles--women .upper-profile,
  .iel-home .upper-profiles--prosecutors .upper-profile {
    box-sizing: border-box;
    height: auto;
    min-height: 633.033px;
    padding: 43.5165px 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
  }

  .iel-home .upper-profiles--women .upper-profile-photo,
  .iel-home .upper-profiles--prosecutors .upper-profile-photo {
    width: min(305px, 100%);
    max-width: 305px;
    height: 378px;
    margin: 0 auto 20px;
  }

  .iel-home .upper-profiles--women .upper-profile-copy,
  .iel-home .upper-profiles--prosecutors .upper-profile-copy {
    min-width: 0;
    padding-bottom: 20px;
    width: min(305px, 100%);
    margin-inline: auto;
  }

  .iel-home .upper-profiles--women .upper-profile-copy ul,
  .iel-home .upper-profiles--prosecutors .upper-profile-copy ul {
    overflow-wrap: anywhere;
    word-break: keep-all;
  }

  .iel-home .upper-profiles--women .upper-profile-more,
  .iel-home .upper-profiles--prosecutors .upper-profile-more {
    --detail-action-visual-right: calc((100% - 305px) / 2 - 12.94px);
    --detail-action-visual-bottom: 23.39px;
    right: calc((100% - 305px) / 2 - 12.94px);
    bottom: 23.39px;
    --detail-action-hit-size: 30.66px;
    --detail-action-circle-size: 30.66px;
    --detail-action-icon-width: 16px;
    --detail-action-icon-height: 15px;
  }

  .iel-home .upper-profiles--women .upper-profile-more::before,
  .iel-home .upper-profiles--prosecutors .upper-profile-more::before {
    background: #3b3b3b;
  }

  @media (hover: hover) and (pointer: fine) {
    .iel-home .upper-profiles--women .upper-profile-more:hover::before,
    .iel-home .upper-profiles--prosecutors .upper-profile-more:hover::before {
      background: #ff0000;
    }
  }
  .iel-home .upper-profiles--women .upper-profile-more:focus-visible::before,
  .iel-home .upper-profiles--prosecutors .upper-profile-more:focus-visible::before {
    background: #ff0000;
  }
}

@media (min-width: 1401px) {
  .iel-home .upper-profiles--women .upper-profile,
  .iel-home .upper-profiles--prosecutors .upper-profile {
    padding-inline: 44.9717px;
  }
}

.iel-home .upper-results {
  padding-top: 251px;
}

.iel-home .upper-result-image picture {
  display: block;
  width: 100%;
  height: 100%;
}

.iel-home .upper-result h3,
.iel-home .upper-profile h3,
.iel-home .upper-evidence-bio h3 {
  font-weight: 500;
}

.iel-home .upper-cost-question {
  font-weight: 400;
}

.iel-home .upper-details {
  background: #fff;
}

.iel-home .upper-number {
  font-weight: 600;
}

.iel-home .upper-profiles--prosecutors .upper-slider-controls,
.iel-home .upper-profiles--psychologists .upper-slider-controls {
  display: none;
}

.iel-home .upper-detail-marker {
  position: relative;
  background: #dedede;
  border-radius: 500px;
  overflow: hidden;
}

.iel-home .upper-detail-marker::after {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 33.03%;
  background: #000;
  border-radius: inherit;
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-details {
    background: #fff;
  }
  .iel-home .upper-profiles--women .upper-profile,
  .iel-home .upper-profiles--prosecutors .upper-profile {
    background: transparent;
  }
  .iel-home .upper-hero {
    height: 729px;
  }
  .iel-home .upper-premium {
    height: 749px;
  }
  .iel-home .upper-premium .upper-background img {
    height: 100%;
    width: 100%;
    position: static;
    transform: none;
    object-fit: cover;
  }
  .iel-home .upper-premium-copy {
    padding-top: 167.62px;
  }
  .iel-home .upper-premium h2 {
    font-size: 20px;
    line-height: 1.45;
  }
  .iel-home .upper-premium-copy > p {
    max-width: 351.336px;
    margin: 25.92px auto 20.13px;
  }
  .iel-home .upper-premium .upper-cost {
    width: 236.211px;
    height: 49.968px;
  }
  .iel-home .upper-premium-note {
    margin-top: 12px;
  }
  .iel-home .upper-results {
    padding-top: 204px;
  }
  .iel-home .upper-result-grid {
    margin-top: 19px;
  }
  .iel-home .upper-result-image {
    aspect-ratio: 362.69/274.46;
  }
  .iel-home .upper-result-image img {
    width: 100%;
    height: 100%;
    max-width: 100%;
    position: static;
    left: auto;
    top: auto;
    object-fit: cover;
  }
  .iel-home .upper-result > .upper-red {
    margin: 19px 0 5px 10px;
  }
  .iel-home .upper-result-stat {
    flex-direction: column;
    gap: 5px;
    margin-left: 10px;
  }
  .iel-home .upper-result h3 {
    font-size: 25px;
  }
  .iel-home .upper-result-stat small {
    display: block;
  }
  .iel-home .upper-result-description {
    margin: 5px 0 0 10px;
  }
  .iel-home .upper-result {
    margin-bottom: 101px;
  }
  .iel-home .upper-result:last-child {
    margin-bottom: 0;
  }
  .iel-home .upper-profiles--women > .upper-slider-controls {
    display: flex;
    position: static;
    margin-top: 25px;
  }
}

/* Case filters use the shared home-lower.css styles. */

@media (prefers-reduced-transparency: reduce) {
  .iel-home .upper-teams-canvas .upper-team-circle {
    background: rgb(255 249 243 / 93%);
    border-color: rgb(122 84 58 / 35%);
    box-shadow:
      inset 0 1px 0 rgb(255 255 255 / 85%),
      inset 0 -12px 24px rgb(123 80 46 / 6%);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
}

@media (prefers-contrast: more), (forced-colors: active) {
  .iel-home .upper-teams-canvas .upper-team-circle {
    background: Canvas;
    border: 2px solid CanvasText;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
}

/* Hero synchronization: native Figma latest 2397834723331450871,
 * PC 584:2725 and MO 584:2620. The PC 13:17 comparison contained only
 * team-layer edits; the current node geometry is still authoritative here. */

.iel-home .upper-hero {
  color: #2f1b07;
  text-align: left;
}

.iel-home .upper-hero .upper-background img {
  position: absolute;
  left: -53.79%;
  top: -120.87%;
  width: 153.79%;
  max-width: none;
  height: 220.87%;
  object-fit: cover;
}

.iel-home .upper-hero-copy {
  box-sizing: border-box;
  /* Keep the 1920px Figma frame exact, then scale the whole copy anchor
   * proportionally on wider desktop canvases so it does not look undersized. */
  width: min(clamp(550.953px, 28.6955vw, 826.43px), calc(100% - max(25px, 11.4274vw) - 50px));
  max-width: none;
  margin: 0 0 0 clamp(25px, 11.4274vw, 329.109px);
  /* The vertical anchor is relative to the raster area (918px at the
   * 1920px Figma frame), not to the 999px page boundary that includes nav. */
  padding: clamp(245.7px, calc(32.1403svh + 55.706px), 565.664px) 0 0;
  padding: clamp(245.7px, calc(32.1403dvh + 55.706px), 565.664px) 0 0;
  color: #2f1b07;
  text-shadow: none;
}

.iel-home .upper-hero-copy h1 {
  margin: 0;
  color: #2f1b07;
  font-size: clamp(36px, 1.875vw, 54px);
  font-weight: 500;
  line-height: 1.45;
}

.iel-home .upper-hero-description {
  max-width: 100%;
  margin-top: clamp(18.984px, 0.98875vw, 28.476px);
  color: #2f1b07;
}

.iel-home .upper-hero-description p {
  margin: 0;
  color: #2f1b07;
  font-size: clamp(18px, 0.9375vw, 27px);
  font-weight: 400;
  line-height: 1.8;
}

/* CMS copy is wrapped in its own span with Figma endpoint sizes. Let the
 * surrounding hero typography drive that span on wider desktop canvases. */

.iel-home .upper-hero-copy .iel-copy-hero-title,
.iel-home .upper-hero-copy .iel-copy-hero-lead,
.iel-home .upper-hero-copy .iel-copy-hero-detail,
.iel-home .upper-hero-copy .iel-copy-hero-brand {
  font-size: inherit;
  line-height: inherit;
}

.iel-home .upper-hero-description .upper-hero-brand {
  font-weight: 400;
}

.iel-home .upper-hero-description .upper-hero-detail {
  line-height: 1.8;
}

.iel-home .upper-hero-description p + p {
  margin-top: 0;
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-hero {
    height: 729px;
  }
  .iel-home .upper-hero .upper-background img {
    left: 0;
    top: -9.14%;
    width: 100%;
    max-width: none;
    height: 109.14%;
    object-fit: cover;
  }
  .iel-home .upper-hero-copy {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 174.106px 25px 0;
  }
  .iel-home .upper-hero-copy h1 {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.45;
  }
  .iel-home .upper-hero-description {
    max-width: 342px;
    margin-top: 18.371px;
  }
  .iel-home .upper-hero-description p {
    font-size: 14px;
    line-height: 1.8;
  }
  .iel-home .upper-hero-description p + p {
    margin-top: 0;
  }
}

/* Responsive stabilization overrides the legacy Figma crop only where it could distort raster media. */

.iel-home .upper-hero .upper-background img,
.iel-home .upper-premium .upper-background img,
.iel-home .lower-philosophy-image {
  object-fit: cover;
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-hero .upper-background img {
    left: 0;
    top: -9.14%;
    width: 100%;
    height: 109.14%;
    object-fit: cover;
  }
  .iel-home .upper-premium .upper-background img {
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    transform: none;
    object-fit: cover;
  }
  .iel-home .upper-hero-copy,
  .iel-home .upper-premium-copy {
    max-width: none;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-hero {
    height: 760px;
    background: #000;
  }
  .iel-home .upper-hero .upper-background img {
    left: 0;
    top: auto;
    bottom: 0;
    width: 100%;
    height: auto;
    object-fit: contain;
  }
  .iel-home .upper-hero-copy {
    width: calc(100% - 64px);
    padding-top: 250px;
  }
  .iel-home .upper-results {
    padding-top: 120px;
  }
  .iel-home .lower-cases {
    padding-top: 120px;
  }
}

/* Homepage carousel order/visibility mirrors the Figma rails: heading, controls,
 * then the data track. Shadow padding stays on the profile track itself. */

.iel-home .upper-intro > .upper-slider-controls {
  order: 1;
  margin: 25px 0 0;
}

.iel-home .upper-intro > .upper-intro-grid {
  order: 2;
}

.iel-home .upper-intro {
  display: flex;
  flex-direction: column;
}

.iel-home .upper-intro > h2 {
  order: 0;
}

.iel-home .upper-profiles > .upper-slider-controls {
  position: static;
  order: 0;
  margin: 0 0 25px;
}

.iel-home .upper-profiles {
  display: flex;
  flex-direction: column;
}

.iel-home .upper-profiles > .upper-profile-track {
  order: 1;
}

.iel-home .upper-profiles--women > .upper-slider-controls {
  display: flex;
}

.iel-home .upper-profiles--prosecutors > .upper-slider-controls,
.iel-home .upper-profiles--psychologists > .upper-slider-controls {
  display: none;
}

@media (min-width: 768px) {
  .iel-home .upper-profiles--women > .upper-slider-controls {
    position: absolute;
    right: 0;
    top: -56px;
    margin: 0;
  }
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-intro > .upper-slider-controls {
    display: flex;
    margin-top: 25px;
  }
  .iel-home .upper-profiles > .upper-slider-controls {
    display: flex;
    margin: 0 0 25px;
  }
  .iel-home .upper-profiles--women > .upper-slider-controls,
  .iel-home .upper-profiles--prosecutors > .upper-slider-controls,
  .iel-home .upper-profiles--psychologists > .upper-slider-controls {
    display: flex;
  }
}

/* Native Figma page geometry (2026-09-11 latest).
 * The browser's address/chrome area is not part of these measurements. In
 * the Figma PC frame, nav layer 699:861 occupies y=0..82.09 and the hero
 * image node 584:2725 occupies y=82.09..1000.47. The premium frame starts at
 * y=999.47, so the wrapper boundary and the image node height are kept as
 * separate values instead of treating 999px as the raster height. The
 * viewport rule below keeps that nav band while making the total first-screen
 * boundary follow the PC browser viewport.
 */

@media (min-width: 1200px) {
  .iel-home {
    --figma-pc-nav-band-height: 82.09px;
  }
}

@media (min-width: 1200px) {
  .iel-home .upper-hero {
    height: auto;
    min-height: max(0px, calc(100svh - var(--figma-pc-nav-band-height)));
    min-height: max(0px, calc(100dvh - var(--figma-pc-nav-band-height)));
    margin-bottom: var(--figma-pc-nav-band-height);
    overflow-x: clip;
    overflow-y: visible;
  }
  .iel-home .upper-hero > .upper-background {
    top: var(--figma-pc-nav-band-height);
    right: auto;
    bottom: calc(-1 * var(--figma-pc-nav-band-height));
    left: -11.406px;
    width: calc(100% + 22.813px);
    height: auto;
  }
  .iel-home .upper-hero .upper-background img {
    object-position: center bottom;
  }
  /* PC anchors from 584:64–584:162. */
  .iel-home .upper-results {
    padding-top: 231px;
  }
  .iel-home .upper-result-grid {
    margin-top: 38.336px;
  }
  .iel-home .upper-result > .upper-red {
    margin-top: 29.371px;
  }
  .iel-home .upper-result-stat {
    margin-top: 3px;
  }
  .iel-home .upper-result-description {
    margin-top: 15.394px;
  }
  .iel-home .upper-details {
    margin-top: 222.861px;
    padding-top: 0;
  }
  .iel-home .upper-detail-marker {
    margin-bottom: 251.711px;
  }
  .iel-home .upper-women .upper-number {
    margin-bottom: 20.977px;
  }
  .iel-home .upper-women > .upper-description {
    margin-top: 20.433px;
  }
  .iel-home .upper-women .upper-profiles {
    margin-top: 54.94px;
  }
  .iel-home .upper-prosecutors {
    padding-top: 174.671px;
  }
  .iel-home .upper-prosecutors .upper-number {
    margin-bottom: 20.24px;
  }
  .iel-home .upper-prosecutors > .upper-description {
    margin-top: 14.438px;
  }
  .iel-home .upper-prosecutors .upper-profiles {
    margin-top: 61.765px;
  }
}

/* MO anchors from 584:2620, 584:1844, 584:2714, and 584:2655. */

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-results {
    padding-top: 187.953px;
    padding-bottom: 0;
  }
  .iel-home .upper-result-grid {
    margin-top: 45.23px;
  }
  .iel-home .upper-result-image {
    width: calc(100% + 10.69px);
    margin-left: -5px;
    margin-right: -5.69px;
    aspect-ratio: 362.69 / 274.46;
  }
  .iel-home .upper-result > .upper-red {
    margin-top: 18.535px;
    margin-bottom: 4.703px;
    margin-left: 12.109px;
  }
  .iel-home .upper-result {
    margin-bottom: 73.2px;
  }
  .iel-home .upper-cost-question {
    margin-top: 42.25px;
  }
  .iel-home .upper-intro > .upper-slider-controls {
    height: 22.456px;
    min-height: 0;
    margin-top: 12.335px;
  }
  .iel-home .upper-intro-grid {
    margin-top: 26.763px;
  }
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-details {
    margin-top: 62.207px;
    padding-top: 31.164px;
  }
  .iel-home .upper-detail-marker {
    margin-bottom: 87.078px;
  }
  .iel-home .upper-number {
    margin-bottom: 11.734px;
  }
  .iel-home .upper-women > .upper-description {
    margin-top: 10.52px;
  }
  .iel-home .upper-women .upper-profiles {
    margin-top: 10.88px;
  }
  .iel-home .upper-women .upper-profiles > .upper-slider-controls {
    height: 22.456px;
    min-height: 0;
    margin-bottom: 28.015px;
  }
  .iel-home .upper-prosecutors {
    padding-top: 161.142px;
  }
  .iel-home .upper-prosecutors > .upper-description {
    margin-top: 10.727px;
  }
  .iel-home .upper-prosecutors .upper-profiles--prosecutors {
    margin-top: 11.734px;
  }
  .iel-home .upper-prosecutors .upper-profiles--prosecutors > .upper-slider-controls {
    height: 22.456px;
    min-height: 0;
    margin-bottom: 26.851px;
  }
  .iel-home .upper-profiles--psychologists .upper-profile-copy {
    padding-bottom: 11.465px;
  }
}

/* 2026-09-14 desktop sync for Figma node 923:11.
 * Real CMS media, copy, and interaction contracts stay in their existing
 * templates; this block only tightens the completed desktop frames. */

@media (min-width: 1200px) {
  /* Hero keeps the intentional code crop and responsive anchor. */
}

@media (min-width: 1200px) {
  .iel-home .upper-hero-description .upper-hero-brand {
    font-weight: 400;
  }
  .iel-home .upper-hero-description .upper-hero-detail {
    line-height: 1.8;
  }
  /* Premium: retain the code-owned raster crop while matching the Figma copy group. */
  .iel-home .upper-premium-copy {
    padding-top: 113px;
  }
  .iel-home .upper-premium-copy > p {
    max-width: 472px;
    margin: 32px auto 29px;
  }
  /* Outcomes */
  .iel-home .upper-results {
    padding-top: 215px;
    padding-bottom: 148.224px;
  }
  .iel-home .upper-result-grid {
    margin-top: 43px;
  }
  .iel-home .upper-result > .upper-red {
    margin: 19px 0 11px;
  }
  .iel-home .upper-result-stat {
    align-items: flex-start;
    flex-direction: column;
    gap: 11px;
    margin-top: 0;
  }
  .iel-home .upper-result h3 {
    font-weight: 500;
  }
  .iel-home .upper-result small {
    color: #adadad;
    font-size: 14px;
    font-weight: 600;
  }
  .iel-home .upper-result-description {
    line-height: 1.6;
    margin-top: 11px;
  }
  .iel-home .upper-result-description > .iel-design-copy {
    line-height: inherit;
  }
  .iel-home .upper-result-2 .upper-red {
    margin-bottom: 9px;
  }
  .iel-home .upper-result-2 .upper-result-stat {
    gap: 9px;
  }
  .iel-home .upper-result-2 .upper-result-description {
    margin-top: 9px;
  }
  .iel-home .upper-cost-question {
    height: 103.626px;
    margin-top: 43px;
  }
  /* Contact */
  .iel-home .upper-contact {
    box-sizing: border-box;
    height: 781px;
    padding: 208.61px 20px 0;
  }
  /* Case Studies */
  .iel-home .lower-cases {
    padding: 218.42px 0 110px;
  }
  .iel-home .lower-cases .lower-wrap {
    width: min(1268px, calc(100% - 64px));
  }
  .iel-home .lower-cases .lower-intro {
    max-width: 935.521px;
    margin: 16px 0 0;
  }
  .iel-home .lower-cases .lower-search {
    margin-top: 50px;
  }
  .iel-home .lower-cases .lower-case-study-grid {
    gap: 30px;
  }
  .iel-home .lower-cases .lower-more {
    margin-top: 103.6px;
  }
  /* Consultation Process */
  .iel-home .lower-process {
    box-sizing: border-box;
    padding: 263.246px 0;
  }
  .iel-home .lower-process .lower-narrow {
    width: min(942.24px, calc(100% - 64px));
  }
  .iel-home .lower-process h2 {
    margin-bottom: 80px;
  }
  .iel-home .lower-process .lower-steps details {
    padding: 0 0 50px;
  }
  .iel-home .lower-process .lower-steps details + details {
    padding-top: 50px;
  }
  .iel-home .lower-process .lower-steps summary {
    min-height: 29px;
    padding: 0;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.45;
  }
  .iel-home .lower-process .lower-steps summary .lower-step-chevron {
    width: 11.473px;
    height: 11.473px;
    margin-top: 8px;
  }
  .iel-home .lower-process .lower-step-body {
    padding: 50px 0 0;
  }
  .iel-home .lower-process .lower-step-body ul {
    margin-bottom: 50px;
  }
  .iel-home .lower-process .lower-cta {
    box-sizing: border-box;
    display: inline-flex;
    min-height: 48.508px;
    align-items: center;
  }
  /* Reviews: Figma is the source of truth for this completed section. */
  .iel-home .lower-reviews {
    box-sizing: border-box;
    min-height: 711px;
    padding: 192.5px 0 0;
    overflow: hidden;
  }
  .iel-home .lower-reviews .lower-wrap {
    width: min(1268px, calc(100% - 64px));
  }
  .iel-home .lower-reviews .lower-wrap > h2,
  .iel-home .lower-reviews .lower-wrap > .lower-intro {
    width: 421px;
    max-width: 100%;
  }
  .iel-home .lower-reviews .lower-wrap > h2 {
    font-size: 40px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.4px;
  }
  .iel-home .lower-reviews .lower-intro {
    margin: 12px 0 0;
    color: #3b3b3b;
    font-size: 18px;
    font-weight: 400;
    line-height: 2;
    text-align: center;
  }
  .iel-home .lower-review-track {
    gap: 20px;
    margin-top: 48px;
    padding-inline: 0;
    overflow-x: auto;
  }
  .iel-home .lower-review {
    box-sizing: border-box;
    display: flex;
    flex: 0 0 336px;
    min-width: 0;
    min-height: 190px;
    height: auto;
    flex-direction: column;
    gap: 5px;
    align-items: center;
    justify-content: center;
    padding: 10px;
    border: 0;
    border-radius: 30px;
    background: #f8f8f8;
    font-size: 14px;
    line-height: 1.8;
  }
  .iel-home .lower-review-source {
    display: flex;
    width: 273px;
    box-sizing: border-box;
    justify-content: flex-end;
    align-items: center;
    align-self: center;
    font-size: 10px;
    line-height: 1;
    letter-spacing: -0.1px;
  }
  .iel-home .lower-review-source-provider {
    font-weight: 800;
  }
  .iel-home .lower-review-source-label {
    margin-left: 2px;
    font-weight: 500;
  }
  .iel-home .lower-review-source--google,
  .iel-home .lower-review-source--naver {
    width: fit-content;
    min-height: 24px;
    padding: 6px 12px;
    border-radius: 30px;
    align-self: flex-end;
    margin-right: 21.5px;
  }
  .iel-home .lower-review-content {
    display: flex;
    width: 273px;
    min-width: 0;
    flex-direction: column;
    gap: 5px;
    align-items: stretch;
  }
  .iel-home .lower-review h3 {
    margin: 0;
    color: #323232;
    font-size: 13px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: -0.13px;
  }
  .iel-home .lower-review-text {
    min-height: 0;
    height: auto;
    margin: 0 !important;
    overflow: visible;
    color: #323232;
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: -0.14px;
  }
  .iel-home .lower-review-meta {
    margin: 0;
    color: #afafaf;
    font-size: 13px;
    line-height: 1.2;
    letter-spacing: -0.13px;
    overflow-wrap: anywhere;
  }
  /* Center News / More News */
  .iel-home .lower-news,
  .iel-home .lower-insights {
    overflow: hidden;
  }
  .iel-home .lower-news {
    min-height: 973px;
    padding: 98.922px 0 98.883px;
  }
  .iel-home .lower-insights {
    min-height: 973px;
    padding: 141.402px 0;
  }
  .iel-home .lower-news > .lower-wrap,
  .iel-home .lower-insights > .lower-wrap {
    width: min(1601px, calc(100% - 64px));
    margin-right: 0;
    margin-left: max(32px, calc((100% - 1268px) / 2));
  }
  .iel-home .lower-news > .lower-wrap {
    width: min(1597.514px, calc(100vw - max(32px, (100vw - 1268px) / 2)));
  }
  .iel-home .lower-news .lower-heading,
  .iel-home .lower-insights .lower-heading {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 30px;
    margin-bottom: 0;
  }
  .iel-home .lower-news .lower-heading > h2,
  .iel-home .lower-insights .lower-heading > h2 {
    flex: none;
    width: 100%;
    max-width: none;
    font-size: 36px;
    font-weight: 400;
    line-height: 1.45;
  }
  .iel-home .lower-news .lower-heading > h2 {
    width: min(1597.514px, 100%);
  }
  .iel-home .lower-insights .lower-heading > h2 {
    width: min(1076.748px, 100%);
  }
  .iel-home .lower-news .lower-controls,
  .iel-home .lower-insights .lower-controls {
    width: 1268px;
    max-width: 100%;
    justify-content: flex-end;
  }
  .iel-home .lower-news .lower-card-track,
  .iel-home .lower-insights .lower-card-track {
    width: calc(100vw - max(32px, (100vw - 1268px) / 2));
    gap: 20px;
    margin-top: 30px;
  }
  .iel-home .lower-news .lower-editorial,
  .iel-home .lower-insights .lower-editorial {
    flex: 0 0 410.352px;
    max-width: none;
  }
  .iel-home .lower-news .editorial-image-frame,
  .iel-home .lower-insights .editorial-image-frame,
  .iel-home .lower-news .lower-insight-cover,
  .iel-home .lower-insights .lower-insight-cover {
    display: block;
    height: 251.078px;
    overflow: hidden;
    border-radius: 30px;
  }
  .iel-home .lower-news .lower-editorial-image,
  .iel-home .lower-insights .lower-editorial-image {
    width: 100%;
    height: 251.078px;
    aspect-ratio: auto;
    border-radius: 30px;
    object-fit: cover;
  }
  .iel-home .lower-news .lower-editorial h3,
  .iel-home .lower-insights .lower-editorial h3 {
    margin: 10px 0 0;
    overflow: visible;
    white-space: normal;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: -0.2px;
  }
  .iel-home .lower-news .lower-editorial p,
  .iel-home .lower-insights .lower-editorial p {
    margin: 10px 0 0;
    font-size: 18px;
    line-height: 1.8;
  }
  .iel-home .lower-news .lower-editorial time {
    margin-top: 10px;
    line-height: 1.5;
  }
  .iel-home .lower-news .lower-more,
  .iel-home .lower-insights .lower-more {
    margin-top: 58px;
  }
  /* FAQ: keep the closed six-row stack anchored while answers grow downward. */
  .iel-home .lower-faq {
    box-sizing: border-box;
    min-height: 1013px;
    display: flex;
    align-items: flex-start;
    /* ponytail: fixed six-row baseline; recalculate if the closed design stack changes. */
    padding: 156px 0 0;
  }
  .iel-home .lower-faq > .lower-narrow {
    width: min(1019.489px, calc(100% - 64px));
  }
  .iel-home .lower-faq h2 {
    margin-bottom: 30px;
    font-size: 36px;
    font-weight: 400;
    line-height: 1.35;
  }
  .iel-home .lower-faq .lower-faq-item {
    box-sizing: border-box;
    width: 100%;
    min-height: 66.238px;
    margin: 0;
    border: 0;
    border-radius: 30px;
    box-shadow: 0 10px 80px rgba(0, 0, 0, 0.05);
  }
  .iel-home .lower-faq .lower-faq-item + .lower-faq-item {
    margin-top: 20px;
  }
  .iel-home .lower-faq .iel-faq-summary {
    box-sizing: border-box;
    min-height: 66.238px;
    padding: 17.73px 27.49px;
    border-radius: 30px;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.45;
  }
  .iel-home .lower-faq .iel-faq-chevron {
    width: 11.473px;
    height: 11.473px;
  }
  .iel-home .lower-faq .lower-more {
    margin-top: 85px;
    text-align: center;
  }
}

/* Review source badges stay visible across all viewport ranges. */

@media (max-width: 1199px) {
  .iel-home .lower-review-content {
    display: block;
  }
}

/* Tablet keeps the shared card geometry and adds a compact top-right badge. */

@media (min-width: 768px) and (max-width: 1199px) {
  .iel-home .lower-review-source {
    display: flex;
    width: fit-content;
    min-height: 22px;
    height: 22px;
    align-items: center;
    margin: 0 0 5px auto;
    padding: 0 12px;
    border-radius: 30px;
    font-size: 10px;
    line-height: 1;
  }
}

/* Tablet case filters use the shared home-lower.css styles. */

/* Figma 848:2758–2760: consecutive 1920px desktop section frames. */

@media (min-width: 1200px) {
  .iel-home .upper-premium-note {
    position: relative;
    height: 0;
    margin: 0;
    overflow: visible;
  }
}

@media (min-width: 1200px) {
  .iel-home .upper-results {
    margin-top: 0;
  }

  .iel-home .upper-intro {
    box-sizing: border-box;
    max-width: 1262.782px;
    padding: 82.79px 0 78.61px;
  }

  .iel-home .upper-intro-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(3, 262.2px);
    gap: 18px;
    margin-top: 43px;
  }
}

/* 2026-09-14 mobile sync for Figma node 967:2365.
 * The endpoint is 402px wide; real CMS copy and media remain in the existing
 * templates while this block only supplies the authored mobile geometry. */

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  /* Hero / premium / outcomes */
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-hero {
    height: 734px;
    min-height: 734px;
  }
  .iel-home .upper-hero-copy {
    width: calc(100% - 40px);
    padding: 176px 0 0;
    margin-inline: auto;
  }
  .iel-home .upper-hero-copy h1 {
    width: 229px;
    max-width: 100%;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-hero-description {
    width: 100%;
    max-width: 362px;
    margin-top: 19px;
  }
  .iel-home .upper-hero-description p {
    font-size: 15px;
    line-height: 1.5;
  }
  .iel-home .upper-hero-description .upper-hero-brand {
    display: block;
    width: 100%;
    margin-top: 19px;
    font-size: 15px;
    line-height: 1.8;
  }
  .iel-home .upper-hero-description .iel-copy-hero-brand {
    display: block;
    color: #2f1b07;
    font-family: Pretendard;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 180%;
  }
  .iel-home .upper-premium {
    height: 734px;
    min-height: 734px;
  }
  .iel-home .upper-premium-copy {
    padding-top: 99px;
  }
  .iel-home .upper-premium h2 {
    width: 328px;
    max-width: calc(100% - 40px);
    margin-inline: auto;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-premium h2 .iel-copy-premium-title {
    display: block;
    width: 328px;
    max-width: 100%;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-premium-copy > p {
    width: 311px;
    max-width: calc(100% - 40px);
    margin: 22px auto;
    font-size: 15px;
    line-height: 1.8;
  }
  .iel-home .upper-premium .upper-cost {
    width: 191px;
    height: 44px;
    font-size: 14px;
    line-height: 1;
  }
  .iel-home .upper-premium-note {
    position: static;
    height: auto;
    margin: 12.906px 0 0;
    padding: 0;
    font-size: 13px;
    line-height: 1.8;
    text-align: center;
  }
  .iel-home .upper-premium-note .iel-copy-mobile {
    font-size: 13px;
    line-height: 1.8;
    white-space: normal;
  }
  .iel-home .upper-premium-note .iel-copy-mobile br {
    display: none;
  }
  .iel-home .upper-results {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    height: auto;
    min-height: 1723px;
    margin: 0;
    padding: 130.194px 20px 0;
  }
  .iel-home .upper-results h2 {
    width: 229px;
    max-width: 100%;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-results h2 .iel-copy-results-title {
    display: block;
    width: 229px;
    max-width: 100%;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-result-description .iel-design-copy {
    width: 100%;
    max-width: none;
    font-size: 15px;
    line-height: 1.6;
  }
  .iel-home .upper-result-grid {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: 30px;
    margin-top: 30px;
  }
  .iel-home .upper-result {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    min-height: 388px;
    margin: 0;
    padding-bottom: 25px;
    box-sizing: border-box;
  }
  .iel-home .upper-result-2 {
    min-height: 363px;
    padding-bottom: 0;
  }
  .iel-home .upper-result-image {
    width: 100%;
    height: auto;
    margin: 0;
    aspect-ratio: 362 / 230;
  }
  .iel-home .upper-result-image img {
    position: static;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
  }
  .iel-home .upper-result > .upper-red {
    margin: 13px 10px 0;
    font-size: 14px;
    line-height: 1.45;
  }
  .iel-home .upper-result-stat {
    display: block;
    height: 36px;
    margin: 5px 10px 0;
  }
  .iel-home .upper-result h3 {
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-result-stat small {
    position: absolute;
    top: auto;
    bottom: 0;
    left: 10px;
    font-size: 14px;
    line-height: 1.45;
  }
  .iel-home .upper-result-description {
    margin: 5px 10px 0;
    font-size: 15px;
    line-height: 1.6;
  }
  .iel-home .upper-result-2 .upper-result-stat small {
    display: none;
  }
  .iel-home .upper-cost-question {
    width: 360px;
    max-width: 100%;
    height: 59px;
    margin: 30px 0 0;
    font-size: 15px;
  }

  .iel-home .upper-intro {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 61.79px 0 0 20px;
  }
  .iel-home .upper-intro > h2 {
    width: 229px;
    max-width: 100%;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-intro > h2 .iel-copy-intro-title {
    display: block;
    width: 229px;
    max-width: 100%;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-intro > .upper-slider-controls {
    width: min(357px, calc(100vw - 20px));
    height: 24.426px;
    min-height: 0;
    margin-top: 20px;
  }
  .iel-home .upper-intro-grid {
    width: min(382px, calc(100vw - 20px));
    height: 211px;
    margin: 20px 0 0;
    gap: 20px;
  }
  .iel-home .upper-intro-grid .upper-video {
    flex-basis: 325px;
    height: 210px;
    border-radius: 30px;
  }
  .iel-home .upper-details {
    box-sizing: border-box;
    min-height: 4655px;
    margin-top: 0;
    padding-top: 46px;
    padding-bottom: 0;
  }
  .iel-home .upper-details > .upper-women,
  .iel-home .upper-details > .upper-prosecutors,
  .iel-home .upper-details > .upper-evidence,
  .iel-home .upper-details > .upper-psychologists {
    width: 362px;
    max-width: calc(100% - 40px);
    margin-right: auto;
    margin-left: auto;
  }
  .iel-home .upper-details .upper-number {
    font-size: 16px;
    line-height: 1.45;
  }
  .iel-home .upper-details .upper-women h2,
  .iel-home .upper-details .upper-prosecutors h2,
  .iel-home .upper-details .upper-evidence h2,
  .iel-home .upper-details .upper-psychologists h2 {
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-details h2 .iel-design-copy {
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .upper-details .upper-description .iel-design-copy {
    font-size: 14px;
    line-height: 1.5;
  }
  .iel-home .upper-details .upper-description {
    font-size: 14px;
    line-height: 1.5;
  }
  .iel-home .upper-details .upper-profile-track {
    width: 382px;
  }
  .iel-home .upper-contact {
    box-sizing: border-box;
    height: 734px;
    min-height: 734px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
  }
  /* Case studies / process */
  /* Figma 937:1002: preserve the eight-card spacing, not a fixed result count. */
  .iel-home .lower-cases {
    box-sizing: border-box;
    height: auto;
    min-height: 0;
    padding: 91.2px 0 42.35px;
    overflow: visible;
  }
  .iel-home .lower-cases > .lower-wrap {
    width: 363.085px;
    max-width: calc(100% - 39px);
    margin-inline: auto;
  }
  .iel-home .lower-cases h2 {
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .lower-cases h2 .iel-copy-case-study-title {
    display: block;
    max-width: 362px;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .lower-cases .lower-intro {
    margin: 16px 0 25px;
    font-size: 14px;
    line-height: 1.8;
  }
  .iel-home .lower-cases .lower-search {
    margin-top: 0;
    padding: 5px 10px;
  }
  .iel-home .lower-cases .lower-case-study-grid {
    gap: 15px;
  }
  .iel-home .lower-cases .lower-more {
    margin-top: 39.66px;
  }

  .iel-home .lower-process {
    box-sizing: border-box;
    min-height: 1184px;
    padding: 109px 0;
    overflow: visible;
  }
  .iel-home .lower-process > .lower-narrow {
    width: 351.335px;
    max-width: calc(100% - 50px);
  }
  .iel-home .lower-process h2 {
    margin-bottom: 40px;
    font-size: 25px;
    line-height: 1.35;
  }
  .iel-home .lower-process .lower-steps details {
    padding: 0 0 31px;
  }
  .iel-home .lower-process .lower-steps details + details {
    padding-top: 31px;
  }
  .iel-home .lower-process .lower-steps details[open] {
    padding-bottom: 31px;
  }
  .iel-home .lower-process .lower-steps summary,
  .iel-home .lower-process .lower-steps details[open] summary,
  .iel-home .lower-process .lower-steps details:first-child summary {
    min-height: 23px;
    padding: 0;
    align-items: center;
    font-size: 16px;
    line-height: 1.45;
  }
  .iel-home .lower-process .lower-steps summary .lower-step-chevron {
    margin-top: 0;
  }
  .iel-home .lower-process .lower-step-body {
    padding: 31px 0 0;
  }
  .iel-home .lower-process .lower-step-body ul {
    max-width: 321px;
    margin: 0 0 31px;
    font-size: 14px;
    line-height: 2.5;
  }
  .iel-home .lower-process .lower-step-copy {
    line-height: 1.5;
  }
  .iel-home .lower-process .lower-step-body li + li {
    margin-top: 0;
  }
  .iel-home .lower-process .lower-cta {
    min-height: 41px;
    margin-left: 0;
    padding: 11px 17px;
    font-size: 14px;
    line-height: 1.45;
  }
  .iel-home .lower-philosophy {
    height: 734px;
    min-height: 734px;
  }
  /* Reviews: the mobile Figma is a 382px rail with 336x190 cards. */
  .iel-home .lower-reviews {
    box-sizing: border-box;
    height: 567px;
    min-height: 567px;
    padding: 175px 0 0;
    overflow: hidden;
  }
  .iel-home .lower-reviews > .lower-wrap {
    width: min(382px, calc(100vw - 20px));
    max-width: none;
    margin: 0 0 0 20px;
  }
  .iel-home .lower-reviews .lower-wrap > h2,
  .iel-home .lower-reviews .lower-wrap > .lower-intro {
    width: 328px;
    max-width: 100%;
  }
  .iel-home .lower-reviews .lower-wrap > h2 {
    font-size: 30px;
    line-height: 1;
  }
  .iel-home .lower-reviews .lower-intro {
    margin: 12px 0 0;
    font-size: 14px;
    line-height: 2;
    text-align: left;
  }
  .iel-home .lower-review-controls {
    display: flex;
    width: 357px;
    justify-content: flex-end;
    margin: 20px 0 0 20px;
  }
  .iel-home .lower-review-track {
    width: 382px;
    height: 190px;
    margin: 20px 0 0 20px;
    padding: 0;
    gap: 20px;
  }
  .iel-home .lower-review {
    box-sizing: border-box;
    display: flex;
    flex: 0 0 336px;
    width: 336px;
    height: 190px;
    min-height: 190px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 0;
    border-radius: 30px;
  }
  .iel-home .lower-review-source {
    display: flex;
    width: fit-content;
    min-height: 22px;
    height: 22px;
    align-self: flex-end;
    align-items: center;
    margin-right: 31.5px;
    padding: 0 12px;
    border-radius: 30px;
    font-size: 10px;
    line-height: 1;
  }
  .iel-home .lower-review-source-label {
    margin-left: 2px;
  }
  .iel-home .lower-review-source--google {
    width: 100px;
  }
  .iel-home .lower-review-source--naver {
    width: 92px;
  }
  .iel-home .lower-review-content {
    display: flex;
    width: 273px;
    min-width: 0;
    flex-direction: column;
    gap: 0;
  }
  .iel-home .lower-review h3 {
    margin: 0;
    font-size: 13px;
    line-height: 1;
  }
  .iel-home .lower-review-text {
    height: 75px;
    margin: 15px 0 0 !important;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.8;
  }
  .iel-home .lower-review-meta {
    margin: 15px 0 0;
    font-size: 13px;
    line-height: 1;
  }
  /* Center news / more news */
  .iel-home .lower-news {
    box-sizing: border-box;
    height: 817px;
    min-height: 817px;
    padding: 112.2866px 0 0;
  }
  .iel-home .lower-insights {
    box-sizing: border-box;
    height: 790px;
    min-height: 790px;
    padding: 132.2866px 0 0;
  }
  .iel-home .lower-news > .lower-wrap,
  .iel-home .lower-insights > .lower-wrap {
    width: min(382px, calc(100% - 20px));
    max-width: none;
    margin: 0 0 0 20px;
  }
  .iel-home .lower-news .lower-heading,
  .iel-home .lower-insights .lower-heading {
    flex-direction: column;
    align-items: stretch;
    gap: 25px;
    margin: 0;
  }
  .iel-home .lower-news .lower-heading > h2,
  .iel-home .lower-insights .lower-heading > h2 {
    flex: none;
    width: 362px;
    max-width: 100%;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .lower-news .lower-heading > h2 .iel-design-copy,
  .iel-home .lower-insights .lower-heading > h2 .iel-design-copy {
    display: block;
    width: 362px;
    max-width: 100%;
    font-size: 25px;
    line-height: 1.45;
  }
  .iel-home .lower-insights .lower-heading > h2 {
    width: 362px;
  }
  .iel-home .lower-news .lower-controls,
  .iel-home .lower-insights .lower-controls {
    width: min(355px, 100%);
    height: 24.426px;
    justify-content: flex-end;
  }
  .iel-home .lower-news .lower-card-track,
  .iel-home .lower-insights .lower-card-track {
    width: 100%;
    height: 357px;
    margin: 25px 0 0;
    padding: 0;
    gap: 20px;
    overflow-y: hidden;
  }
  .iel-home .lower-insights .lower-card-track {
    height: 326px;
  }
  .iel-home .lower-news .lower-editorial,
  .iel-home .lower-insights .lower-editorial {
    flex: 0 0 min(328px, 100%);
    width: min(328px, 100%);
    max-width: none;
    height: 357px;
  }
  .iel-home .lower-insights .lower-editorial {
    height: 326px;
  }
  .iel-home .lower-news .editorial-image-frame,
  .iel-home .lower-insights .lower-insight-cover {
    display: block;
    width: 100%;
    aspect-ratio: 328 / 201;
    overflow: hidden;
    border-radius: 30px;
  }
  .iel-home .lower-news .lower-editorial-image,
  .iel-home .lower-insights .lower-editorial-image {
    width: 100%;
    height: 100%;
    border-radius: 30px;
    object-fit: cover;
  }
  .iel-home .lower-news .lower-editorial h3,
  .iel-home .lower-insights .lower-editorial h3 {
    height: 30px;
    margin: 10px 0 0;
    font-size: 20px;
    line-height: 1.5;
    overflow: hidden;
    white-space: normal;
  }
  .iel-home .lower-news .lower-editorial h3 {
    white-space: nowrap;
  }
  .iel-home .lower-news .lower-editorial p,
  .iel-home .lower-insights .lower-editorial p {
    margin: 10px 0 0;
    font-size: 14px;
    line-height: 1.8;
    -webkit-line-clamp: 3;
  }
  .iel-home .lower-news .lower-editorial time {
    margin: 10px 0 0;
    font-size: 14px;
    line-height: 1.5;
  }
  .iel-home .lower-news .lower-more,
  .iel-home .lower-insights .lower-more {
    width: 100%;
    margin-top: 25px;
    font-size: 14px;
    line-height: 2;
    text-align: left;
  }
  /* FAQ */
  .iel-home .lower-faq {
    box-sizing: border-box;
    height: auto;
    min-height: 837px;
    padding: 68.8936px 0 0;
    overflow: visible;
  }
  .iel-home .lower-faq > .lower-narrow {
    width: 350.959px;
    max-width: calc(100% - 50px);
  }
  .iel-home .lower-faq h2 {
    margin-bottom: 45px;
    font-size: 25px;
    line-height: 1.35;
  }
  .iel-home .lower-faq .lower-faq-item {
    min-height: 53.092px;
    margin: 0;
    border: 0;
    border-radius: 30px;
  }
  .iel-home .lower-faq .lower-faq-item + .lower-faq-item {
    margin-top: 11px;
  }
  .iel-home .lower-faq .iel-faq-summary {
    box-sizing: border-box;
    min-height: 53.092px;
    padding: 17px 18px 17px 22px;
    border-radius: 30px;
    font-size: 14px;
    line-height: 1.45;
    gap: 11px;
  }
  .iel-home .lower-faq .iel-faq-question {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    grid-template-columns: none;
    gap: 3px;
  }
  .iel-home .lower-faq .iel-faq-question > span:first-child {
    flex: none;
  }
  .iel-home .lower-faq .iel-faq-question > span:last-child {
    min-width: 0;
  }
  .iel-home .lower-faq .iel-faq-chevron {
    width: 12.35px;
    height: 7.45px;
  }
  .iel-home .lower-faq .lower-more {
    margin-top: 45px;
    font-size: 14px;
    line-height: 2;
  }
  /* Location is split into the Figma gallery, map image, and address group. */
  .iel-home .lower-location {
    padding: 0;
  }
  .iel-home .lower-location > .lower-wrap {
    width: 362px;
    max-width: calc(100% - 40px);
    margin: 0 20px;
  }
  .iel-home .lower-location h2 {
    margin: 34.789px 0 0;
    font-size: 25px;
    line-height: 1.24;
  }
  .iel-home .lower-location-gallery {
    height: 270.166px;
    margin-top: 26.845px;
  }
  .iel-home .lower-location-track,
  .iel-home .lower-location-track > img {
    height: 270.166px;
  }
  .iel-home .location-map,
  .iel-home .location-map-frame,
  .iel-home .lower-map {
    height: 443.281px;
  }
  .iel-home .lower-address {
    box-sizing: border-box;
    width: 351.335px;
    max-width: calc(100% - 50px);
    grid-template-columns: 66px 1fr;
    gap: 16px 12px;
    margin: 36.2px auto;
    padding: 0;
    font-size: 14px;
    line-height: 1.8;
    min-height: 261.523px;
  }
  .iel-home .lower-location > .lower-address {
    width: 351.335px;
    max-width: calc(100% - 50px);
    margin: 36.2px auto;
  }
  .iel-home .lower-address dt {
    font-size: 14px;
  }
  .iel-home .lower-subway {
    font-size: 11px;
    line-height: 24px;
    padding: 0 6px;
  }
}

@media (min-width: 1200px) {
  .iel-home .lower-review-source {
    min-height: 22px;
    height: 22px;
    padding: 0 12px;
  }
  .iel-home .lower-review-content {
    gap: 0;
  }
  .iel-home .lower-review h3 {
    margin: 0;
  }
  .iel-home .lower-review-text {
    height: 75px;
    margin: 15px 0 0 !important;
    line-height: 1.8;
  }
  .iel-home .lower-review-meta {
    margin: 15px 0 0;
    line-height: 1;
  }
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  /* Figma mo16 keeps the map/address flow and reserves a 904px footer group. */
  .iel-home + .site-footer,
  .iel-home ~ .site-footer,
  body.home .site-footer {
    min-height: 904.025px;
    box-sizing: border-box;
  }

  body.home .site-footer {
    padding: 68.6px 32.38px 56px;
    background: #000;
  }
  body.home .site-footer .footer-content {
    width: min(319.3px, 100%);
    grid-template-columns: 106px 152px;
    justify-content: space-between;
    gap: 89.9px 0;
    margin: 0;
  }
  body.home .site-footer .footer-company {
    grid-column: 1 / -1;
  }
  body.home .site-footer .footer-logo {
    height: 26.518px;
    margin-bottom: 27.14px;
  }
  body.home .site-footer .footer-copyright {
    width: min(361.319px, calc(100vw - 41px));
    max-width: none;
    margin-left: -5px;
    margin-top: 57px;
  }
}

@media (max-width: 360px) {
  body.home .site-footer .footer-content {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
    column-gap: 12px;
  }
}

/* Figma node 848:2760 desktop Legal Team spacing. */

@media (min-width: 1200px) {
  .iel-home .upper-details {
    margin-top: 0;
    padding-top: 114px;
    padding-bottom: 340.8383px;
  }
}

@media (min-width: 1200px) {
  .iel-home .upper-detail-marker {
    height: 62.795px;
    margin-bottom: 164.0383px;
  }
  .iel-home .upper-women > .upper-description {
    max-width: none;
  }
  .iel-home .upper-women .upper-profiles,
  .iel-home .upper-prosecutors .upper-profiles {
    margin-top: 43px;
  }
  .iel-home .upper-profiles--women > .upper-slider-controls {
    position: static;
    width: 1268px;
    max-width: 100%;
    height: 31.117px;
    margin: 0 0 43px;
  }
  .iel-home .upper-profile-track {
    gap: 42px;
  }
  .iel-home .upper-evidence {
    margin-top: 150px;
  }
  .iel-home .upper-psychologists {
    padding-top: 150px;
  }
  .iel-home .upper-recovery-grid {
    margin-top: 43px;
  }
  .iel-home .upper-profiles--psychologists .upper-profile-photo {
    margin-bottom: 16px;
  }
  .iel-home .upper-details .upper-number {
    margin-bottom: 16px;
  }
  .iel-home .upper-details .upper-description {
    margin-top: 16px;
  }
  .iel-home .upper-evidence-copy .upper-number {
    margin-bottom: 16px;
  }
  .iel-home .upper-evidence-copy .upper-description {
    margin-top: 16px;
  }
  .iel-home .upper-prosecutors {
    padding-top: 150px;
  }
}

/* Figma 887:2311 desktop footer: map, address, then legal footer. */

@media (width >= 1200px) {
  .iel-home .location-map,
  .iel-home .location-map-frame,
  .iel-home .lower-map {
    height: 970px;
  }

  .iel-home .lower-address {
    box-sizing: border-box;
    width: min(1267px, calc(100% - 64px));
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 8.7px 20px;
    min-height: 0;
    margin: 85px auto;
    padding: 0;
  }

  body.home .site-footer {
    box-sizing: border-box;
    min-height: 803px;
    padding: 110px max(24px, calc((100vw - 1588.365px) / 2)) 0;
    background: #000;
  }

  body.home .site-footer .footer-content,
  body.home .site-footer .footer-copyright {
    max-width: 1588.365px;
  }

  body.home .site-footer .footer-content {
    grid-template-columns: minmax(0, 1fr) 125px 152px;
  }

  body.home .site-footer .footer-copyright {
    border-top-color: #5d5d5d;
  }
}

/* Figma 917:101 mobile mo6 geometry. */

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-details {
    min-height: 0;
    background: #fff;
    padding-top: 68.74px;
    padding-bottom: 0;
  }
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-detail-marker {
    height: 42.801px;
    margin-bottom: 109.579px;
  }

  .iel-home .upper-detail-marker::after {
    inset: 66.97% 0 auto;
  }
  .iel-home .upper-details .upper-number {
    font-size: 15px;
    line-height: 2;
    margin-bottom: 16px;
  }

  .iel-home .upper-details .upper-description,
  .iel-home .upper-details .upper-description .iel-design-copy {
    font-size: 14px;
    line-height: 1.8;
    margin-top: 16px;
  }

  .iel-home .upper-details .upper-description .iel-design-copy {
    max-width: 356.667px;
  }

  .iel-home .upper-details h2 .iel-design-copy {
    max-width: 100%;
  }
  .iel-home .upper-women .upper-profiles {
    margin-top: 25px;
  }

  .iel-home .upper-prosecutors .upper-profiles--prosecutors {
    margin-top: 25px;
  }

  .iel-home .upper-profiles--psychologists > .upper-slider-controls,
  .iel-home .upper-women .upper-profiles > .upper-slider-controls,
  .iel-home .upper-prosecutors .upper-profiles--prosecutors > .upper-slider-controls {
    display: flex;
    height: 24.427px;
    min-height: 0;
    margin-bottom: 25px;
  }

  .iel-home .upper-women .upper-profiles > .upper-slider-controls {
    margin: 0 0 25px;
  }

  .iel-home .upper-profile-track {
    gap: 20px;
  }

  .iel-home .upper-women .upper-profile-track,
  .iel-home .upper-prosecutors .upper-profile-track {
    width: min(382px, calc(100% + 20px)) !important;
  }

  .iel-home .upper-profiles--women .upper-profile-copy,
  .iel-home .upper-profiles--prosecutors .upper-profile-copy {
    padding-bottom: 0;
    overflow-wrap: anywhere;
  }

  .iel-home .upper-profiles--women .upper-profile,
  .iel-home .upper-profiles--prosecutors .upper-profile {
    height: auto;
    min-height: 494px;
    padding-bottom: calc(14px + 30.66px + 12px);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
  }

  .iel-home .upper-profiles--women .upper-team-member-qualifications-mobile,
  .iel-home .upper-profiles--prosecutors .upper-team-member-qualifications-mobile {
    display: block;
  }
  .iel-home .upper-prosecutors {
    padding-top: 150px;
  }
  .iel-home .upper-evidence {
    margin-top: 150px;
  }

  .iel-home .upper-evidence-photo {
    width: 100%;
    height: auto;
    aspect-ratio: 362 / 316.741;
    margin: 25px 0 0;
  }

  .iel-home .upper-evidence-bio {
    margin-top: 25px;
  }
  .iel-home .upper-psychologists {
    padding-top: 150px;
  }
  .iel-home .upper-recovery-grid {
    margin-top: 25px;
  }
  .iel-home .upper-profiles--psychologists .upper-profile {
    flex-basis: 284px;
    min-height: 0;
    height: auto;
    padding: 0;
  }

  .iel-home .upper-profiles--psychologists .upper-profile-photo {
    width: 284px;
    height: 284px;
    margin-bottom: 25px;
  }

  .iel-home .upper-profiles--psychologists .upper-profile h3 {
    font-size: 16px;
    font-weight: 500;
  }

  .iel-home .upper-profiles--psychologists .upper-profile ul {
    font-size: 14px;
  }
  .iel-home .upper-recovery {
    width: 100vw;
    height: auto;
    aspect-ratio: 402 / 534.297;
    margin: 146.74px calc((100% - 100vw) / 2) 0;
  }

  .iel-home .upper-recovery figcaption {
    box-sizing: border-box;
    bottom: 11px;
    left: 0;
    width: 100%;
    padding: 10px;
    font-size: 13px;
    line-height: 1.3;
  }
}

/* Figma 1116 homepage scenes: keep artwork separate from copy and member data. */

@media (min-width: 1025px) {
  .iel-home .upper-evidence-photo {
    grid-row: auto;
  }
  .iel-home .upper-evidence-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 16px;
    min-width: 0;
  }
  .iel-home .upper-evidence-copy {
    padding-top: 0;
  }
  .iel-home .upper-evidence-copy .upper-number {
    margin-bottom: 16px;
  }
  .iel-home .upper-evidence-copy .upper-description {
    margin-top: 16px;
    margin-bottom: 0;
  }
  .iel-home .upper-evidence-bio {
    align-self: stretch;
    margin-top: 0;
  }
}

/* News thumbnails preserve the complete source image inside the fixed card. */

.iel-home .lower-news .lower-editorial-image {
  object-fit: contain;
  object-position: center;
  background: #fff;
}

@media (max-width: 1024px) {
  .iel-home .upper-evidence-content {
    display: contents;
  }
}

@media (min-width: 1200px) {
  .iel-home .upper-intro {
    padding-top: 40px;
  }
  .iel-home .upper-intro-grid {
    margin-top: 43px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(3, 262.2px);
    gap: 18px;
  }
  .iel-home .upper-results {
    padding: 215px 0 148.224px;
  }
  .iel-home .upper-results h2 {
    width: auto;
    max-width: none;
    font-size: 36px;
    line-height: 1.45;
  }
  .iel-home .upper-result-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
    margin-top: 43px;
  }
  .iel-home .upper-result {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    row-gap: 11px;
    margin: 0;
  }
  .iel-home .upper-result-2 {
    row-gap: 9px;
  }
  .iel-home .upper-result-image {
    width: 100%;
    height: 326.153px;
    margin: 0;
    aspect-ratio: auto;
  }
  .iel-home .upper-result-stat {
    display: contents;
  }
  .iel-home .upper-result > .upper-red {
    grid-row: 2;
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.45;
  }
  .iel-home .upper-result-2 > .upper-red {
    margin-top: 10px;
  }
  .iel-home .upper-result h3 {
    grid-row: 3;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.45;
  }
  .iel-home .upper-result-description {
    grid-row: 4;
    margin: 0;
    font-size: 18px;
    line-height: 1.6;
  }
  .iel-home .upper-result-stat small {
    position: static;
    grid-row: 5;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
  }
  .iel-home .upper-cost-question {
    width: 100%;
    max-width: none;
    height: 103.626px;
    margin: 43px 0 0;
    font-size: 23px;
  }
}

.iel-home .lower-news .lower-editorial h3 {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* Figma 1116:2178: keep the premium book image separate from its vector marks. */

.iel-home .upper-premium {
  box-sizing: border-box;
  height: auto;
  min-height: 0;
  padding: 0;
  aspect-ratio: 1920 / 1122;
}

.iel-home .upper-premium-scene {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 1920 / 1122;
  overflow: hidden;
}

.iel-home .upper-premium-scene > .upper-background {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.iel-home .upper-premium-scene > .upper-background img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  transform: none;
}

.iel-home .upper-premium-label {
  position: absolute;
  z-index: 1;
  display: block;
  line-height: 0;
}

.iel-home .upper-premium-label img {
  display: block;
  width: 100%;
  height: auto;
}

.iel-home .upper-premium-copy {
  position: relative;
  z-index: 2;
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-premium {
    height: 734px;
    min-height: 734px;
    aspect-ratio: auto;
  }
  .iel-home .upper-premium-scene {
    top: 139px;
    height: 595px;
    aspect-ratio: auto;
  }
  .iel-home .upper-premium-scene > .upper-background img {
    top: 0;
    bottom: auto;
    left: -76.78%;
    width: 253.55%;
    height: 100%;
    object-fit: fill;
  }
  .iel-home .upper-premium-label--chapter {
    left: 38.3085%;
    top: 61.5126%;
    width: 23.4245%;
  }
  .iel-home .upper-premium-label--iel {
    left: 48.2587%;
    top: 87.2269%;
    width: 4.284%;
  }
}

/* Figma 1116:2465 / 1116:2467. Responsive bookshelf scenes and vector marks. */

.iel-home .upper-teams-scene {
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 1819.15px;
  aspect-ratio: 1819.15 / 982.22;
  border-radius: 100px;
  overflow: hidden;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.iel-home .upper-teams-background {
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 50%;
  display: none;
  width: 100%;
  max-width: 1819.15px;
  aspect-ratio: 1819.15 / 982.22;
  border-radius: 100px;
  overflow: hidden;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.iel-home .upper-teams-background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.iel-home .upper-teams-mark {
  position: absolute;
  z-index: 1;
  display: block;
  max-width: none;
  object-fit: fill;
}

.iel-home .upper-teams-mobile-background {
  display: none;
}

.iel-home .upper-teams-mobile-scene {
  display: none;
}

@media (min-width: 1200px) {
  .iel-home .upper-teams-background {
    display: block;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-teams-tablet-background {
    inset: 0;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    max-width: none;
    height: 100%;
    aspect-ratio: auto;
    transform: none;
  }
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-teams-scene {
    display: none;
  }
  .iel-home .upper-teams-tablet-background {
    display: none;
  }
  .iel-home .upper-teams-mobile-background {
    display: block;
  }
  .iel-home .upper-teams-mobile-scene {
    position: absolute;
    z-index: 0;
    inset: 0;
    display: block;
    overflow: hidden;
    border-radius: 30px;
    pointer-events: none;
  }
  .iel-home .upper-teams-mobile-photo-frame {
    position: absolute;
    top: 60.203%;
    left: 0;
    width: 100%;
    height: 39.797%;
    overflow: hidden;
  }
  .iel-home .upper-teams-mobile-photo {
    position: absolute;
    top: -19.54%;
    left: -82.76%;
    display: block;
    width: 265.51%;
    height: 139.07%;
    max-width: none;
    object-fit: fill;
  }
  .iel-home .upper-teams-mobile-mark {
    position: absolute;
    z-index: 1;
    display: block;
    max-width: none;
  }
}

/* Figma desktop 1116:2710 / mobile 1116:1263. Custom member photos stay independent. */

.iel-home .upper-evidence-scene {
  position: absolute;
  inset: 0;
}

.iel-home .upper-evidence-background {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.iel-home .upper-evidence-background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: bottom;
}

.iel-home .upper-evidence-brandmarks {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.iel-home .upper-evidence-brandmark {
  position: absolute;
  overflow: hidden;
  opacity: 0.55;
}

.iel-home .upper-evidence-brandmark--prosecution {
  left: 70.358%;
  top: 38.468%;
  width: 21.191%;
  height: 15.961%;
}

.iel-home .upper-evidence-brandmark--anti-corruption {
  left: 10.131%;
  top: 42.498%;
  width: 20.45%;
  height: 10.201%;
}

.iel-home .upper-evidence-mark {
  position: absolute;
  display: block;
  max-width: none;
  object-fit: fill;
}

.iel-home .upper-evidence-mark--prosecution-symbol {
  left: 17.858%;
  top: 0;
  width: 64.282%;
  height: 56.538%;
}

.iel-home .upper-evidence-mark--prosecution-name {
  left: 31.08%;
  top: 59.16%;
  width: 37.838%;
  height: 19.151%;
}

.iel-home .upper-evidence-mark--prosecution-caption {
  left: 0;
  top: 92.162%;
  width: 100%;
  height: 6.932%;
}

.iel-home .upper-evidence-mark--anti-corruption-symbol {
  left: 2.838%;
  top: 0;
  width: 94.1%;
  height: 63.65%;
}

.iel-home .upper-evidence-mark--anti-corruption-name {
  left: 0;
  top: 82.02%;
  width: 100%;
  height: 18.23%;
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-evidence-photo--scene {
    aspect-ratio: 362 / 316.74;
  }
  .iel-home .upper-evidence-background img {
    object-fit: fill;
  }
  /* Center each mobile mark group over its matching background card. */
  .iel-home .upper-evidence-brandmark--prosecution {
    left: 61.45%;
    top: 39.9782%;
    width: 18.34876%;
    height: 19.25327%;
  }
  .iel-home .upper-evidence-brandmark--anti-corruption {
    left: 20.8%;
    top: 44.09947%;
    width: 17.70651%;
    height: 12.1276%;
  }
  .iel-home .upper-evidence-mark--prosecution-symbol {
    left: 17.95149%;
    top: 0%;
    width: 64.27882%;
    height: 56.53678%;
  }
  .iel-home .upper-evidence-mark--prosecution-name {
    left: 31.15855%;
    top: 68.29457%;
    width: 37.83567%;
    height: 19.1505%;
  }
  .iel-home .upper-evidence-mark--prosecution-caption {
    left: 0%;
    top: 93.06541%;
    width: 99.99987%;
    height: 6.93461%;
  }
  .iel-home .upper-evidence-mark--anti-corruption-symbol {
    left: 3.05245%;
    top: 0%;
    width: 93.89496%;
    height: 63.6482%;
  }
  .iel-home .upper-evidence-mark--anti-corruption-name {
    left: 0%;
    top: 81.76967%;
    width: 100.00005%;
    height: 18.22979%;
  }
}

/* Single recovery scene: desktop 887:255 and mobile 917:101. */

.iel-home .upper-recovery {
  height: auto;
  aspect-ratio: 718 / 599;
}

.iel-home .upper-recovery-rail {
  display: block;
  width: 100%;
  height: 100%;
}

.iel-home .upper-recovery-image {
  position: relative;
  min-width: 0;
  height: 100%;
  overflow: hidden;
}

.iel-home .upper-recovery-image--room-1,
.iel-home .upper-recovery-image--room-2 {
  display: none;
}

.iel-home .upper-recovery-image--main {
  width: 100%;
  aspect-ratio: 718 / 599;
}

.iel-home .upper-recovery-picture {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.iel-home .upper-recovery-picture img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-recovery,
  .iel-home .upper-recovery-image--main {
    aspect-ratio: 402 / 534.297;
  }
}

/* Figma 1116:2749 desktop/mobile backgrounds and separate mobile marks. */

.iel-home .lower-philosophy {
  width: 100%;
  height: auto;
  min-height: max(520px, 47.5vw);
  aspect-ratio: 1920 / 912;
}

.iel-home .lower-philosophy-image-picture {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.iel-home .lower-philosophy-image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}

.iel-home .lower-philosophy-brandmark {
  display: none;
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .lower-philosophy {
    height: auto;
    min-height: 0;
    aspect-ratio: 402 / 734;
  }
  .iel-home .lower-philosophy-brandmark {
    position: absolute;
    z-index: 1;
    left: 48.968%;
    top: 87.156%;
    display: flex;
    width: 33.9%;
    height: 2.942%;
    align-items: center;
    justify-content: space-between;
  }
  .iel-home .lower-philosophy-brandmark img {
    display: block;
    max-width: none;
    object-fit: fill;
    transform: rotate(2deg) skewX(2deg);
  }
  .iel-home .lower-philosophy-tagline {
    width: 47.1%;
    height: 70.54%;
  }
  .iel-home .lower-philosophy-logo {
    width: 25.46%;
    height: 79%;
  }
  .iel-home .lower-philosophy-copy {
    z-index: 2;
  }
}

/* Figma 848:2756 / 1125:247: premium-care inner UI; keep scene assets separate. */

.iel-home .upper-premium-copy {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  width: min(100%, 488px);
  margin-inline: auto;
  padding: 94px 4px 0;
}

.iel-home .upper-premium-copy > h2 {
  margin: 0 auto;
}

.iel-home .upper-premium-credentials {
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: center;
  width: max-content;
  max-width: 100%;
  margin: 0;
}

.iel-home .upper-premium-credentials-row {
  display: flex;
  gap: 10px;
}

.iel-home .upper-premium-credential {
  display: flex;
  width: max-content;
  min-height: 54px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 0 30px;
  border-radius: 100px;
  background: #141619;
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3;
  white-space: nowrap;
}

.iel-home .upper-premium .upper-cost {
  margin: 0;
}

.iel-home .upper-premium-summary {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  color: #989898;
  font-size: 18px;
  line-height: 1.8;
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home .upper-premium-copy {
    gap: 0;
    width: 100%;
    padding: 67px 12px 0;
  }
  .iel-home .upper-premium h2 .iel-copy-premium-title {
    max-width: 100%;
    font-size: 25px;
  }
  .iel-home .upper-premium-credentials {
    gap: 14px;
    width: 100%;
    margin: 15px 0;
  }
  .iel-home .upper-premium-credentials-row:first-child {
    gap: 8px;
  }
  .iel-home .upper-premium-credentials-row:last-child {
    gap: 6px;
  }
  .iel-home .upper-premium-credential {
    min-height: 37px;
    padding-inline: 20px;
    font-size: 13px;
    letter-spacing: -0.39px;
  }
  .iel-home .upper-premium .upper-cost {
    width: 197.592px;
    height: 51.244px;
    font-size: 15px;
  }
  .iel-home .upper-premium-copy > p.upper-premium-summary {
    margin: 15px 0 0;
    color: #fff;
    font-size: 14px;
    letter-spacing: -0.42px;
  }
  .iel-home .upper-premium-summary span {
    display: block;
  }
}

/* Figma 887:247 desktop evidence scene exports. */

@media (min-width: 1025px) {
  .iel-home .upper-evidence-brandmark--prosecution {
    left: 67.12%;
    top: 38.1%;
    width: 15.31%;
    height: 16.68%;
  }

  .iel-home .upper-evidence-brandmark--anti-corruption {
    left: 17.56%;
    top: 42.51%;
    width: 14.77%;
    height: 10.2%;
  }
}
