:root {
  --imedia-ink: #0a0a0a;
  --imedia-paper: #ffffff;
  --imedia-red: #dc102d;
  --imedia-red-deep: #b60c24;
  --imedia-radius: 18px;
  --imedia-shadow: 0 18px 54px rgba(0, 0, 0, 0.12);
}

/* Rebuilt About page */
.imedia-about-page {
  --about-red: #ed1231;
  --about-ink: #080808;
  --about-paper: #f2eee7;
  --about-muted: #a7a2a1;
  overflow: hidden;
  color: #fff;
  background: var(--about-ink);
  font-family: "Rubik", sans-serif;
}

.imedia-about-page *,
.imedia-about-page *::before,
.imedia-about-page *::after {
  box-sizing: border-box;
}

.imedia-about-page h1,
.imedia-about-page h2,
.imedia-about-page h3,
.imedia-about-page p,
.imedia-about-page ul,
.imedia-about-page ol,
.imedia-about-page figure,
.imedia-about-page blockquote {
  margin-top: 0;
}

.imedia-about-hero {
  position: relative;
  padding: 88px 0 100px;
  background:
    radial-gradient(circle at 82% 34%, rgba(237, 18, 49, .22), transparent 34%),
    linear-gradient(115deg, #050505 0 58%, #18080b 100%);
}

.imedia-about-hero::before {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(to right, #000, transparent 72%);
  content: "";
  pointer-events: none;
}

.imedia-about-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(430px, .96fr);
  gap: clamp(58px, 7vw, 108px);
  align-items: center;
}

.imedia-about-hero-copy {
  position: relative;
  z-index: 1;
  animation: imedia-about-rise 680ms cubic-bezier(.2,.75,.25,1) both;
}

.imedia-about-hero h1 {
  max-width: 770px;
  margin: 24px 0 28px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: clamp(64px, 6.3vw, 104px);
  font-style: normal;
  font-weight: 700;
  letter-spacing: -.045em;
  line-height: .91;
  text-transform: uppercase;
}

.imedia-about-hero h1 em {
  color: var(--about-red);
  font-style: normal;
}

.imedia-about-hero-copy > p {
  max-width: 680px;
  margin-bottom: 31px;
  color: #d8d4d3;
  font-size: 18px;
  line-height: 1.72;
}

.imedia-about-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-about-proof li {
  position: relative;
  padding-left: 14px;
  color: #a9a4a3;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.imedia-about-proof li::before {
  position: absolute;
  top: 6px;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--about-red);
  box-shadow: 0 0 12px rgba(237,18,49,.75);
  content: "";
}

.imedia-about-system {
  position: relative;
  min-height: 500px;
  padding: 25px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 28px;
  background: rgba(10,10,11,.88);
  box-shadow: 0 38px 100px rgba(0,0,0,.58), inset 0 0 80px rgba(237,18,49,.045);
  backdrop-filter: blur(16px);
  transform: rotate(1deg);
  animation: imedia-about-rise 760ms 120ms cubic-bezier(.2,.75,.25,1) both;
}

.imedia-about-system::after {
  position: absolute;
  right: -88px;
  bottom: -98px;
  width: 220px;
  height: 220px;
  border: 1px solid rgba(237,18,49,.35);
  border-radius: 50%;
  box-shadow: 0 0 0 40px rgba(237,18,49,.035), 0 0 0 80px rgba(237,18,49,.018);
  content: "";
  pointer-events: none;
}

.imedia-about-system-head {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 19px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.imedia-about-system-head div {
  display: grid;
  gap: 6px;
}

.imedia-about-system-head span,
.imedia-about-system-head b {
  color: #8d898b;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-about-system-head strong {
  font-family: "Oswald", sans-serif;
  font-size: 22px;
  line-height: 1.15;
  text-transform: uppercase;
}

.imedia-about-system-head b {
  display: flex;
  gap: 7px;
  align-items: center;
  color: #65dfae;
  white-space: nowrap;
}

.imedia-about-system-head b i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 5px rgba(101,223,174,.1), 0 0 12px rgba(101,223,174,.7);
}

.imedia-about-system-map {
  position: relative;
  height: 338px;
}

.imedia-about-orbit {
  position: absolute;
  top: 50%;
  left: 50%;
  border: 1px solid rgba(237,18,49,.32);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.imedia-about-orbit-one {
  width: 225px;
  height: 225px;
}

.imedia-about-orbit-two {
  width: 335px;
  height: 285px;
  border-color: rgba(255,255,255,.09);
  transform: translate(-50%, -50%) rotate(-18deg);
}

.imedia-about-orbit-two::before,
.imedia-about-orbit-one::after {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--about-red);
  box-shadow: 0 0 16px rgba(237,18,49,.95);
  content: "";
}

.imedia-about-orbit-two::before {
  top: 42px;
  right: 25px;
}

.imedia-about-orbit-one::after {
  bottom: 17px;
  left: 35px;
}

.imedia-about-core {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  place-content: center;
  width: 128px;
  height: 128px;
  border: 1px solid rgba(237,18,49,.72);
  border-radius: 50%;
  text-align: center;
  background: radial-gradient(circle at 35% 28%, #321117, #0d0d0f 66%);
  box-shadow: 0 0 40px rgba(237,18,49,.18), inset 0 0 24px rgba(237,18,49,.12);
  transform: translate(-50%, -50%);
}

.imedia-about-core span {
  color: var(--about-red);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.imedia-about-core strong {
  margin-top: 5px;
  font-family: "Oswald", sans-serif;
  font-size: 27px;
  line-height: 1;
  text-transform: uppercase;
}

.imedia-about-node {
  position: absolute;
  min-width: 88px;
  padding: 9px 12px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 9px;
  color: #d8d4d3;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-align: center;
  text-transform: uppercase;
  background: rgba(21,20,22,.92);
  box-shadow: 0 12px 30px rgba(0,0,0,.32);
}

.imedia-about-node::before {
  position: absolute;
  top: 50%;
  width: 24px;
  height: 1px;
  background: linear-gradient(90deg, rgba(237,18,49,.15), rgba(237,18,49,.8));
  content: "";
}

.imedia-about-node-brand { top: 38px; left: 34px; }
.imedia-about-node-demand { top: 40px; right: 24px; }
.imedia-about-node-content { top: 145px; left: 1px; }
.imedia-about-node-data { top: 145px; right: 0; }
.imedia-about-node-tech { bottom: 25px; left: 40px; }
.imedia-about-node-sales { right: 32px; bottom: 27px; }

.imedia-about-node-brand::before,
.imedia-about-node-content::before,
.imedia-about-node-tech::before {
  right: -25px;
}

.imedia-about-node-demand::before,
.imedia-about-node-data::before,
.imedia-about-node-sales::before {
  left: -25px;
  transform: rotate(180deg);
}

.imedia-about-system-foot {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #777275;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-about-system-foot i {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, var(--about-red), rgba(237,18,49,.08));
}

.imedia-about-story {
  padding: 112px 0 96px;
  color: #12100f;
  background:
    radial-gradient(circle at 8% 92%, rgba(237,18,49,.07), transparent 24%),
    var(--about-paper);
}

.imedia-about-story-grid {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: clamp(60px, 8vw, 130px);
}

.imedia-about-story h2,
.imedia-about-section-head h2,
.imedia-about-office h2,
.imedia-about-final h2 {
  margin-bottom: 0;
  font-family: "Oswald", sans-serif;
  font-size: clamp(46px, 5vw, 76px);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: .98;
  text-transform: uppercase;
}

.imedia-about-story-title h2 {
  margin-top: 22px;
}

.imedia-about-story-copy {
  padding-top: 31px;
}

.imedia-about-story-copy p {
  margin-bottom: 22px;
  color: #4e4946;
  font-size: 17px;
  line-height: 1.8;
}

.imedia-about-story-copy blockquote {
  position: relative;
  margin: 37px 0 0;
  padding: 25px 0 4px 28px;
  border-left: 3px solid var(--about-red);
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: clamp(25px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
}

.imedia-about-signals {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 78px;
  border-top: 1px solid #c7c0b7;
  border-bottom: 1px solid #c7c0b7;
}

.imedia-about-signals article {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 18px;
  align-items: center;
  min-height: 120px;
  padding: 24px 34px;
  border-right: 1px solid #c7c0b7;
}

.imedia-about-signals article:last-child {
  border-right: 0;
}

.imedia-about-signals strong {
  color: var(--about-red);
  font-family: "Oswald", sans-serif;
  font-size: 52px;
  line-height: 1;
}

.imedia-about-signals span {
  max-width: 150px;
  color: #4e4946;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
}

.imedia-about-method {
  position: relative;
  padding: 112px 0 120px;
  background:
    linear-gradient(120deg, transparent 0 65%, rgba(237,18,49,.1)),
    #070707;
}

.imedia-about-method::before {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(120deg, transparent 0 69px, rgba(255,255,255,.025) 70px);
  content: "";
  pointer-events: none;
}

.imedia-about-method .imedia-service-shell {
  position: relative;
}

.imedia-about-section-head {
  max-width: 880px;
}

.imedia-about-section-head h2 {
  margin: 20px 0 23px;
}

.imedia-about-section-head > p {
  max-width: 720px;
  margin-bottom: 0;
  color: #aaa5a4;
  font-size: 17px;
  line-height: 1.75;
}

.imedia-about-method-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 68px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-about-method-grid li {
  position: relative;
  min-height: 320px;
  padding: 26px 22px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  background: rgba(22,21,22,.74);
  transition: border-color 220ms ease, transform 220ms ease, background 220ms ease;
}

.imedia-about-method-grid li::after {
  position: absolute;
  right: -38px;
  bottom: -45px;
  width: 105px;
  height: 105px;
  border: 1px solid rgba(237,18,49,.24);
  border-radius: 50%;
  content: "";
}

.imedia-about-method-grid li > span {
  display: block;
  margin-bottom: 62px;
  color: var(--about-red);
  font-family: "Oswald", sans-serif;
  font-size: 17px;
  font-weight: 700;
}

.imedia-about-method-grid small,
.imedia-about-ecosystem-grid article > span {
  color: #807b7c;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-about-method-grid h3 {
  margin: 9px 0 15px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 25px;
  line-height: 1.08;
  text-transform: uppercase;
}

.imedia-about-method-grid p {
  margin-bottom: 0;
  color: #aaa5a4;
  font-size: 13px;
  line-height: 1.65;
}

.imedia-about-principles {
  padding: 108px 0 116px;
  color: #111;
  background: #fff;
}

.imedia-about-section-head-dark {
  max-width: 920px;
}

.imedia-about-principles-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-top: 60px;
  border-top: 1px solid #d7d2cb;
  border-left: 1px solid #d7d2cb;
}

.imedia-about-principles-grid article {
  min-height: 260px;
  padding: 27px 23px;
  border-right: 1px solid #d7d2cb;
  border-bottom: 1px solid #d7d2cb;
  transition: color 220ms ease, background 220ms ease;
}

.imedia-about-principles-grid article > span {
  color: var(--about-red);
  font-family: "Oswald", sans-serif;
  font-size: 15px;
  font-weight: 700;
}

.imedia-about-principles-grid h3 {
  margin: 72px 0 13px;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  line-height: 1.1;
  text-transform: uppercase;
}

.imedia-about-principles-grid p {
  margin-bottom: 0;
  color: #68625e;
  font-size: 13px;
  line-height: 1.6;
}

.imedia-about-office {
  position: relative;
  padding: 116px 0;
  background:
    radial-gradient(circle at 82% 36%, rgba(237,18,49,.2), transparent 36%),
    #090808;
}

.imedia-about-office-grid {
  display: grid;
  grid-template-columns: minmax(0, .76fr) minmax(0, 1.24fr);
  gap: clamp(55px, 8vw, 126px);
  align-items: center;
}

.imedia-about-office-copy h2 {
  margin: 21px 0 27px;
}

.imedia-about-office-copy p {
  margin-bottom: 18px;
  color: #aaa5a4;
  font-size: 16px;
  line-height: 1.75;
}

.imedia-about-office-copy > a {
  display: inline-flex;
  gap: 14px;
  align-items: center;
  margin-top: 16px;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-decoration: none;
  text-transform: uppercase;
}

.imedia-about-office-copy > a span {
  color: var(--about-red);
  font-size: 19px;
  transition: transform 180ms ease;
}

.imedia-about-office-gallery {
  position: relative;
  min-height: 570px;
}

.imedia-about-office-gallery figure {
  position: absolute;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  background: #161414;
  box-shadow: 0 28px 70px rgba(0,0,0,.45);
}

.imedia-about-office-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.72) contrast(1.06);
  transition: filter 300ms ease, transform 500ms cubic-bezier(.2,.75,.25,1);
}

.imedia-about-office-main {
  inset: 0 64px 78px 0;
}

.imedia-about-office-side {
  right: 0;
  bottom: 0;
  width: 47%;
  height: 260px;
  border: 8px solid #090808 !important;
}

.imedia-about-office-main figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 13px 18px;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  background: rgba(7,7,7,.88);
}

.imedia-about-ecosystem {
  padding: 112px 0 120px;
  color: #111;
  background:
    linear-gradient(rgba(255,255,255,.76), rgba(255,255,255,.76)),
    radial-gradient(circle at 12% 12%, rgba(237,18,49,.12), transparent 28%),
    var(--about-paper);
}

.imedia-about-ecosystem .imedia-about-section-head > p {
  color: #5c5652;
}

.imedia-about-ecosystem-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 62px;
}

.imedia-about-ecosystem-grid article {
  display: flex;
  min-height: 280px;
  padding: 28px;
  border: 1px solid #d8d1c8;
  border-radius: 18px;
  flex-direction: column;
  background: rgba(255,255,255,.78);
  transition: border-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

.imedia-about-ecosystem-grid h3 {
  margin: 42px 0 22px;
  font-family: "Oswald", sans-serif;
  font-size: 28px;
  line-height: 1.08;
  text-transform: uppercase;
}

.imedia-about-ecosystem-grid a {
  display: flex;
  justify-content: space-between;
  padding: 12px 0;
  border-top: 1px solid #ddd7cf;
  color: #3f3a37;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.imedia-about-ecosystem-grid a::after {
  color: var(--about-red);
  content: "↗";
}

.imedia-about-final {
  padding: 60px 0 112px;
  background: var(--about-paper);
}

.imedia-about-final-card {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(310px, .8fr);
  gap: 80px;
  align-items: end;
  padding: clamp(40px, 6vw, 78px);
  overflow: hidden;
  border-radius: 28px;
  background:
    radial-gradient(circle at 94% 110%, rgba(237,18,49,.48), transparent 36%),
    linear-gradient(118deg, #070707 0 70%, #23090e 100%);
}

.imedia-about-final h2 {
  max-width: 780px;
  margin-top: 21px;
}

.imedia-about-final-card > div:last-child p {
  margin-bottom: 25px;
  color: #b7b2b1;
  font-size: 16px;
  line-height: 1.7;
}

@media (hover: hover) {
  .imedia-about-method-grid li:hover {
    border-color: rgba(237,18,49,.55);
    background: rgba(36,19,22,.88);
    transform: translateY(-5px);
  }

  .imedia-about-principles-grid article:hover {
    color: #fff;
    background: #111;
  }

  .imedia-about-principles-grid article:hover p {
    color: #b8b3b0;
  }

  .imedia-about-office-copy > a:hover span {
    transform: translateX(5px);
  }

  .imedia-about-office-gallery figure:hover img {
    filter: saturate(1) contrast(1.03);
    transform: scale(1.025);
  }

  .imedia-about-ecosystem-grid article:hover {
    border-color: #aaa198;
    box-shadow: 0 24px 60px rgba(30,24,20,.1);
    transform: translateY(-5px);
  }
}

@keyframes imedia-about-rise {
  from {
    opacity: 0;
    transform: translateY(22px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 1100px) {
  .imedia-about-hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(380px, .82fr);
    gap: 45px;
  }

  .imedia-about-hero h1 {
    font-size: clamp(58px, 7vw, 78px);
  }

  .imedia-about-method-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .imedia-about-principles-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .imedia-about-ecosystem-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .imedia-about-hero {
    padding: 68px 0 78px;
  }

  .imedia-about-hero-grid,
  .imedia-about-story-grid,
  .imedia-about-office-grid,
  .imedia-about-final-card {
    grid-template-columns: 1fr;
  }

  .imedia-about-system {
    width: min(100%, 590px);
    margin: 0 auto;
  }

  .imedia-about-story,
  .imedia-about-method,
  .imedia-about-principles,
  .imedia-about-office,
  .imedia-about-ecosystem {
    padding-block: 86px;
  }

  .imedia-about-story-copy {
    padding-top: 0;
  }

  .imedia-about-signals {
    margin-top: 58px;
  }

  .imedia-about-signals article {
    grid-template-columns: 1fr;
    gap: 8px;
    padding-inline: 22px;
  }

  .imedia-about-office-gallery {
    min-height: 510px;
  }

  .imedia-about-final-card {
    gap: 36px;
  }
}

@media (max-width: 600px) {
  .imedia-about-hero h1 {
    margin-block: 20px 23px;
    font-size: clamp(48px, 14vw, 64px);
    line-height: .94;
  }

  .imedia-about-hero-copy > p,
  .imedia-about-story-copy p,
  .imedia-about-section-head > p,
  .imedia-about-office-copy p {
    font-size: 15px;
  }

  .imedia-about-proof {
    display: grid;
    gap: 9px;
  }

  .imedia-about-system {
    min-height: 430px;
    padding: 19px;
    border-radius: 21px;
    transform: none;
  }

  .imedia-about-system-head {
    align-items: flex-start;
  }

  .imedia-about-system-head strong {
    font-size: 18px;
  }

  .imedia-about-system-head b {
    font-size: 8px;
  }

  .imedia-about-system-map {
    height: 286px;
  }

  .imedia-about-orbit-one {
    width: 174px;
    height: 174px;
  }

  .imedia-about-orbit-two {
    width: 260px;
    height: 225px;
  }

  .imedia-about-core {
    width: 104px;
    height: 104px;
  }

  .imedia-about-core strong {
    font-size: 23px;
  }

  .imedia-about-node {
    min-width: 67px;
    padding: 7px 8px;
    font-size: 8px;
  }

  .imedia-about-node::before {
    width: 12px;
  }

  .imedia-about-node-brand { top: 28px; left: 4px; }
  .imedia-about-node-demand { top: 28px; right: 0; }
  .imedia-about-node-content { top: 120px; left: -2px; }
  .imedia-about-node-data { top: 120px; right: -2px; }
  .imedia-about-node-tech { bottom: 20px; left: 9px; }
  .imedia-about-node-sales { right: 7px; bottom: 20px; }
  .imedia-about-node-brand::before,
  .imedia-about-node-content::before,
  .imedia-about-node-tech::before { right: -13px; }
  .imedia-about-node-demand::before,
  .imedia-about-node-data::before,
  .imedia-about-node-sales::before { left: -13px; }

  .imedia-about-system-foot {
    gap: 5px;
    font-size: 7px;
  }

  .imedia-about-story h2,
  .imedia-about-section-head h2,
  .imedia-about-office h2,
  .imedia-about-final h2 {
    font-size: clamp(39px, 12vw, 52px);
  }

  .imedia-about-signals {
    grid-template-columns: 1fr;
  }

  .imedia-about-signals article {
    grid-template-columns: 82px 1fr;
    border-right: 0;
    border-bottom: 1px solid #c7c0b7;
  }

  .imedia-about-signals article:last-child {
    border-bottom: 0;
  }

  .imedia-about-signals strong {
    font-size: 44px;
  }

  .imedia-about-method-grid,
  .imedia-about-principles-grid,
  .imedia-about-ecosystem-grid {
    grid-template-columns: 1fr;
  }

  .imedia-about-method-grid {
    margin-top: 48px;
  }

  .imedia-about-method-grid li {
    min-height: 250px;
  }

  .imedia-about-method-grid li > span {
    margin-bottom: 35px;
  }

  .imedia-about-principles-grid {
    margin-top: 46px;
  }

  .imedia-about-principles-grid article {
    min-height: 210px;
  }

  .imedia-about-principles-grid h3 {
    margin-top: 50px;
  }

  .imedia-about-office-gallery {
    min-height: 380px;
  }

  .imedia-about-office-main {
    inset: 0 28px 52px 0;
  }

  .imedia-about-office-side {
    width: 52%;
    height: 165px;
  }

  .imedia-about-ecosystem-grid {
    margin-top: 48px;
  }

  .imedia-about-ecosystem-grid article {
    min-height: 245px;
  }

  .imedia-about-final {
    padding: 28px 0 76px;
  }

  .imedia-about-final-card {
    width: calc(100% - 24px);
    padding: 32px 25px;
    border-radius: 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .imedia-about-hero-copy,
  .imedia-about-system {
    animation: none;
  }
}

html {
  max-width: 100%;
  overflow-x: hidden;
  scroll-behavior: smooth;
  text-rendering: optimizeLegibility;
}

body {
  max-width: 100%;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  background: var(--imedia-ink);
  font-family: "Rubik", "Trebuchet MS", sans-serif !important;
}

.lakit-site-wrapper {
  min-height: 100vh;
  background: var(--imedia-paper);
}

#the-preloader-element {
  display: none !important;
}

body > .pswp:not(.pswp--open) {
  display: none !important;
}

.elementor-location-footer {
  background: var(--imedia-ink);
  box-shadow: 0 80px 0 var(--imedia-ink);
}

body,
button,
input,
select,
textarea,
.elementor-widget-text-editor,
.elementor-nav-menu {
  font-family: "Rubik", "Trebuchet MS", sans-serif !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title {
  font-family: "Oswald", "Arial Narrow", sans-serif;
  letter-spacing: -0.025em;
  text-wrap: balance;
}

h1,
.elementor-widget-heading h1.elementor-heading-title {
  font-size: clamp(2.5rem, 5.5vw, 5.75rem);
  line-height: 0.98;
}

p,
.elementor-widget-text-editor {
  line-height: 1.72;
}

a,
button,
input,
select,
textarea {
  transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid rgba(220, 16, 45, 0.42);
  outline-offset: 3px;
}

::selection {
  color: #fff;
  background: var(--imedia-red);
}

.elementor-location-header {
  position: static;
  border: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.elementor-location-header img {
  height: auto;
}

.elementor-location-header,
.elementor-location-header a,
.elementor-location-header span,
.elementor-location-header .elementor-nav-menu {
  font-family: "Oswald", sans-serif !important;
}

.elementor-location-header .elementor-nav-menu--main .elementor-item {
  min-height: 0;
  letter-spacing: normal;
}

.elementor-location-header .lakit-nav > .menu-item > .menu-item-link-top,
.elementor-location-header .lakit-nav > .menu-item > .menu-item-link-top .menu-text {
  color: #fff !important;
}

.elementor-location-header .lakit-nav > .menu-item.imedia-current-menu-item > .menu-item-link-top,
.elementor-location-header .lakit-nav > .menu-item.imedia-current-menu-item > .menu-item-link-top .menu-text {
  color: var(--imedia-red) !important;
  font-weight: 700;
}

.elementor-location-header .lakit-nav > .menu-item:not(.imedia-current-menu-item) > .menu-item-link-top:hover,
.elementor-location-header .lakit-nav > .menu-item:not(.imedia-current-menu-item) > .menu-item-link-top:hover .menu-text,
.elementor-location-header .lakit-nav > .menu-item:not(.imedia-current-menu-item) > .menu-item-link-top:focus-visible,
.elementor-location-header .lakit-nav > .menu-item:not(.imedia-current-menu-item) > .menu-item-link-top:focus-visible .menu-text {
  color: #fff !important;
}

.elementor-location-header .lakit-nav > .menu-item:not(.imedia-current-menu-item) > .menu-item-link-top:hover,
.elementor-location-header .lakit-nav > .menu-item:not(.imedia-current-menu-item) > .menu-item-link-top:focus-visible {
  opacity: 0.78;
}

.elementor-location-header .elementor-button {
  min-height: 0;
  padding: 12px 24px;
  border: 0;
  background: var(--imedia-red);
  box-shadow: none;
  line-height: 24px;
}

.elementor-location-header .elementor-button:hover {
  background: var(--imedia-red-deep);
  box-shadow: none;
  transform: none;
}

.elementor-location-header .imedia-whatsapp-header-cta .elementor-button-content-wrapper {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

.elementor-location-header .imedia-whatsapp-cta-icon {
  display: inline-flex;
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
  color: currentColor;
}

.elementor-location-header .imedia-whatsapp-cta-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: currentColor;
}

.elementor-location-header .imedia-mobile-menu-cta {
  display: none;
}

.elementor-location-header .imedia-submenu-toggle {
  display: none;
}

@media (min-width: 1200px) {
  .elementor-location-header .lakit-nav > .menu-item-has-children {
    position: relative;
  }

  .elementor-location-header .lakit-nav > .menu-item-has-children > .lakit-nav__sub {
    display: block !important;
    position: absolute;
    top: calc(100% + 8px) !important;
    left: 0;
    width: 292px;
    padding: 10px;
    visibility: hidden !important;
    opacity: 0 !important;
    transform: translateY(10px) !important;
    border-top: 2px solid var(--imedia-red);
    border-radius: 0 0 10px 10px;
    background: #050505;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.5);
    pointer-events: none;
    transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
    z-index: 10020;
  }

  .elementor-location-header .lakit-nav > .menu-item-has-children:hover > .lakit-nav__sub,
  .elementor-location-header .lakit-nav > .menu-item-has-children:focus-within > .lakit-nav__sub {
    top: calc(100% + 8px) !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: translateY(0) !important;
    pointer-events: auto;
  }

  .elementor-location-header .lakit-nav > .menu-item-has-children::after {
    content: "";
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    height: 10px;
  }

  .elementor-location-header .lakit-nav__sub .menu-item-link-sub {
    min-height: 38px;
    padding: 8px 10px;
    border-radius: 5px;
    color: #fff;
  }

  .elementor-location-header .lakit-nav__sub .menu-item-link-sub:hover,
  .elementor-location-header .lakit-nav__sub .menu-item-link-sub:focus-visible {
    color: var(--imedia-red);
    background: rgba(255, 255, 255, 0.06);
  }
}

.elementor-button,
button[type="submit"],
input[type="submit"],
.wpforms-submit {
  min-height: 48px;
  padding: 13px 24px;
  border: 1px solid var(--imedia-red);
  border-radius: 999px;
  color: #fff;
  background: var(--imedia-red);
  box-shadow: 0 10px 28px rgba(220, 16, 45, 0.2);
  font-weight: 700;
  line-height: 1.15;
}

.elementor-button:hover,
button[type="submit"]:hover,
input[type="submit"]:hover,
.wpforms-submit:hover {
  border-color: var(--imedia-red-deep);
  color: #fff;
  background: var(--imedia-red-deep);
  box-shadow: 0 14px 34px rgba(220, 16, 45, 0.3);
  transform: translateY(-2px);
}

.elementor-widget-image img,
.jet-listing-grid__item img,
.lakit-posts__item img,
.lakit-portfolio__item img {
  max-width: 100%;
  height: auto;
}

.jet-listing-grid__item,
.elementor-post,
.lakit-posts__item,
.lakit-portfolio__item {
  border-radius: var(--imedia-radius);
  transition: box-shadow 220ms ease, transform 220ms ease;
}

.jet-listing-grid__item:hover,
.elementor-post:hover,
.lakit-posts__item:hover,
.lakit-portfolio__item:hover {
  box-shadow: var(--imedia-shadow);
  transform: translateY(-5px);
}

.wpforms-container input:not([type="checkbox"]):not([type="radio"]),
.wpforms-container select,
.wpforms-container textarea,
form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
form select,
form textarea {
  min-height: 50px;
  border: 1px solid rgba(20, 20, 20, 0.18);
  border-radius: 12px;
  color: var(--imedia-ink);
  background: #fff;
  box-shadow: 0 5px 18px rgba(0, 0, 0, 0.035);
}

.wpforms-container textarea,
form textarea {
  min-height: 140px;
}

.wpforms-container input:focus,
.wpforms-container select:focus,
.wpforms-container textarea:focus,
form input:focus,
form select:focus,
form textarea:focus {
  border-color: var(--imedia-red);
  box-shadow: 0 0 0 4px rgba(220, 16, 45, 0.11);
}

.elementor-location-footer {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  background: #080808;
}

.elementor-location-footer a:hover,
.elementor-location-footer a:focus-visible {
  color: #ff526a;
}

.single-post .elementor-widget-theme-post-content p,
.single-post .elementor-widget-theme-post-content li {
  font-size: clamp(1rem, 1.1vw, 1.125rem);
  line-height: 1.8;
}

.single-post .elementor-widget-theme-post-content h2,
.single-post .elementor-widget-theme-post-content h3 {
  margin-top: 1.8em;
  margin-bottom: 0.7em;
}

.single-portfolio .elementor-lakit-post-title h1.lakit-post-title {
  font-family: "Oswald", sans-serif;
  line-height: 1.2;
}

.single-portfolio .elementor-element-24e66a3 .elementor-button {
  min-height: 0;
  padding: 10px 24px;
  box-shadow: none;
  line-height: 18px;
  top: 32px;
  z-index: 2;
}

.single-portfolio .elementor-element-24e66a3 .elementor-button:hover {
  box-shadow: none;
  transform: none;
}

.lakit-pagination ul.page-numbers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding-inline: 0;
}

.lakit-pagination ul.page-numbers > li {
  margin: 0;
}

@media (min-width: 768px) {
  .elementor-405 .elementor-element-7252ca9f {
    transform: translateY(24px);
  }
}

@media (max-width: 1199px) {
  .elementor-location-header .elementor-nav-menu--dropdown {
    border-top: 0;
    box-shadow: none;
  }

  .elementor-location-header .elementor-nav-menu--dropdown .elementor-item {
    min-height: 0;
  }
}

@media (max-width: 1199px) {
  html.imedia-mobile-menu-open {
    overflow: hidden;
  }

  .single-portfolio .elementor-element-24e66a3 .elementor-button {
    top: 20px;
  }

  .elementor-location-header .elementor-element-ed27c5a {
    min-height: 80px;
    height: 80px;
    padding: 0 16px;
    z-index: 9999;
  }

  .elementor-location-header .elementor-element-b7dbc91 {
    width: 100%;
    min-height: 80px;
    height: 80px;
    padding: 0;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px;
  }

  .elementor-location-header .elementor-element-c079ba1 {
    width: auto !important;
    max-width: 170px;
    flex: 0 0 auto !important;
  }

  .elementor-location-header .elementor-element-c079ba1 img {
    width: 145px;
    max-width: 100%;
  }

  .elementor-location-header .elementor-element-0e7f046 {
    width: 48px !important;
    max-width: 48px !important;
    flex: 0 0 48px !important;
    margin-left: auto;
  }

  .elementor-location-header .lakit-nav-wrap {
    position: static;
  }

  .elementor-location-header .lakit-nav__mobile-trigger {
    display: flex !important;
    width: 48px;
    height: 48px;
    margin: 0 0 0 auto;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    color: #fff;
    background: #111;
    cursor: pointer;
  }

  .elementor-location-header .lakit-nav__mobile-trigger:hover,
  .elementor-location-header .lakit-nav__mobile-trigger:focus-visible {
    border-color: var(--imedia-red);
    color: var(--imedia-red);
  }

  .elementor-location-header .lakit-nav__mobile-trigger svg {
    width: 22px;
  }

  .elementor-location-header .lakit-nav__mobile-trigger-close {
    display: none;
  }

  .elementor-location-header .lakit-nav-menuwrap {
    display: none !important;
    position: fixed;
    top: 80px;
    right: 0;
    left: 0;
    width: 100%;
    max-height: calc(100vh - 80px);
    padding: 18px 20px 24px;
    overflow-y: auto;
    border-top: 1px solid rgba(220, 16, 45, 0.7);
    background: rgba(5, 5, 5, 0.98);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.55);
  }

  .elementor-location-header .lakit-mobile-menu.imedia-menu-open .lakit-nav-menuwrap {
    display: block !important;
  }

  .elementor-location-header .lakit-mobile-menu.imedia-menu-open .lakit-nav__mobile-trigger-open {
    display: none;
  }

  .elementor-location-header .lakit-mobile-menu.imedia-menu-open .lakit-nav__mobile-trigger-close {
    display: block;
  }

  .elementor-location-header .lakit-nav,
  .elementor-location-header .lakit-nav.lakit-nav--horizontal {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  .elementor-location-header .lakit-nav > .menu-item {
    width: 100%;
  }

  .elementor-location-header .lakit-nav .menu-item-link.menu-item-link-top {
    min-height: 52px;
    padding: 13px 4px;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    color: #fff;
    font-size: 20px;
  }

  .elementor-location-header .lakit-nav .menu-item-has-children {
    position: relative;
  }

  .elementor-location-header .lakit-nav .menu-item-has-children > .menu-item-link-top {
    padding-right: 58px;
  }

  .elementor-location-header .lakit-nav .menu-item-link-top .lakit-nav-arrow {
    display: none;
  }

  .elementor-location-header .imedia-submenu-toggle {
    display: flex;
    position: absolute;
    top: 4px;
    right: 0;
    width: 44px;
    height: 44px;
    padding: 0;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    color: #fff;
    background: transparent;
    font-size: 22px;
    line-height: 1;
    z-index: 3;
    cursor: pointer;
  }

  .elementor-location-header .imedia-submenu-toggle:hover,
  .elementor-location-header .imedia-submenu-toggle:focus-visible {
    color: var(--imedia-red);
    background: rgba(255, 255, 255, 0.08);
  }

  .elementor-location-header .imedia-submenu-toggle::before {
    content: "+";
  }

  .elementor-location-header .imedia-submenu-open > .imedia-submenu-toggle::before {
    content: "−";
  }

  .elementor-location-header .lakit-nav__sub {
    display: none !important;
  }

  .elementor-location-header .lakit-nav .imedia-submenu-open > .lakit-nav__sub {
    display: block !important;
    position: static;
    width: 100%;
    padding: 6px 0 10px 18px;
    visibility: visible;
    opacity: 1;
    transform: none;
    background: #0b0b0b;
  }

  .elementor-location-header .lakit-nav .menu-item-link.menu-item-link-sub {
    min-height: 42px;
    padding: 10px 4px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 16px;
  }

  .elementor-location-header .elementor-element-84f0178 {
    display: none !important;
  }

  .elementor-location-header .imedia-mobile-menu-cta {
    display: flex;
    width: 100%;
    min-height: 50px;
    margin-top: 20px;
    align-items: center;
    justify-content: center;
  }

  .elementor-location-header .elementor-element-aa94b03 {
    min-height: 80px;
    height: 80px;
  }

}

@media (max-width: 767px) {

  h1,
  .elementor-widget-heading h1.elementor-heading-title {
    font-size: clamp(2.25rem, 12vw, 4.2rem);
    line-height: 1.02;
  }

  .elementor-button,
  button[type="submit"],
  input[type="submit"],
  .wpforms-submit {
    min-height: 50px;
  }

  .jet-listing-grid__item:hover,
  .elementor-post:hover,
  .lakit-posts__item:hover,
  .lakit-portfolio__item:hover {
    transform: none;
  }

  input,
  select,
  textarea {
    font-size: 16px;
  }
}

/* BLOG ARTICLE */
.imedia-blog-post {
  background: #f3f0ea;
}

.imedia-blog-post .elementor-location-single {
  background: #f3f0ea;
}

.imedia-blog-post .elementor-location-single > .elementor-element-865679f {
  display: none !important;
}

.imedia-blog-post-hero {
  position: relative;
  overflow: hidden;
  padding: 68px 0 72px;
  color: #fff;
  background:
    radial-gradient(circle at 82% 25%, rgba(237,18,49,.22), transparent 30%),
    linear-gradient(112deg, #050505 0%, #090909 62%, #16070a 100%);
}

.imedia-blog-post-hero::before {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(255,255,255,.12) 1.2px, transparent 1.3px);
  background-position: center;
  background-size: 40px 40px;
  opacity: .45;
  content: "";
  pointer-events: none;
}

.imedia-blog-post-hero::after {
  position: absolute;
  right: 6%;
  bottom: -130px;
  width: 360px;
  height: 360px;
  border: 1px solid rgba(237,18,49,.25);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.imedia-blog-post-shell {
  position: relative;
  z-index: 1;
  width: min(100% - 48px, 1280px);
  margin-inline: auto;
}

.imedia-blog-post-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin-bottom: 62px;
  color: #777;
  font-family: "Rubik", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-blog-post-breadcrumb a {
  color: #aaa;
}

.imedia-blog-post-breadcrumb a:hover,
.imedia-blog-post-breadcrumb a:focus-visible {
  color: #fff;
}

.imedia-blog-post-breadcrumb strong {
  overflow: hidden;
  max-width: min(55vw, 540px);
  color: #ed1231;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.imedia-blog-post-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 11px 22px;
  margin-bottom: 22px;
  font-family: "Rubik", sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-blog-post-meta span {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #ed1231;
}

.imedia-blog-post-meta span::before {
  width: 38px;
  height: 2px;
  background: #ed1231;
  content: "";
}

.imedia-blog-post-meta b {
  color: #777;
  font-weight: 700;
}

.imedia-blog-post-hero h1 {
  max-width: 1120px;
  margin: 0;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: clamp(52px, 6.2vw, 88px);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.02;
  text-wrap: balance;
  text-transform: uppercase;
}

.imedia-blog-post-hero > .imedia-blog-post-shell > p {
  max-width: 680px;
  margin: 28px 0 0;
  color: #aaa;
  font-family: "Rubik", sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.imedia-blog-post .elementor-location-single > .elementor-element-8b37483 {
  width: 100% !important;
  max-width: none !important;
  padding: 64px 0 112px !important;
  background: #f3f0ea !important;
  --padding-top: 64px !important;
  --padding-right: 0 !important;
  --padding-bottom: 112px !important;
  --padding-left: 0 !important;
}

.imedia-blog-post .elementor-element-8b37483 > .e-con-inner {
  display: block !important;
  width: min(100% - 48px, 1120px) !important;
  max-width: 1120px !important;
  margin-inline: auto !important;
}

.imedia-blog-post .elementor-element-b063732 {
  width: 100% !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
}

.imedia-blog-post .lakit-post-featured-image {
  overflow: hidden;
  width: 100%;
  border: 1px solid #d5d0c7;
  background: #111;
  box-shadow: 0 25px 65px rgba(27,20,15,.12);
}

.imedia-blog-post .lakit-post-featured-image img {
  display: block;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  object-fit: cover;
}

.imedia-blog-post .elementor-widget-theme-post-content {
  width: min(100%, 800px) !important;
  max-width: 800px !important;
  margin: 68px auto 0 !important;
  padding: 0 !important;
  color: #282522;
  font-family: "Rubik", sans-serif;
}

.imedia-blog-post .elementor-widget-theme-post-content > p,
.imedia-blog-post .elementor-widget-theme-post-content li {
  color: #35312d;
  font-family: "Rubik", sans-serif;
  font-size: 18px !important;
  line-height: 1.85 !important;
}

.imedia-blog-post .elementor-widget-theme-post-content > p {
  margin: 0 0 1.55em;
}

.imedia-blog-post .elementor-widget-theme-post-content > p:first-child {
  margin-bottom: 2.2em;
  padding-bottom: 2em;
  border-bottom: 1px solid #ccc5ba;
  color: #171513;
  font-size: 22px !important;
  font-weight: 500;
  line-height: 1.7 !important;
}

.imedia-blog-post .elementor-widget-theme-post-content h2,
.imedia-blog-post .elementor-widget-theme-post-content h3,
.imedia-blog-post .elementor-widget-theme-post-content h4 {
  margin: 1.7em 0 .65em !important;
  color: #0b0b0b;
  font-family: "Oswald", sans-serif !important;
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.13;
  text-transform: uppercase;
  text-wrap: balance;
}

.imedia-blog-post .elementor-widget-theme-post-content h2 {
  font-size: clamp(34px, 4vw, 48px) !important;
}

.imedia-blog-post .elementor-widget-theme-post-content h3 {
  font-size: clamp(29px, 3.2vw, 39px) !important;
}

.imedia-blog-post .elementor-widget-theme-post-content h4 {
  font-size: 25px !important;
}

.imedia-blog-post .elementor-widget-theme-post-content a {
  color: #cf0d29;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}

.imedia-blog-post .elementor-widget-theme-post-content ul,
.imedia-blog-post .elementor-widget-theme-post-content ol {
  margin: 1.2em 0 1.8em;
  padding-left: 1.35em;
}

.imedia-blog-post .elementor-widget-theme-post-content li {
  margin-bottom: .7em;
  padding-left: .35em;
}

.imedia-blog-post .elementor-widget-theme-post-content blockquote {
  margin: 2.2em 0;
  padding: 8px 0 8px 28px;
  border-left: 3px solid #ed1231;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 28px;
  line-height: 1.4;
}

.imedia-blog-post .elementor-widget-theme-post-content img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: 38px auto;
}

@media (max-width: 767px) {
  .imedia-blog-post-hero {
    padding: 42px 0 48px;
  }

  .imedia-blog-post-shell,
  .imedia-blog-post .elementor-element-8b37483 > .e-con-inner {
    width: min(100% - 32px, 680px) !important;
  }

  .imedia-blog-post-breadcrumb {
    margin-bottom: 42px;
  }

  .imedia-blog-post-breadcrumb strong {
    max-width: 42vw;
  }

  .imedia-blog-post-meta {
    margin-bottom: 18px;
  }

  .imedia-blog-post-hero h1 {
    font-size: clamp(39px, 11.7vw, 54px);
    line-height: 1.04;
  }

  .imedia-blog-post-hero > .imedia-blog-post-shell > p {
    margin-top: 20px;
    font-size: 14px;
  }

  .imedia-blog-post .elementor-location-single > .elementor-element-8b37483 {
    padding: 28px 0 72px !important;
    --padding-top: 28px !important;
    --padding-bottom: 72px !important;
  }

  .imedia-blog-post .elementor-widget-theme-post-content {
    margin-top: 42px !important;
  }

  .imedia-blog-post .elementor-widget-theme-post-content > p,
  .imedia-blog-post .elementor-widget-theme-post-content li {
    font-size: 16px !important;
    line-height: 1.78 !important;
  }

  .imedia-blog-post .elementor-widget-theme-post-content > p:first-child {
    font-size: 19px !important;
    line-height: 1.65 !important;
  }
}

/* Inbound Marketing service page */
.imedia-service-page {
  color: #111;
  background: #f2f0eb;
  font-family: "Rubik", "Trebuchet MS", sans-serif;
}

.imedia-service-page *,
.imedia-service-page *::before,
.imedia-service-page *::after {
  box-sizing: border-box;
}

.imedia-service-shell {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
}

.imedia-service-breadcrumb {
  position: relative;
  z-index: 4;
  width: 100%;
  border-top: 1px solid rgba(255,255,255,.06);
  border-bottom: 1px solid rgba(255,255,255,.12);
  background: #080808;
  color: #8f8f8f;
}

.imedia-service-breadcrumb-inner {
  min-height: 50px;
  display: flex;
  align-items: center;
  gap: 11px;
  overflow-x: auto;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .055em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  scrollbar-width: none;
}

.imedia-service-breadcrumb-inner::-webkit-scrollbar {
  display: none;
}

.imedia-service-breadcrumb a {
  color: #a7a7a7;
  text-decoration: none;
  transition: color .2s ease;
}

.imedia-service-breadcrumb a:hover,
.imedia-service-breadcrumb a:focus-visible {
  color: #fff;
}

.imedia-service-breadcrumb span {
  color: #494949;
}

.imedia-service-breadcrumb strong {
  color: #ed1231;
  font-weight: 800;
}

@media (max-width: 767px) {
  .imedia-service-breadcrumb-inner {
    min-height: 44px;
    gap: 8px;
    font-size: 10px;
  }
}

/* Contact page */
body.imedia-contact-rebuilt {
  background: #080808;
}

.imedia-contact-page {
  --contact-red: #ed1231;
  --contact-paper: #f3f0e9;
  overflow: hidden;
  background: #080808;
  color: #fff;
  font-family: "Rubik", "Trebuchet MS", sans-serif;
}

.imedia-contact-page *,
.imedia-contact-page *::before,
.imedia-contact-page *::after {
  box-sizing: border-box;
}

.imedia-contact-page h1,
.imedia-contact-page h2,
.imedia-contact-page p {
  margin-top: 0;
}

.imedia-contact-hero {
  position: relative;
  padding: clamp(76px, 8vw, 128px) 0 clamp(84px, 9vw, 144px);
  background:
    radial-gradient(circle at 82% 20%, rgba(237, 18, 49, 0.24), transparent 30%),
    linear-gradient(135deg, #050505 0%, #0a0a0b 58%, #17070a 100%);
}

.imedia-contact-hero::before {
  position: absolute;
  inset: 0;
  opacity: 0.22;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(to bottom, #000, transparent 88%);
  content: "";
}

.imedia-contact-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(480px, 1.12fr);
  gap: clamp(54px, 7vw, 108px);
  align-items: center;
}

.imedia-contact-copy h1 {
  max-width: 700px;
  margin: 24px 0 28px;
  color: #fff;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(58px, 6.5vw, 100px);
  font-weight: 700;
  line-height: 0.91;
  letter-spacing: -0.045em;
  text-transform: uppercase;
}

.imedia-contact-copy h1 em {
  display: block;
  color: var(--contact-red);
  font-style: normal;
}

.imedia-contact-copy > p {
  max-width: 620px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 18px;
  line-height: 1.7;
}

.imedia-contact-proof {
  display: grid;
  gap: 0;
  margin-top: 42px;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}

.imedia-contact-proof span {
  display: flex;
  gap: 16px;
  padding: 15px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.78);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.045em;
  text-transform: uppercase;
}

.imedia-contact-proof b {
  color: var(--contact-red);
  font-family: "Oswald", "Arial Narrow", sans-serif;
}

.imedia-contact-form-card {
  position: relative;
  padding: clamp(30px, 4vw, 54px);
  overflow: hidden;
  border: 1px solid rgba(237, 18, 49, .1);
  border-radius: 28px;
  background: var(--contact-paper);
  color: #101010;
  box-shadow: 0 36px 100px rgba(0, 0, 0, 0.48);
}

.imedia-contact-form-card .imedia-spotlight-card-glow::before {
  background:
    radial-gradient(
      340px circle at var(--imedia-spot-x) var(--imedia-spot-y),
      rgba(237, 18, 49, .12),
      rgba(237, 18, 49, .035) 38%,
      transparent 70%
    );
}

.imedia-contact-form-card .imedia-spotlight-card-glow::after {
  background:
    radial-gradient(
      240px circle at var(--imedia-spot-x) var(--imedia-spot-y),
      #ed1231,
      rgba(237, 18, 49, .55) 32%,
      transparent 74%
    );
}

.imedia-contact-form-card.imedia-spotlight-card[data-spotlight-active="true"] {
  border-color: rgba(237, 18, 49, .24);
  box-shadow:
    0 38px 105px rgba(0, 0, 0, .5),
    0 0 52px rgba(237, 18, 49, .08);
}

.imedia-contact-form-card::after {
  position: absolute;
  top: 0;
  right: 46px;
  width: 110px;
  height: 3px;
  background: var(--contact-red);
  content: "";
}

.imedia-contact-form-label,
.imedia-contact-section-heading > span,
.imedia-contact-address > span,
.imedia-contact-socials > span {
  color: var(--contact-red);
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.imedia-contact-form-card h2 {
  max-width: 520px;
  margin: 12px 0 14px;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(38px, 4vw, 58px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.035em;
  text-transform: uppercase;
}

.imedia-contact-form-card > p {
  max-width: 600px;
  margin-bottom: 28px;
  color: #5d5a55;
  font-size: 15px;
  line-height: 1.6;
}

.imedia-contact-form-card .wpforms-container {
  margin: 0 !important;
}

.imedia-contact-form-card .wpforms-field {
  padding: 0 0 15px !important;
}

.imedia-contact-form-card #wpforms-558-field_6-container {
  display: none !important;
}

.imedia-contact-form-card .wpforms-field-label {
  display: block !important;
  margin-bottom: 7px !important;
  color: #161616 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.imedia-contact-form-card .wpforms-required-label {
  color: var(--contact-red) !important;
}

.imedia-contact-form-card input[type="text"],
.imedia-contact-form-card input[type="email"],
.imedia-contact-form-card textarea {
  width: 100% !important;
  max-width: none !important;
  min-height: 52px !important;
  padding: 14px 16px !important;
  border: 1px solid #d1cbc1 !important;
  border-radius: 10px !important;
  outline: 0 !important;
  background: #fff !important;
  color: #141414 !important;
  font: 15px/1.4 "Rubik", "Trebuchet MS", sans-serif !important;
  box-shadow: none !important;
  transition: border-color 180ms ease, box-shadow 180ms ease !important;
}

.imedia-contact-form-card textarea {
  min-height: 132px !important;
  resize: vertical;
}

.imedia-contact-form-card input::placeholder,
.imedia-contact-form-card textarea::placeholder {
  color: #96918a;
  opacity: 1;
}

.imedia-contact-form-card input:focus,
.imedia-contact-form-card textarea:focus {
  border-color: var(--contact-red) !important;
  box-shadow: 0 0 0 3px rgba(237, 18, 49, 0.12) !important;
}

.imedia-contact-form-card .wpforms-submit-container {
  margin-top: 5px !important;
}

.imedia-contact-form-card button[type="submit"] {
  min-width: 210px !important;
  min-height: 54px !important;
  padding: 14px 25px !important;
  border: 1px solid var(--contact-red) !important;
  border-radius: 999px !important;
  background: var(--contact-red) !important;
  color: #fff !important;
  font-family: "Oswald", "Arial Narrow", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform 180ms ease, background 180ms ease !important;
}

.imedia-contact-form-card button[type="submit"]::after {
  margin-left: 12px;
  content: "→";
}

.imedia-contact-form-card button[type="submit"]:hover {
  transform: translateY(-2px);
  background: #c90d28 !important;
}

.imedia-contact-privacy {
  display: block;
  margin-top: 18px;
  color: #77716a;
  font-size: 10px;
  line-height: 1.55;
}

.imedia-contact-privacy a {
  color: #161616;
  text-decoration: underline;
}

.imedia-contact-channels {
  padding: clamp(80px, 9vw, 132px) 0;
  background: var(--contact-paper);
  color: #101010;
}

.imedia-contact-section-heading {
  display: grid;
  grid-template-columns: 0.45fr 1.55fr;
  gap: 40px;
  align-items: start;
  margin-bottom: 48px;
}

.imedia-contact-section-heading h2 {
  max-width: 820px;
  margin: 0;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(42px, 5.2vw, 72px);
  line-height: 0.98;
  letter-spacing: -0.035em;
  text-transform: uppercase;
}

.imedia-contact-channel-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid #aaa39a;
  border-left: 1px solid #aaa39a;
}

.imedia-contact-channel-grid > a {
  position: relative;
  display: flex;
  min-height: 230px;
  padding: 28px;
  flex-direction: column;
  border-right: 1px solid #aaa39a;
  border-bottom: 1px solid #aaa39a;
  color: #111;
  text-decoration: none;
  transition: color 220ms ease, background 220ms ease;
}

.imedia-contact-channel-grid > a > span {
  color: var(--contact-red);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.imedia-contact-channel-grid strong {
  max-width: 100%;
  margin: auto 0 12px;
  overflow-wrap: anywhere;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(21px, 2vw, 29px);
  line-height: 1.12;
}

.imedia-contact-channel-grid small {
  color: #716d67;
  font-size: 12px;
}

.imedia-contact-channel-grid i {
  position: absolute;
  top: 24px;
  right: 26px;
  font-size: 22px;
  font-style: normal;
}

.imedia-contact-channel-grid > a:hover,
.imedia-contact-channel-grid > a:focus-visible {
  outline: 0;
  background: #111;
  color: #fff;
}

.imedia-contact-channel-grid > a:hover small,
.imedia-contact-channel-grid > a:focus-visible small {
  color: #aaa;
}

.imedia-contact-location {
  position: relative;
  padding: clamp(84px, 9vw, 140px) 0 44px;
  background:
    radial-gradient(circle at 85% 44%, rgba(237, 18, 49, 0.22), transparent 27%),
    #080808;
}

.imedia-contact-location-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: clamp(64px, 10vw, 160px);
  align-items: start;
}

.imedia-contact-location h2 {
  max-width: 780px;
  margin: 20px 0 22px;
  color: #fff;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(48px, 6vw, 86px);
  line-height: 0.94;
  letter-spacing: -0.04em;
  text-transform: uppercase;
}

.imedia-contact-location p {
  max-width: 650px;
  color: #9d9d9d;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-contact-address {
  padding: 28px 0 28px 28px;
  border-left: 2px solid var(--contact-red);
}

.imedia-contact-address strong {
  display: block;
  margin: 18px 0 26px;
  color: #fff;
  font-size: 18px;
  line-height: 1.7;
}

.imedia-contact-address a {
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
  text-transform: uppercase;
}

.imedia-contact-address a span {
  color: var(--contact-red);
}

.imedia-contact-socials {
  display: flex;
  gap: 24px;
  align-items: center;
  margin-top: 84px;
  padding-top: 28px;
  border-top: 1px solid rgba(255, 255, 255, 0.17);
}

.imedia-contact-socials > span {
  margin-right: auto;
}

.imedia-contact-socials a {
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
}

.imedia-contact-socials a:hover,
.imedia-contact-socials a:focus-visible {
  color: var(--contact-red);
}

@media (max-width: 1023px) {
  .imedia-contact-hero-grid,
  .imedia-contact-location-grid {
    grid-template-columns: 1fr;
  }

  .imedia-contact-copy {
    max-width: 780px;
  }

  .imedia-contact-form-card {
    max-width: 760px;
  }

  .imedia-contact-section-heading {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .imedia-contact-channel-grid {
    grid-template-columns: 1fr;
  }

  .imedia-contact-channel-grid > a {
    min-height: 170px;
  }
}

@media (max-width: 767px) {
  .imedia-contact-hero {
    padding: 68px 0 76px;
  }

  .imedia-contact-hero-grid {
    gap: 46px;
  }

  .imedia-contact-copy h1 {
    font-size: clamp(49px, 15vw, 67px);
  }

  .imedia-contact-copy > p {
    font-size: 16px;
  }

  .imedia-contact-form-card {
    padding: 28px 20px;
    border-radius: 20px;
  }

  .imedia-contact-form-card h2 {
    font-size: 38px;
  }

  .imedia-contact-form-card button[type="submit"] {
    width: 100% !important;
  }

  .imedia-contact-channels {
    padding: 76px 0;
  }

  .imedia-contact-channel-grid > a {
    min-height: 156px;
    padding: 24px;
  }

  .imedia-contact-location {
    padding: 76px 0 36px;
  }

  .imedia-contact-location h2 {
    font-size: clamp(43px, 13vw, 58px);
  }

  .imedia-contact-address {
    padding-left: 20px;
  }

  .imedia-contact-socials {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-top: 60px;
  }

  .imedia-contact-socials > span {
    grid-column: 1 / -1;
  }
}

.imedia-service-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #ff334e;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.imedia-service-kicker::before {
  width: 30px;
  height: 2px;
  background: currentColor;
  content: "";
}

.imedia-service-kicker-dark {
  color: var(--imedia-red);
}

.imedia-service-page h1,
.imedia-service-page h2,
.imedia-service-page h3,
.imedia-service-page p {
  margin-top: 0;
}

.imedia-service-page h1,
.imedia-service-page h2,
.imedia-service-page h3 {
  text-wrap: balance;
}

.imedia-service-page h2 {
  margin-bottom: 20px;
  font-size: clamp(2.3rem, 4.3vw, 4.4rem);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -0.035em;
}

.imedia-service-page p {
  color: #5f5d59;
  font-size: 17px;
  line-height: 1.68;
}

.imedia-inbound-hero {
  position: relative;
  min-height: 760px;
  padding: 172px 0 100px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 76% 28%, rgba(220, 16, 45, 0.24), transparent 31%),
    linear-gradient(135deg, #050505 0%, #0b0b0c 56%, #13070a 100%);
}

.imedia-inbound-hero::before {
  position: absolute;
  inset: 0;
  opacity: 0.25;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(to bottom, #000, transparent 82%);
  content: "";
}

.imedia-inbound-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(420px, 0.92fr);
  gap: 76px;
  align-items: center;
  z-index: 1;
}

.imedia-inbound-hero h1 {
  max-width: 760px;
  margin: 22px 0 26px;
  color: #fff;
  font-size: clamp(3.4rem, 5.7vw, 6rem);
  font-weight: 700;
  line-height: 0.94;
  letter-spacing: -0.045em;
}

.imedia-service-lead {
  max-width: 690px;
  margin-bottom: 32px !important;
  color: rgba(255, 255, 255, 0.73) !important;
  font-size: 19px !important;
}

.imedia-service-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.imedia-service-button {
  display: inline-flex;
  min-height: 54px;
  padding: 15px 24px;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
}

.imedia-service-button-primary {
  color: #fff;
  border-color: var(--imedia-red);
  background: var(--imedia-red);
  box-shadow: 0 16px 36px rgba(220, 16, 45, 0.28);
}

.imedia-service-button-primary:hover {
  color: #fff;
  border-color: #ff2845;
  background: #ff2845;
  transform: translateY(-2px);
}

.imedia-service-button-ghost {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.03);
}

.imedia-service-button-ghost:hover {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.62);
  background: rgba(255, 255, 255, 0.08);
}

.imedia-inbound-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 30px 0 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.64);
  font-size: 13px;
  list-style: none;
}

.imedia-inbound-proof li {
  position: relative;
  padding-left: 14px;
}

.imedia-inbound-proof li::before {
  position: absolute;
  top: 0.7em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ff334e;
  content: "";
}

.imedia-spotlight-card {
  --imedia-spot-x: 72%;
  --imedia-spot-y: 24%;
  --imedia-spot-active: 0;
  isolation: isolate;
  transition: border-color 220ms ease, box-shadow 220ms ease;
}

.imedia-inbound-engine {
  position: relative;
  padding: 24px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 24px;
  background: rgba(15, 15, 17, 0.9);
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.48);
  transform: rotate(1deg);
}

.imedia-spotlight-card > :not(.imedia-spotlight-card-glow) {
  position: relative;
  z-index: 1;
}

.imedia-spotlight-card-glow {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border-radius: inherit;
  pointer-events: none;
  z-index: 0;
}

.imedia-spotlight-card-glow::before,
.imedia-spotlight-card-glow::after {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  content: "";
  opacity: var(--imedia-spot-active);
  transition: opacity 220ms ease;
}

.imedia-spotlight-card-glow::before {
  background:
    radial-gradient(
      280px circle at var(--imedia-spot-x) var(--imedia-spot-y),
      rgba(237, 18, 49, 0.17),
      rgba(237, 18, 49, 0.055) 34%,
      transparent 68%
    );
}

.imedia-spotlight-card-glow::after {
  padding: 1px;
  background:
    radial-gradient(
      210px circle at var(--imedia-spot-x) var(--imedia-spot-y),
      rgba(255, 255, 255, 0.96),
      #ed1231 30%,
      transparent 72%
    );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  mask-composite: exclude;
}

.imedia-spotlight-card[data-spotlight-active="true"] {
  border-color: rgba(255, 255, 255, 0.2);
  box-shadow:
    0 32px 90px rgba(0, 0, 0, 0.48),
    0 0 54px rgba(237, 18, 49, 0.09);
}

.imedia-inbound-engine::after {
  position: absolute;
  right: -100px;
  bottom: -130px;
  width: 270px;
  height: 270px;
  border: 1px solid rgba(255, 39, 67, 0.44);
  border-radius: 50%;
  box-shadow: 0 0 0 42px rgba(220, 16, 45, 0.05), 0 0 0 82px rgba(220, 16, 45, 0.03);
  content: "";
}

@media (prefers-reduced-motion: reduce) {
  .imedia-inbound-engine,
  .imedia-spotlight-card-glow::before,
  .imedia-spotlight-card-glow::after {
    transition: none;
  }
}

.imedia-inbound-engine-top,
.imedia-inbound-engine-foot {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.imedia-inbound-engine-top {
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.imedia-inbound-engine-top span {
  color: rgba(255, 255, 255, 0.48);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.imedia-inbound-engine-top strong {
  color: #63e6a8;
  font-size: 12px;
}

.imedia-inbound-flow {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 12px;
  margin: 22px 0;
  align-items: center;
}

.imedia-inbound-flow div {
  display: flex;
  min-height: 110px;
  padding: 14px;
  flex-direction: column;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.035);
}

.imedia-inbound-flow div:nth-of-type(n + 3) {
  margin-top: 0;
}

.imedia-inbound-flow span {
  margin-bottom: 12px;
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 12px;
}

.imedia-inbound-flow strong {
  margin-bottom: 3px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
}

.imedia-inbound-flow small {
  color: rgba(255, 255, 255, 0.45);
  font-size: 11px;
}

.imedia-inbound-flow i {
  color: #ff334e;
  font-style: normal;
}

.imedia-inbound-flow i:nth-of-type(2) {
  display: none;
}

.imedia-inbound-flow div:nth-of-type(3),
.imedia-inbound-flow div:nth-of-type(4) {
  grid-row: 2;
}

.imedia-inbound-flow div:nth-of-type(3) {
  grid-column: 1;
}

.imedia-inbound-flow div:nth-of-type(4) {
  grid-column: 3;
}

.imedia-inbound-flow i:nth-of-type(3) {
  grid-row: 2;
  grid-column: 2;
}

.imedia-inbound-chart {
  display: flex;
  height: 96px;
  padding: 12px 8px 0;
  gap: 12px;
  align-items: flex-end;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.imedia-inbound-chart span {
  width: 100%;
  height: 24%;
  border-radius: 4px 4px 0 0;
  background: linear-gradient(to top, #9c0b22, #ff334e);
}

.imedia-inbound-chart span:nth-child(2) { height: 39%; }
.imedia-inbound-chart span:nth-child(3) { height: 33%; }
.imedia-inbound-chart span:nth-child(4) { height: 58%; }
.imedia-inbound-chart span:nth-child(5) { height: 72%; }
.imedia-inbound-chart span:nth-child(6) { height: 91%; }

.imedia-inbound-engine-foot {
  position: relative;
  margin-top: 16px;
  color: rgba(255, 255, 255, 0.52);
  font-size: 11px;
  z-index: 1;
}

.imedia-inbound-engine-foot span {
  display: inline-flex;
  gap: 6px;
  align-items: center;
}

.imedia-inbound-engine-foot b {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #ff334e;
}

.imedia-inbound-principle,
.imedia-inbound-outcomes,
.imedia-inbound-deliverables,
.imedia-inbound-authority,
.imedia-inbound-faq {
  padding: 104px 0;
}

.imedia-inbound-principle {
  background: #fff;
}

.imedia-inbound-principle-grid {
  display: grid;
  grid-template-columns: 1fr 0.78fr;
  gap: 90px;
  align-items: start;
}

.imedia-inbound-principle h2 {
  max-width: 730px;
  margin-top: 20px;
}

.imedia-inbound-principle-grid > div:last-child {
  padding-top: 35px;
}

.imedia-inbound-principle-grid > div:last-child p:first-child {
  color: #171717;
  font-size: 20px;
  font-weight: 600;
}

.imedia-service-heading {
  max-width: 780px;
  margin-bottom: 48px;
}

.imedia-service-heading h2 {
  margin-top: 18px;
}

.imedia-inbound-outcomes {
  border-top: 1px solid #ddd9d1;
  background: #f2f0eb;
}

.imedia-inbound-outcome-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.imedia-inbound-outcome-grid article {
  min-height: 330px;
  padding: 28px;
  border: 1px solid #dcd8d0;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.7);
  transition: border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.imedia-inbound-outcome-grid article:hover {
  border-color: rgba(220, 16, 45, 0.55);
  box-shadow: 0 20px 50px rgba(39, 34, 31, 0.08);
  transform: translateY(-5px);
}

.imedia-card-index {
  display: block;
  margin-bottom: 72px;
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 14px;
  font-weight: 700;
}

.imedia-inbound-outcome-grid h3 {
  margin-bottom: 12px;
  color: #111;
  font-size: 25px;
  line-height: 1.1;
}

.imedia-inbound-outcome-grid p {
  margin-bottom: 0;
  font-size: 15px;
}

.imedia-inbound-method {
  padding: 112px 0;
  color: #fff;
  background:
    linear-gradient(120deg, rgba(220, 16, 45, 0.08), transparent 42%),
    #080808;
}

.imedia-service-heading-light h2 {
  color: #fff;
}

.imedia-service-heading-light p {
  color: rgba(255, 255, 255, 0.6);
}

.imedia-inbound-method-list {
  margin: 58px 0 0;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  list-style: none;
}

.imedia-inbound-method-list li {
  display: grid;
  grid-template-columns: 90px 1fr 280px;
  gap: 30px;
  padding: 32px 0;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.imedia-inbound-method-list > li > span {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 16px;
}

.imedia-inbound-method-list h3 {
  margin-bottom: 8px;
  color: #fff;
  font-size: 27px;
}

.imedia-inbound-method-list p {
  max-width: 610px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.6);
  font-size: 15px;
}

.imedia-inbound-method-list small {
  color: rgba(255, 255, 255, 0.48);
  font-size: 13px;
  text-align: right;
}

.imedia-inbound-deliverables {
  background: #fff;
}

.imedia-inbound-deliverables-grid {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 94px;
  align-items: start;
}

.imedia-inbound-deliverables-copy {
  position: sticky;
  top: 130px;
}

.imedia-inbound-deliverables-copy h2 {
  margin-top: 18px;
  font-size: clamp(2.3rem, 3.6vw, 3.75rem);
}

.imedia-service-text-link {
  display: inline-flex;
  margin-top: 12px;
  gap: 12px;
  align-items: center;
  color: var(--imedia-red);
  font-weight: 700;
}

.imedia-service-text-link:hover {
  color: var(--imedia-red-deep);
  gap: 17px;
}

.imedia-inbound-deliverables-list {
  border-top: 1px solid #d9d5cd;
}

.imedia-inbound-deliverables-list article {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 20px;
  padding: 26px 0;
  border-bottom: 1px solid #d9d5cd;
}

.imedia-inbound-deliverables-list article > span {
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.imedia-inbound-deliverables-list h3 {
  margin-bottom: 7px;
  color: #111;
  font-size: 22px;
}

.imedia-inbound-deliverables-list p {
  margin-bottom: 0;
  font-size: 15px;
}

.imedia-inbound-alignment {
  padding: 0 0 104px;
  background: #fff;
}

.imedia-inbound-alignment-card {
  display: grid;
  grid-template-columns: 1fr 0.72fr;
  gap: 80px;
  padding: 64px;
  color: #fff;
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 74, 96, 0.34), transparent 31%),
    var(--imedia-red);
  box-shadow: 0 24px 65px rgba(137, 5, 26, 0.22);
}

.imedia-inbound-alignment-card h2 {
  margin-top: 18px;
  color: #fff;
  font-size: clamp(2.3rem, 3.7vw, 3.9rem);
}

.imedia-inbound-alignment-card .imedia-service-kicker,
.imedia-inbound-alignment-card p,
.imedia-inbound-alignment-card li {
  color: #fff;
}

.imedia-inbound-alignment-card p {
  font-size: 16px;
}

.imedia-inbound-alignment-card ul {
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-inbound-alignment-card li {
  padding: 13px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.26);
  font-size: 14px;
  font-weight: 600;
}

.imedia-inbound-alignment-card li::before {
  margin-right: 10px;
  content: "✓";
}

.imedia-inbound-authority {
  color: #fff;
  background: #0b0b0b;
}

.imedia-inbound-authority-grid {
  display: grid;
  grid-template-columns: 0.65fr 1.35fr;
  gap: 100px;
  align-items: center;
}

.imedia-inbound-since {
  display: flex;
  gap: 22px;
  align-items: flex-end;
}

.imedia-inbound-since strong {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: clamp(5.8rem, 10vw, 9rem);
  line-height: 0.78;
  letter-spacing: -0.06em;
}

.imedia-inbound-since span {
  max-width: 180px;
  color: rgba(255, 255, 255, 0.58);
  font-size: 13px;
  line-height: 1.45;
}

.imedia-inbound-authority h2 {
  color: #fff;
}

.imedia-inbound-authority p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.62);
}

.imedia-inbound-faq {
  background: #f2f0eb;
}

.imedia-inbound-faq-grid {
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 90px;
  align-items: start;
}

.imedia-inbound-faq-grid h2 {
  margin-top: 18px;
  font-size: clamp(2.3rem, 3.8vw, 3.9rem);
}

.imedia-inbound-faq-list {
  border-top: 1px solid #cec9c0;
}

.imedia-inbound-faq-list details {
  border-bottom: 1px solid #cec9c0;
}

.imedia-inbound-faq-list summary {
  display: flex;
  min-height: 78px;
  padding: 20px 0;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  list-style: none;
}

.imedia-inbound-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-inbound-faq-list summary span {
  display: inline-flex;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  align-items: center;
  justify-content: center;
  border: 1px solid #bbb6ac;
  border-radius: 50%;
  color: var(--imedia-red);
}

.imedia-inbound-faq-list details[open] summary span {
  transform: rotate(45deg);
}

.imedia-inbound-faq-list details p {
  max-width: 680px;
  margin: -5px 54px 24px 0;
  font-size: 15px;
}

.imedia-inbound-final-cta {
  padding: 110px 0 120px;
  color: #fff;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(220, 16, 45, 0.42), transparent 42%),
    #070707;
}

.imedia-inbound-final-cta .imedia-service-shell {
  max-width: 930px;
}

.imedia-inbound-final-cta .imedia-service-kicker {
  justify-content: center;
}

.imedia-inbound-final-cta h2 {
  margin: 22px 0;
  color: #fff;
  font-size: clamp(2.7rem, 5vw, 5rem);
}

.imedia-inbound-final-cta p {
  max-width: 720px;
  margin: 0 auto 32px;
  color: rgba(255, 255, 255, 0.65);
}

.imedia-service-button-light {
  color: #111;
  background: #fff;
}

.imedia-service-button-light:hover {
  color: #111;
  background: #f5dfe3;
  transform: translateY(-2px);
}

@media (max-width: 1199px) {
  .imedia-inbound-hero {
    min-height: auto;
    padding-top: 140px;
  }

  .imedia-inbound-hero-grid {
    grid-template-columns: 1fr;
    gap: 54px;
  }

  .imedia-inbound-hero-copy {
    max-width: 840px;
  }

  .imedia-inbound-engine {
    width: min(720px, 100%);
    transform: none;
  }

  .imedia-inbound-outcome-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-inbound-outcome-grid article {
    min-height: 280px;
  }

  .imedia-card-index {
    margin-bottom: 48px;
  }
}

@media (max-width: 900px) {
  .imedia-inbound-principle-grid,
  .imedia-inbound-deliverables-grid,
  .imedia-inbound-alignment-card,
  .imedia-inbound-authority-grid,
  .imedia-inbound-faq-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .imedia-inbound-principle-grid > div:last-child {
    padding-top: 0;
  }

  .imedia-inbound-method-list li {
    grid-template-columns: 56px 1fr;
  }

  .imedia-inbound-method-list small {
    grid-column: 2;
    text-align: left;
  }

  .imedia-inbound-deliverables-copy {
    position: static;
  }

  .imedia-inbound-alignment-card {
    padding: 46px;
  }
}

@media (max-width: 600px) {
  .imedia-service-shell {
    width: min(100% - 32px, 1180px);
  }

  .imedia-inbound-hero {
    padding: 122px 0 72px;
  }

  .imedia-inbound-hero h1 {
    font-size: clamp(2.8rem, 14vw, 4rem);
  }

  .imedia-service-lead {
    font-size: 17px !important;
  }

  .imedia-service-actions,
  .imedia-service-button {
    width: 100%;
  }

  .imedia-inbound-proof {
    display: grid;
  }

  .imedia-inbound-engine {
    padding: 18px;
    border-radius: 18px;
  }

  .imedia-inbound-flow {
    grid-template-columns: 1fr 1fr;
  }

  .imedia-inbound-flow i {
    display: none;
  }

  .imedia-inbound-flow div,
  .imedia-inbound-flow div:nth-of-type(3),
  .imedia-inbound-flow div:nth-of-type(4) {
    grid-row: auto;
    grid-column: auto;
  }

  .imedia-inbound-engine-foot {
    flex-wrap: wrap;
  }

  .imedia-inbound-principle,
  .imedia-inbound-outcomes,
  .imedia-inbound-method,
  .imedia-inbound-deliverables,
  .imedia-inbound-authority,
  .imedia-inbound-faq,
  .imedia-inbound-final-cta {
    padding-top: 76px;
    padding-bottom: 76px;
  }

  .imedia-inbound-outcome-grid {
    grid-template-columns: 1fr;
  }

  .imedia-inbound-outcome-grid article {
    min-height: auto;
  }

  .imedia-card-index {
    margin-bottom: 34px;
  }

  .imedia-inbound-method-list li {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 26px 0;
  }

  .imedia-inbound-method-list small {
    grid-column: auto;
  }

  .imedia-inbound-alignment {
    padding-bottom: 76px;
  }

  .imedia-inbound-alignment-card {
    width: calc(100% - 24px);
    padding: 34px 24px;
    border-radius: 18px;
  }

  .imedia-inbound-since {
    align-items: center;
  }

  .imedia-inbound-since strong {
    font-size: 6.4rem;
  }

  .imedia-inbound-faq-list summary {
    min-height: 72px;
    font-size: 18px;
  }

  .imedia-inbound-faq-list details p {
    margin-right: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}


/* Outbound Marketing service page */
.imedia-outbound-hero {
  position: relative;
  min-height: 780px;
  padding: 172px 0 104px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 78% 30%, rgba(255, 51, 78, 0.22), transparent 28%),
    linear-gradient(125deg, #050505 0%, #0a0a0b 58%, #160609 100%);
}

.imedia-outbound-hero::before {
  position: absolute;
  inset: 0;
  opacity: 0.28;
  background-image: repeating-linear-gradient(115deg, rgba(255, 255, 255, 0.05) 0 1px, transparent 1px 58px);
  mask-image: linear-gradient(90deg, transparent, #000 42%, #000);
  content: "";
}

.imedia-outbound-hero::after {
  position: absolute;
  right: -160px;
  bottom: -270px;
  width: 620px;
  height: 620px;
  border: 1px solid rgba(255, 51, 78, 0.22);
  border-radius: 50%;
  box-shadow: 0 0 0 80px rgba(255, 51, 78, 0.025), 0 0 0 160px rgba(255, 51, 78, 0.018);
  content: "";
}

.imedia-outbound-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(440px, 0.94fr);
  gap: 70px;
  align-items: center;
  z-index: 1;
}

.imedia-outbound-hero h1 {
  max-width: 760px;
  margin: 22px 0 26px;
  color: #fff;
  font-size: clamp(3.4rem, 5.55vw, 5.85rem);
  font-weight: 700;
  line-height: 0.94;
  letter-spacing: -0.045em;
}

.imedia-outbound-hero-copy {
  text-align: left;
}

.imedia-outbound-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 30px 0 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.64);
  font-size: 13px;
  list-style: none;
}

.imedia-outbound-proof li {
  position: relative;
  padding-left: 14px;
}

.imedia-outbound-proof li::before {
  position: absolute;
  top: 0.7em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ff334e;
  content: "";
}

.imedia-outbound-pipeline {
  position: relative;
  padding: 25px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 24px;
  background: rgba(15, 15, 17, 0.91);
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.5);
  transform: rotate(-1deg);
}

.imedia-outbound-pipeline::before {
  position: absolute;
  top: 74px;
  right: -60px;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: rgba(220, 16, 45, 0.13);
  filter: blur(60px);
  content: "";
}

.imedia-outbound-pipeline-head {
  position: relative;
  display: flex;
  padding-bottom: 20px;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.imedia-outbound-pipeline-head div {
  display: grid;
  gap: 4px;
}

.imedia-outbound-pipeline-head span {
  color: rgba(255, 255, 255, 0.46);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-outbound-pipeline-head strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  text-transform: uppercase;
}

.imedia-outbound-pipeline-head b {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: #63e6a8;
  font-size: 11px;
  font-weight: 600;
}

.imedia-outbound-pipeline-head b i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 5px rgba(99, 230, 168, 0.1);
}

.imedia-outbound-pipeline-grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 22px 0;
}

.imedia-outbound-pipeline-grid article {
  position: relative;
  display: flex;
  min-height: 142px;
  padding: 18px;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.035);
}

.imedia-outbound-pipeline-grid article::after {
  position: absolute;
  top: -32px;
  right: -24px;
  width: 86px;
  height: 86px;
  border: 1px solid rgba(255, 51, 78, 0.24);
  border-radius: 50%;
  content: "";
}

.imedia-outbound-pipeline-grid article > span {
  position: absolute;
  top: 14px;
  left: 16px;
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 12px;
}

.imedia-outbound-pipeline-grid small {
  margin-bottom: 5px;
  color: rgba(255, 255, 255, 0.4);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-outbound-pipeline-grid strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 23px;
  line-height: 1;
  text-transform: uppercase;
}

.imedia-outbound-pipeline-grid em {
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.45);
  font-size: 10px;
  font-style: normal;
}

.imedia-outbound-pipeline-foot {
  position: relative;
  display: flex;
  gap: 10px;
  align-items: center;
  color: rgba(255, 255, 255, 0.45);
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.imedia-outbound-pipeline-foot i {
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg, #ff334e, rgba(255, 51, 78, 0.15));
}

.imedia-outbound-principle,
.imedia-outbound-outcomes,
.imedia-outbound-method,
.imedia-outbound-deliverables,
.imedia-outbound-authority,
.imedia-outbound-faq {
  padding: 110px 0;
}

.imedia-outbound-principle {
  background: #fff;
}

.imedia-outbound-principle-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 96px;
  align-items: start;
}

.imedia-outbound-principle h2 {
  max-width: 720px;
  margin-top: 20px;
}

.imedia-outbound-principle-grid > div:last-child {
  padding-top: 34px;
}

.imedia-outbound-quote {
  margin-top: 28px;
  padding: 20px 0 20px 24px;
  border-left: 3px solid var(--imedia-red);
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
}

.imedia-outbound-outcomes {
  background: #f2f0eb;
}

.imedia-outbound-section-head {
  display: grid;
  max-width: 840px;
  margin-bottom: 54px;
}

.imedia-outbound-section-head h2 {
  margin-top: 20px;
}

.imedia-outbound-section-head p {
  max-width: 650px;
  margin-bottom: 0;
}

.imedia-outbound-outcome-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.imedia-outbound-outcome-grid article {
  position: relative;
  min-height: 300px;
  padding: 30px;
  overflow: hidden;
  border: 1px solid #dedad2;
  border-radius: 18px;
  background: #fff;
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.imedia-outbound-outcome-grid article:hover {
  box-shadow: 0 24px 48px rgba(30, 24, 20, 0.09);
  transform: translateY(-6px);
}

.imedia-outbound-outcome-grid article > span {
  display: inline-flex;
  width: 42px;
  height: 42px;
  margin-bottom: 72px;
  align-items: center;
  justify-content: center;
  border: 1px solid #dfd9cf;
  border-radius: 50%;
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 12px;
}

.imedia-outbound-outcome-grid h3 {
  margin-bottom: 12px;
  color: #111;
  font-size: 25px;
}

.imedia-outbound-outcome-grid p {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 1.55;
}

.imedia-outbound-method {
  color: #fff;
  background:
    radial-gradient(circle at 8% 22%, rgba(220, 16, 45, 0.18), transparent 28%),
    #080808;
}

.imedia-outbound-method-grid {
  display: grid;
  grid-template-columns: 0.76fr 1.24fr;
  gap: 90px;
  align-items: start;
}

.imedia-outbound-method-intro {
  position: sticky;
  top: 130px;
}

.imedia-outbound-method h2,
.imedia-outbound-method h3 {
  color: #fff;
}

.imedia-outbound-method-intro h2 {
  margin-top: 20px;
}

.imedia-outbound-method-intro p {
  color: rgba(255, 255, 255, 0.58);
}

.imedia-outbound-method-list {
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  list-style: none;
}

.imedia-outbound-method-list li {
  display: grid;
  grid-template-columns: 52px 1fr 88px;
  gap: 22px;
  padding: 32px 0;
  align-items: start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.imedia-outbound-method-list li > span {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 14px;
}

.imedia-outbound-method-list h3 {
  margin-bottom: 8px;
  font-size: 25px;
}

.imedia-outbound-method-list p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 14px;
}

.imedia-outbound-method-list small {
  padding-top: 5px;
  color: rgba(255, 255, 255, 0.38);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-align: right;
  text-transform: uppercase;
}

.imedia-outbound-deliverables {
  background: #fff;
}

.imedia-outbound-deliverables-grid {
  display: grid;
  grid-template-columns: 0.78fr 1.22fr;
  gap: 96px;
  align-items: start;
}

.imedia-outbound-deliverables-copy {
  position: sticky;
  top: 130px;
}

.imedia-outbound-deliverables-copy h2 {
  margin-top: 20px;
}

.imedia-outbound-deliverables-list {
  border-top: 1px solid #d9d5cd;
}

.imedia-outbound-deliverables-list article {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 20px;
  padding: 26px 0;
  border-bottom: 1px solid #d9d5cd;
}

.imedia-outbound-deliverables-list article > span {
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.imedia-outbound-deliverables-list h3 {
  margin-bottom: 7px;
  color: #111;
  font-size: 22px;
}

.imedia-outbound-deliverables-list p {
  margin-bottom: 0;
  font-size: 15px;
}

.imedia-outbound-alignment {
  padding: 0 0 104px;
  background: #fff;
}

.imedia-outbound-alignment-card {
  display: grid;
  grid-template-columns: 1fr 0.75fr;
  gap: 80px;
  padding: 64px;
  overflow: hidden;
  color: #fff;
  border-radius: 24px;
  background:
    linear-gradient(115deg, transparent 0 68%, rgba(255, 255, 255, 0.08) 68% 69%, transparent 69%),
    radial-gradient(circle at 100% 0%, rgba(255, 126, 140, 0.46), transparent 32%),
    var(--imedia-red);
  box-shadow: 0 24px 65px rgba(137, 5, 26, 0.22);
}

.imedia-outbound-alignment-card h2 {
  margin-top: 18px;
  color: #fff;
  font-size: clamp(2.3rem, 3.7vw, 3.9rem);
}

.imedia-outbound-alignment-card .imedia-service-kicker,
.imedia-outbound-alignment-card p,
.imedia-outbound-alignment-card li {
  color: #fff;
}

.imedia-outbound-alignment-card p {
  font-size: 16px;
}

.imedia-outbound-alignment-card ul {
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-outbound-alignment-card li {
  padding: 13px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.26);
  font-size: 14px;
  font-weight: 600;
}

.imedia-outbound-alignment-card li::before {
  margin-right: 10px;
  content: "✓";
}

.imedia-outbound-authority {
  color: #fff;
  background: #0b0b0b;
}

.imedia-outbound-authority-grid {
  display: grid;
  grid-template-columns: 0.65fr 1.35fr;
  gap: 100px;
  align-items: center;
}

.imedia-outbound-since {
  display: flex;
  gap: 22px;
  align-items: flex-end;
}

.imedia-outbound-since strong {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: clamp(5.8rem, 10vw, 9rem);
  line-height: 0.78;
  letter-spacing: -0.06em;
}

.imedia-outbound-since span {
  max-width: 180px;
  color: rgba(255, 255, 255, 0.58);
  font-size: 13px;
  line-height: 1.45;
}

.imedia-outbound-authority h2 {
  color: #fff;
}

.imedia-outbound-authority p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.62);
}

.imedia-outbound-faq {
  background: #f2f0eb;
}

.imedia-outbound-faq-grid {
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 90px;
  align-items: start;
}

.imedia-outbound-faq-grid h2 {
  margin-top: 18px;
  font-size: clamp(2.3rem, 3.8vw, 3.9rem);
}

.imedia-outbound-faq-list {
  border-top: 1px solid #cec9c0;
}

.imedia-outbound-faq-list details {
  border-bottom: 1px solid #cec9c0;
}

.imedia-outbound-faq-list summary {
  display: flex;
  min-height: 78px;
  padding: 20px 0;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  list-style: none;
}

.imedia-outbound-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-outbound-faq-list summary span {
  display: inline-flex;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  align-items: center;
  justify-content: center;
  border: 1px solid #bbb6ac;
  border-radius: 50%;
  color: var(--imedia-red);
}

.imedia-outbound-faq-list details[open] summary span {
  transform: rotate(45deg);
}

.imedia-outbound-faq-list details p {
  max-width: 680px;
  margin: -5px 54px 24px 0;
  font-size: 15px;
}

.imedia-outbound-final-cta {
  padding: 110px 0 120px;
  color: #fff;
  text-align: center;
  background:
    linear-gradient(90deg, transparent 0 49.9%, rgba(255, 255, 255, 0.04) 49.9% 50.1%, transparent 50.1%),
    radial-gradient(circle at 50% 120%, rgba(220, 16, 45, 0.42), transparent 42%),
    #070707;
}

.imedia-outbound-final-cta .imedia-service-shell {
  max-width: 940px;
}

.imedia-outbound-final-cta .imedia-service-kicker {
  justify-content: center;
}

.imedia-outbound-final-cta h2 {
  margin: 22px 0;
  color: #fff;
  font-size: clamp(2.7rem, 5vw, 5rem);
}

.imedia-outbound-final-cta p {
  max-width: 720px;
  margin: 0 auto 32px;
  color: rgba(255, 255, 255, 0.65);
}

@media (max-width: 1199px) {
  .imedia-outbound-hero {
    min-height: auto;
    padding-top: 140px;
  }

  .imedia-outbound-hero-grid {
    grid-template-columns: 1fr;
    gap: 54px;
  }

  .imedia-outbound-hero-copy {
    max-width: 860px;
  }

  .imedia-outbound-pipeline {
    width: min(720px, 100%);
    transform: none;
  }

  .imedia-outbound-outcome-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-outbound-outcome-grid article {
    min-height: 270px;
  }
}

@media (max-width: 900px) {
  .imedia-outbound-principle-grid,
  .imedia-outbound-method-grid,
  .imedia-outbound-deliverables-grid,
  .imedia-outbound-alignment-card,
  .imedia-outbound-authority-grid,
  .imedia-outbound-faq-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .imedia-outbound-principle-grid > div:last-child {
    padding-top: 0;
  }

  .imedia-outbound-method-intro,
  .imedia-outbound-deliverables-copy {
    position: static;
  }

  .imedia-outbound-method-list li {
    grid-template-columns: 52px 1fr;
  }

  .imedia-outbound-method-list small {
    grid-column: 2;
    text-align: left;
  }

  .imedia-outbound-alignment-card {
    padding: 46px;
  }
}

@media (max-width: 600px) {
  .imedia-outbound-hero {
    padding: 122px 0 72px;
  }

  .imedia-outbound-hero h1 {
    font-size: clamp(2.75rem, 13.8vw, 4rem);
  }

  .imedia-outbound-proof {
    display: grid;
  }

  .imedia-outbound-pipeline {
    padding: 18px;
    border-radius: 18px;
  }

  .imedia-outbound-pipeline-head {
    align-items: flex-start;
  }

  .imedia-outbound-pipeline-grid article {
    min-height: 132px;
    padding: 14px;
  }

  .imedia-outbound-pipeline-grid strong {
    font-size: 19px;
  }

  .imedia-outbound-pipeline-foot {
    flex-wrap: wrap;
  }

  .imedia-outbound-principle,
  .imedia-outbound-outcomes,
  .imedia-outbound-method,
  .imedia-outbound-deliverables,
  .imedia-outbound-authority,
  .imedia-outbound-faq,
  .imedia-outbound-final-cta {
    padding-top: 76px;
    padding-bottom: 76px;
  }

  .imedia-outbound-outcome-grid {
    grid-template-columns: 1fr;
  }

  .imedia-outbound-outcome-grid article {
    min-height: auto;
  }

  .imedia-outbound-outcome-grid article > span {
    margin-bottom: 38px;
  }

  .imedia-outbound-method-list li {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 26px 0;
  }

  .imedia-outbound-method-list small {
    grid-column: auto;
  }

  .imedia-outbound-alignment {
    padding-bottom: 76px;
  }

  .imedia-outbound-alignment-card {
    width: calc(100% - 24px);
    padding: 34px 24px;
    border-radius: 18px;
  }

  .imedia-outbound-since {
    align-items: center;
  }

  .imedia-outbound-since strong {
    font-size: 6.4rem;
  }

  .imedia-outbound-faq-list summary {
    min-height: 72px;
    font-size: 18px;
  }

  .imedia-outbound-faq-list details p {
    margin-right: 0;
  }
}

/* E-commerce and marketplaces service page */
.imedia-commerce-hero {
  position: relative;
  min-height: 790px;
  padding: 172px 0 104px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 78% 27%, rgba(220, 16, 45, 0.25), transparent 30%),
    radial-gradient(circle at 15% 92%, rgba(255, 51, 78, 0.08), transparent 24%),
    #070707;
}

.imedia-commerce-hero::before {
  position: absolute;
  inset: 0;
  opacity: 0.22;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px);
  background-size: 50px 50px;
  mask-image: linear-gradient(to bottom, #000, transparent 86%);
  content: "";
}

.imedia-commerce-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(455px, 0.96fr);
  gap: 66px;
  align-items: center;
  z-index: 1;
}

.imedia-commerce-hero-copy {
  text-align: left;
}

.imedia-commerce-hero h1 {
  max-width: 780px;
  margin: 22px 0 26px;
  color: #fff;
  font-size: clamp(3.35rem, 5.35vw, 5.7rem);
  font-weight: 700;
  line-height: 0.94;
  letter-spacing: -0.045em;
}

.imedia-commerce-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 30px 0 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.64);
  font-size: 13px;
  list-style: none;
}

.imedia-commerce-proof li {
  position: relative;
  padding-left: 14px;
}

.imedia-commerce-proof li::before {
  position: absolute;
  top: 0.7em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ff334e;
  content: "";
}

.imedia-commerce-control {
  position: relative;
  padding: 25px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 24px;
  background: rgba(15, 15, 17, 0.92);
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.52);
  transform: rotate(1deg);
}

.imedia-commerce-control::after {
  position: absolute;
  right: -95px;
  bottom: -110px;
  width: 230px;
  height: 230px;
  border: 1px solid rgba(255, 51, 78, 0.38);
  border-radius: 50%;
  box-shadow: 0 0 0 42px rgba(220, 16, 45, 0.04), 0 0 0 84px rgba(220, 16, 45, 0.025);
  content: "";
}

.imedia-commerce-control-head {
  position: relative;
  display: flex;
  padding-bottom: 19px;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  z-index: 1;
}

.imedia-commerce-control-head div {
  display: grid;
  gap: 4px;
}

.imedia-commerce-control-head span {
  color: rgba(255, 255, 255, 0.45);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-commerce-control-head strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  text-transform: uppercase;
}

.imedia-commerce-control-head b {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: #63e6a8;
  font-size: 10px;
  font-weight: 600;
}

.imedia-commerce-control-head b i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 5px rgba(99, 230, 168, 0.1);
}

.imedia-commerce-store-row {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 10px;
  margin: 20px 0 12px;
  align-items: center;
  z-index: 1;
}

.imedia-commerce-store-row article {
  display: grid;
  min-height: 122px;
  padding: 17px;
  align-content: end;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.035);
}

.imedia-commerce-store-row small {
  margin-bottom: 16px;
  color: #ff334e;
  font-size: 9px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-commerce-store-row strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 25px;
  line-height: 1;
  text-transform: uppercase;
}

.imedia-commerce-store-row article > span {
  margin-top: 6px;
  color: rgba(255, 255, 255, 0.42);
  font-size: 9px;
}

.imedia-commerce-sync {
  display: flex;
  flex-direction: column;
  gap: 5px;
  align-items: center;
  color: rgba(255, 255, 255, 0.35);
  font-size: 9px;
  text-transform: uppercase;
}

.imedia-commerce-sync i {
  width: 1px;
  height: 18px;
  background: rgba(255, 51, 78, 0.65);
}

.imedia-commerce-connector {
  position: relative;
  display: flex;
  gap: 10px;
  align-items: center;
  color: rgba(255, 255, 255, 0.38);
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  z-index: 1;
}

.imedia-commerce-connector i {
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg, transparent, rgba(255, 51, 78, 0.65), transparent);
}

.imedia-commerce-market-row {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
  margin: 12px 0 20px;
  z-index: 1;
}

.imedia-commerce-market-row article {
  display: grid;
  min-height: 92px;
  padding: 13px;
  align-content: space-between;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.03);
}

.imedia-commerce-market-row span {
  display: inline-flex;
  width: 27px;
  height: 27px;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  color: #fff;
  background: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 10px;
  font-weight: 700;
}

.imedia-commerce-market-row strong {
  margin-top: 14px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 14px;
  line-height: 1.15;
  text-transform: uppercase;
}

.imedia-commerce-control-foot {
  position: relative;
  display: flex;
  gap: 8px;
  align-items: center;
  color: rgba(255, 255, 255, 0.38);
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  z-index: 1;
}

.imedia-commerce-control-foot i {
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg, #ff334e, rgba(255, 51, 78, 0.12));
}

.imedia-commerce-principle,
.imedia-commerce-platforms,
.imedia-commerce-method,
.imedia-commerce-deliverables,
.imedia-commerce-authority,
.imedia-commerce-faq {
  padding: 110px 0;
}

.imedia-commerce-principle {
  background: #fff;
}

.imedia-commerce-principle-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 96px;
  align-items: start;
}

.imedia-commerce-principle h2 {
  max-width: 730px;
  margin-top: 20px;
}

.imedia-commerce-principle-grid > div:last-child {
  padding-top: 34px;
}

.imedia-commerce-quote {
  margin-top: 28px;
  padding: 20px 0 20px 24px;
  border-left: 3px solid var(--imedia-red);
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
}

.imedia-commerce-platforms {
  background: #f2f0eb;
}

.imedia-commerce-section-head {
  display: grid;
  max-width: 900px;
  margin-bottom: 54px;
}

.imedia-commerce-section-head h2 {
  margin-top: 20px;
}

.imedia-commerce-section-head p {
  max-width: 670px;
  margin-bottom: 0;
}

.imedia-commerce-platform-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
}

.imedia-commerce-platform-grid article {
  position: relative;
  display: flex;
  min-height: 260px;
  padding: 28px;
  grid-column: span 2;
  flex-direction: column;
  border: 1px solid #dedad2;
  border-radius: 18px;
  background: #fff;
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.imedia-commerce-platform-grid article:hover {
  box-shadow: 0 24px 48px rgba(30, 24, 20, 0.09);
  transform: translateY(-6px);
}

.imedia-commerce-platform-grid .imedia-commerce-platform-featured {
  min-height: 286px;
  grid-column: span 3;
  color: #fff;
  border-color: #171717;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 51, 78, 0.24), transparent 42%),
    #111;
}

.imedia-commerce-platform-grid article > span {
  margin-bottom: 62px;
  color: var(--imedia-red);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.imedia-commerce-platform-grid .imedia-commerce-platform-featured > span {
  color: #ff5268;
}

.imedia-commerce-platform-grid h3 {
  margin-bottom: 12px;
  color: #111;
  font-size: 30px;
}

.imedia-commerce-platform-grid .imedia-commerce-platform-featured h3 {
  color: #fff;
}

.imedia-commerce-platform-grid p {
  margin-bottom: 24px;
  font-size: 14px;
  line-height: 1.55;
}

.imedia-commerce-platform-grid .imedia-commerce-platform-featured p {
  color: rgba(255, 255, 255, 0.55);
}

.imedia-commerce-platform-grid small {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid #e2ded7;
  color: #77736c;
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-commerce-platform-grid .imedia-commerce-platform-featured small {
  border-color: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.42);
}

.imedia-commerce-method {
  color: #fff;
  background:
    radial-gradient(circle at 8% 22%, rgba(220, 16, 45, 0.18), transparent 28%),
    #080808;
}

.imedia-commerce-method-grid {
  display: grid;
  grid-template-columns: 0.76fr 1.24fr;
  gap: 90px;
  align-items: start;
}

.imedia-commerce-method-intro {
  position: sticky;
  top: 130px;
}

.imedia-commerce-method h2,
.imedia-commerce-method h3 {
  color: #fff;
}

.imedia-commerce-method-intro h2 {
  margin-top: 20px;
}

.imedia-commerce-method-intro p {
  color: rgba(255, 255, 255, 0.58);
}

.imedia-commerce-method-list {
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  list-style: none;
}

.imedia-commerce-method-list li {
  display: grid;
  grid-template-columns: 52px 1fr 88px;
  gap: 22px;
  padding: 32px 0;
  align-items: start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.imedia-commerce-method-list li > span {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 14px;
}

.imedia-commerce-method-list h3 {
  margin-bottom: 8px;
  font-size: 25px;
}

.imedia-commerce-method-list p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 14px;
}

.imedia-commerce-method-list small {
  padding-top: 5px;
  color: rgba(255, 255, 255, 0.38);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-align: right;
  text-transform: uppercase;
}

.imedia-commerce-deliverables {
  background: #fff;
}

.imedia-commerce-deliverables-grid {
  display: grid;
  grid-template-columns: 0.78fr 1.22fr;
  gap: 96px;
  align-items: start;
}

.imedia-commerce-deliverables-copy {
  position: sticky;
  top: 130px;
}

.imedia-commerce-deliverables-copy h2 {
  margin-top: 20px;
}

.imedia-commerce-deliverables-list {
  border-top: 1px solid #d9d5cd;
}

.imedia-commerce-deliverables-list article {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 20px;
  padding: 26px 0;
  border-bottom: 1px solid #d9d5cd;
}

.imedia-commerce-deliverables-list article > span {
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.imedia-commerce-deliverables-list h3 {
  margin-bottom: 7px;
  color: #111;
  font-size: 22px;
}

.imedia-commerce-deliverables-list p {
  margin-bottom: 0;
  font-size: 15px;
}

.imedia-commerce-operations {
  padding: 0 0 104px;
  background: #fff;
}

.imedia-commerce-operations-card {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 70px;
  padding: 64px;
  overflow: hidden;
  color: #fff;
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 126, 140, 0.38), transparent 34%),
    var(--imedia-red);
  box-shadow: 0 24px 65px rgba(137, 5, 26, 0.22);
}

.imedia-commerce-operations-card h2 {
  margin-top: 18px;
  color: #fff;
  font-size: clamp(2.3rem, 3.7vw, 3.9rem);
}

.imedia-commerce-operations-card .imedia-service-kicker,
.imedia-commerce-operations-card p {
  color: #fff;
}

.imedia-commerce-operations-card p {
  margin-bottom: 0;
  font-size: 15px;
}

.imedia-commerce-signal-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.imedia-commerce-signal-grid article {
  display: grid;
  min-height: 128px;
  padding: 18px;
  align-content: end;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 14px;
  background: rgba(23, 0, 4, 0.13);
}

.imedia-commerce-signal-grid span {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 19px;
  text-transform: uppercase;
}

.imedia-commerce-signal-grid i {
  position: relative;
  height: 4px;
  margin: 13px 0 9px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.18);
}

.imedia-commerce-signal-grid i::after {
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--signal);
  border-radius: inherit;
  background: #fff;
  content: "";
}

.imedia-commerce-signal-grid small {
  color: rgba(255, 255, 255, 0.65);
  font-size: 10px;
}

.imedia-commerce-authority {
  color: #fff;
  background: #0b0b0b;
}

.imedia-commerce-authority-grid {
  display: grid;
  grid-template-columns: 0.65fr 1.35fr;
  gap: 100px;
  align-items: center;
}

.imedia-commerce-since {
  display: flex;
  gap: 22px;
  align-items: flex-end;
}

.imedia-commerce-since strong {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: clamp(5.8rem, 10vw, 9rem);
  line-height: 0.78;
  letter-spacing: -0.06em;
}

.imedia-commerce-since span {
  max-width: 180px;
  color: rgba(255, 255, 255, 0.58);
  font-size: 13px;
  line-height: 1.45;
}

.imedia-commerce-authority h2 {
  color: #fff;
}

.imedia-commerce-authority p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.62);
}

.imedia-commerce-faq {
  background: #f2f0eb;
}

.imedia-commerce-faq-grid {
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 90px;
  align-items: start;
}

.imedia-commerce-faq-grid h2 {
  margin-top: 18px;
  font-size: clamp(2.3rem, 3.8vw, 3.9rem);
}

.imedia-commerce-faq-list {
  border-top: 1px solid #cec9c0;
}

.imedia-commerce-faq-list details {
  border-bottom: 1px solid #cec9c0;
}

.imedia-commerce-faq-list summary {
  display: flex;
  min-height: 78px;
  padding: 20px 0;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  list-style: none;
}

.imedia-commerce-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-commerce-faq-list summary span {
  display: inline-flex;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  align-items: center;
  justify-content: center;
  border: 1px solid #bbb6ac;
  border-radius: 50%;
  color: var(--imedia-red);
}

.imedia-commerce-faq-list details[open] summary span {
  transform: rotate(45deg);
}

.imedia-commerce-faq-list details p {
  max-width: 680px;
  margin: -5px 54px 24px 0;
  font-size: 15px;
}

.imedia-commerce-final-cta {
  padding: 110px 0 120px;
  color: #fff;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(220, 16, 45, 0.42), transparent 42%),
    repeating-linear-gradient(90deg, transparent 0 74px, rgba(255, 255, 255, 0.025) 74px 75px),
    #070707;
}

.imedia-commerce-final-cta .imedia-service-shell {
  max-width: 950px;
}

.imedia-commerce-final-cta .imedia-service-kicker {
  justify-content: center;
}

.imedia-commerce-final-cta h2 {
  margin: 22px 0;
  color: #fff;
  font-size: clamp(2.7rem, 5vw, 5rem);
}

.imedia-commerce-final-cta p {
  max-width: 720px;
  margin: 0 auto 32px;
  color: rgba(255, 255, 255, 0.65);
}

@media (max-width: 1199px) {
  .imedia-commerce-hero {
    min-height: auto;
    padding-top: 140px;
  }

  .imedia-commerce-hero-grid {
    grid-template-columns: 1fr;
    gap: 54px;
  }

  .imedia-commerce-hero-copy {
    max-width: 880px;
  }

  .imedia-commerce-control {
    width: min(740px, 100%);
    transform: none;
  }
}

@media (max-width: 900px) {
  .imedia-commerce-principle-grid,
  .imedia-commerce-method-grid,
  .imedia-commerce-deliverables-grid,
  .imedia-commerce-operations-card,
  .imedia-commerce-authority-grid,
  .imedia-commerce-faq-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .imedia-commerce-principle-grid > div:last-child {
    padding-top: 0;
  }

  .imedia-commerce-platform-grid article,
  .imedia-commerce-platform-grid .imedia-commerce-platform-featured {
    grid-column: span 3;
  }

  .imedia-commerce-platform-grid article:last-child {
    grid-column: 2 / span 4;
  }

  .imedia-commerce-method-intro,
  .imedia-commerce-deliverables-copy {
    position: static;
  }

  .imedia-commerce-method-list li {
    grid-template-columns: 52px 1fr;
  }

  .imedia-commerce-method-list small {
    grid-column: 2;
    text-align: left;
  }

  .imedia-commerce-operations-card {
    padding: 46px;
  }
}

@media (max-width: 600px) {
  .imedia-commerce-hero {
    padding: 122px 0 72px;
  }

  .imedia-commerce-hero h1 {
    font-size: clamp(2.65rem, 13.2vw, 3.85rem);
  }

  .imedia-commerce-proof {
    display: grid;
  }

  .imedia-commerce-control {
    padding: 18px;
    border-radius: 18px;
  }

  .imedia-commerce-control-head {
    align-items: flex-start;
  }

  .imedia-commerce-store-row {
    grid-template-columns: 1fr;
  }

  .imedia-commerce-sync {
    flex-direction: row;
    justify-content: center;
  }

  .imedia-commerce-sync i {
    width: 24px;
    height: 1px;
  }

  .imedia-commerce-market-row {
    grid-template-columns: 1fr;
  }

  .imedia-commerce-market-row article {
    min-height: 78px;
    grid-template-columns: auto 1fr;
    gap: 12px;
    align-items: center;
  }

  .imedia-commerce-market-row strong {
    margin-top: 0;
  }

  .imedia-commerce-control-foot {
    flex-wrap: wrap;
  }

  .imedia-commerce-principle,
  .imedia-commerce-platforms,
  .imedia-commerce-method,
  .imedia-commerce-deliverables,
  .imedia-commerce-authority,
  .imedia-commerce-faq,
  .imedia-commerce-final-cta {
    padding-top: 76px;
    padding-bottom: 76px;
  }

  .imedia-commerce-platform-grid {
    grid-template-columns: 1fr;
  }

  .imedia-commerce-platform-grid article,
  .imedia-commerce-platform-grid .imedia-commerce-platform-featured,
  .imedia-commerce-platform-grid article:last-child {
    min-height: auto;
    grid-column: auto;
  }

  .imedia-commerce-platform-grid article > span {
    margin-bottom: 40px;
  }

  .imedia-commerce-method-list li {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 26px 0;
  }

  .imedia-commerce-method-list small {
    grid-column: auto;
  }

  .imedia-commerce-operations {
    padding-bottom: 76px;
  }

  .imedia-commerce-operations-card {
    width: calc(100% - 24px);
    padding: 34px 24px;
    border-radius: 18px;
  }

  .imedia-commerce-signal-grid {
    grid-template-columns: 1fr;
  }

  .imedia-commerce-signal-grid article {
    min-height: 112px;
  }

  .imedia-commerce-since {
    align-items: center;
  }

  .imedia-commerce-since strong {
    font-size: 6.4rem;
  }

  .imedia-commerce-faq-list summary {
    min-height: 72px;
    font-size: 18px;
  }

  .imedia-commerce-faq-list details p {
    margin-right: 0;
  }
}

/* Content service page */
.imedia-content-hero {
  position: relative;
  min-height: 790px;
  padding: 172px 0 104px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 78% 28%, rgba(220, 16, 45, 0.23), transparent 30%),
    linear-gradient(135deg, #050505 0%, #0a0a0b 58%, #150609 100%);
}

.imedia-content-hero::before {
  position: absolute;
  inset: 0;
  opacity: 0.18;
  background-image:
    radial-gradient(circle, rgba(255, 255, 255, 0.18) 1px, transparent 1.5px),
    linear-gradient(115deg, transparent 48%, rgba(255, 255, 255, 0.035) 49%, transparent 50%);
  background-size: 32px 32px, 90px 90px;
  mask-image: linear-gradient(to bottom, #000, transparent 88%);
  content: "";
}

.imedia-content-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(450px, 0.95fr);
  gap: 70px;
  align-items: center;
  z-index: 1;
}

.imedia-content-hero-copy {
  text-align: left;
}

.imedia-content-hero h1 {
  max-width: 780px;
  margin: 22px 0 26px;
  color: #fff;
  font-size: clamp(3.35rem, 5.45vw, 5.8rem);
  font-weight: 700;
  line-height: 0.94;
  letter-spacing: -0.045em;
}

.imedia-content-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 30px 0 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.64);
  font-size: 13px;
  list-style: none;
}

.imedia-content-proof li {
  position: relative;
  padding-left: 14px;
}

.imedia-content-proof li::before {
  position: absolute;
  top: 0.7em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ff334e;
  content: "";
}

.imedia-content-desk {
  position: relative;
  padding: 25px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 24px;
  background: rgba(15, 15, 17, 0.92);
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.52);
  transform: rotate(-1deg);
}

.imedia-content-desk::after {
  position: absolute;
  right: -95px;
  bottom: -110px;
  width: 230px;
  height: 230px;
  border: 1px solid rgba(255, 51, 78, 0.38);
  border-radius: 50%;
  box-shadow: 0 0 0 42px rgba(220, 16, 45, 0.04), 0 0 0 84px rgba(220, 16, 45, 0.025);
  content: "";
}

.imedia-content-desk-head {
  position: relative;
  display: flex;
  padding-bottom: 19px;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  z-index: 1;
}

.imedia-content-desk-head div {
  display: grid;
  gap: 4px;
}

.imedia-content-desk-head span {
  color: rgba(255, 255, 255, 0.45);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-content-desk-head strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  text-transform: uppercase;
}

.imedia-content-desk-head b {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: #63e6a8;
  font-size: 10px;
  font-weight: 600;
}

.imedia-content-desk-head b i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 5px rgba(99, 230, 168, 0.1);
}

.imedia-content-desk-feature {
  position: relative;
  min-height: 142px;
  margin: 20px 0 10px;
  padding: 20px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  background:
    linear-gradient(90deg, rgba(220, 16, 45, 0.13), transparent 64%),
    rgba(255, 255, 255, 0.035);
  z-index: 1;
}

.imedia-content-desk-feature > span {
  color: #ff334e;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.imedia-content-desk-feature h2 {
  max-width: 330px;
  margin: 16px 0 0;
  color: #fff;
  font-size: 29px;
  line-height: 1;
}

.imedia-content-wave {
  position: absolute;
  right: 18px;
  bottom: 24px;
  display: flex;
  height: 62px;
  gap: 5px;
  align-items: flex-end;
}

.imedia-content-wave i {
  width: 5px;
  border-radius: 6px;
  background: linear-gradient(to top, #dc102d, #ff5b70);
}

.imedia-content-wave i:nth-child(1) { height: 26%; }
.imedia-content-wave i:nth-child(2) { height: 48%; }
.imedia-content-wave i:nth-child(3) { height: 34%; }
.imedia-content-wave i:nth-child(4) { height: 82%; }
.imedia-content-wave i:nth-child(5) { height: 58%; }
.imedia-content-wave i:nth-child(6) { height: 100%; }
.imedia-content-wave i:nth-child(7) { height: 72%; }

.imedia-content-desk-grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-bottom: 19px;
  z-index: 1;
}

.imedia-content-desk-grid article {
  position: relative;
  display: grid;
  min-height: 106px;
  padding: 16px;
  align-content: end;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.03);
}

.imedia-content-desk-grid article > span {
  position: absolute;
  top: 12px;
  right: 13px;
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 10px;
}

.imedia-content-desk-grid strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 19px;
  text-transform: uppercase;
}

.imedia-content-desk-grid small {
  margin-top: 5px;
  color: rgba(255, 255, 255, 0.42);
  font-size: 9px;
}

.imedia-content-desk-foot {
  position: relative;
  display: flex;
  gap: 8px;
  align-items: center;
  color: rgba(255, 255, 255, 0.38);
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  z-index: 1;
}

.imedia-content-desk-foot i {
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg, #ff334e, rgba(255, 51, 78, 0.12));
}

.imedia-content-principle,
.imedia-content-formats,
.imedia-content-method,
.imedia-content-deliverables,
.imedia-content-authority,
.imedia-content-faq {
  padding: 110px 0;
}

.imedia-content-principle {
  background: #fff;
}

.imedia-content-principle-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 96px;
  align-items: start;
}

.imedia-content-principle h2 {
  max-width: 730px;
  margin-top: 20px;
}

.imedia-content-principle-grid > div:last-child {
  padding-top: 34px;
}

.imedia-content-quote {
  margin-top: 28px;
  padding: 20px 0 20px 24px;
  border-left: 3px solid var(--imedia-red);
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
}

.imedia-content-formats {
  background: #f2f0eb;
}

.imedia-content-section-head {
  display: grid;
  max-width: 880px;
  margin-bottom: 54px;
}

.imedia-content-section-head h2 {
  margin-top: 20px;
}

.imedia-content-section-head p {
  max-width: 670px;
  margin-bottom: 0;
}

.imedia-content-format-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.imedia-content-format-grid article {
  position: relative;
  display: flex;
  min-height: 278px;
  padding: 29px;
  flex-direction: column;
  border: 1px solid #dedad2;
  border-radius: 18px;
  background: #fff;
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.imedia-content-format-grid article:nth-child(2),
.imedia-content-format-grid article:nth-child(5) {
  color: #fff;
  border-color: #171717;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 51, 78, 0.22), transparent 42%),
    #111;
}

.imedia-content-format-grid article:hover {
  box-shadow: 0 24px 48px rgba(30, 24, 20, 0.09);
  transform: translateY(-6px);
}

.imedia-content-format-grid article > span {
  display: inline-flex;
  width: 40px;
  height: 40px;
  margin-bottom: 48px;
  align-items: center;
  justify-content: center;
  border: 1px solid #dfd9cf;
  border-radius: 50%;
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 11px;
}

.imedia-content-format-grid article:nth-child(2) > span,
.imedia-content-format-grid article:nth-child(5) > span {
  border-color: rgba(255, 255, 255, 0.18);
  color: #ff5268;
}

.imedia-content-format-grid h3 {
  margin-bottom: 12px;
  color: #111;
  font-size: 26px;
}

.imedia-content-format-grid article:nth-child(2) h3,
.imedia-content-format-grid article:nth-child(5) h3 {
  color: #fff;
}

.imedia-content-format-grid p {
  margin-bottom: 22px;
  font-size: 14px;
  line-height: 1.55;
}

.imedia-content-format-grid article:nth-child(2) p,
.imedia-content-format-grid article:nth-child(5) p {
  color: rgba(255, 255, 255, 0.55);
}

.imedia-content-format-grid small {
  margin-top: auto;
  padding-top: 13px;
  border-top: 1px solid #e2ded7;
  color: #77736c;
  font-size: 9px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-content-format-grid article:nth-child(2) small,
.imedia-content-format-grid article:nth-child(5) small {
  border-color: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.42);
}

.imedia-content-method {
  color: #fff;
  background:
    radial-gradient(circle at 8% 22%, rgba(220, 16, 45, 0.18), transparent 28%),
    #080808;
}

.imedia-content-method-grid {
  display: grid;
  grid-template-columns: 0.76fr 1.24fr;
  gap: 90px;
  align-items: start;
}

.imedia-content-method-intro {
  position: sticky;
  top: 130px;
}

.imedia-content-method h2,
.imedia-content-method h3 {
  color: #fff;
}

.imedia-content-method-intro h2 {
  margin-top: 20px;
}

.imedia-content-method-intro p {
  color: rgba(255, 255, 255, 0.58);
}

.imedia-content-method-list {
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  list-style: none;
}

.imedia-content-method-list li {
  display: grid;
  grid-template-columns: 52px 1fr 88px;
  gap: 22px;
  padding: 32px 0;
  align-items: start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.imedia-content-method-list li > span {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 14px;
}

.imedia-content-method-list h3 {
  margin-bottom: 8px;
  font-size: 25px;
}

.imedia-content-method-list p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 14px;
}

.imedia-content-method-list small {
  padding-top: 5px;
  color: rgba(255, 255, 255, 0.38);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-align: right;
  text-transform: uppercase;
}

.imedia-content-deliverables {
  background: #fff;
}

.imedia-content-deliverables-grid {
  display: grid;
  grid-template-columns: 0.78fr 1.22fr;
  gap: 96px;
  align-items: start;
}

.imedia-content-deliverables-copy {
  position: sticky;
  top: 130px;
}

.imedia-content-deliverables-copy h2 {
  margin-top: 20px;
}

.imedia-content-deliverables-list {
  border-top: 1px solid #d9d5cd;
}

.imedia-content-deliverables-list article {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 20px;
  padding: 26px 0;
  border-bottom: 1px solid #d9d5cd;
}

.imedia-content-deliverables-list article > span {
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.imedia-content-deliverables-list h3 {
  margin-bottom: 7px;
  color: #111;
  font-size: 22px;
}

.imedia-content-deliverables-list p {
  margin-bottom: 0;
  font-size: 15px;
}

.imedia-content-engine {
  padding: 0 0 104px;
  background: #fff;
}

.imedia-content-engine-card {
  padding: 64px;
  overflow: hidden;
  color: #fff;
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 126, 140, 0.38), transparent 34%),
    var(--imedia-red);
  box-shadow: 0 24px 65px rgba(137, 5, 26, 0.22);
}

.imedia-content-engine-card > div:first-child {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 70px;
  align-items: end;
}

.imedia-content-engine-card h2 {
  margin-top: 18px;
  color: #fff;
  font-size: clamp(2.3rem, 3.7vw, 3.9rem);
}

.imedia-content-engine-card .imedia-service-kicker,
.imedia-content-engine-card p {
  color: #fff;
}

.imedia-content-engine-card p {
  margin-bottom: 20px;
  font-size: 15px;
}

.imedia-content-engine-flow {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
  gap: 12px;
  margin-top: 42px;
  align-items: center;
}

.imedia-content-engine-flow article {
  display: grid;
  min-height: 126px;
  padding: 17px;
  align-content: end;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 14px;
  background: rgba(23, 0, 4, 0.13);
}

.imedia-content-engine-flow article > span {
  margin-bottom: 18px;
  color: rgba(255, 255, 255, 0.62);
  font-family: "Oswald", sans-serif;
  font-size: 11px;
}

.imedia-content-engine-flow strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 18px;
  line-height: 1.1;
  text-transform: uppercase;
}

.imedia-content-engine-flow small {
  margin-top: 7px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 9px;
}

.imedia-content-engine-flow > i {
  width: 18px;
  height: 1px;
  background: rgba(255, 255, 255, 0.5);
}

.imedia-content-authority {
  color: #fff;
  background: #0b0b0b;
}

.imedia-content-authority-grid {
  display: grid;
  grid-template-columns: 0.65fr 1.35fr;
  gap: 100px;
  align-items: center;
}

.imedia-content-since {
  display: flex;
  gap: 22px;
  align-items: flex-end;
}

.imedia-content-since strong {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: clamp(5.8rem, 10vw, 9rem);
  line-height: 0.78;
  letter-spacing: -0.06em;
}

.imedia-content-since span {
  max-width: 180px;
  color: rgba(255, 255, 255, 0.58);
  font-size: 13px;
  line-height: 1.45;
}

.imedia-content-authority h2 {
  color: #fff;
}

.imedia-content-authority p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.62);
}

.imedia-content-faq {
  background: #f2f0eb;
}

.imedia-content-faq-grid {
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 90px;
  align-items: start;
}

.imedia-content-faq-grid h2 {
  margin-top: 18px;
  font-size: clamp(2.3rem, 3.8vw, 3.9rem);
}

.imedia-content-faq-list {
  border-top: 1px solid #cec9c0;
}

.imedia-content-faq-list details {
  border-bottom: 1px solid #cec9c0;
}

.imedia-content-faq-list summary {
  display: flex;
  min-height: 78px;
  padding: 20px 0;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  list-style: none;
}

.imedia-content-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-content-faq-list summary span {
  display: inline-flex;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  align-items: center;
  justify-content: center;
  border: 1px solid #bbb6ac;
  border-radius: 50%;
  color: var(--imedia-red);
}

.imedia-content-faq-list details[open] summary span {
  transform: rotate(45deg);
}

.imedia-content-faq-list details p {
  max-width: 680px;
  margin: -5px 54px 24px 0;
  font-size: 15px;
}

.imedia-content-final-cta {
  padding: 110px 0 120px;
  color: #fff;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(220, 16, 45, 0.42), transparent 42%),
    radial-gradient(circle, rgba(255, 255, 255, 0.07) 1px, transparent 1.5px),
    #070707;
  background-size: auto, 34px 34px, auto;
}

.imedia-content-final-cta .imedia-service-shell {
  max-width: 950px;
}

.imedia-content-final-cta .imedia-service-kicker {
  justify-content: center;
}

.imedia-content-final-cta h2 {
  margin: 22px 0;
  color: #fff;
  font-size: clamp(2.7rem, 5vw, 5rem);
}

.imedia-content-final-cta p {
  max-width: 720px;
  margin: 0 auto 32px;
  color: rgba(255, 255, 255, 0.65);
}

@media (max-width: 1199px) {
  .imedia-content-hero {
    min-height: auto;
    padding-top: 140px;
  }

  .imedia-content-hero-grid {
    grid-template-columns: 1fr;
    gap: 54px;
  }

  .imedia-content-hero-copy {
    max-width: 870px;
  }

  .imedia-content-desk {
    width: min(720px, 100%);
    transform: none;
  }
}

@media (max-width: 900px) {
  .imedia-content-principle-grid,
  .imedia-content-method-grid,
  .imedia-content-deliverables-grid,
  .imedia-content-authority-grid,
  .imedia-content-faq-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .imedia-content-principle-grid > div:last-child {
    padding-top: 0;
  }

  .imedia-content-format-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-content-method-intro,
  .imedia-content-deliverables-copy {
    position: static;
  }

  .imedia-content-method-list li {
    grid-template-columns: 52px 1fr;
  }

  .imedia-content-method-list small {
    grid-column: 2;
    text-align: left;
  }

  .imedia-content-engine-card > div:first-child {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .imedia-content-engine-flow {
    grid-template-columns: 1fr 1fr;
  }

  .imedia-content-engine-flow > i {
    display: none;
  }
}

@media (max-width: 600px) {
  .imedia-content-hero {
    padding: 122px 0 72px;
  }

  .imedia-content-hero h1 {
    font-size: clamp(2.7rem, 13.5vw, 3.9rem);
  }

  .imedia-content-proof {
    display: grid;
  }

  .imedia-content-desk {
    padding: 18px;
    border-radius: 18px;
  }

  .imedia-content-desk-head {
    align-items: flex-start;
  }

  .imedia-content-desk-feature h2 {
    max-width: 230px;
    font-size: 24px;
  }

  .imedia-content-wave {
    opacity: 0.55;
  }

  .imedia-content-desk-foot {
    flex-wrap: wrap;
  }

  .imedia-content-principle,
  .imedia-content-formats,
  .imedia-content-method,
  .imedia-content-deliverables,
  .imedia-content-authority,
  .imedia-content-faq,
  .imedia-content-final-cta {
    padding-top: 76px;
    padding-bottom: 76px;
  }

  .imedia-content-format-grid {
    grid-template-columns: 1fr;
  }

  .imedia-content-format-grid article {
    min-height: auto;
  }

  .imedia-content-format-grid article > span {
    margin-bottom: 38px;
  }

  .imedia-content-method-list li {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 26px 0;
  }

  .imedia-content-method-list small {
    grid-column: auto;
  }

  .imedia-content-engine {
    padding-bottom: 76px;
  }

  .imedia-content-engine-card {
    width: calc(100% - 24px);
    padding: 34px 24px;
    border-radius: 18px;
  }

  .imedia-content-engine-flow {
    grid-template-columns: 1fr;
  }

  .imedia-content-engine-flow article {
    min-height: 112px;
  }

  .imedia-content-since {
    align-items: center;
  }

  .imedia-content-since strong {
    font-size: 6.4rem;
  }

  .imedia-content-faq-list summary {
    min-height: 72px;
    font-size: 18px;
  }

  .imedia-content-faq-list details p {
    margin-right: 0;
  }
}

/* SEO service page */
.imedia-seo-hero {
  position: relative;
  min-height: 790px;
  padding: 172px 0 104px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 79% 29%, rgba(220, 16, 45, 0.24), transparent 29%),
    linear-gradient(130deg, #050505 0%, #09090a 58%, #150609 100%);
}

.imedia-seo-hero::before {
  position: absolute;
  inset: 0;
  opacity: 0.22;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    radial-gradient(circle, rgba(255, 51, 78, 0.28) 1px, transparent 1.5px);
  background-size: 54px 54px, 54px 54px, 18px 18px;
  mask-image: linear-gradient(90deg, transparent 12%, #000 55%, #000);
  content: "";
}

.imedia-seo-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(450px, 0.95fr);
  gap: 70px;
  align-items: center;
  z-index: 1;
}

.imedia-seo-hero-copy {
  text-align: left;
}

.imedia-seo-hero h1 {
  max-width: 780px;
  margin: 22px 0 26px;
  color: #fff;
  font-size: clamp(3.35rem, 5.4vw, 5.75rem);
  font-weight: 700;
  line-height: 0.94;
  letter-spacing: -0.045em;
}

.imedia-seo-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 30px 0 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.64);
  font-size: 13px;
  list-style: none;
}

.imedia-seo-proof li {
  position: relative;
  padding-left: 14px;
}

.imedia-seo-proof li::before {
  position: absolute;
  top: 0.7em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ff334e;
  content: "";
}

.imedia-seo-radar {
  position: relative;
  padding: 25px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 24px;
  background: rgba(15, 15, 17, 0.93);
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.52);
  transform: rotate(1deg);
}

.imedia-seo-radar::after {
  position: absolute;
  right: -104px;
  bottom: -116px;
  width: 248px;
  height: 248px;
  border: 1px solid rgba(255, 51, 78, 0.4);
  border-radius: 50%;
  box-shadow: 0 0 0 42px rgba(220, 16, 45, 0.04), 0 0 0 84px rgba(220, 16, 45, 0.025);
  content: "";
}

.imedia-seo-radar-head {
  position: relative;
  display: flex;
  padding-bottom: 19px;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  z-index: 1;
}

.imedia-seo-radar-head div {
  display: grid;
  gap: 4px;
}

.imedia-seo-radar-head span {
  color: rgba(255, 255, 255, 0.45);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-seo-radar-head strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  text-transform: uppercase;
}

.imedia-seo-radar-head b {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: #63e6a8;
  font-size: 10px;
  font-weight: 600;
}

.imedia-seo-radar-head b i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 5px rgba(99, 230, 168, 0.1);
}

.imedia-seo-query {
  position: relative;
  display: grid;
  min-height: 108px;
  margin: 20px 0 10px;
  padding: 18px 20px;
  align-content: center;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.035);
  z-index: 1;
}

.imedia-seo-query span {
  margin-bottom: 10px;
  color: #ff334e;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-seo-query strong {
  padding-right: 52px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 22px;
  line-height: 1.1;
}

.imedia-seo-query i {
  position: absolute;
  right: 22px;
  bottom: 27px;
  width: 24px;
  height: 24px;
  border: 2px solid #ff334e;
  border-radius: 50%;
}

.imedia-seo-query i::after {
  position: absolute;
  right: -8px;
  bottom: -5px;
  width: 10px;
  height: 2px;
  background: #ff334e;
  transform: rotate(46deg);
  content: "";
}

.imedia-seo-radar-grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-bottom: 19px;
  z-index: 1;
}

.imedia-seo-radar-grid article {
  display: grid;
  min-height: 114px;
  padding: 16px;
  align-content: end;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.03);
}

.imedia-seo-radar-grid article > div {
  display: flex;
  gap: 10px;
  align-items: baseline;
  justify-content: space-between;
}

.imedia-seo-radar-grid span {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 10px;
}

.imedia-seo-radar-grid strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 17px;
  text-transform: uppercase;
}

.imedia-seo-radar-grid article > i {
  position: relative;
  height: 3px;
  margin: 14px 0 8px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(255, 255, 255, 0.1);
}

.imedia-seo-radar-grid article > i::after {
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--seo-score);
  border-radius: inherit;
  background: linear-gradient(90deg, #dc102d, #ff6074);
  content: "";
}

.imedia-seo-radar-grid small {
  color: rgba(255, 255, 255, 0.4);
  font-size: 9px;
}

.imedia-seo-radar-foot {
  position: relative;
  display: flex;
  gap: 8px;
  align-items: center;
  color: rgba(255, 255, 255, 0.38);
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  z-index: 1;
}

.imedia-seo-radar-foot i {
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg, #ff334e, rgba(255, 51, 78, 0.12));
}

.imedia-seo-principle,
.imedia-seo-foundations,
.imedia-seo-method,
.imedia-seo-deliverables,
.imedia-seo-authority,
.imedia-seo-faq {
  padding: 110px 0;
}

.imedia-seo-principle {
  background: #fff;
}

.imedia-seo-principle-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 96px;
  align-items: start;
}

.imedia-seo-principle h2 {
  max-width: 740px;
  margin-top: 20px;
}

.imedia-seo-principle-grid > div:last-child {
  padding-top: 34px;
}

.imedia-seo-quote {
  margin-top: 28px;
  padding: 20px 0 20px 24px;
  border-left: 3px solid var(--imedia-red);
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
}

.imedia-seo-foundations {
  background: #f2f0eb;
}

.imedia-seo-section-head {
  display: grid;
  max-width: 860px;
  margin-bottom: 54px;
}

.imedia-seo-section-head h2 {
  margin-top: 20px;
}

.imedia-seo-section-head p {
  max-width: 650px;
  margin-bottom: 0;
}

.imedia-seo-foundation-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.imedia-seo-foundation-grid article {
  position: relative;
  display: flex;
  min-height: 310px;
  padding: 29px;
  flex-direction: column;
  border: 1px solid #dedad2;
  border-radius: 18px;
  background: #fff;
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.imedia-seo-foundation-grid article:nth-child(2),
.imedia-seo-foundation-grid article:nth-child(4) {
  color: #fff;
  border-color: #171717;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 51, 78, 0.22), transparent 42%),
    #111;
}

.imedia-seo-foundation-grid article:hover {
  box-shadow: 0 24px 48px rgba(30, 24, 20, 0.09);
  transform: translateY(-6px);
}

.imedia-seo-foundation-grid article > span {
  display: inline-flex;
  width: 40px;
  height: 40px;
  margin-bottom: 58px;
  align-items: center;
  justify-content: center;
  border: 1px solid #dfd9cf;
  border-radius: 50%;
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 11px;
}

.imedia-seo-foundation-grid article:nth-child(2) > span,
.imedia-seo-foundation-grid article:nth-child(4) > span {
  border-color: rgba(255, 255, 255, 0.18);
  color: #ff5268;
}

.imedia-seo-foundation-grid h3 {
  margin-bottom: 12px;
  color: #111;
  font-size: 26px;
}

.imedia-seo-foundation-grid article:nth-child(2) h3,
.imedia-seo-foundation-grid article:nth-child(4) h3 {
  color: #fff;
}

.imedia-seo-foundation-grid p {
  margin-bottom: 22px;
  font-size: 14px;
  line-height: 1.55;
}

.imedia-seo-foundation-grid article:nth-child(2) p,
.imedia-seo-foundation-grid article:nth-child(4) p {
  color: rgba(255, 255, 255, 0.55);
}

.imedia-seo-foundation-grid small {
  margin-top: auto;
  padding-top: 13px;
  border-top: 1px solid #e2ded7;
  color: #77736c;
  font-size: 9px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-seo-foundation-grid article:nth-child(2) small,
.imedia-seo-foundation-grid article:nth-child(4) small {
  border-color: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.42);
}

.imedia-seo-method {
  color: #fff;
  background:
    radial-gradient(circle at 8% 22%, rgba(220, 16, 45, 0.18), transparent 28%),
    #080808;
}

.imedia-seo-method-grid {
  display: grid;
  grid-template-columns: 0.76fr 1.24fr;
  gap: 90px;
  align-items: start;
}

.imedia-seo-method-intro {
  position: sticky;
  top: 130px;
}

.imedia-seo-method h2,
.imedia-seo-method h3 {
  color: #fff;
}

.imedia-seo-method-intro h2 {
  margin-top: 20px;
}

.imedia-seo-method-intro p {
  color: rgba(255, 255, 255, 0.58);
}

.imedia-seo-method-list {
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  list-style: none;
}

.imedia-seo-method-list li {
  display: grid;
  grid-template-columns: 52px 1fr 88px;
  gap: 22px;
  padding: 32px 0;
  align-items: start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.imedia-seo-method-list li > span {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 14px;
}

.imedia-seo-method-list h3 {
  margin-bottom: 8px;
  font-size: 25px;
}

.imedia-seo-method-list p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 14px;
}

.imedia-seo-method-list small {
  padding-top: 5px;
  color: rgba(255, 255, 255, 0.38);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-align: right;
  text-transform: uppercase;
}

.imedia-seo-deliverables {
  background: #fff;
}

.imedia-seo-deliverables-grid {
  display: grid;
  grid-template-columns: 0.78fr 1.22fr;
  gap: 96px;
  align-items: start;
}

.imedia-seo-deliverables-copy {
  position: sticky;
  top: 130px;
}

.imedia-seo-deliverables-copy h2 {
  margin-top: 20px;
}

.imedia-seo-deliverables-list {
  border-top: 1px solid #d9d5cd;
}

.imedia-seo-deliverables-list article {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 20px;
  padding: 26px 0;
  border-bottom: 1px solid #d9d5cd;
}

.imedia-seo-deliverables-list article > span {
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.imedia-seo-deliverables-list h3 {
  margin-bottom: 7px;
  color: #111;
  font-size: 22px;
}

.imedia-seo-deliverables-list p {
  margin-bottom: 0;
  font-size: 15px;
}

.imedia-seo-map {
  padding: 0 0 104px;
  background: #fff;
}

.imedia-seo-map-card {
  padding: 64px;
  overflow: hidden;
  color: #fff;
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 126, 140, 0.38), transparent 34%),
    var(--imedia-red);
  box-shadow: 0 24px 65px rgba(137, 5, 26, 0.22);
}

.imedia-seo-map-card > div:first-child {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 70px;
  align-items: end;
}

.imedia-seo-map-card h2 {
  margin-top: 18px;
  color: #fff;
  font-size: clamp(2.3rem, 3.7vw, 3.9rem);
}

.imedia-seo-map-card .imedia-service-kicker,
.imedia-seo-map-card p {
  color: #fff;
}

.imedia-seo-map-card p {
  margin-bottom: 20px;
  font-size: 15px;
}

.imedia-seo-intent-flow {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  gap: 14px;
  margin-top: 42px;
  align-items: center;
}

.imedia-seo-intent-flow article {
  display: grid;
  min-height: 128px;
  padding: 18px;
  align-content: end;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 14px;
  background: rgba(23, 0, 4, 0.13);
}

.imedia-seo-intent-flow article > span {
  margin-bottom: 20px;
  color: rgba(255, 255, 255, 0.64);
  font-family: "Oswald", sans-serif;
  font-size: 11px;
}

.imedia-seo-intent-flow strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  text-transform: uppercase;
}

.imedia-seo-intent-flow small {
  margin-top: 7px;
  color: rgba(255, 255, 255, 0.64);
  font-size: 9px;
}

.imedia-seo-intent-flow > i {
  width: 24px;
  height: 1px;
  background: rgba(255, 255, 255, 0.52);
}

.imedia-seo-authority {
  color: #fff;
  background: #0b0b0b;
}

.imedia-seo-authority-grid {
  display: grid;
  grid-template-columns: 0.65fr 1.35fr;
  gap: 100px;
  align-items: center;
}

.imedia-seo-since {
  display: flex;
  gap: 22px;
  align-items: flex-end;
}

.imedia-seo-since strong {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: clamp(5.8rem, 10vw, 9rem);
  line-height: 0.78;
  letter-spacing: -0.06em;
}

.imedia-seo-since span {
  max-width: 180px;
  color: rgba(255, 255, 255, 0.58);
  font-size: 13px;
  line-height: 1.45;
}

.imedia-seo-authority h2 {
  color: #fff;
}

.imedia-seo-authority p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.62);
}

.imedia-seo-faq {
  background: #f2f0eb;
}

.imedia-seo-faq-grid {
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 90px;
  align-items: start;
}

.imedia-seo-faq-grid h2 {
  margin-top: 18px;
  font-size: clamp(2.3rem, 3.8vw, 3.9rem);
}

.imedia-seo-faq-list {
  border-top: 1px solid #cec9c0;
}

.imedia-seo-faq-list details {
  border-bottom: 1px solid #cec9c0;
}

.imedia-seo-faq-list summary {
  display: flex;
  min-height: 78px;
  padding: 20px 0;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  list-style: none;
}

.imedia-seo-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-seo-faq-list summary span {
  display: inline-flex;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  align-items: center;
  justify-content: center;
  border: 1px solid #bbb6ac;
  border-radius: 50%;
  color: var(--imedia-red);
}

.imedia-seo-faq-list details[open] summary span {
  transform: rotate(45deg);
}

.imedia-seo-faq-list details p {
  max-width: 680px;
  margin: -5px 54px 24px 0;
  font-size: 15px;
}

.imedia-seo-final-cta {
  padding: 110px 0 120px;
  color: #fff;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(220, 16, 45, 0.42), transparent 42%),
    linear-gradient(rgba(255, 255, 255, 0.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.028) 1px, transparent 1px),
    #070707;
  background-size: auto, 52px 52px, 52px 52px, auto;
}

.imedia-seo-final-cta .imedia-service-shell {
  max-width: 950px;
}

.imedia-seo-final-cta .imedia-service-kicker {
  justify-content: center;
}

.imedia-seo-final-cta h2 {
  margin: 22px 0;
  color: #fff;
  font-size: clamp(2.7rem, 5vw, 5rem);
}

.imedia-seo-final-cta p {
  max-width: 720px;
  margin: 0 auto 32px;
  color: rgba(255, 255, 255, 0.65);
}

@media (max-width: 1199px) {
  .imedia-seo-hero {
    min-height: auto;
    padding-top: 140px;
  }

  .imedia-seo-hero-grid {
    grid-template-columns: 1fr;
    gap: 54px;
  }

  .imedia-seo-hero-copy {
    max-width: 870px;
  }

  .imedia-seo-radar {
    width: min(720px, 100%);
    transform: none;
  }

  .imedia-seo-foundation-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-seo-foundation-grid article {
    min-height: 280px;
  }
}

@media (max-width: 900px) {
  .imedia-seo-principle-grid,
  .imedia-seo-method-grid,
  .imedia-seo-deliverables-grid,
  .imedia-seo-authority-grid,
  .imedia-seo-faq-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .imedia-seo-principle-grid > div:last-child {
    padding-top: 0;
  }

  .imedia-seo-method-intro,
  .imedia-seo-deliverables-copy {
    position: static;
  }

  .imedia-seo-method-list li {
    grid-template-columns: 52px 1fr;
  }

  .imedia-seo-method-list small {
    grid-column: 2;
    text-align: left;
  }

  .imedia-seo-map-card > div:first-child {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}

@media (max-width: 600px) {
  .imedia-seo-hero {
    padding: 122px 0 72px;
  }

  .imedia-seo-hero h1 {
    font-size: clamp(2.7rem, 13.5vw, 3.9rem);
  }

  .imedia-seo-proof {
    display: grid;
  }

  .imedia-seo-radar {
    padding: 18px;
    border-radius: 18px;
  }

  .imedia-seo-radar-head {
    align-items: flex-start;
  }

  .imedia-seo-radar-grid {
    grid-template-columns: 1fr;
  }

  .imedia-seo-radar-grid article {
    min-height: 98px;
  }

  .imedia-seo-radar-foot {
    flex-wrap: wrap;
  }

  .imedia-seo-principle,
  .imedia-seo-foundations,
  .imedia-seo-method,
  .imedia-seo-deliverables,
  .imedia-seo-authority,
  .imedia-seo-faq,
  .imedia-seo-final-cta {
    padding-top: 76px;
    padding-bottom: 76px;
  }

  .imedia-seo-foundation-grid {
    grid-template-columns: 1fr;
  }

  .imedia-seo-foundation-grid article {
    min-height: auto;
  }

  .imedia-seo-foundation-grid article > span {
    margin-bottom: 38px;
  }

  .imedia-seo-method-list li {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 26px 0;
  }

  .imedia-seo-method-list small {
    grid-column: auto;
  }

  .imedia-seo-map {
    padding-bottom: 76px;
  }

  .imedia-seo-map-card {
    width: calc(100% - 24px);
    padding: 34px 24px;
    border-radius: 18px;
  }

  .imedia-seo-intent-flow {
    grid-template-columns: 1fr;
  }

  .imedia-seo-intent-flow > i {
    width: 1px;
    height: 16px;
    margin-left: 50%;
  }

  .imedia-seo-intent-flow article {
    min-height: 112px;
  }

  .imedia-seo-since {
    align-items: center;
  }

  .imedia-seo-since strong {
    font-size: 6.4rem;
  }

  .imedia-seo-faq-list summary {
    min-height: 72px;
    font-size: 18px;
  }

  .imedia-seo-faq-list details p {
    margin-right: 0;
  }
}

/* Visual identity service page */
.imedia-identity-hero {
  position: relative;
  min-height: 790px;
  padding: 172px 0 104px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 78% 27%, rgba(220, 16, 45, 0.27), transparent 30%),
    linear-gradient(132deg, #050505 0%, #0a0a0b 58%, #160609 100%);
}

.imedia-identity-hero::before {
  position: absolute;
  inset: 0;
  opacity: 0.2;
  background-image:
    linear-gradient(30deg, rgba(255, 255, 255, 0.05) 12%, transparent 12.5%, transparent 87%, rgba(255, 255, 255, 0.05) 87.5%),
    linear-gradient(150deg, rgba(255, 255, 255, 0.05) 12%, transparent 12.5%, transparent 87%, rgba(255, 255, 255, 0.05) 87.5%);
  background-size: 72px 126px;
  mask-image: linear-gradient(90deg, transparent 8%, #000 58%, #000);
  content: "";
}

.imedia-identity-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(450px, 0.95fr);
  gap: 70px;
  align-items: center;
  z-index: 1;
}

.imedia-identity-hero-copy {
  text-align: left;
}

.imedia-identity-hero h1 {
  max-width: 790px;
  margin: 22px 0 26px;
  color: #fff;
  font-size: clamp(3.3rem, 5.3vw, 5.65rem);
  font-weight: 700;
  line-height: 0.94;
  letter-spacing: -0.045em;
}

.imedia-identity-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 30px 0 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.64);
  font-size: 13px;
  list-style: none;
}

.imedia-identity-proof li {
  position: relative;
  padding-left: 14px;
}

.imedia-identity-proof li::before {
  position: absolute;
  top: 0.7em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ff334e;
  content: "";
}

.imedia-identity-studio {
  position: relative;
  padding: 25px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 24px;
  background: rgba(15, 15, 17, 0.93);
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.52);
  transform: rotate(-1deg);
}

.imedia-identity-studio::after {
  position: absolute;
  right: -104px;
  bottom: -116px;
  width: 248px;
  height: 248px;
  border: 1px solid rgba(255, 51, 78, 0.4);
  border-radius: 50%;
  box-shadow: 0 0 0 42px rgba(220, 16, 45, 0.04), 0 0 0 84px rgba(220, 16, 45, 0.025);
  content: "";
}

.imedia-identity-studio-head {
  position: relative;
  display: flex;
  padding-bottom: 19px;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  z-index: 1;
}

.imedia-identity-studio-head div {
  display: grid;
  gap: 4px;
}

.imedia-identity-studio-head span {
  color: rgba(255, 255, 255, 0.45);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-identity-studio-head strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  text-transform: uppercase;
}

.imedia-identity-studio-head b {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: #63e6a8;
  font-size: 10px;
  font-weight: 600;
}

.imedia-identity-studio-head b i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 5px rgba(99, 230, 168, 0.1);
}

.imedia-identity-canvas {
  position: relative;
  display: grid;
  min-height: 180px;
  margin: 20px 0 10px;
  padding: 21px;
  grid-template-columns: 120px 1fr;
  gap: 24px;
  align-items: center;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  background:
    linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    rgba(255, 255, 255, 0.035);
  background-size: 24px 24px, 24px 24px, auto;
  z-index: 1;
}

.imedia-identity-mark {
  position: relative;
  display: flex;
  width: 108px;
  height: 108px;
  align-items: center;
  justify-content: center;
}

.imedia-identity-mark i {
  position: absolute;
  width: 76px;
  height: 76px;
  border: 2px solid #ff334e;
  transform: rotate(45deg);
}

.imedia-identity-mark i:nth-child(2) {
  width: 53px;
  height: 53px;
  border-color: rgba(255, 255, 255, 0.42);
}

.imedia-identity-mark span {
  position: relative;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 34px;
  font-weight: 700;
  z-index: 1;
}

.imedia-identity-concept {
  display: grid;
}

.imedia-identity-concept > span {
  margin-bottom: 13px;
  color: #ff334e;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-identity-concept strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 27px;
  line-height: 1.02;
}

.imedia-identity-concept small {
  margin-top: 9px;
  color: rgba(255, 255, 255, 0.4);
  font-size: 9px;
}

.imedia-identity-tools {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-bottom: 19px;
  z-index: 1;
}

.imedia-identity-tools article {
  display: grid;
  min-height: 100px;
  padding: 14px;
  align-content: space-between;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.03);
}

.imedia-identity-tools article > span {
  color: rgba(255, 255, 255, 0.4);
  font-size: 9px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-identity-tools article > div:not(.imedia-identity-pattern) {
  display: flex;
  gap: 6px;
}

.imedia-identity-tools article > div:not(.imedia-identity-pattern) i {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #dc102d;
}

.imedia-identity-tools article > div:not(.imedia-identity-pattern) i:nth-child(2) { background: #ff6074; }
.imedia-identity-tools article > div:not(.imedia-identity-pattern) i:nth-child(3) { background: #f2f0eb; }
.imedia-identity-tools article > div:not(.imedia-identity-pattern) i:nth-child(4) { background: #333; }

.imedia-identity-tools strong {
  display: flex;
  gap: 8px;
  align-items: flex-end;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 29px;
}

.imedia-identity-tools strong small {
  padding-bottom: 4px;
  color: rgba(255, 255, 255, 0.38);
  font-family: "Rubik", sans-serif;
  font-size: 8px;
  font-weight: 400;
}

.imedia-identity-pattern {
  height: 35px;
  background:
    linear-gradient(135deg, transparent 38%, #ff334e 38% 46%, transparent 46% 54%, rgba(255, 255, 255, 0.35) 54% 62%, transparent 62%);
  background-size: 28px 28px;
}

.imedia-identity-studio-foot {
  position: relative;
  display: flex;
  gap: 8px;
  align-items: center;
  color: rgba(255, 255, 255, 0.38);
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  z-index: 1;
}

.imedia-identity-studio-foot i {
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg, #ff334e, rgba(255, 51, 78, 0.12));
}

.imedia-identity-principle,
.imedia-identity-system,
.imedia-identity-method,
.imedia-identity-deliverables,
.imedia-identity-authority,
.imedia-identity-faq {
  padding: 110px 0;
}

.imedia-identity-principle {
  background: #fff;
}

.imedia-identity-principle-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 96px;
  align-items: start;
}

.imedia-identity-principle h2 {
  max-width: 740px;
  margin-top: 20px;
}

.imedia-identity-principle-grid > div:last-child {
  padding-top: 34px;
}

.imedia-identity-quote {
  margin-top: 28px;
  padding: 20px 0 20px 24px;
  border-left: 3px solid var(--imedia-red);
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
}

.imedia-identity-system {
  background: #f2f0eb;
}

.imedia-identity-section-head {
  display: grid;
  max-width: 860px;
  margin-bottom: 54px;
}

.imedia-identity-section-head h2 {
  margin-top: 20px;
}

.imedia-identity-section-head p {
  max-width: 680px;
  margin-bottom: 0;
}

.imedia-identity-system-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.imedia-identity-system-grid article {
  position: relative;
  display: flex;
  min-height: 280px;
  padding: 29px;
  flex-direction: column;
  border: 1px solid #dedad2;
  border-radius: 18px;
  background: #fff;
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.imedia-identity-system-grid article:nth-child(1),
.imedia-identity-system-grid article:nth-child(5) {
  color: #fff;
  border-color: #171717;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 51, 78, 0.22), transparent 42%),
    #111;
}

.imedia-identity-system-grid article:hover {
  box-shadow: 0 24px 48px rgba(30, 24, 20, 0.09);
  transform: translateY(-6px);
}

.imedia-identity-system-grid article > span {
  display: inline-flex;
  width: 40px;
  height: 40px;
  margin-bottom: 48px;
  align-items: center;
  justify-content: center;
  border: 1px solid #dfd9cf;
  border-radius: 50%;
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 11px;
}

.imedia-identity-system-grid article:nth-child(1) > span,
.imedia-identity-system-grid article:nth-child(5) > span {
  border-color: rgba(255, 255, 255, 0.18);
  color: #ff5268;
}

.imedia-identity-system-grid h3 {
  margin-bottom: 12px;
  color: #111;
  font-size: 26px;
}

.imedia-identity-system-grid article:nth-child(1) h3,
.imedia-identity-system-grid article:nth-child(5) h3 {
  color: #fff;
}

.imedia-identity-system-grid p {
  margin-bottom: 22px;
  font-size: 14px;
  line-height: 1.55;
}

.imedia-identity-system-grid article:nth-child(1) p,
.imedia-identity-system-grid article:nth-child(5) p {
  color: rgba(255, 255, 255, 0.55);
}

.imedia-identity-system-grid small {
  margin-top: auto;
  padding-top: 13px;
  border-top: 1px solid #e2ded7;
  color: #77736c;
  font-size: 9px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-identity-system-grid article:nth-child(1) small,
.imedia-identity-system-grid article:nth-child(5) small {
  border-color: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.42);
}

.imedia-identity-method {
  color: #fff;
  background:
    radial-gradient(circle at 8% 22%, rgba(220, 16, 45, 0.18), transparent 28%),
    #080808;
}

.imedia-identity-method-grid {
  display: grid;
  grid-template-columns: 0.76fr 1.24fr;
  gap: 90px;
  align-items: start;
}

.imedia-identity-method-intro {
  position: sticky;
  top: 130px;
}

.imedia-identity-method h2,
.imedia-identity-method h3 {
  color: #fff;
}

.imedia-identity-method-intro h2 {
  margin-top: 20px;
}

.imedia-identity-method-intro p {
  color: rgba(255, 255, 255, 0.58);
}

.imedia-identity-method-list {
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  list-style: none;
}

.imedia-identity-method-list li {
  display: grid;
  grid-template-columns: 52px 1fr 88px;
  gap: 22px;
  padding: 32px 0;
  align-items: start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.imedia-identity-method-list li > span {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: 14px;
}

.imedia-identity-method-list h3 {
  margin-bottom: 8px;
  font-size: 25px;
}

.imedia-identity-method-list p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 14px;
}

.imedia-identity-method-list small {
  padding-top: 5px;
  color: rgba(255, 255, 255, 0.38);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-align: right;
  text-transform: uppercase;
}

.imedia-identity-deliverables {
  background: #fff;
}

.imedia-identity-deliverables-grid {
  display: grid;
  grid-template-columns: 0.78fr 1.22fr;
  gap: 96px;
  align-items: start;
}

.imedia-identity-deliverables-copy {
  position: sticky;
  top: 130px;
}

.imedia-identity-deliverables-copy h2 {
  margin-top: 20px;
}

.imedia-identity-deliverables-list {
  border-top: 1px solid #d9d5cd;
}

.imedia-identity-deliverables-list article {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 20px;
  padding: 26px 0;
  border-bottom: 1px solid #d9d5cd;
}

.imedia-identity-deliverables-list article > span {
  color: var(--imedia-red);
  font-family: "Oswald", sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.imedia-identity-deliverables-list h3 {
  margin-bottom: 7px;
  color: #111;
  font-size: 22px;
}

.imedia-identity-deliverables-list p {
  margin-bottom: 0;
  font-size: 15px;
}

.imedia-identity-lab {
  padding: 0 0 104px;
  background: #fff;
}

.imedia-identity-lab-card {
  padding: 64px;
  overflow: hidden;
  color: #fff;
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 126, 140, 0.38), transparent 34%),
    var(--imedia-red);
  box-shadow: 0 24px 65px rgba(137, 5, 26, 0.22);
}

.imedia-identity-lab-card > div:first-child {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 70px;
  align-items: end;
}

.imedia-identity-lab-card h2 {
  margin-top: 18px;
  color: #fff;
  font-size: clamp(2.3rem, 3.7vw, 3.9rem);
}

.imedia-identity-lab-card .imedia-service-kicker,
.imedia-identity-lab-card p {
  color: #fff;
}

.imedia-identity-lab-card p {
  margin-bottom: 20px;
  font-size: 15px;
}

.imedia-identity-application-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-top: 42px;
}

.imedia-identity-application-grid article {
  position: relative;
  display: grid;
  min-height: 132px;
  padding: 18px;
  align-content: end;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 14px;
  background: rgba(23, 0, 4, 0.13);
}

.imedia-identity-application-grid span {
  margin-bottom: 14px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 9px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.imedia-identity-application-grid strong {
  position: relative;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 18px;
  line-height: 1.1;
  text-transform: uppercase;
  z-index: 1;
}

.imedia-identity-application-grid i {
  position: absolute;
  top: -25px;
  right: -25px;
  width: 80px;
  height: 80px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  transform: rotate(45deg);
}

.imedia-identity-authority {
  color: #fff;
  background: #0b0b0b;
}

.imedia-identity-authority-grid {
  display: grid;
  grid-template-columns: 0.65fr 1.35fr;
  gap: 100px;
  align-items: center;
}

.imedia-identity-since {
  display: flex;
  gap: 22px;
  align-items: flex-end;
}

.imedia-identity-since strong {
  color: #ff334e;
  font-family: "Oswald", sans-serif;
  font-size: clamp(5.8rem, 10vw, 9rem);
  line-height: 0.78;
  letter-spacing: -0.06em;
}

.imedia-identity-since span {
  max-width: 180px;
  color: rgba(255, 255, 255, 0.58);
  font-size: 13px;
  line-height: 1.45;
}

.imedia-identity-authority h2 {
  color: #fff;
}

.imedia-identity-authority p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.62);
}

.imedia-identity-faq {
  background: #f2f0eb;
}

.imedia-identity-faq-grid {
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 90px;
  align-items: start;
}

.imedia-identity-faq-grid h2 {
  margin-top: 18px;
  font-size: clamp(2.3rem, 3.8vw, 3.9rem);
}

.imedia-identity-faq-list {
  border-top: 1px solid #cec9c0;
}

.imedia-identity-faq-list details {
  border-bottom: 1px solid #cec9c0;
}

.imedia-identity-faq-list summary {
  display: flex;
  min-height: 78px;
  padding: 20px 0;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  list-style: none;
}

.imedia-identity-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-identity-faq-list summary span {
  display: inline-flex;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  align-items: center;
  justify-content: center;
  border: 1px solid #bbb6ac;
  border-radius: 50%;
  color: var(--imedia-red);
}

.imedia-identity-faq-list details[open] summary span {
  transform: rotate(45deg);
}

.imedia-identity-faq-list details p {
  max-width: 680px;
  margin: -5px 54px 24px 0;
  font-size: 15px;
}

.imedia-identity-final-cta {
  padding: 110px 0 120px;
  color: #fff;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(220, 16, 45, 0.42), transparent 42%),
    linear-gradient(135deg, transparent 45%, rgba(255, 255, 255, 0.025) 45% 55%, transparent 55%),
    #070707;
  background-size: auto, 72px 72px, auto;
}

.imedia-identity-final-cta .imedia-service-shell {
  max-width: 950px;
}

.imedia-identity-final-cta .imedia-service-kicker {
  justify-content: center;
}

.imedia-identity-final-cta h2 {
  margin: 22px 0;
  color: #fff;
  font-size: clamp(2.7rem, 5vw, 5rem);
}

.imedia-identity-final-cta p {
  max-width: 720px;
  margin: 0 auto 32px;
  color: rgba(255, 255, 255, 0.65);
}

@media (max-width: 1199px) {
  .imedia-identity-hero {
    min-height: auto;
    padding-top: 140px;
  }

  .imedia-identity-hero-grid {
    grid-template-columns: 1fr;
    gap: 54px;
  }

  .imedia-identity-hero-copy {
    max-width: 890px;
  }

  .imedia-identity-studio {
    width: min(720px, 100%);
    transform: none;
  }
}

@media (max-width: 900px) {
  .imedia-identity-principle-grid,
  .imedia-identity-method-grid,
  .imedia-identity-deliverables-grid,
  .imedia-identity-authority-grid,
  .imedia-identity-faq-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .imedia-identity-principle-grid > div:last-child {
    padding-top: 0;
  }

  .imedia-identity-system-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-identity-method-intro,
  .imedia-identity-deliverables-copy {
    position: static;
  }

  .imedia-identity-method-list li {
    grid-template-columns: 52px 1fr;
  }

  .imedia-identity-method-list small {
    grid-column: 2;
    text-align: left;
  }

  .imedia-identity-lab-card > div:first-child {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .imedia-identity-application-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 600px) {
  .imedia-identity-hero {
    padding: 122px 0 72px;
  }

  .imedia-identity-hero h1 {
    font-size: clamp(2.6rem, 13vw, 3.8rem);
  }

  .imedia-identity-proof {
    display: grid;
  }

  .imedia-identity-studio {
    padding: 18px;
    border-radius: 18px;
  }

  .imedia-identity-studio-head {
    align-items: flex-start;
  }

  .imedia-identity-canvas {
    min-height: 250px;
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .imedia-identity-mark {
    width: 88px;
    height: 88px;
  }

  .imedia-identity-mark i {
    width: 62px;
    height: 62px;
  }

  .imedia-identity-mark i:nth-child(2) {
    width: 43px;
    height: 43px;
  }

  .imedia-identity-tools {
    grid-template-columns: 1fr;
  }

  .imedia-identity-tools article {
    min-height: 88px;
  }

  .imedia-identity-studio-foot {
    flex-wrap: wrap;
  }

  .imedia-identity-principle,
  .imedia-identity-system,
  .imedia-identity-method,
  .imedia-identity-deliverables,
  .imedia-identity-authority,
  .imedia-identity-faq,
  .imedia-identity-final-cta {
    padding-top: 76px;
    padding-bottom: 76px;
  }

  .imedia-identity-system-grid {
    grid-template-columns: 1fr;
  }

  .imedia-identity-system-grid article {
    min-height: auto;
  }

  .imedia-identity-system-grid article > span {
    margin-bottom: 38px;
  }

  .imedia-identity-method-list li {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 26px 0;
  }

  .imedia-identity-method-list small {
    grid-column: auto;
  }

  .imedia-identity-lab {
    padding-bottom: 76px;
  }

  .imedia-identity-lab-card {
    width: calc(100% - 24px);
    padding: 34px 24px;
    border-radius: 18px;
  }

  .imedia-identity-application-grid {
    grid-template-columns: 1fr;
  }

  .imedia-identity-application-grid article {
    min-height: 112px;
  }

  .imedia-identity-since {
    align-items: center;
  }

  .imedia-identity-since strong {
    font-size: 6.4rem;
  }

  .imedia-identity-faq-list summary {
    min-height: 72px;
    font-size: 18px;
  }

  .imedia-identity-faq-list details p {
    margin-right: 0;
  }
}

/* PAGINA DE MIDIA E PERFORMANCE */
.imedia-media-page {
  --media-red: #ed1231;
  --media-ink: #070707;
  --media-paper: #f4f1eb;
  --media-line: rgba(255, 255, 255, 0.14);
  background: var(--media-ink);
  color: #fff;
  overflow: hidden;
}

.imedia-media-hero {
  position: relative;
  min-height: 720px;
  display: flex;
  align-items: center;
  padding: 120px 0 92px;
  background:
    radial-gradient(circle at 74% 45%, rgba(237, 18, 49, 0.2), transparent 28%),
    linear-gradient(115deg, #050505 0%, #0d0d0d 58%, #050505 100%);
}

.imedia-media-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.2;
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(90deg, transparent, #000 40%, #000);
  pointer-events: none;
}

.imedia-media-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(500px, .98fr);
  gap: clamp(50px, 7vw, 112px);
  align-items: center;
}

.imedia-media-hero-copy {
  max-width: 690px;
}

.imedia-media-hero h1 {
  max-width: 680px;
  margin: 18px 0 24px;
  font-size: clamp(54px, 5.1vw, 82px);
  line-height: .96;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.imedia-media-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 26px;
  margin: 34px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-media-proof li {
  position: relative;
  padding-left: 17px;
  color: #c6c6c6;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.imedia-media-proof li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--media-red);
  box-shadow: 0 0 14px rgba(237, 18, 49, .8);
}

.imedia-media-control {
  position: relative;
  min-height: 480px;
  padding: 24px;
  border: 1px solid rgba(237, 18, 49, .7);
  border-radius: 28px;
  background: rgba(10, 10, 10, .84);
  box-shadow: 0 34px 90px rgba(0,0,0,.54), inset 0 0 60px rgba(237,18,49,.05);
  backdrop-filter: blur(14px);
}

.imedia-media-control::after {
  content: "";
  position: absolute;
  right: -70px;
  bottom: -70px;
  width: 180px;
  height: 180px;
  border: 1px solid rgba(237,18,49,.28);
  border-radius: 50%;
  box-shadow: 0 0 0 30px rgba(237,18,49,.035), 0 0 0 64px rgba(237,18,49,.025);
  pointer-events: none;
}

.imedia-media-control-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--media-line);
}

.imedia-media-control-head div {
  display: grid;
  gap: 5px;
}

.imedia-media-control-head span,
.imedia-media-signal > span {
  color: #8e8e8e;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-media-control-head strong {
  font-size: 18px;
}

.imedia-media-control-head b {
  align-self: flex-start;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #d5d5d5;
  font-size: 11px;
  font-weight: 600;
}

.imedia-media-control-head b i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #49d585;
  box-shadow: 0 0 11px #49d585;
}

.imedia-media-control-body {
  display: grid;
  grid-template-columns: 190px 1fr;
  gap: 28px;
  align-items: center;
  min-height: 315px;
}

.imedia-media-radar {
  position: relative;
  width: 190px;
  aspect-ratio: 1;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 50%;
  background:
    linear-gradient(90deg, transparent 49.7%, rgba(255,255,255,.1) 50%, transparent 50.3%),
    linear-gradient(transparent 49.7%, rgba(255,255,255,.1) 50%, transparent 50.3%),
    radial-gradient(circle, rgba(237,18,49,.11), transparent 62%);
  box-shadow: inset 0 0 40px rgba(237,18,49,.08);
}

.imedia-media-radar i {
  position: absolute;
  inset: 18%;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 50%;
}

.imedia-media-radar i:nth-child(2) { inset: 34%; }
.imedia-media-radar i:nth-child(3) { inset: 47%; background: var(--media-red); border: 0; box-shadow: 0 0 20px rgba(237,18,49,.75); }

.imedia-media-radar span {
  position: absolute;
  inset: 50% 50% 50% 50%;
  width: 48%;
  height: 1px;
  transform-origin: left center;
  transform: rotate(-34deg);
  background: linear-gradient(90deg, var(--media-red), transparent);
}

.imedia-media-radar b {
  position: absolute;
  top: 24%;
  right: 20%;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 5px rgba(255,255,255,.1), 0 0 20px var(--media-red);
}

.imedia-media-signal {
  min-width: 0;
}

.imedia-media-signal strong {
  display: block;
  max-width: 270px;
  margin-top: 10px;
  font-size: 28px;
  line-height: 1.08;
}

.imedia-media-pulse {
  display: flex;
  align-items: end;
  gap: 6px;
  height: 74px;
  margin-top: 25px;
}

.imedia-media-pulse i {
  flex: 1;
  min-width: 5px;
  border-radius: 4px 4px 1px 1px;
  background: linear-gradient(180deg, #ff3653, #8a0b20);
  box-shadow: 0 0 12px rgba(237,18,49,.16);
}

.imedia-media-pulse i:nth-child(1) { height: 28%; }
.imedia-media-pulse i:nth-child(2) { height: 43%; }
.imedia-media-pulse i:nth-child(3) { height: 35%; }
.imedia-media-pulse i:nth-child(4) { height: 62%; }
.imedia-media-pulse i:nth-child(5) { height: 52%; }
.imedia-media-pulse i:nth-child(6) { height: 75%; }
.imedia-media-pulse i:nth-child(7) { height: 94%; }

.imedia-media-cycle {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 15px 16px;
  border-radius: 13px;
  background: rgba(255,255,255,.045);
  color: #d0d0d0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-media-cycle i {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, var(--media-red), rgba(255,255,255,.15));
}

.imedia-media-principle,
.imedia-media-channels,
.imedia-media-method,
.imedia-media-deliverables,
.imedia-media-authority,
.imedia-media-faq {
  padding: 110px 0;
}

.imedia-media-principle {
  background: var(--media-paper);
  color: #090909;
}

.imedia-media-principle-grid {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: clamp(60px, 10vw, 170px);
}

.imedia-media-principle h2,
.imedia-media-section-head h2,
.imedia-media-method-intro h2,
.imedia-media-deliverables-copy h2,
.imedia-media-measurement h2,
.imedia-media-authority h2,
.imedia-media-faq h2,
.imedia-media-final-cta h2 {
  margin: 15px 0 0;
  font-size: clamp(42px, 4vw, 64px);
  line-height: 1;
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.imedia-media-principle-grid > div:last-child {
  font-size: 18px;
  line-height: 1.7;
}

.imedia-media-principle-grid p {
  margin: 0 0 18px;
}

.imedia-media-quote {
  margin-top: 32px;
  padding: 22px 24px;
  border-left: 4px solid var(--media-red);
  background: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.imedia-media-channels {
  position: relative;
  background: #0b0b0b;
}

.imedia-media-section-head {
  max-width: 790px;
  margin-bottom: 54px;
}

.imedia-media-section-head p {
  max-width: 680px;
  color: #aaa;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-media-channel-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--media-line);
  border-left: 1px solid var(--media-line);
}

.imedia-media-channel-grid article {
  position: relative;
  min-height: 270px;
  padding: 32px;
  border-right: 1px solid var(--media-line);
  border-bottom: 1px solid var(--media-line);
  transition: background .25s ease, transform .25s ease;
}

.imedia-media-channel-grid article:hover {
  z-index: 1;
  transform: translateY(-4px);
  background: #151515;
}

.imedia-media-channel-grid article > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 34px;
  border: 1px solid rgba(237,18,49,.55);
  border-radius: 50%;
  color: var(--media-red);
  font-size: 11px;
  font-weight: 800;
}

.imedia-media-channel-grid h3 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 25px;
}

.imedia-media-channel-grid p {
  margin: 0;
  color: #aaa;
  line-height: 1.55;
}

.imedia-media-channel-grid small {
  position: absolute;
  right: 28px;
  top: 32px;
  color: #666;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-media-method {
  background: var(--media-red);
}

.imedia-media-method-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-media-method-intro {
  position: sticky;
  top: 120px;
  align-self: start;
}

.imedia-media-method-intro p {
  max-width: 480px;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-media-method .imedia-service-kicker,
.imedia-media-method p {
  color: rgba(255,255,255,.78);
}

.imedia-media-method-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.imedia-media-method-list li {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: 24px;
  align-items: start;
  padding: 28px 0;
  border-top: 1px solid rgba(255,255,255,.35);
}

.imedia-media-method-list li:last-child {
  border-bottom: 1px solid rgba(255,255,255,.35);
}

.imedia-media-method-list li > span {
  font-size: 13px;
  font-weight: 800;
}

.imedia-media-method-list h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 26px;
}

.imedia-media-method-list p {
  margin: 0;
  line-height: 1.55;
}

.imedia-media-method-list small {
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.4);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-media-deliverables {
  background: #f9f8f5;
  color: #0a0a0a;
}

.imedia-media-deliverables-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-media-deliverables-copy {
  align-self: start;
}

.imedia-media-deliverables-copy > p {
  max-width: 530px;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-media-deliverables-list {
  border-top: 1px solid #cfcfcf;
}

.imedia-media-deliverables-list article {
  display: grid;
  grid-template-columns: 50px 1fr;
  gap: 18px;
  padding: 24px 0;
  border-bottom: 1px solid #cfcfcf;
}

.imedia-media-deliverables-list article > span {
  color: var(--media-red);
  font-size: 11px;
  font-weight: 800;
}

.imedia-media-deliverables-list h3 {
  margin: 0 0 7px;
  font-size: 21px;
}

.imedia-media-deliverables-list p {
  margin: 0;
  color: #555;
  line-height: 1.5;
}

.imedia-media-measurement {
  padding: 42px 0;
  background: #f9f8f5;
  color: #fff;
}

.imedia-media-measurement-card {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(50px, 7vw, 105px);
  padding: clamp(48px, 6vw, 84px);
  border-radius: 30px;
  background:
    radial-gradient(circle at 76% 50%, rgba(237,18,49,.2), transparent 34%),
    #0a0a0a;
}

.imedia-media-measurement-card > div:first-child {
  align-self: center;
}

.imedia-media-measurement-card h2 {
  font-size: clamp(38px, 3.3vw, 54px);
}

.imedia-media-measurement-card p {
  color: #aaa;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-media-metric-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.imedia-media-metric-grid article {
  position: relative;
  min-height: 165px;
  padding: 22px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}

.imedia-media-metric-grid article > span {
  color: var(--media-red);
  font-size: 10px;
  font-weight: 800;
}

.imedia-media-metric-grid strong,
.imedia-media-metric-grid small {
  position: relative;
  z-index: 1;
  display: block;
}

.imedia-media-metric-grid strong {
  margin-top: 25px;
  font-size: 22px;
}

.imedia-media-metric-grid small {
  margin-top: 7px;
  color: #9b9b9b;
  line-height: 1.4;
}

.imedia-media-metric-grid i {
  position: absolute;
  right: -26px;
  bottom: -38px;
  width: 110px;
  height: 110px;
  border: 1px solid rgba(237,18,49,.5);
  border-radius: 50%;
  box-shadow: 0 0 0 18px rgba(237,18,49,.045), 0 0 0 36px rgba(237,18,49,.025);
}

.imedia-media-authority {
  background: #f9f8f5;
  color: #0a0a0a;
}

.imedia-media-authority-grid {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: clamp(60px, 10vw, 170px);
  align-items: center;
}

.imedia-media-since {
  display: flex;
  align-items: center;
  gap: 24px;
}

.imedia-media-since strong {
  color: var(--media-red);
  font-size: clamp(68px, 8vw, 120px);
  line-height: .8;
}

.imedia-media-since span {
  max-width: 170px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
  text-transform: uppercase;
}

.imedia-media-authority p {
  max-width: 680px;
  color: #555;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-media-faq {
  background: var(--media-paper);
  color: #090909;
  border-top: 1px solid #d5d1ca;
}

.imedia-media-faq-grid {
  display: grid;
  grid-template-columns: .84fr 1.16fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-media-faq-grid > div:first-child > p {
  color: #555;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-media-faq-list {
  border-top: 1px solid #aaa;
}

.imedia-media-faq-list details {
  border-bottom: 1px solid #aaa;
}

.imedia-media-faq-list summary {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  padding: 24px 0;
  cursor: pointer;
  font-size: 19px;
  font-weight: 700;
  list-style: none;
}

.imedia-media-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-media-faq-list summary span {
  display: grid;
  flex: 0 0 30px;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #0a0a0a;
  color: #fff;
  font-size: 19px;
  transition: transform .2s ease, background .2s ease;
}

.imedia-media-faq-list details[open] summary span {
  transform: rotate(45deg);
  background: var(--media-red);
}

.imedia-media-faq-list details p {
  max-width: 680px;
  margin: -8px 50px 24px 0;
  color: #555;
  line-height: 1.6;
}

.imedia-media-final-cta {
  position: relative;
  padding: 120px 0;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(237,18,49,.36), transparent 38%),
    #090909;
}

.imedia-media-final-cta .imedia-service-shell {
  max-width: 980px;
}

.imedia-media-final-cta h2 {
  margin-inline: auto;
  font-size: clamp(48px, 5.8vw, 82px);
}

.imedia-media-final-cta p {
  max-width: 690px;
  margin: 24px auto 34px;
  color: #b5b5b5;
  font-size: 17px;
  line-height: 1.65;
}

@media (max-width: 1199px) {
  .imedia-media-hero {
    min-height: auto;
    padding: 104px 0 82px;
  }

  .imedia-media-hero-grid {
    grid-template-columns: 1fr;
  }

  .imedia-media-hero-copy {
    max-width: 780px;
  }

  .imedia-media-control {
    width: min(100%, 720px);
  }

  .imedia-media-principle-grid,
  .imedia-media-method-grid,
  .imedia-media-deliverables-grid,
  .imedia-media-authority-grid,
  .imedia-media-faq-grid {
    grid-template-columns: 1fr;
    gap: 52px;
  }

  .imedia-media-method-intro {
    position: static;
  }

  .imedia-media-channel-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-media-measurement-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .imedia-media-hero {
    padding: 82px 0 64px;
  }

  .imedia-media-hero h1 {
    font-size: clamp(42px, 12.5vw, 62px);
  }

  .imedia-media-proof {
    display: grid;
    gap: 10px;
  }

  .imedia-media-control {
    min-height: 0;
    padding: 18px;
    border-radius: 20px;
  }

  .imedia-media-control-head {
    display: grid;
  }

  .imedia-media-control-body {
    grid-template-columns: 1fr;
    justify-items: center;
    padding: 30px 0;
  }

  .imedia-media-signal {
    width: 100%;
  }

  .imedia-media-radar {
    width: 165px;
  }

  .imedia-media-cycle {
    display: grid;
    grid-template-columns: 1fr 12px 1fr 12px 1fr 12px 1fr;
    gap: 6px;
    padding-inline: 10px;
    font-size: 8px;
  }

  .imedia-media-principle,
  .imedia-media-channels,
  .imedia-media-method,
  .imedia-media-deliverables,
  .imedia-media-authority,
  .imedia-media-faq,
  .imedia-media-final-cta {
    padding: 76px 0;
  }

  .imedia-media-principle h2,
  .imedia-media-section-head h2,
  .imedia-media-method-intro h2,
  .imedia-media-deliverables-copy h2,
  .imedia-media-measurement h2,
  .imedia-media-authority h2,
  .imedia-media-faq h2,
  .imedia-media-final-cta h2 {
    font-size: clamp(36px, 10.5vw, 50px);
  }

  .imedia-media-channel-grid {
    grid-template-columns: 1fr;
  }

  .imedia-media-channel-grid article {
    min-height: 235px;
    padding: 26px;
  }

  .imedia-media-method-list li {
    grid-template-columns: 38px 1fr;
    gap: 14px;
  }

  .imedia-media-method-list small {
    grid-column: 2;
    justify-self: start;
  }

  .imedia-media-deliverables-list article {
    grid-template-columns: 36px 1fr;
  }

  .imedia-media-measurement {
    padding: 20px 0;
  }

  .imedia-media-measurement-card {
    gap: 36px;
    padding: 42px 22px;
    border-radius: 22px;
  }

  .imedia-media-metric-grid {
    grid-template-columns: 1fr;
  }

  .imedia-media-metric-grid article {
    min-height: 148px;
  }

  .imedia-media-since {
    align-items: flex-end;
  }

  .imedia-media-since strong {
    font-size: 78px;
  }

  .imedia-media-faq-list summary {
    font-size: 17px;
  }

  .imedia-media-faq-list details p {
    margin-right: 0;
  }
}

/* PAGINA DE BUSINESS INTELLIGENCE */
.imedia-bi-page {
  --bi-red: #ed1231;
  --bi-ink: #080808;
  --bi-paper: #f4f1eb;
  --bi-mint: #73e5bf;
  background: var(--bi-ink);
  color: #fff;
  overflow: hidden;
}

.imedia-bi-hero {
  position: relative;
  min-height: 735px;
  display: flex;
  align-items: center;
  padding: 120px 0 90px;
  background:
    radial-gradient(circle at 75% 35%, rgba(237,18,49,.17), transparent 28%),
    linear-gradient(120deg, #050505, #101010 64%, #080808);
}

.imedia-bi-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .2;
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: linear-gradient(90deg, transparent 8%, #000 46%, #000);
  pointer-events: none;
}

.imedia-bi-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(520px, .98fr);
  gap: clamp(52px, 7vw, 112px);
  align-items: center;
}

.imedia-bi-hero-copy {
  max-width: 720px;
}

.imedia-bi-hero h1 {
  max-width: 700px;
  margin: 18px 0 24px;
  font-size: clamp(54px, 5vw, 82px);
  line-height: .96;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.imedia-bi-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 26px;
  margin: 34px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-bi-proof li {
  position: relative;
  padding-left: 17px;
  color: #c5c5c5;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.imedia-bi-proof li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--bi-mint);
  box-shadow: 0 0 14px rgba(115,229,191,.72);
}

.imedia-bi-console {
  position: relative;
  min-height: 500px;
  padding: 24px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 28px;
  background: rgba(10,10,10,.88);
  box-shadow: 0 34px 90px rgba(0,0,0,.58), inset 0 0 70px rgba(237,18,49,.045);
  backdrop-filter: blur(14px);
}

.imedia-bi-console::after {
  content: "";
  position: absolute;
  inset: 15px;
  z-index: -1;
  border: 1px solid rgba(237,18,49,.24);
  border-radius: 20px;
  pointer-events: none;
}

.imedia-bi-console-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 19px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.imedia-bi-console-head div {
  display: grid;
  gap: 5px;
}

.imedia-bi-console-head span,
.imedia-bi-sources small,
.imedia-bi-core span,
.imedia-bi-console-cards span {
  color: #8d8d8d;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-bi-console-head strong {
  font-size: 18px;
}

.imedia-bi-console-head b {
  align-self: flex-start;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #d2d2d2;
  font-size: 10px;
  font-weight: 700;
}

.imedia-bi-console-head b i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--bi-mint);
  box-shadow: 0 0 11px var(--bi-mint);
}

.imedia-bi-flow {
  display: grid;
  grid-template-columns: 118px 54px 1fr;
  gap: 16px;
  align-items: center;
  min-height: 265px;
}

.imedia-bi-sources {
  display: grid;
  gap: 8px;
}

.imedia-bi-sources small {
  margin-bottom: 4px;
}

.imedia-bi-sources span {
  padding: 9px 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 9px;
  background: rgba(255,255,255,.035);
  color: #d7d7d7;
  font-size: 11px;
  font-weight: 700;
}

.imedia-bi-pipeline {
  position: relative;
  height: 176px;
}

.imedia-bi-pipeline::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 1px;
  background: linear-gradient(transparent, var(--bi-red), transparent);
}

.imedia-bi-pipeline i {
  position: absolute;
  left: 50%;
  width: 8px;
  height: 8px;
  transform: translateX(-44%);
  border-radius: 50%;
  background: var(--bi-red);
  box-shadow: 0 0 13px var(--bi-red);
}

.imedia-bi-pipeline i:nth-child(1) { top: 14%; }
.imedia-bi-pipeline i:nth-child(2) { top: 48%; }
.imedia-bi-pipeline i:nth-child(3) { top: 82%; }

.imedia-bi-core {
  position: relative;
  min-height: 180px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 28px;
  overflow: hidden;
  border: 1px solid rgba(237,18,49,.42);
  border-radius: 18px;
  background: linear-gradient(140deg, rgba(237,18,49,.12), rgba(255,255,255,.025));
}

.imedia-bi-core strong {
  position: relative;
  z-index: 1;
  max-width: 250px;
  margin-top: 11px;
  font-size: 26px;
  line-height: 1.08;
}

.imedia-bi-core i {
  position: absolute;
  right: -50px;
  bottom: -70px;
  width: 180px;
  height: 180px;
  border: 1px solid rgba(237,18,49,.55);
  border-radius: 50%;
  box-shadow: 0 0 0 26px rgba(237,18,49,.04), 0 0 0 54px rgba(237,18,49,.025);
}

.imedia-bi-console-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.imedia-bi-console-cards article {
  position: relative;
  min-height: 105px;
  padding: 15px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 13px;
  background: rgba(255,255,255,.03);
}

.imedia-bi-console-cards strong {
  display: block;
  margin-top: 13px;
  font-size: 13px;
  line-height: 1.3;
}

.imedia-bi-console-cards i {
  position: absolute;
  left: 15px;
  right: 15px;
  bottom: 12px;
  height: 2px;
  background: linear-gradient(90deg, var(--bi-red), var(--bi-mint));
}

.imedia-bi-principle,
.imedia-bi-foundation,
.imedia-bi-method,
.imedia-bi-deliverables,
.imedia-bi-authority,
.imedia-bi-faq {
  padding: 110px 0;
}

.imedia-bi-principle {
  background: var(--bi-paper);
  color: #090909;
}

.imedia-bi-principle-grid {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: clamp(60px, 10vw, 170px);
}

.imedia-bi-principle h2,
.imedia-bi-section-head h2,
.imedia-bi-method-intro h2,
.imedia-bi-questions h2,
.imedia-bi-deliverables-copy h2,
.imedia-bi-authority h2,
.imedia-bi-faq h2,
.imedia-bi-final-cta h2 {
  margin: 15px 0 0;
  font-size: clamp(42px, 4vw, 64px);
  line-height: 1;
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.imedia-bi-principle-grid > div:last-child {
  font-size: 18px;
  line-height: 1.7;
}

.imedia-bi-principle-grid p {
  margin: 0 0 18px;
}

.imedia-bi-quote {
  margin-top: 32px;
  padding: 22px 24px;
  border-left: 4px solid var(--bi-red);
  background: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.imedia-bi-foundation {
  background: #0b0b0b;
}

.imedia-bi-section-head {
  max-width: 820px;
  margin-bottom: 54px;
}

.imedia-bi-section-head p {
  max-width: 690px;
  color: #aaa;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-bi-foundation-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(255,255,255,.14);
  border-left: 1px solid rgba(255,255,255,.14);
}

.imedia-bi-foundation-grid article {
  position: relative;
  min-height: 278px;
  padding: 32px;
  border-right: 1px solid rgba(255,255,255,.14);
  border-bottom: 1px solid rgba(255,255,255,.14);
  transition: background .25s ease, transform .25s ease;
}

.imedia-bi-foundation-grid article:hover {
  z-index: 1;
  transform: translateY(-4px);
  background: #151515;
}

.imedia-bi-foundation-grid article > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 35px;
  border: 1px solid rgba(115,229,191,.5);
  border-radius: 50%;
  color: var(--bi-mint);
  font-size: 11px;
  font-weight: 800;
}

.imedia-bi-foundation-grid h3 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 24px;
}

.imedia-bi-foundation-grid p {
  margin: 0;
  color: #aaa;
  line-height: 1.55;
}

.imedia-bi-foundation-grid small {
  position: absolute;
  right: 28px;
  top: 32px;
  color: #666;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-bi-method {
  background: var(--bi-red);
}

.imedia-bi-method-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-bi-method-intro {
  position: sticky;
  top: 120px;
  align-self: start;
}

.imedia-bi-method-intro p {
  max-width: 480px;
  color: rgba(255,255,255,.8);
  font-size: 17px;
  line-height: 1.65;
}

.imedia-bi-method .imedia-service-kicker {
  color: rgba(255,255,255,.72);
}

.imedia-bi-method-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.imedia-bi-method-list li {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: 24px;
  align-items: start;
  padding: 28px 0;
  border-top: 1px solid rgba(255,255,255,.35);
}

.imedia-bi-method-list li:last-child {
  border-bottom: 1px solid rgba(255,255,255,.35);
}

.imedia-bi-method-list li > span {
  font-size: 13px;
  font-weight: 800;
}

.imedia-bi-method-list h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 26px;
}

.imedia-bi-method-list p {
  margin: 0;
  color: rgba(255,255,255,.8);
  line-height: 1.55;
}

.imedia-bi-method-list small {
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.4);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-bi-questions {
  padding: 42px 0;
  background: #f8f7f3;
  color: #fff;
}

.imedia-bi-questions-card {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(50px, 7vw, 110px);
  padding: clamp(48px, 6vw, 84px);
  border-radius: 30px;
  background:
    radial-gradient(circle at 80% 35%, rgba(115,229,191,.09), transparent 28%),
    linear-gradient(135deg, #090909, #111);
}

.imedia-bi-questions-card > div:first-child {
  align-self: center;
}

.imedia-bi-questions-card h2 {
  font-size: clamp(38px, 3.3vw, 54px);
}

.imedia-bi-questions-card p {
  color: #aaa;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-bi-question-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.imedia-bi-question-grid article {
  position: relative;
  min-height: 175px;
  padding: 22px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}

.imedia-bi-question-grid article > span {
  color: var(--bi-mint);
  font-size: 10px;
  font-weight: 800;
}

.imedia-bi-question-grid strong {
  position: relative;
  z-index: 1;
  display: block;
  max-width: 230px;
  margin-top: 28px;
  font-size: 20px;
  line-height: 1.28;
}

.imedia-bi-question-grid i {
  position: absolute;
  right: -24px;
  bottom: -35px;
  width: 105px;
  height: 105px;
  border: 1px solid rgba(237,18,49,.58);
  border-radius: 50%;
  box-shadow: 0 0 0 18px rgba(237,18,49,.045), 0 0 0 36px rgba(237,18,49,.025);
}

.imedia-bi-deliverables {
  background: #f8f7f3;
  color: #090909;
}

.imedia-bi-deliverables-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-bi-deliverables-copy {
  align-self: start;
}

.imedia-bi-deliverables-copy > p {
  max-width: 530px;
  color: #555;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-bi-deliverables-list {
  border-top: 1px solid #ccc;
}

.imedia-bi-deliverables-list article {
  display: grid;
  grid-template-columns: 50px 1fr;
  gap: 18px;
  padding: 24px 0;
  border-bottom: 1px solid #ccc;
}

.imedia-bi-deliverables-list article > span {
  color: var(--bi-red);
  font-size: 11px;
  font-weight: 800;
}

.imedia-bi-deliverables-list h3 {
  margin: 0 0 7px;
  font-size: 21px;
}

.imedia-bi-deliverables-list p {
  margin: 0;
  color: #555;
  line-height: 1.5;
}

.imedia-bi-authority {
  background: var(--bi-paper);
  color: #090909;
  border-top: 1px solid #d7d2ca;
}

.imedia-bi-authority-grid {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: clamp(60px, 10vw, 170px);
  align-items: center;
}

.imedia-bi-since {
  display: flex;
  align-items: center;
  gap: 24px;
}

.imedia-bi-since strong {
  color: var(--bi-red);
  font-size: clamp(68px, 8vw, 120px);
  line-height: .8;
}

.imedia-bi-since span {
  max-width: 170px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
  text-transform: uppercase;
}

.imedia-bi-authority p {
  max-width: 680px;
  color: #555;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-bi-faq {
  background: var(--bi-paper);
  color: #090909;
  border-top: 1px solid #d7d2ca;
}

.imedia-bi-faq-grid {
  display: grid;
  grid-template-columns: .84fr 1.16fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-bi-faq-grid > div:first-child > p {
  color: #555;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-bi-faq-list {
  border-top: 1px solid #aaa;
}

.imedia-bi-faq-list details {
  border-bottom: 1px solid #aaa;
}

.imedia-bi-faq-list summary {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  padding: 24px 0;
  cursor: pointer;
  font-size: 19px;
  font-weight: 700;
  list-style: none;
}

.imedia-bi-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-bi-faq-list summary span {
  display: grid;
  flex: 0 0 30px;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #090909;
  color: #fff;
  font-size: 19px;
  transition: transform .2s ease, background .2s ease;
}

.imedia-bi-faq-list details[open] summary span {
  transform: rotate(45deg);
  background: var(--bi-red);
}

.imedia-bi-faq-list details p {
  max-width: 680px;
  margin: -8px 50px 24px 0;
  color: #555;
  line-height: 1.6;
}

.imedia-bi-final-cta {
  position: relative;
  padding: 120px 0;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(237,18,49,.36), transparent 38%),
    #090909;
}

.imedia-bi-final-cta .imedia-service-shell {
  max-width: 980px;
}

.imedia-bi-final-cta h2 {
  margin-inline: auto;
  font-size: clamp(48px, 5.8vw, 82px);
}

.imedia-bi-final-cta p {
  max-width: 700px;
  margin: 24px auto 34px;
  color: #b5b5b5;
  font-size: 17px;
  line-height: 1.65;
}

@media (max-width: 1199px) {
  .imedia-bi-hero {
    min-height: auto;
    padding: 104px 0 82px;
  }

  .imedia-bi-hero-grid {
    grid-template-columns: 1fr;
  }

  .imedia-bi-hero-copy {
    max-width: 800px;
  }

  .imedia-bi-console {
    width: min(100%, 740px);
  }

  .imedia-bi-principle-grid,
  .imedia-bi-method-grid,
  .imedia-bi-deliverables-grid,
  .imedia-bi-authority-grid,
  .imedia-bi-faq-grid {
    grid-template-columns: 1fr;
    gap: 52px;
  }

  .imedia-bi-method-intro {
    position: static;
  }

  .imedia-bi-foundation-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-bi-questions-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .imedia-bi-hero {
    padding: 82px 0 64px;
  }

  .imedia-bi-hero h1 {
    font-size: clamp(42px, 12.5vw, 62px);
  }

  .imedia-bi-proof {
    display: grid;
    gap: 10px;
  }

  .imedia-bi-console {
    min-height: 0;
    padding: 18px;
    border-radius: 20px;
  }

  .imedia-bi-console-head {
    display: grid;
  }

  .imedia-bi-flow {
    grid-template-columns: 86px 28px 1fr;
    gap: 8px;
    min-height: 245px;
  }

  .imedia-bi-sources span {
    padding: 8px;
    font-size: 9px;
  }

  .imedia-bi-core {
    min-height: 165px;
    padding: 18px;
  }

  .imedia-bi-core strong {
    font-size: 20px;
  }

  .imedia-bi-console-cards {
    grid-template-columns: 1fr;
  }

  .imedia-bi-console-cards article {
    min-height: 78px;
  }

  .imedia-bi-console-cards strong {
    margin-top: 8px;
  }

  .imedia-bi-principle,
  .imedia-bi-foundation,
  .imedia-bi-method,
  .imedia-bi-deliverables,
  .imedia-bi-authority,
  .imedia-bi-faq,
  .imedia-bi-final-cta {
    padding: 76px 0;
  }

  .imedia-bi-principle h2,
  .imedia-bi-section-head h2,
  .imedia-bi-method-intro h2,
  .imedia-bi-questions h2,
  .imedia-bi-deliverables-copy h2,
  .imedia-bi-authority h2,
  .imedia-bi-faq h2,
  .imedia-bi-final-cta h2 {
    font-size: clamp(36px, 10.5vw, 50px);
  }

  .imedia-bi-foundation-grid {
    grid-template-columns: 1fr;
  }

  .imedia-bi-foundation-grid article {
    min-height: 238px;
    padding: 26px;
  }

  .imedia-bi-method-list li {
    grid-template-columns: 38px 1fr;
    gap: 14px;
  }

  .imedia-bi-method-list small {
    grid-column: 2;
    justify-self: start;
  }

  .imedia-bi-questions {
    padding: 20px 0;
  }

  .imedia-bi-questions-card {
    gap: 36px;
    padding: 42px 22px;
    border-radius: 22px;
  }

  .imedia-bi-question-grid {
    grid-template-columns: 1fr;
  }

  .imedia-bi-question-grid article {
    min-height: 150px;
  }

  .imedia-bi-deliverables-list article {
    grid-template-columns: 36px 1fr;
  }

  .imedia-bi-since {
    align-items: flex-end;
  }

  .imedia-bi-since strong {
    font-size: 78px;
  }

  .imedia-bi-faq-list summary {
    font-size: 17px;
  }

  .imedia-bi-faq-list details p {
    margin-right: 0;
  }
}

/* PAGINA DE SITE E LANDING PAGE */
.imedia-site-page {
  --site-red: #ed1231;
  --site-ink: #080808;
  --site-paper: #f4f1eb;
  background: var(--site-ink);
  color: #fff;
  overflow: hidden;
}

.imedia-site-hero {
  position: relative;
  min-height: 735px;
  display: flex;
  align-items: center;
  padding: 120px 0 90px;
  background:
    radial-gradient(circle at 79% 42%, rgba(237,18,49,.2), transparent 31%),
    linear-gradient(118deg, #050505, #101010 62%, #070707);
}

.imedia-site-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .18;
  background-image:
    linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: linear-gradient(90deg, transparent, #000 45%, #000);
  pointer-events: none;
}

.imedia-site-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(530px, 1fr);
  gap: clamp(54px, 7vw, 112px);
  align-items: center;
}

.imedia-site-hero-copy {
  max-width: 720px;
}

.imedia-site-hero h1 {
  max-width: 700px;
  margin: 18px 0 24px;
  font-size: clamp(54px, 5vw, 82px);
  line-height: .96;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.imedia-site-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 26px;
  margin: 34px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-site-proof li {
  position: relative;
  padding-left: 17px;
  color: #c5c5c5;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.imedia-site-proof li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--site-red);
  box-shadow: 0 0 14px rgba(237,18,49,.8);
}

.imedia-site-browser {
  position: relative;
  transform: rotate(1.4deg);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 24px;
  background: #111;
  box-shadow: 0 38px 95px rgba(0,0,0,.62);
}

.imedia-site-browser::before {
  content: "";
  position: absolute;
  inset: -16px 26px 16px -18px;
  z-index: -1;
  border: 1px solid rgba(237,18,49,.65);
  border-radius: 25px;
}

.imedia-site-browser-bar {
  display: flex;
  align-items: center;
  gap: 7px;
  height: 48px;
  padding: 0 18px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.imedia-site-browser-bar i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #555;
}

.imedia-site-browser-bar i:nth-child(1) { background: var(--site-red); }

.imedia-site-browser-bar span {
  margin-left: auto;
  color: #777;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-site-browser-body {
  padding: 20px;
  border-radius: 0 0 23px 23px;
  background: #f4f1eb;
  color: #080808;
}

.imedia-site-browser-nav {
  display: flex;
  align-items: center;
  gap: 17px;
  min-height: 36px;
}

.imedia-site-browser-nav b {
  margin-right: auto;
  font-size: 18px;
}

.imedia-site-browser-nav b::first-letter {
  color: var(--site-red);
}

.imedia-site-browser-nav span {
  width: 34px;
  height: 4px;
  border-radius: 99px;
  background: #c9c5bd;
}

.imedia-site-browser-nav i {
  width: 56px;
  height: 20px;
  border-radius: 99px;
  background: var(--site-red);
}

.imedia-site-browser-stage {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 28px;
  align-items: center;
  min-height: 275px;
  padding: 32px 12px;
}

.imedia-site-browser-copy small {
  color: var(--site-red);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-site-browser-copy strong {
  display: block;
  margin: 11px 0 20px;
  font-size: 25px;
  line-height: 1.05;
}

.imedia-site-browser-copy > span {
  display: block;
  width: 92%;
  height: 5px;
  margin: 8px 0;
  border-radius: 9px;
  background: #d3cfc8;
}

.imedia-site-browser-copy > span:nth-of-type(2) {
  width: 68%;
}

.imedia-site-browser-copy button {
  margin-top: 18px;
  padding: 10px 17px;
  border: 0;
  border-radius: 99px;
  background: var(--site-red);
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.imedia-site-browser-visual {
  position: relative;
  min-height: 205px;
  overflow: hidden;
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(237,18,49,.95), rgba(107,6,23,.94));
}

.imedia-site-browser-visual i {
  position: absolute;
  width: 145px;
  height: 145px;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: 50%;
}

.imedia-site-browser-visual i:nth-child(1) {
  top: -34px;
  right: -32px;
}

.imedia-site-browser-visual i:nth-child(2) {
  left: -42px;
  bottom: -50px;
  box-shadow: 0 0 0 24px rgba(255,255,255,.06);
}

.imedia-site-browser-visual b {
  position: absolute;
  inset: 50% auto auto 50%;
  width: 58px;
  height: 58px;
  transform: translate(-50%, -50%) rotate(45deg);
  border: 8px solid #fff;
}

.imedia-site-browser-foot {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid #ccc7bf;
}

.imedia-site-browser-foot article {
  display: grid;
  gap: 5px;
  padding: 15px 10px;
  border-right: 1px solid #ccc7bf;
}

.imedia-site-browser-foot article:last-child {
  border-right: 0;
}

.imedia-site-browser-foot span {
  color: var(--site-red);
  font-size: 8px;
  font-weight: 800;
}

.imedia-site-browser-foot strong {
  font-size: 11px;
}

.imedia-site-browser-note {
  position: absolute;
  right: -24px;
  bottom: -25px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 15px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 12px;
  background: #090909;
  color: #c9c9c9;
  font-size: 10px;
  font-weight: 700;
}

.imedia-site-browser-note i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #63dfa6;
  box-shadow: 0 0 10px #63dfa6;
}

.imedia-site-principle,
.imedia-site-pillars,
.imedia-site-method,
.imedia-site-deliverables,
.imedia-site-authority,
.imedia-site-faq {
  padding: 110px 0;
}

.imedia-site-principle {
  background: var(--site-paper);
  color: #090909;
}

.imedia-site-principle-grid {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: clamp(60px, 10vw, 170px);
}

.imedia-site-principle h2,
.imedia-site-section-head h2,
.imedia-site-method-intro h2,
.imedia-site-conversion h2,
.imedia-site-deliverables-copy h2,
.imedia-site-authority h2,
.imedia-site-faq h2,
.imedia-site-final-cta h2 {
  margin: 15px 0 0;
  font-size: clamp(42px, 4vw, 64px);
  line-height: 1;
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.imedia-site-principle-grid > div:last-child {
  font-size: 18px;
  line-height: 1.7;
}

.imedia-site-principle-grid p {
  margin: 0 0 18px;
}

.imedia-site-quote {
  margin-top: 32px;
  padding: 22px 24px;
  border-left: 4px solid var(--site-red);
  background: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.imedia-site-pillars {
  background: #0b0b0b;
}

.imedia-site-section-head {
  max-width: 810px;
  margin-bottom: 54px;
}

.imedia-site-section-head p {
  max-width: 690px;
  color: #aaa;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-site-pillar-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(255,255,255,.14);
  border-left: 1px solid rgba(255,255,255,.14);
}

.imedia-site-pillar-grid article {
  position: relative;
  min-height: 272px;
  padding: 32px;
  border-right: 1px solid rgba(255,255,255,.14);
  border-bottom: 1px solid rgba(255,255,255,.14);
  transition: background .25s ease, transform .25s ease;
}

.imedia-site-pillar-grid article:hover {
  z-index: 1;
  transform: translateY(-4px);
  background: #151515;
}

.imedia-site-pillar-grid article > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 34px;
  border: 1px solid rgba(237,18,49,.55);
  border-radius: 12px;
  color: var(--site-red);
  font-size: 11px;
  font-weight: 800;
}

.imedia-site-pillar-grid h3 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 24px;
}

.imedia-site-pillar-grid p {
  margin: 0;
  color: #aaa;
  line-height: 1.55;
}

.imedia-site-pillar-grid small {
  position: absolute;
  right: 28px;
  top: 32px;
  color: #666;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-site-method {
  background: var(--site-red);
}

.imedia-site-method-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-site-method-intro {
  position: sticky;
  top: 120px;
  align-self: start;
}

.imedia-site-method-intro p {
  max-width: 480px;
  color: rgba(255,255,255,.8);
  font-size: 17px;
  line-height: 1.65;
}

.imedia-site-method .imedia-service-kicker {
  color: rgba(255,255,255,.72);
}

.imedia-site-method-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.imedia-site-method-list li {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: 24px;
  align-items: start;
  padding: 28px 0;
  border-top: 1px solid rgba(255,255,255,.35);
}

.imedia-site-method-list li:last-child {
  border-bottom: 1px solid rgba(255,255,255,.35);
}

.imedia-site-method-list li > span {
  font-size: 13px;
  font-weight: 800;
}

.imedia-site-method-list h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 26px;
}

.imedia-site-method-list p {
  margin: 0;
  color: rgba(255,255,255,.8);
  line-height: 1.55;
}

.imedia-site-method-list small {
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.4);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-site-conversion {
  padding: 42px 0;
  background: #f8f7f3;
  color: #fff;
}

.imedia-site-conversion-card {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(50px, 7vw, 110px);
  padding: clamp(48px, 6vw, 84px);
  border-radius: 30px;
  background:
    radial-gradient(circle at 80% 45%, rgba(237,18,49,.17), transparent 32%),
    #090909;
}

.imedia-site-conversion-card > div:first-child {
  align-self: center;
}

.imedia-site-conversion-card h2 {
  font-size: clamp(38px, 3.3vw, 54px);
}

.imedia-site-conversion-card p {
  color: #aaa;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-site-conversion-flow {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.imedia-site-conversion-flow article {
  position: relative;
  min-height: 170px;
  padding: 22px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}

.imedia-site-conversion-flow article > span {
  color: var(--site-red);
  font-size: 10px;
  font-weight: 800;
}

.imedia-site-conversion-flow strong,
.imedia-site-conversion-flow small {
  position: relative;
  z-index: 1;
  display: block;
}

.imedia-site-conversion-flow strong {
  margin-top: 26px;
  font-size: 22px;
}

.imedia-site-conversion-flow small {
  margin-top: 7px;
  color: #999;
}

.imedia-site-conversion-flow i {
  position: absolute;
  right: -24px;
  bottom: -35px;
  width: 104px;
  height: 104px;
  border: 1px solid rgba(237,18,49,.58);
  border-radius: 18px;
  transform: rotate(18deg);
  box-shadow: 0 0 0 18px rgba(237,18,49,.04), 0 0 0 36px rgba(237,18,49,.022);
}

.imedia-site-deliverables {
  background: #f8f7f3;
  color: #090909;
}

.imedia-site-deliverables-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-site-deliverables-copy {
  align-self: start;
}

.imedia-site-deliverables-copy > p {
  max-width: 530px;
  color: #555;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-site-deliverables-list {
  border-top: 1px solid #ccc;
}

.imedia-site-deliverables-list article {
  display: grid;
  grid-template-columns: 50px 1fr;
  gap: 18px;
  padding: 24px 0;
  border-bottom: 1px solid #ccc;
}

.imedia-site-deliverables-list article > span {
  color: var(--site-red);
  font-size: 11px;
  font-weight: 800;
}

.imedia-site-deliverables-list h3 {
  margin: 0 0 7px;
  font-size: 21px;
}

.imedia-site-deliverables-list p {
  margin: 0;
  color: #555;
  line-height: 1.5;
}

.imedia-site-authority {
  background: var(--site-paper);
  color: #090909;
  border-top: 1px solid #d7d2ca;
}

.imedia-site-authority-grid {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: clamp(60px, 10vw, 170px);
  align-items: center;
}

.imedia-site-since {
  display: flex;
  align-items: center;
  gap: 24px;
}

.imedia-site-since strong {
  color: var(--site-red);
  font-size: clamp(68px, 8vw, 120px);
  line-height: .8;
}

.imedia-site-since span {
  max-width: 170px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
  text-transform: uppercase;
}

.imedia-site-authority p {
  max-width: 680px;
  color: #555;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-site-faq {
  background: var(--site-paper);
  color: #090909;
  border-top: 1px solid #d7d2ca;
}

.imedia-site-faq-grid {
  display: grid;
  grid-template-columns: .84fr 1.16fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-site-faq-grid > div:first-child > p {
  color: #555;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-site-faq-list {
  border-top: 1px solid #aaa;
}

.imedia-site-faq-list details {
  border-bottom: 1px solid #aaa;
}

.imedia-site-faq-list summary {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  padding: 24px 0;
  cursor: pointer;
  font-size: 19px;
  font-weight: 700;
  list-style: none;
}

.imedia-site-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-site-faq-list summary span {
  display: grid;
  flex: 0 0 30px;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #090909;
  color: #fff;
  font-size: 19px;
  transition: transform .2s ease, background .2s ease;
}

.imedia-site-faq-list details[open] summary span {
  transform: rotate(45deg);
  background: var(--site-red);
}

.imedia-site-faq-list details p {
  max-width: 680px;
  margin: -8px 50px 24px 0;
  color: #555;
  line-height: 1.6;
}

.imedia-site-final-cta {
  position: relative;
  padding: 120px 0;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(237,18,49,.36), transparent 38%),
    #090909;
}

.imedia-site-final-cta .imedia-service-shell {
  max-width: 1000px;
}

.imedia-site-final-cta h2 {
  margin-inline: auto;
  font-size: clamp(48px, 5.8vw, 82px);
}

.imedia-site-final-cta p {
  max-width: 700px;
  margin: 24px auto 34px;
  color: #b5b5b5;
  font-size: 17px;
  line-height: 1.65;
}

@media (max-width: 1199px) {
  .imedia-site-hero {
    min-height: auto;
    padding: 104px 0 88px;
  }

  .imedia-site-hero-grid {
    grid-template-columns: 1fr;
  }

  .imedia-site-hero-copy {
    max-width: 800px;
  }

  .imedia-site-browser {
    width: min(100%, 740px);
  }

  .imedia-site-principle-grid,
  .imedia-site-method-grid,
  .imedia-site-deliverables-grid,
  .imedia-site-authority-grid,
  .imedia-site-faq-grid {
    grid-template-columns: 1fr;
    gap: 52px;
  }

  .imedia-site-method-intro {
    position: static;
  }

  .imedia-site-pillar-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-site-conversion-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .imedia-site-hero {
    padding: 82px 0 70px;
  }

  .imedia-site-hero h1 {
    font-size: clamp(42px, 12.5vw, 62px);
  }

  .imedia-site-proof {
    display: grid;
    gap: 10px;
  }

  .imedia-site-browser {
    transform: none;
    border-radius: 18px;
  }

  .imedia-site-browser::before {
    inset: -10px 12px 10px -10px;
    border-radius: 19px;
  }

  .imedia-site-browser-body {
    padding: 13px;
  }

  .imedia-site-browser-nav {
    gap: 8px;
  }

  .imedia-site-browser-nav span {
    width: 20px;
  }

  .imedia-site-browser-nav i {
    width: 38px;
  }

  .imedia-site-browser-stage {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 25px 5px;
  }

  .imedia-site-browser-visual {
    min-height: 155px;
  }

  .imedia-site-browser-note {
    right: 8px;
  }

  .imedia-site-principle,
  .imedia-site-pillars,
  .imedia-site-method,
  .imedia-site-deliverables,
  .imedia-site-authority,
  .imedia-site-faq,
  .imedia-site-final-cta {
    padding: 76px 0;
  }

  .imedia-site-principle h2,
  .imedia-site-section-head h2,
  .imedia-site-method-intro h2,
  .imedia-site-conversion h2,
  .imedia-site-deliverables-copy h2,
  .imedia-site-authority h2,
  .imedia-site-faq h2,
  .imedia-site-final-cta h2 {
    font-size: clamp(36px, 10.5vw, 50px);
  }

  .imedia-site-pillar-grid {
    grid-template-columns: 1fr;
  }

  .imedia-site-pillar-grid article {
    min-height: 235px;
    padding: 26px;
  }

  .imedia-site-method-list li {
    grid-template-columns: 38px 1fr;
    gap: 14px;
  }

  .imedia-site-method-list small {
    grid-column: 2;
    justify-self: start;
  }

  .imedia-site-conversion {
    padding: 20px 0;
  }

  .imedia-site-conversion-card {
    gap: 36px;
    padding: 42px 22px;
    border-radius: 22px;
  }

  .imedia-site-conversion-flow {
    grid-template-columns: 1fr;
  }

  .imedia-site-conversion-flow article {
    min-height: 145px;
  }

  .imedia-site-deliverables-list article {
    grid-template-columns: 36px 1fr;
  }

  .imedia-site-since {
    align-items: flex-end;
  }

  .imedia-site-since strong {
    font-size: 78px;
  }

  .imedia-site-faq-list summary {
    font-size: 17px;
  }

  .imedia-site-faq-list details p {
    margin-right: 0;
  }
}

/* PAGINA DE TECNOLOGIA E IA */
.imedia-tech-page {
  --tech-red: #ed1231;
  --tech-ink: #070707;
  --tech-paper: #f4f1eb;
  --tech-cyan: #77ddff;
  background: var(--tech-ink);
  color: #fff;
  overflow: hidden;
}

.imedia-tech-hero {
  position: relative;
  min-height: 750px;
  display: flex;
  align-items: center;
  padding: 120px 0 90px;
  background:
    radial-gradient(circle at 76% 42%, rgba(119,221,255,.09), transparent 25%),
    radial-gradient(circle at 82% 42%, rgba(237,18,49,.18), transparent 35%),
    linear-gradient(118deg, #050505, #101010 63%, #060606);
}

.imedia-tech-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .19;
  background-image:
    radial-gradient(circle, rgba(255,255,255,.45) 1px, transparent 1.5px);
  background-size: 34px 34px;
  mask-image: linear-gradient(90deg, transparent 7%, #000 48%, #000);
  pointer-events: none;
}

.imedia-tech-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(535px, .97fr);
  gap: clamp(52px, 7vw, 110px);
  align-items: center;
}

.imedia-tech-hero-copy {
  max-width: 735px;
}

.imedia-tech-hero h1 {
  max-width: 720px;
  margin: 18px 0 24px;
  font-size: clamp(53px, 4.9vw, 80px);
  line-height: .96;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.imedia-tech-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 26px;
  margin: 34px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-tech-proof li {
  position: relative;
  padding-left: 17px;
  color: #c5c5c5;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.imedia-tech-proof li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--tech-cyan);
  box-shadow: 0 0 14px rgba(119,221,255,.8);
}

.imedia-tech-system {
  position: relative;
  min-height: 500px;
  padding: 24px;
  border: 1px solid rgba(119,221,255,.26);
  border-radius: 28px;
  background: rgba(8,8,8,.9);
  box-shadow: 0 38px 95px rgba(0,0,0,.6), inset 0 0 65px rgba(237,18,49,.045);
  backdrop-filter: blur(14px);
}

.imedia-tech-system::after {
  content: "";
  position: absolute;
  inset: 14px;
  z-index: -1;
  border: 1px solid rgba(237,18,49,.25);
  border-radius: 21px;
}

.imedia-tech-system-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 19px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.imedia-tech-system-head div {
  display: grid;
  gap: 5px;
}

.imedia-tech-system-head span,
.imedia-tech-inputs small,
.imedia-tech-outputs small,
.imedia-tech-core span {
  color: #8d8d8d;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-tech-system-head strong {
  font-size: 18px;
}

.imedia-tech-system-head > b {
  align-self: flex-start;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #d2d2d2;
  font-size: 10px;
  font-weight: 700;
}

.imedia-tech-system-head > b i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #68dfa8;
  box-shadow: 0 0 11px #68dfa8;
}

.imedia-tech-network {
  display: grid;
  grid-template-columns: 86px 36px 1fr 36px 86px;
  gap: 9px;
  align-items: center;
  min-height: 315px;
}

.imedia-tech-inputs,
.imedia-tech-outputs {
  display: grid;
  gap: 10px;
}

.imedia-tech-inputs span,
.imedia-tech-outputs span {
  padding: 9px 7px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
  color: #d5d5d5;
  font-size: 9px;
  font-weight: 700;
  text-align: center;
}

.imedia-tech-lines {
  position: relative;
  height: 180px;
}

.imedia-tech-lines::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--tech-red));
}

.imedia-tech-lines-out::before {
  background: linear-gradient(90deg, var(--tech-cyan), transparent);
}

.imedia-tech-lines i {
  position: absolute;
  right: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--tech-red);
  box-shadow: 0 0 10px var(--tech-red);
}

.imedia-tech-lines-out i {
  left: 0;
  right: auto;
  background: var(--tech-cyan);
  box-shadow: 0 0 10px var(--tech-cyan);
}

.imedia-tech-lines i:nth-child(1) { top: 21%; }
.imedia-tech-lines i:nth-child(2) { top: 49%; }
.imedia-tech-lines i:nth-child(3) { top: 77%; }

.imedia-tech-core {
  position: relative;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 26px;
  overflow: hidden;
  border: 1px solid rgba(237,18,49,.48);
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 50%, rgba(237,18,49,.16), transparent 62%),
    #0b0b0b;
  text-align: center;
}

.imedia-tech-core > i {
  position: absolute;
  inset: 15px;
  border: 1px dashed rgba(119,221,255,.25);
  border-radius: 50%;
}

.imedia-tech-core strong {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: 10px;
  font-size: 23px;
  line-height: 1.08;
}

.imedia-tech-core > b {
  position: absolute;
  left: 50%;
  bottom: 25px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--tech-cyan);
  box-shadow: 0 0 12px var(--tech-cyan);
}

.imedia-tech-system-foot {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  padding-top: 17px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.imedia-tech-system-foot span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  color: #999;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}

.imedia-tech-system-foot b {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--tech-red);
}

.imedia-tech-principle,
.imedia-tech-capabilities,
.imedia-tech-method,
.imedia-tech-deliverables,
.imedia-tech-authority,
.imedia-tech-faq {
  padding: 110px 0;
}

.imedia-tech-principle {
  background: var(--tech-paper);
  color: #090909;
}

.imedia-tech-principle-grid {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: clamp(60px, 10vw, 170px);
}

.imedia-tech-principle h2,
.imedia-tech-section-head h2,
.imedia-tech-method-intro h2,
.imedia-tech-responsibility h2,
.imedia-tech-deliverables-copy h2,
.imedia-tech-authority h2,
.imedia-tech-faq h2,
.imedia-tech-final-cta h2 {
  margin: 15px 0 0;
  font-size: clamp(42px, 4vw, 64px);
  line-height: 1;
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.imedia-tech-principle-grid > div:last-child {
  font-size: 18px;
  line-height: 1.7;
}

.imedia-tech-principle-grid p {
  margin: 0 0 18px;
}

.imedia-tech-quote {
  margin-top: 32px;
  padding: 22px 24px;
  border-left: 4px solid var(--tech-red);
  background: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.imedia-tech-capabilities {
  background:
    radial-gradient(circle at 50% 42%, rgba(119,221,255,.035), transparent 35%),
    #0a0a0a;
}

.imedia-tech-section-head {
  max-width: 820px;
  margin-bottom: 54px;
}

.imedia-tech-section-head p {
  max-width: 700px;
  color: #aaa;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-tech-capability-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(255,255,255,.14);
  border-left: 1px solid rgba(255,255,255,.14);
}

.imedia-tech-capability-grid article {
  position: relative;
  min-height: 278px;
  padding: 32px;
  border-right: 1px solid rgba(255,255,255,.14);
  border-bottom: 1px solid rgba(255,255,255,.14);
  transition: background .25s ease, transform .25s ease;
}

.imedia-tech-capability-grid article:hover {
  z-index: 1;
  transform: translateY(-4px);
  background: #151515;
}

.imedia-tech-capability-grid article > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 34px;
  border: 1px solid rgba(119,221,255,.47);
  border-radius: 50%;
  color: var(--tech-cyan);
  font-size: 11px;
  font-weight: 800;
}

.imedia-tech-capability-grid h3 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 24px;
}

.imedia-tech-capability-grid p {
  margin: 0;
  color: #aaa;
  line-height: 1.55;
}

.imedia-tech-capability-grid small {
  position: absolute;
  right: 28px;
  top: 32px;
  color: #666;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-tech-method {
  background: var(--tech-red);
}

.imedia-tech-method-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-tech-method-intro {
  position: sticky;
  top: 120px;
  align-self: start;
}

.imedia-tech-method-intro p {
  max-width: 480px;
  color: rgba(255,255,255,.8);
  font-size: 17px;
  line-height: 1.65;
}

.imedia-tech-method .imedia-service-kicker {
  color: rgba(255,255,255,.72);
}

.imedia-tech-method-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.imedia-tech-method-list li {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: 24px;
  align-items: start;
  padding: 28px 0;
  border-top: 1px solid rgba(255,255,255,.35);
}

.imedia-tech-method-list li:last-child {
  border-bottom: 1px solid rgba(255,255,255,.35);
}

.imedia-tech-method-list li > span {
  font-size: 13px;
  font-weight: 800;
}

.imedia-tech-method-list h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 26px;
}

.imedia-tech-method-list p {
  margin: 0;
  color: rgba(255,255,255,.8);
  line-height: 1.55;
}

.imedia-tech-method-list small {
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.4);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-tech-responsibility {
  padding: 42px 0;
  background: #f8f7f3;
  color: #fff;
}

.imedia-tech-responsibility-card {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(50px, 7vw, 110px);
  padding: clamp(48px, 6vw, 84px);
  border-radius: 30px;
  background:
    radial-gradient(circle at 80% 36%, rgba(119,221,255,.08), transparent 30%),
    radial-gradient(circle at 84% 55%, rgba(237,18,49,.14), transparent 36%),
    #090909;
}

.imedia-tech-responsibility-card > div:first-child {
  align-self: center;
}

.imedia-tech-responsibility-card h2 {
  font-size: clamp(38px, 3.3vw, 54px);
}

.imedia-tech-responsibility-card p {
  color: #aaa;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-tech-control-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.imedia-tech-control-grid article {
  position: relative;
  min-height: 175px;
  padding: 22px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}

.imedia-tech-control-grid article > span {
  color: var(--tech-cyan);
  font-size: 10px;
  font-weight: 800;
}

.imedia-tech-control-grid strong,
.imedia-tech-control-grid small {
  position: relative;
  z-index: 1;
  display: block;
}

.imedia-tech-control-grid strong {
  margin-top: 26px;
  font-size: 20px;
}

.imedia-tech-control-grid small {
  margin-top: 7px;
  color: #999;
  line-height: 1.4;
}

.imedia-tech-control-grid i {
  position: absolute;
  right: -27px;
  bottom: -38px;
  width: 108px;
  height: 108px;
  border: 1px dashed rgba(119,221,255,.5);
  border-radius: 50%;
  box-shadow: 0 0 0 18px rgba(237,18,49,.035), 0 0 0 36px rgba(237,18,49,.02);
}

.imedia-tech-deliverables {
  background: #f8f7f3;
  color: #090909;
}

.imedia-tech-deliverables-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-tech-deliverables-copy {
  align-self: start;
}

.imedia-tech-deliverables-copy > p {
  max-width: 530px;
  color: #555;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-tech-deliverables-list {
  border-top: 1px solid #ccc;
}

.imedia-tech-deliverables-list article {
  display: grid;
  grid-template-columns: 50px 1fr;
  gap: 18px;
  padding: 24px 0;
  border-bottom: 1px solid #ccc;
}

.imedia-tech-deliverables-list article > span {
  color: var(--tech-red);
  font-size: 11px;
  font-weight: 800;
}

.imedia-tech-deliverables-list h3 {
  margin: 0 0 7px;
  font-size: 21px;
}

.imedia-tech-deliverables-list p {
  margin: 0;
  color: #555;
  line-height: 1.5;
}

.imedia-tech-authority {
  background: var(--tech-paper);
  color: #090909;
  border-top: 1px solid #d7d2ca;
}

.imedia-tech-authority-grid {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: clamp(60px, 10vw, 170px);
  align-items: center;
}

.imedia-tech-since {
  display: flex;
  align-items: center;
  gap: 24px;
}

.imedia-tech-since strong {
  color: var(--tech-red);
  font-size: clamp(68px, 8vw, 120px);
  line-height: .8;
}

.imedia-tech-since span {
  max-width: 170px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
  text-transform: uppercase;
}

.imedia-tech-authority p {
  max-width: 690px;
  color: #555;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-tech-faq {
  background: var(--tech-paper);
  color: #090909;
  border-top: 1px solid #d7d2ca;
}

.imedia-tech-faq-grid {
  display: grid;
  grid-template-columns: .84fr 1.16fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-tech-faq-grid > div:first-child > p {
  color: #555;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-tech-faq-list {
  border-top: 1px solid #aaa;
}

.imedia-tech-faq-list details {
  border-bottom: 1px solid #aaa;
}

.imedia-tech-faq-list summary {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  padding: 24px 0;
  cursor: pointer;
  font-size: 19px;
  font-weight: 700;
  list-style: none;
}

.imedia-tech-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-tech-faq-list summary span {
  display: grid;
  flex: 0 0 30px;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #090909;
  color: #fff;
  font-size: 19px;
  transition: transform .2s ease, background .2s ease;
}

.imedia-tech-faq-list details[open] summary span {
  transform: rotate(45deg);
  background: var(--tech-red);
}

.imedia-tech-faq-list details p {
  max-width: 680px;
  margin: -8px 50px 24px 0;
  color: #555;
  line-height: 1.6;
}

.imedia-tech-final-cta {
  position: relative;
  padding: 120px 0;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(237,18,49,.36), transparent 38%),
    #090909;
}

.imedia-tech-final-cta .imedia-service-shell {
  max-width: 1020px;
}

.imedia-tech-final-cta h2 {
  margin-inline: auto;
  font-size: clamp(48px, 5.8vw, 82px);
}

.imedia-tech-final-cta p {
  max-width: 720px;
  margin: 24px auto 34px;
  color: #b5b5b5;
  font-size: 17px;
  line-height: 1.65;
}

@media (max-width: 1199px) {
  .imedia-tech-hero {
    min-height: auto;
    padding: 104px 0 84px;
  }

  .imedia-tech-hero-grid {
    grid-template-columns: 1fr;
  }

  .imedia-tech-hero-copy {
    max-width: 820px;
  }

  .imedia-tech-system {
    width: min(100%, 750px);
  }

  .imedia-tech-principle-grid,
  .imedia-tech-method-grid,
  .imedia-tech-deliverables-grid,
  .imedia-tech-authority-grid,
  .imedia-tech-faq-grid {
    grid-template-columns: 1fr;
    gap: 52px;
  }

  .imedia-tech-method-intro {
    position: static;
  }

  .imedia-tech-capability-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-tech-responsibility-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .imedia-tech-hero {
    padding: 82px 0 66px;
  }

  .imedia-tech-hero h1 {
    font-size: clamp(40px, 11.8vw, 60px);
  }

  .imedia-tech-proof {
    display: grid;
    gap: 10px;
  }

  .imedia-tech-system {
    min-height: 0;
    padding: 18px;
    border-radius: 20px;
  }

  .imedia-tech-system-head {
    display: grid;
  }

  .imedia-tech-network {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 28px 0;
  }

  .imedia-tech-inputs,
  .imedia-tech-outputs {
    grid-template-columns: repeat(3, 1fr);
  }

  .imedia-tech-inputs small,
  .imedia-tech-outputs small {
    grid-column: 1 / -1;
  }

  .imedia-tech-lines {
    width: 100%;
    height: 22px;
  }

  .imedia-tech-lines::before {
    left: 50%;
    right: auto;
    top: 0;
    bottom: 0;
    width: 1px;
    height: auto;
    background: linear-gradient(transparent, var(--tech-red));
  }

  .imedia-tech-lines-out::before {
    background: linear-gradient(var(--tech-cyan), transparent);
  }

  .imedia-tech-lines i {
    display: none;
  }

  .imedia-tech-core {
    min-height: 235px;
    max-width: 235px;
    margin: 0 auto;
  }

  .imedia-tech-system-foot {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .imedia-tech-principle,
  .imedia-tech-capabilities,
  .imedia-tech-method,
  .imedia-tech-deliverables,
  .imedia-tech-authority,
  .imedia-tech-faq,
  .imedia-tech-final-cta {
    padding: 76px 0;
  }

  .imedia-tech-principle h2,
  .imedia-tech-section-head h2,
  .imedia-tech-method-intro h2,
  .imedia-tech-responsibility h2,
  .imedia-tech-deliverables-copy h2,
  .imedia-tech-authority h2,
  .imedia-tech-faq h2,
  .imedia-tech-final-cta h2 {
    font-size: clamp(35px, 10.2vw, 49px);
  }

  .imedia-tech-capability-grid {
    grid-template-columns: 1fr;
  }

  .imedia-tech-capability-grid article {
    min-height: 238px;
    padding: 26px;
  }

  .imedia-tech-method-list li {
    grid-template-columns: 38px 1fr;
    gap: 14px;
  }

  .imedia-tech-method-list small {
    grid-column: 2;
    justify-self: start;
  }

  .imedia-tech-responsibility {
    padding: 20px 0;
  }

  .imedia-tech-responsibility-card {
    gap: 36px;
    padding: 42px 22px;
    border-radius: 22px;
  }

  .imedia-tech-control-grid {
    grid-template-columns: 1fr;
  }

  .imedia-tech-control-grid article {
    min-height: 150px;
  }

  .imedia-tech-deliverables-list article {
    grid-template-columns: 36px 1fr;
  }

  .imedia-tech-since {
    align-items: flex-end;
  }

  .imedia-tech-since strong {
    font-size: 78px;
  }

  .imedia-tech-faq-list summary {
    font-size: 17px;
  }

  .imedia-tech-faq-list details p {
    margin-right: 0;
  }
}

/* PAGINA PRINCIPAL DE SERVICOS */
.imedia-services-page {
  --services-red: #ed1231;
  --services-ink: #070707;
  --services-paper: #f4f1eb;
  background: var(--services-ink);
  color: #fff;
  overflow: hidden;
}

.imedia-services-hero {
  position: relative;
  min-height: 735px;
  display: flex;
  align-items: center;
  padding: 120px 0 92px;
  background:
    radial-gradient(circle at 78% 42%, rgba(237,18,49,.22), transparent 33%),
    linear-gradient(116deg, #050505, #101010 64%, #060606);
}

.imedia-services-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .18;
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(90deg, transparent, #000 42%, #000);
  pointer-events: none;
}

.imedia-services-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(520px, .98fr);
  gap: clamp(52px, 7vw, 112px);
  align-items: center;
}

.imedia-services-hero-copy {
  max-width: 735px;
}

.imedia-services-hero h1 {
  max-width: 720px;
  margin: 18px 0 24px;
  font-size: clamp(54px, 5vw, 82px);
  line-height: .96;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.imedia-services-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 26px;
  margin: 34px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-services-proof li {
  position: relative;
  padding-left: 17px;
  color: #c5c5c5;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.imedia-services-proof li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--services-red);
  box-shadow: 0 0 14px rgba(237,18,49,.8);
}

.imedia-services-radar {
  position: relative;
  min-height: 500px;
  padding: 24px;
  border: 1px solid rgba(237,18,49,.55);
  border-radius: 28px;
  background: rgba(8,8,8,.9);
  box-shadow: 0 38px 95px rgba(0,0,0,.6), inset 0 0 70px rgba(237,18,49,.05);
  backdrop-filter: blur(14px);
}

.imedia-services-radar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(255,255,255,.12);
  color: #8e8e8e;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-services-radar-head b {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #d3d3d3;
  font-size: 10px;
}

.imedia-services-radar-head b i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #65dda5;
  box-shadow: 0 0 11px #65dda5;
}

.imedia-services-orbit {
  position: relative;
  min-height: 352px;
}

.imedia-services-orbit-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.imedia-services-orbit-ring-one {
  width: 285px;
  height: 285px;
}

.imedia-services-orbit-ring-two {
  width: 195px;
  height: 195px;
  border-style: dashed;
  border-color: rgba(237,18,49,.33);
}

.imedia-services-orbit-core {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  display: grid;
  place-content: center;
  width: 128px;
  height: 128px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(237,18,49,.68);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(237,18,49,.24), #0a0a0a 68%);
  text-align: center;
  box-shadow: 0 0 45px rgba(237,18,49,.14);
}

.imedia-services-orbit-core small {
  color: #8f8f8f;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-services-orbit-core strong {
  margin-top: 5px;
  font-size: 19px;
}

.imedia-services-node {
  position: absolute;
  z-index: 3;
  width: 132px;
  min-height: 78px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  background: #101010;
  box-shadow: 0 12px 30px rgba(0,0,0,.36);
}

.imedia-services-node > span {
  color: var(--services-red);
  font-size: 8px;
  font-weight: 800;
}

.imedia-services-node strong,
.imedia-services-node small {
  display: block;
}

.imedia-services-node strong {
  margin-top: 4px;
  font-size: 12px;
}

.imedia-services-node small {
  margin-top: 3px;
  color: #7d7d7d;
  font-size: 8px;
}

.imedia-services-node-one { left: 0; top: 52px; }
.imedia-services-node-two { right: 0; top: 52px; }
.imedia-services-node-three { left: 0; bottom: 42px; }
.imedia-services-node-four { right: 0; bottom: 42px; }

.imedia-services-node::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 38px;
  height: 1px;
  background: linear-gradient(90deg, rgba(237,18,49,.65), transparent);
}

.imedia-services-node-one::after,
.imedia-services-node-three::after {
  left: 100%;
}

.imedia-services-node-two::after,
.imedia-services-node-four::after {
  right: 100%;
  transform: rotate(180deg);
}

.imedia-services-radar-foot {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 14px;
  border-radius: 12px;
  background: rgba(255,255,255,.035);
  color: #999;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-services-radar-foot i {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, var(--services-red), rgba(255,255,255,.12));
}

.imedia-services-principle,
.imedia-services-catalog,
.imedia-services-method,
.imedia-services-authority,
.imedia-services-faq {
  padding: 110px 0;
}

.imedia-services-principle {
  background: var(--services-paper);
  color: #090909;
}

.imedia-services-principle-grid {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: clamp(60px, 10vw, 170px);
}

.imedia-services-principle h2,
.imedia-services-section-head h2,
.imedia-services-connection h2,
.imedia-services-method-intro h2,
.imedia-services-authority h2,
.imedia-services-faq h2,
.imedia-services-final-cta h2 {
  margin: 15px 0 0;
  font-size: clamp(42px, 4vw, 64px);
  line-height: 1;
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.imedia-services-principle-grid > div:last-child {
  font-size: 18px;
  line-height: 1.7;
}

.imedia-services-principle-grid p {
  margin: 0 0 18px;
}

.imedia-services-quote {
  margin-top: 32px;
  padding: 22px 24px;
  border-left: 4px solid var(--services-red);
  background: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.imedia-services-catalog {
  background: #0a0a0a;
}

.imedia-services-section-head {
  max-width: 840px;
  margin-bottom: 56px;
}

.imedia-services-section-head p {
  max-width: 720px;
  color: #aaa;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-services-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.imedia-services-grid > a {
  position: relative;
  min-height: 245px;
  display: flex;
  flex-direction: column;
  padding: 30px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  background:
    linear-gradient(140deg, rgba(255,255,255,.035), transparent 65%);
  color: #fff;
  text-decoration: none;
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}

.imedia-services-grid > a::after {
  content: "";
  position: absolute;
  right: -65px;
  bottom: -80px;
  width: 185px;
  height: 185px;
  border: 1px solid rgba(237,18,49,.32);
  border-radius: 50%;
  box-shadow: 0 0 0 24px rgba(237,18,49,.025), 0 0 0 50px rgba(237,18,49,.015);
  transition: transform .3s ease, border-color .3s ease;
}

.imedia-services-grid > a:hover,
.imedia-services-grid > a:focus-visible {
  transform: translateY(-5px);
  border-color: rgba(237,18,49,.62);
  background: #131313;
}

.imedia-services-grid > a:hover::after,
.imedia-services-grid > a:focus-visible::after {
  transform: scale(1.12);
  border-color: var(--services-red);
}

.imedia-services-grid > a > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(237,18,49,.55);
  border-radius: 50%;
  color: var(--services-red);
  font-size: 10px;
  font-weight: 800;
}

.imedia-services-grid > a > small {
  position: absolute;
  right: 28px;
  top: 31px;
  color: #666;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-services-grid h3 {
  position: relative;
  z-index: 1;
  margin: 30px 0 10px;
  color: #fff;
  font-size: 27px;
}

.imedia-services-grid p {
  position: relative;
  z-index: 1;
  max-width: 460px;
  margin: 0 0 24px;
  color: #aaa;
  line-height: 1.55;
}

.imedia-services-grid > a > strong {
  position: relative;
  z-index: 1;
  margin-top: auto;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-services-grid > a > strong i {
  display: inline-block;
  margin-left: 7px;
  color: var(--services-red);
  font-style: normal;
  transition: transform .2s ease;
}

.imedia-services-grid > a:hover > strong i {
  transform: translateX(5px);
}

.imedia-services-connection {
  padding: 42px 0;
  background: #f8f7f3;
  color: #fff;
}

.imedia-services-connection-card {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(50px, 7vw, 110px);
  padding: clamp(48px, 6vw, 84px);
  border-radius: 30px;
  background:
    radial-gradient(circle at 80% 42%, rgba(237,18,49,.18), transparent 34%),
    #090909;
}

.imedia-services-connection-card > div:first-child {
  align-self: center;
}

.imedia-services-connection-card h2 {
  font-size: clamp(38px, 3.3vw, 54px);
}

.imedia-services-connection-card p {
  color: #aaa;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-services-connection-flow {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.imedia-services-connection-flow article {
  position: relative;
  min-height: 170px;
  padding: 22px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}

.imedia-services-connection-flow article > span {
  color: var(--services-red);
  font-size: 10px;
  font-weight: 800;
}

.imedia-services-connection-flow strong,
.imedia-services-connection-flow small {
  position: relative;
  z-index: 1;
  display: block;
}

.imedia-services-connection-flow strong {
  margin-top: 26px;
  font-size: 22px;
}

.imedia-services-connection-flow small {
  margin-top: 7px;
  color: #999;
}

.imedia-services-connection-flow i {
  position: absolute;
  right: -28px;
  bottom: -42px;
  width: 112px;
  height: 112px;
  border: 1px solid rgba(237,18,49,.58);
  border-radius: 50%;
  box-shadow: 0 0 0 18px rgba(237,18,49,.04), 0 0 0 36px rgba(237,18,49,.022);
}

.imedia-services-method {
  background: var(--services-red);
}

.imedia-services-method-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-services-method-intro {
  position: sticky;
  top: 120px;
  align-self: start;
}

.imedia-services-method-intro p {
  max-width: 480px;
  color: rgba(255,255,255,.8);
  font-size: 17px;
  line-height: 1.65;
}

.imedia-services-method .imedia-service-kicker {
  color: rgba(255,255,255,.72);
}

.imedia-services-method-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.imedia-services-method-list li {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: 24px;
  align-items: start;
  padding: 28px 0;
  border-top: 1px solid rgba(255,255,255,.35);
}

.imedia-services-method-list li:last-child {
  border-bottom: 1px solid rgba(255,255,255,.35);
}

.imedia-services-method-list li > span {
  font-size: 13px;
  font-weight: 800;
}

.imedia-services-method-list h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 26px;
}

.imedia-services-method-list p {
  margin: 0;
  color: rgba(255,255,255,.8);
  line-height: 1.55;
}

.imedia-services-method-list small {
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.4);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-services-authority {
  background: var(--services-paper);
  color: #090909;
}

.imedia-services-authority-grid {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: clamp(60px, 10vw, 170px);
  align-items: center;
}

.imedia-services-since {
  display: flex;
  align-items: center;
  gap: 24px;
}

.imedia-services-since strong {
  color: var(--services-red);
  font-size: clamp(68px, 8vw, 120px);
  line-height: .8;
}

.imedia-services-since span {
  max-width: 170px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
  text-transform: uppercase;
}

.imedia-services-authority p {
  max-width: 690px;
  color: #555;
  font-size: 17px;
  line-height: 1.65;
}

.imedia-services-faq {
  background: var(--services-paper);
  color: #090909;
  border-top: 1px solid #d7d2ca;
}

.imedia-services-faq-grid {
  display: grid;
  grid-template-columns: .84fr 1.16fr;
  gap: clamp(60px, 9vw, 150px);
}

.imedia-services-faq-grid > div:first-child > p {
  color: #555;
  font-size: 16px;
  line-height: 1.6;
}

.imedia-services-faq-list {
  border-top: 1px solid #aaa;
}

.imedia-services-faq-list details {
  border-bottom: 1px solid #aaa;
}

.imedia-services-faq-list summary {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  padding: 24px 0;
  cursor: pointer;
  font-size: 19px;
  font-weight: 700;
  list-style: none;
}

.imedia-services-faq-list summary::-webkit-details-marker {
  display: none;
}

.imedia-services-faq-list summary span {
  display: grid;
  flex: 0 0 30px;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #090909;
  color: #fff;
  font-size: 19px;
  transition: transform .2s ease, background .2s ease;
}

.imedia-services-faq-list details[open] summary span {
  transform: rotate(45deg);
  background: var(--services-red);
}

.imedia-services-faq-list details p {
  max-width: 680px;
  margin: -8px 50px 24px 0;
  color: #555;
  line-height: 1.6;
}

.imedia-services-final-cta {
  position: relative;
  padding: 120px 0;
  text-align: center;
  background:
    radial-gradient(circle at 50% 120%, rgba(237,18,49,.36), transparent 38%),
    #090909;
}

.imedia-services-final-cta .imedia-service-shell {
  max-width: 1000px;
}

.imedia-services-final-cta h2 {
  margin-inline: auto;
  font-size: clamp(48px, 5.8vw, 82px);
}

.imedia-services-final-cta p {
  max-width: 700px;
  margin: 24px auto 34px;
  color: #b5b5b5;
  font-size: 17px;
  line-height: 1.65;
}

@media (max-width: 1199px) {
  .imedia-services-hero {
    min-height: auto;
    padding: 104px 0 84px;
  }

  .imedia-services-hero-grid {
    grid-template-columns: 1fr;
  }

  .imedia-services-hero-copy {
    max-width: 820px;
  }

  .imedia-services-radar {
    width: min(100%, 740px);
  }

  .imedia-services-principle-grid,
  .imedia-services-method-grid,
  .imedia-services-authority-grid,
  .imedia-services-faq-grid {
    grid-template-columns: 1fr;
    gap: 52px;
  }

  .imedia-services-method-intro {
    position: static;
  }

  .imedia-services-connection-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .imedia-services-hero {
    padding: 82px 0 66px;
  }

  .imedia-services-hero h1 {
    font-size: clamp(40px, 11.8vw, 60px);
  }

  .imedia-services-proof {
    display: grid;
    gap: 10px;
  }

  .imedia-services-radar {
    min-height: 0;
    padding: 18px;
    border-radius: 20px;
  }

  .imedia-services-radar-head {
    display: grid;
  }

  .imedia-services-orbit {
    min-height: 455px;
  }

  .imedia-services-orbit-ring-one {
    width: 238px;
    height: 238px;
  }

  .imedia-services-orbit-ring-two {
    width: 165px;
    height: 165px;
  }

  .imedia-services-orbit-core {
    width: 112px;
    height: 112px;
  }

  .imedia-services-node {
    width: 112px;
  }

  .imedia-services-node-one { left: 0; top: 62px; }
  .imedia-services-node-two { right: 0; top: 62px; }
  .imedia-services-node-three { left: 0; bottom: 58px; }
  .imedia-services-node-four { right: 0; bottom: 58px; }

  .imedia-services-node::after {
    display: none;
  }

  .imedia-services-radar-foot {
    display: grid;
    grid-template-columns: 1fr 10px 1fr 10px 1fr 10px 1fr;
    gap: 5px;
    padding-inline: 9px;
    font-size: 7px;
  }

  .imedia-services-principle,
  .imedia-services-catalog,
  .imedia-services-method,
  .imedia-services-authority,
  .imedia-services-faq,
  .imedia-services-final-cta {
    padding: 76px 0;
  }

  .imedia-services-principle h2,
  .imedia-services-section-head h2,
  .imedia-services-connection h2,
  .imedia-services-method-intro h2,
  .imedia-services-authority h2,
  .imedia-services-faq h2,
  .imedia-services-final-cta h2 {
    font-size: clamp(35px, 10.2vw, 49px);
  }

  .imedia-services-grid {
    grid-template-columns: 1fr;
  }

  .imedia-services-grid > a {
    min-height: 235px;
    padding: 26px;
  }

  .imedia-services-connection {
    padding: 20px 0;
  }

  .imedia-services-connection-card {
    gap: 36px;
    padding: 42px 22px;
    border-radius: 22px;
  }

  .imedia-services-connection-flow {
    grid-template-columns: 1fr;
  }

  .imedia-services-connection-flow article {
    min-height: 145px;
  }

  .imedia-services-method-list li {
    grid-template-columns: 38px 1fr;
    gap: 14px;
  }

  .imedia-services-method-list small {
    grid-column: 2;
    justify-self: start;
  }

  .imedia-services-since {
    align-items: flex-end;
  }

  .imedia-services-since strong {
    font-size: 78px;
  }

  .imedia-services-faq-list summary {
    font-size: 17px;
  }

  .imedia-services-faq-list details p {
    margin-right: 0;
  }
}

/* PORTFOLIO: COLECOES E CASES */
body.imedia-portfolio-collection {
  background: #090909;
}

.imedia-portfolio-collection main#content {
  background: #090909;
  color: #fff;
  overflow: hidden;
}

.imedia-portfolio-hero {
  position: relative;
  padding: 108px 0 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 38%, rgba(237,18,49,.22), transparent 32%),
    linear-gradient(120deg, #050505, #111 68%, #070707);
}

.imedia-portfolio-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .2;
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(90deg, transparent 5%, #000 46%, #000);
  pointer-events: none;
}

.imedia-portfolio-hero-grid {
  position: relative;
  z-index: 1;
  min-height: 400px;
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: clamp(50px, 9vw, 145px);
  align-items: center;
  padding-bottom: 78px;
}

.imedia-portfolio-hero h1 {
  max-width: 820px;
  margin: 17px 0 23px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: clamp(58px, 6vw, 94px);
  font-weight: 700;
  line-height: .94;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.imedia-portfolio-hero-grid > div:first-child > p {
  max-width: 680px;
  margin: 0;
  color: #b5b5b5;
  font-size: 18px;
  line-height: 1.65;
}

.imedia-portfolio-hero-index {
  position: relative;
  display: grid;
  justify-items: end;
  align-content: center;
  min-height: 260px;
  padding-right: 28px;
  border-right: 1px solid rgba(237,18,49,.65);
}

.imedia-portfolio-hero-index::before,
.imedia-portfolio-hero-index::after {
  content: "";
  position: absolute;
  right: -7px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #ed1231;
  box-shadow: 0 0 18px rgba(237,18,49,.65);
}

.imedia-portfolio-hero-index::before { top: 0; }
.imedia-portfolio-hero-index::after { bottom: 0; }

.imedia-portfolio-hero-index small {
  color: #777;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.imedia-portfolio-hero-index strong {
  color: #ed1231;
  font-family: "Oswald", sans-serif;
  font-size: clamp(110px, 13vw, 190px);
  line-height: .84;
}

.imedia-portfolio-hero-index span {
  max-width: 220px;
  margin-top: 17px;
  color: #999;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.45;
  text-align: right;
  text-transform: uppercase;
}

.imedia-portfolio-filters {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid rgba(255,255,255,.13);
  border-left: 1px solid rgba(255,255,255,.13);
}

.imedia-portfolio-filters a {
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 72px;
  padding: 18px 22px;
  border-right: 1px solid rgba(255,255,255,.13);
  color: #aaa;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color .2s ease, background .2s ease;
}

.imedia-portfolio-filters a span {
  color: #555;
  font-size: 9px;
}

.imedia-portfolio-filters a:hover,
.imedia-portfolio-filters a:focus-visible {
  color: #fff;
  background: rgba(255,255,255,.045);
}

.imedia-portfolio-filters a[aria-current="page"] {
  color: #fff;
  background: #ed1231;
}

.imedia-portfolio-filters a[aria-current="page"] span {
  color: rgba(255,255,255,.65);
}

.imedia-portfolio-collection main#content > .page-content > .elementor > .elementor-element:nth-child(1),
.imedia-portfolio-collection main#content > .page-content > .elementor > .elementor-element:nth-child(2) {
  display: none !important;
}

.imedia-portfolio-collection main#content > .page-content > .elementor > .elementor-element:nth-child(3) {
  padding: 92px max(24px, calc((100vw - 1320px) / 2)) 110px !important;
  background: #f5f3ee !important;
}

.imedia-portfolio-collection .lakit-posts__list_wrapper,
.imedia-portfolio-collection .lakit-posts,
.imedia-portfolio-collection .lakit-posts__list {
  width: 100% !important;
  max-width: 1320px !important;
  margin-inline: auto !important;
}

.imedia-portfolio-collection .lakit-posts__list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.imedia-portfolio-collection .lakit-posts__item {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.imedia-portfolio-collection .lakit-posts__outer-box,
.imedia-portfolio-collection .lakit-posts__inner-box {
  height: 100%;
}

.imedia-portfolio-collection .lakit-posts__inner-box {
  position: relative;
  min-height: 0;
  overflow: hidden;
  border: 1px solid #d4d0c9;
  border-radius: 18px;
  background: #0a0a0a;
  box-shadow: 0 14px 38px rgba(0,0,0,.08);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.imedia-portfolio-collection .lakit-posts__inner-box:hover {
  transform: translateY(-6px);
  border-color: rgba(237,18,49,.75);
  box-shadow: 0 22px 48px rgba(0,0,0,.18);
}

.imedia-portfolio-collection .lakit-posts__thumbnail {
  position: relative;
  aspect-ratio: 16 / 10;
  margin: 0 !important;
  overflow: hidden;
  background: #171717;
}

.imedia-portfolio-collection .lakit-posts__thumbnail::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(transparent 55%, rgba(0,0,0,.72));
}

.imedia-portfolio-collection .lakit-posts__thumbnail-link {
  display: block;
  width: 100%;
  height: 100%;
}

.imedia-portfolio-collection .lakit-posts__thumbnail-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .55s cubic-bezier(.2,.7,.2,1);
}

.imedia-portfolio-collection .lakit-posts__inner-box:hover .lakit-posts__thumbnail-img {
  transform: scale(1.045);
}

.imedia-portfolio-collection .lakit-posts__inner-content {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  padding: 22px 24px 24px !important;
  background: #0a0a0a !important;
  opacity: 1 !important;
  transform: none !important;
}

.imedia-portfolio-collection .lakit-posts__inner-content::before {
  content: "Ver projeto";
  position: absolute;
  right: 24px;
  top: 26px;
  color: #ed1231;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-portfolio-collection .lakit-posts__title {
  margin: 0 !important;
  padding-right: 95px;
  font-family: "Oswald", sans-serif;
  font-size: 24px !important;
  line-height: 1.15 !important;
  text-transform: uppercase;
}

.imedia-portfolio-collection .lakit-posts__title a {
  color: #fff !important;
  text-decoration: none !important;
}

.imedia-portfolio-collection .lakit-post__loadmore_ajax {
  display: none !important;
}

.imedia-portfolio-collection ul.page-numbers {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  gap: 9px;
  margin: 62px auto 0 !important;
  padding: 0 !important;
  list-style: none;
}

.imedia-portfolio-collection ul.page-numbers li {
  margin: 0 !important;
  padding: 0 !important;
}

.imedia-portfolio-collection ul.page-numbers a.page-numbers,
.imedia-portfolio-collection ul.page-numbers span.page-numbers {
  display: grid !important;
  place-items: center;
  min-width: 42px;
  height: 42px;
  padding: 0 12px !important;
  border: 1px solid #cbc7c0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: #141414 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: color .2s ease, border-color .2s ease, background .2s ease;
}

.imedia-portfolio-collection ul.page-numbers a.page-numbers:hover,
.imedia-portfolio-collection ul.page-numbers span.page-numbers.current {
  border-color: #ed1231 !important;
  background: #ed1231 !important;
  color: #fff !important;
}

.imedia-portfolio-collection ul.page-numbers a.next,
.imedia-portfolio-collection ul.page-numbers a.prev {
  border-radius: 999px !important;
}

.imedia-portfolio-case .imedia-portfolio-breadcrumb {
  position: relative;
  z-index: 9;
}

.imedia-portfolio-case .elementor-location-single {
  overflow: hidden;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-widget-button {
  margin-left: clamp(18px, 2.5vw, 44px) !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-button {
  min-width: 92px;
  border: 1px solid rgba(255,255,255,.45);
  border-radius: 999px;
}

@media (max-width: 1024px) {
  .imedia-portfolio-hero {
    padding-top: 82px;
  }

  .imedia-portfolio-hero-grid {
    grid-template-columns: 1fr;
    gap: 35px;
    padding-bottom: 60px;
  }

  .imedia-portfolio-hero-index {
    justify-items: start;
    min-height: auto;
    padding: 28px 0 0 24px;
    border-right: 0;
    border-left: 1px solid rgba(237,18,49,.65);
  }

  .imedia-portfolio-hero-index::before,
  .imedia-portfolio-hero-index::after {
    left: -7px;
    right: auto;
  }

  .imedia-portfolio-hero-index strong {
    font-size: 105px;
  }

  .imedia-portfolio-hero-index span {
    max-width: 260px;
    text-align: left;
  }

  .imedia-portfolio-filters {
    grid-template-columns: 1fr 1fr;
  }

  .imedia-portfolio-collection .lakit-posts__list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .imedia-portfolio-hero {
    padding-top: 64px;
  }

  .imedia-portfolio-hero-grid {
    min-height: 0;
    padding-bottom: 48px;
  }

  .imedia-portfolio-hero h1 {
    font-size: clamp(47px, 14vw, 65px);
  }

  .imedia-portfolio-hero-grid > div:first-child > p {
    font-size: 16px;
  }

  .imedia-portfolio-hero-index {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 18px;
    align-items: end;
    padding: 20px 0 0 19px;
  }

  .imedia-portfolio-hero-index small {
    grid-column: 1 / -1;
  }

  .imedia-portfolio-hero-index strong {
    font-size: 82px;
  }

  .imedia-portfolio-hero-index span {
    align-self: center;
    margin: 0;
    font-size: 9px;
  }

  .imedia-portfolio-filters {
    grid-template-columns: 1fr;
  }

  .imedia-portfolio-filters a {
    min-height: 56px;
    padding: 14px 18px;
  }

  .imedia-portfolio-collection main#content > .page-content > .elementor > .elementor-element:nth-child(3) {
    padding: 58px 16px 76px !important;
  }

  .imedia-portfolio-collection .lakit-posts__list {
    grid-template-columns: 1fr !important;
    gap: 15px !important;
  }

  .imedia-portfolio-collection .lakit-posts__inner-box {
    border-radius: 14px;
  }

  .imedia-portfolio-collection .lakit-posts__inner-content {
    padding: 19px 20px 21px !important;
  }

  .imedia-portfolio-collection .lakit-posts__inner-content::before {
    right: 20px;
    top: 23px;
  }

  .imedia-portfolio-collection .lakit-posts__title {
    font-size: 22px !important;
  }

  .imedia-portfolio-collection ul.page-numbers {
    gap: 7px;
    margin-top: 44px !important;
  }

  .imedia-portfolio-collection ul.page-numbers a.page-numbers,
  .imedia-portfolio-collection ul.page-numbers span.page-numbers {
    min-width: 37px;
    height: 37px;
    padding-inline: 9px !important;
    font-size: 12px !important;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-widget-button {
    margin-left: 16px !important;
  }
}

/* PORTFOLIO: PAGINA INTERNA DO CASE */
body.imedia-portfolio-case {
  background: #050505;
}

.imedia-portfolio-case .elementor-location-single {
  overflow: hidden;
  background: #f4f1eb;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child {
  position: relative;
  display: flex !important;
  min-height: 540px;
  flex-flow: row nowrap !important;
  gap: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  background:
    radial-gradient(circle at 34% 72%, rgba(237,18,49,.15), transparent 28%),
    #080808 !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child::before {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 43%;
  width: 1px;
  height: 70%;
  background: linear-gradient(to bottom, transparent, #ed1231 20%, #ed1231 80%, transparent);
  content: "";
  transform: translateY(-50%);
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child::after {
  position: absolute;
  z-index: 3;
  right: 24px;
  bottom: 20px;
  color: rgba(255,255,255,.64);
  font-family: "Oswald", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
  content: "Projeto Imédia";
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child {
  position: relative;
  z-index: 2;
  display: flex !important;
  width: 43% !important;
  min-height: 540px;
  flex: 0 0 43% !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  padding: 80px 48px 62px max(32px, calc((100vw - 1320px) / 2)) !important;
  overflow: hidden;
  background: transparent !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child::before {
  position: absolute;
  top: 30px;
  left: max(32px, calc((100vw - 1320px) / 2));
  display: block;
  margin: 0;
  color: #ed1231;
  font-family: "Oswald", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.3;
  text-transform: uppercase;
  content: "Case de sucesso";
}

.imedia-portfolio-ecommerce .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child::before {
  content: "Case de E-commerce";
}

.imedia-portfolio-identidade .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child::before {
  content: "Case de Identidade Visual";
}

.imedia-portfolio-landing .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child::before {
  content: "Case de Landing Page";
}

.imedia-portfolio-web .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child::before {
  content: "Case de Website";
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:last-child {
  position: relative;
  z-index: 1;
  width: 57% !important;
  min-height: 540px;
  flex: 1 1 57% !important;
  padding: 0 !important;
  overflow: hidden;
  background: #111 !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:last-child::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(8,8,8,.35), transparent 28%);
  content: "";
  pointer-events: none;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-widget-button {
  position: absolute !important;
  top: 68px;
  left: max(32px, calc((100vw - 1320px) / 2));
  width: auto !important;
  margin: 0 !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-button {
  min-width: 0 !important;
  padding: 9px 16px !important;
  border: 1px solid rgba(255,255,255,.25) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: rgba(255,255,255,.03) !important;
  font-family: "Rubik", sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .07em;
  text-transform: uppercase;
  transition: border-color .2s ease, background .2s ease;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-button::before {
  margin-right: 7px;
  content: "←";
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-button:hover,
.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-button:focus-visible {
  border-color: #ed1231 !important;
  background: #ed1231 !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-lakit-post-title {
  width: 100% !important;
  max-width: 560px;
  margin: 0 !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child h1.lakit-post-title {
  margin: 0 !important;
  color: #fff !important;
  font-family: "Oswald", sans-serif !important;
  font-size: clamp(58px, 6vw, 92px) !important;
  font-weight: 700 !important;
  letter-spacing: -.04em !important;
  line-height: .98 !important;
  text-transform: uppercase;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .lakit-post-featured-image,
.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-widget-container,
.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-lakit-post-featured-image {
  width: 100% !important;
  height: 100% !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .lakit-post-featured-image img {
  display: block;
  width: 100% !important;
  height: 540px !important;
  object-fit: cover !important;
  object-position: center !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) {
  padding: 95px 24px 120px !important;
  color: #111 !important;
  background: #f4f1eb !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) > .e-con-inner {
  display: flex !important;
  width: min(1120px, 100%) !important;
  max-width: 1120px !important;
  flex-direction: column !important;
  align-items: stretch !important;
  margin-inline: auto !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) .elementor-widget-heading {
  width: 100% !important;
  margin-bottom: 40px !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) .elementor-heading-title {
  position: relative;
  max-width: 850px;
  margin: 0 !important;
  padding-top: 22px;
  color: #111 !important;
  font-family: "Oswald", sans-serif !important;
  font-size: clamp(43px, 5vw, 70px) !important;
  font-weight: 700 !important;
  letter-spacing: -.035em;
  line-height: 1.02 !important;
  text-transform: uppercase;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) .elementor-heading-title::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 54px;
  height: 3px;
  background: #ed1231;
  content: "";
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) .elementor-widget-theme-post-content {
  width: 100% !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) figure {
  display: block !important;
  width: 100% !important;
  max-width: 100%;
  margin-right: auto !important;
  margin-left: auto !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) img {
  display: block;
  max-width: 100% !important;
  height: auto !important;
  margin-inline: auto;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) img.imedia-case-image-portrait {
  width: min(760px, 100%) !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) img.imedia-case-image-landscape {
  width: 100% !important;
}

.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) .wp-block-gallery,
.imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) .wp-block-gallery > figure {
  width: 100% !important;
  max-width: 100% !important;
}

@media (max-width: 900px) {
  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child {
    min-height: 0;
    flex-direction: column !important;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child::before {
    display: none;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child,
  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:last-child {
    width: 100% !important;
    flex-basis: auto !important;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child {
    min-height: 390px;
    padding: 96px 24px 54px !important;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:last-child {
    min-height: 0;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-widget-button {
    top: 64px;
    left: 24px;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child::before {
    top: 24px;
    left: 24px;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .lakit-post-featured-image img {
    height: auto !important;
    min-height: 0;
    aspect-ratio: 16 / 9;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:last-child::after {
    background: linear-gradient(to bottom, rgba(8,8,8,.3), transparent 30%);
  }
}

@media (max-width: 520px) {
  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child {
    min-height: 310px;
    padding: 88px 18px 42px !important;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child .elementor-widget-button {
    top: 59px;
    left: 18px;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child > .elementor-element:first-child::before {
    top: 20px;
    left: 18px;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:first-child h1.lakit-post-title {
    font-size: clamp(45px, 14vw, 64px) !important;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) {
    padding: 68px 18px 80px !important;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) .elementor-widget-heading {
    margin-bottom: 28px !important;
  }

  .imedia-portfolio-case .elementor-location-single > .elementor-element:nth-child(2) .elementor-heading-title {
    font-size: 40px !important;
  }
}

/* HOME: POSICIONAMENTO, SERVICOS, PORTFOLIO E CONVERSAO */
body.imedia-home-rebuilt {
  background: #050505;
}

.imedia-home-page,
.imedia-home-page * {
  box-sizing: border-box;
}

.imedia-home-page {
  overflow: hidden;
  background: #050505;
  color: #fff;
  font-family: "Rubik", sans-serif;
}

.imedia-home-shell {
  width: min(1320px, calc(100% - 64px));
  margin-inline: auto;
}

.imedia-home-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #ed1231;
  font-family: "Oswald", sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .13em;
  line-height: 1.3;
  text-transform: uppercase;
}

.imedia-home-kicker::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.imedia-home-kicker-dark {
  color: #d90e2b;
}

.imedia-home-page h1,
.imedia-home-page h2,
.imedia-home-page h3,
.imedia-home-page p {
  margin-top: 0;
}

.imedia-home-page h1,
.imedia-home-page h2,
.imedia-home-page h3 {
  font-family: "Oswald", sans-serif;
}

.imedia-home-hero {
  position: relative;
  min-height: 760px;
  padding: 86px 0 76px;
  border-bottom: 1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 76% 45%, rgba(237,18,49,.2), transparent 33%),
    linear-gradient(120deg, #030303 0%, #090909 64%, #120306 100%);
}

.imedia-home-hero::before {
  position: absolute;
  inset: 0;
  opacity: .17;
  background-image:
    linear-gradient(rgba(255,255,255,.11) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.11) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to right, #000, transparent 70%);
  content: "";
  pointer-events: none;
}

.imedia-home-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(440px, .98fr);
  align-items: center;
  gap: 76px;
}

.imedia-home-hero-copy h1 {
  max-width: 760px;
  margin: 27px 0 26px;
  color: #fff;
  font-size: clamp(62px, 6.15vw, 94px);
  font-weight: 700;
  letter-spacing: -.045em;
  line-height: .96;
  text-transform: uppercase;
}

.imedia-home-hero-copy h1 em {
  display: block;
  color: #ed1231;
  font-style: normal;
}

.imedia-home-hero-copy > p {
  max-width: 680px;
  margin-bottom: 34px;
  color: #b7b7b7;
  font-size: 18px;
  line-height: 1.7;
}

.imedia-home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.imedia-home-button {
  display: inline-flex;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-family: "Oswald", sans-serif;
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .035em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: transform .2s ease, color .2s ease, background .2s ease, border-color .2s ease;
}

.imedia-home-button:hover,
.imedia-home-button:focus-visible {
  transform: translateY(-2px);
}

.imedia-home-button-primary {
  color: #fff;
  background: #ed1231;
}

.imedia-home-button-primary:hover,
.imedia-home-button-primary:focus-visible {
  color: #090909;
  background: #fff;
}

.imedia-home-button-ghost {
  border-color: #4d4d4d;
  color: #fff;
  background: rgba(255,255,255,.03);
}

.imedia-home-button-ghost:hover,
.imedia-home-button-ghost:focus-visible {
  border-color: #fff;
  color: #fff;
}

.imedia-home-hero-proof {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 690px;
  margin: 48px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-home-hero-proof li {
  padding: 0 21px;
  border-left: 1px solid rgba(255,255,255,.17);
}

.imedia-home-hero-proof li:first-child {
  padding-left: 0;
  border-left: 0;
}

.imedia-home-hero-proof strong,
.imedia-home-hero-proof span {
  display: block;
}

.imedia-home-hero-proof strong {
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
}

.imedia-home-hero-proof span {
  margin-top: 4px;
  color: #777;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.imedia-home-hero-visual {
  position: relative;
  min-height: 570px;
  isolation: isolate;
}

.imedia-home-hero-visual::before,
.imedia-home-hero-visual::after {
  position: absolute;
  z-index: -1;
  content: "";
}

.imedia-home-hero-visual::before {
  top: 50%;
  left: 50%;
  width: min(42vw, 540px);
  aspect-ratio: 1;
  border: 1px solid rgba(237,18,49,.28);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(237,18,49,.11), transparent 67%);
  transform: translate(-50%, -50%);
}

.imedia-home-hero-visual::after {
  top: 15%;
  right: 2%;
  width: 88px;
  height: 2px;
  background: #ed1231;
  box-shadow: 0 0 24px rgba(237,18,49,.6);
}

.imedia-home-hero-image {
  position: absolute;
  z-index: -1;
  inset: -70px -100px -60px -80px;
  opacity: .94;
  background: url("/wp-content/uploads/imedia/imedia-sales-hero-transparent-v7.png") center / contain no-repeat;
  filter: contrast(1.06) saturate(1.04);
}

.imedia-home-visual-label {
  position: absolute;
  z-index: 3;
  top: 12%;
  right: 5%;
  padding: 9px 12px 9px 22px;
  border-right: 1px solid rgba(255,255,255,.22);
  background: linear-gradient(90deg, transparent, rgba(0,0,0,.74));
  text-shadow: 0 2px 10px #000;
  text-align: right;
}

.imedia-home-visual-label span,
.imedia-home-visual-label strong {
  display: block;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
}

.imedia-home-visual-label span {
  color: #ed1231;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .13em;
}

.imedia-home-visual-label strong {
  margin-top: 3px;
  color: #fff;
  font-size: 19px;
}

.imedia-home-result-card {
  position: absolute;
  z-index: 3;
  bottom: 38px;
  left: 4%;
  width: 390px;
  padding: 21px 44px 21px 23px;
  border-left: 2px solid #ed1231;
  background: linear-gradient(90deg, rgba(2,2,2,.96) 0%, rgba(2,2,2,.82) 72%, transparent 100%);
  filter: drop-shadow(0 12px 22px rgba(0,0,0,.34));
}

.imedia-home-result-card > span {
  display: block;
  color: #fff;
  opacity: .76;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-home-result-card > strong {
  display: block;
  margin-top: 7px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 25px;
  text-transform: uppercase;
  text-shadow: 0 2px 16px #000;
}

.imedia-home-result-card ul {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-home-result-card li {
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.34);
  color: #fff;
  background: rgba(0,0,0,.68);
  backdrop-filter: blur(4px);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.imedia-home-metrics {
  border-bottom: 1px solid #242424;
  background: #0c0c0c;
}

.imedia-home-metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.imedia-home-metrics article {
  min-height: 178px;
  padding: 37px 28px 30px;
  border-left: 1px solid #242424;
}

.imedia-home-metrics article:last-child {
  border-right: 1px solid #242424;
}

.imedia-home-metrics article > span {
  color: #ed1231;
  font-family: "Oswald", sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
}

.imedia-home-metrics strong {
  display: block;
  margin-top: 14px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 27px;
  text-transform: uppercase;
}

.imedia-home-metrics p {
  margin: 7px 0 0;
  color: #777;
  font-size: 12px;
  line-height: 1.5;
}

.imedia-home-manifesto {
  padding: 112px 0 0;
  color: #111;
  background: #f4f1eb;
}

.imedia-home-manifesto-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr);
  gap: 100px;
}

.imedia-home-manifesto h2,
.imedia-home-section-heading h2,
.imedia-home-clients h2,
.imedia-home-cta h2 {
  margin: 23px 0 0;
  font-size: clamp(49px, 5.1vw, 74px);
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1;
  text-transform: uppercase;
}

.imedia-home-manifesto-copy {
  padding-top: 34px;
}

.imedia-home-manifesto-copy p {
  color: #575757;
  font-size: 16px;
  line-height: 1.75;
}

.imedia-home-text-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .035em;
  text-decoration: none !important;
  text-transform: uppercase;
}

.imedia-home-text-link span {
  color: #ed1231;
  font-size: 20px;
  transition: transform .2s ease;
}

.imedia-home-text-link:hover span,
.imedia-home-text-link:focus-visible span {
  transform: translateX(5px);
}

.imedia-home-method {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 90px;
  border-top: 1px solid #cfcac0;
}

.imedia-home-method > div {
  min-height: 220px;
  padding: 32px 26px 36px;
  border-left: 1px solid #cfcac0;
}

.imedia-home-method > div:last-child {
  border-right: 1px solid #cfcac0;
}

.imedia-home-method span {
  color: #ed1231;
  font-family: "Oswald", sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
}

.imedia-home-method strong {
  display: block;
  margin-top: 34px;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: 25px;
  text-transform: uppercase;
}

.imedia-home-method p {
  margin: 9px 0 0;
  color: #6b6b6b;
  font-size: 12px;
  line-height: 1.55;
}

.imedia-home-services {
  position: relative;
  padding: 112px 0;
  background:
    radial-gradient(circle at 8% 15%, rgba(237,18,49,.12), transparent 25%),
    #070707;
}

.imedia-home-services::before {
  position: absolute;
  inset: 0;
  opacity: .14;
  background-image: radial-gradient(#fff 1px, transparent 1px);
  background-size: 38px 38px;
  content: "";
  pointer-events: none;
}

.imedia-home-services > .imedia-home-shell {
  position: relative;
  z-index: 1;
}

.imedia-home-section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, .55fr);
  align-items: end;
  gap: 80px;
  margin-bottom: 61px;
}

.imedia-home-section-heading h2 {
  color: #fff;
}

.imedia-home-section-heading > p {
  margin: 0 0 7px;
  color: #969696;
  font-size: 15px;
  line-height: 1.75;
}

.imedia-home-service-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid #2a2a2a;
  border-left: 1px solid #2a2a2a;
}

.imedia-home-service-grid > a {
  position: relative;
  min-height: 335px;
  padding: 30px;
  overflow: hidden;
  border-right: 1px solid #2a2a2a;
  border-bottom: 1px solid #2a2a2a;
  color: #fff;
  text-decoration: none !important;
  transition: background .25s ease;
}

.imedia-home-service-grid > a::before {
  position: absolute;
  right: -50px;
  bottom: -70px;
  width: 180px;
  height: 180px;
  border: 1px solid rgba(237,18,49,.23);
  border-radius: 50%;
  content: "";
  transition: transform .3s ease, background .3s ease;
}

.imedia-home-service-grid > a:hover,
.imedia-home-service-grid > a:focus-visible {
  background: #ed1231;
}

.imedia-home-service-grid > a:hover::before,
.imedia-home-service-grid > a:focus-visible::before {
  transform: scale(1.25);
  background: rgba(255,255,255,.08);
}

.imedia-home-service-grid > a > span {
  color: #ed1231;
  font-family: "Oswald", sans-serif;
  font-size: 12px;
  font-weight: 700;
}

.imedia-home-service-grid > a:hover > span,
.imedia-home-service-grid > a:focus-visible > span {
  color: #fff;
}

.imedia-home-service-grid small {
  display: block;
  margin-top: 42px;
  color: #777;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.imedia-home-service-grid > a:hover small,
.imedia-home-service-grid > a:focus-visible small {
  color: rgba(255,255,255,.72);
}

.imedia-home-service-grid h3 {
  max-width: 330px;
  margin: 9px 0 14px;
  color: #fff;
  font-size: 29px;
  line-height: 1.12;
  text-transform: uppercase;
}

.imedia-home-service-grid p {
  max-width: 340px;
  color: #898989;
  font-size: 12px;
  line-height: 1.65;
}

.imedia-home-service-grid > a:hover p,
.imedia-home-service-grid > a:focus-visible p {
  color: rgba(255,255,255,.82);
}

.imedia-home-service-grid i {
  position: absolute;
  right: 27px;
  bottom: 24px;
  color: #ed1231;
  font-size: 22px;
  font-style: normal;
}

.imedia-home-service-grid > a:hover i,
.imedia-home-service-grid > a:focus-visible i {
  color: #fff;
}

.imedia-home-button-outline {
  margin-top: 38px;
  border-color: #4d4d4d;
  color: #fff;
}

.imedia-home-button-outline:hover,
.imedia-home-button-outline:focus-visible {
  border-color: #fff;
  color: #070707;
  background: #fff;
}

.imedia-home-portfolio {
  padding: 112px 0 122px;
  color: #101010;
  background: #f4f1eb;
}

.imedia-home-section-heading-light h2 {
  color: #111;
}

.imedia-home-section-heading-light > p {
  color: #626262;
}

.imedia-home-portfolio-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.imedia-home-portfolio-grid > a {
  position: relative;
  display: flex;
  min-height: 455px;
  flex-direction: column;
  justify-content: flex-end;
  padding: 34px;
  overflow: hidden;
  color: #fff;
  background: #111;
  text-decoration: none !important;
}

.imedia-home-portfolio-grid > a::before,
.imedia-home-portfolio-grid > a::after {
  position: absolute;
  inset: 0;
  content: "";
}

.imedia-home-portfolio-grid > a::before {
  background: var(--portfolio-image) center / cover no-repeat;
  transition: transform .55s cubic-bezier(.2,.7,.2,1);
}

.imedia-home-portfolio-grid > a::after {
  background: linear-gradient(to top, rgba(0,0,0,.95), rgba(0,0,0,.05) 78%);
}

.imedia-home-portfolio-grid > a:hover::before,
.imedia-home-portfolio-grid > a:focus-visible::before {
  transform: scale(1.045);
}

.imedia-home-portfolio-grid span,
.imedia-home-portfolio-grid h3,
.imedia-home-portfolio-grid p,
.imedia-home-portfolio-grid i {
  position: relative;
  z-index: 1;
}

.imedia-home-portfolio-grid span {
  color: #ed1231;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-home-portfolio-grid h3 {
  margin: 8px 0 5px;
  color: #fff;
  font-size: 42px;
  line-height: 1;
  text-transform: uppercase;
}

.imedia-home-portfolio-grid p {
  margin: 0;
  color: #d0d0d0;
  font-size: 12px;
}

.imedia-home-portfolio-grid i {
  position: absolute;
  right: 32px;
  bottom: 35px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.imedia-home-clients {
  padding: 106px 0 114px;
  background: #0a0a0a;
}

.imedia-home-clients-heading {
  display: grid;
  grid-template-columns: 1fr 1.3fr .8fr;
  align-items: end;
  gap: 42px;
  margin-bottom: 55px;
}

.imedia-home-clients h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(44px, 4.5vw, 67px);
}

.imedia-home-clients-heading > p {
  margin: 0 0 7px;
  color: #858585;
  font-size: 13px;
  line-height: 1.7;
}

.imedia-home-logo-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid #292929;
  border-left: 1px solid #292929;
}

.imedia-home-logo-grid > div {
  display: flex;
  min-height: 148px;
  align-items: center;
  justify-content: center;
  padding: 26px;
  border-right: 1px solid #292929;
  border-bottom: 1px solid #292929;
  background: #101010;
}

.imedia-home-logo-grid img {
  width: auto;
  max-width: 150px;
  max-height: 62px;
  object-fit: contain;
  filter: grayscale(1) brightness(1.85);
  opacity: .78;
  transition: filter .2s ease, opacity .2s ease, transform .2s ease;
}

.imedia-home-logo-grid > div:hover img {
  filter: none;
  opacity: 1;
  transform: scale(1.04);
}

.imedia-home-insights {
  padding: 112px 0 125px;
  color: #111;
  background: #fff;
}

.imedia-home-insights .imedia-home-section-heading > .imedia-home-text-link {
  justify-self: end;
  align-self: end;
  margin-bottom: 8px;
}

.imedia-home-insight-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.imedia-home-insight-grid > a {
  display: flex;
  min-width: 0;
  flex-direction: column;
  color: #111;
  text-decoration: none !important;
}

.imedia-home-insight-grid img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  filter: saturate(.8);
  transition: filter .25s ease, transform .25s ease;
}

.imedia-home-insight-grid > a:hover img,
.imedia-home-insight-grid > a:focus-visible img {
  filter: saturate(1.1);
  transform: translateY(-4px);
}

.imedia-home-insight-grid span {
  margin-top: 23px;
  color: #ed1231;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.imedia-home-insight-grid h3 {
  margin: 10px 0 17px;
  color: #111;
  font-size: 27px;
  line-height: 1.18;
  text-transform: uppercase;
}

.imedia-home-insight-grid i {
  margin-top: auto;
  color: #555;
  font-family: "Oswald", sans-serif;
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.imedia-home-cta {
  position: relative;
  padding: 96px 0;
  overflow: hidden;
  background: #ed1231;
}

.imedia-home-cta::after {
  position: absolute;
  top: 50%;
  right: -100px;
  width: 430px;
  height: 430px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%;
  content: "";
  transform: translateY(-50%);
}

.imedia-home-cta-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  align-items: center;
  gap: 100px;
}

.imedia-home-cta .imedia-home-kicker {
  color: #fff;
}

.imedia-home-cta h2 {
  max-width: 820px;
  color: #fff;
}

.imedia-home-cta-grid > div:last-child p {
  color: rgba(255,255,255,.86);
  font-size: 15px;
  line-height: 1.75;
}

.imedia-home-button-light {
  margin-top: 12px;
  color: #111;
  background: #fff;
}

.imedia-home-button-light:hover,
.imedia-home-button-light:focus-visible {
  color: #fff;
  background: #111;
}

@media (max-width: 1100px) {
  .imedia-home-shell {
    width: min(100% - 48px, 980px);
  }

  .imedia-home-hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr);
    gap: 40px;
  }

  .imedia-home-hero-copy h1 {
    font-size: clamp(54px, 6vw, 73px);
  }

  .imedia-home-manifesto-grid,
  .imedia-home-section-heading,
  .imedia-home-cta-grid {
    gap: 55px;
  }

  .imedia-home-service-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-home-clients-heading {
    grid-template-columns: 1fr 1.4fr;
  }

  .imedia-home-clients-heading > p {
    grid-column: 2;
  }
}

@media (max-width: 780px) {
  .imedia-home-shell {
    width: min(100% - 32px, 680px);
  }

  .imedia-home-hero {
    min-height: 0;
    padding: 62px 0 0;
  }

  .imedia-home-hero::before {
    background-size: 48px 48px;
  }

  .imedia-home-hero-grid {
    display: block;
  }

  .imedia-home-hero-copy h1 {
    margin: 21px 0 20px;
    font-size: clamp(44px, 13vw, 62px);
    line-height: .97;
  }

  .imedia-home-hero-copy > p {
    margin-bottom: 27px;
    font-size: 15px;
    line-height: 1.65;
  }

  .imedia-home-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .imedia-home-button {
    width: 100%;
    min-height: 52px;
    padding-inline: 16px;
    font-size: 13px;
  }

  .imedia-home-hero-proof {
    margin-top: 38px;
  }

  .imedia-home-hero-proof li {
    padding-inline: 12px;
  }

  .imedia-home-hero-proof strong {
    font-size: 15px;
  }

  .imedia-home-hero-visual {
    min-height: 440px;
    margin: 48px -16px 0;
  }

  .imedia-home-result-card {
    right: auto;
    bottom: 26px;
    left: 16px;
    width: min(360px, calc(100% - 32px));
  }

  .imedia-home-metrics-grid,
  .imedia-home-method {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-home-metrics article {
    min-height: 155px;
    padding: 27px 20px;
    border-bottom: 1px solid #242424;
  }

  .imedia-home-metrics article:nth-child(3) {
    border-left: 0;
  }

  .imedia-home-manifesto,
  .imedia-home-services,
  .imedia-home-portfolio,
  .imedia-home-clients,
  .imedia-home-insights {
    padding-top: 82px;
    padding-bottom: 86px;
  }

  .imedia-home-manifesto-grid,
  .imedia-home-section-heading,
  .imedia-home-cta-grid,
  .imedia-home-clients-heading {
    display: block;
  }

  .imedia-home-manifesto h2,
  .imedia-home-section-heading h2,
  .imedia-home-clients h2,
  .imedia-home-cta h2 {
    font-size: clamp(42px, 11.5vw, 60px);
  }

  .imedia-home-manifesto-copy {
    padding-top: 32px;
  }

  .imedia-home-method {
    margin-top: 58px;
  }

  .imedia-home-method > div {
    min-height: 185px;
  }

  .imedia-home-method > div:nth-child(3) {
    border-left: 0;
  }

  .imedia-home-section-heading {
    margin-bottom: 40px;
  }

  .imedia-home-section-heading > p {
    margin-top: 24px;
  }

  .imedia-home-service-grid {
    grid-template-columns: 1fr;
  }

  .imedia-home-service-grid > a {
    min-height: 290px;
  }

  .imedia-home-portfolio-grid {
    grid-template-columns: 1fr;
  }

  .imedia-home-portfolio-grid > a {
    min-height: 395px;
  }

  .imedia-home-logo-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .imedia-home-clients-heading > p {
    margin-top: 22px;
  }

  .imedia-home-insights .imedia-home-section-heading > .imedia-home-text-link {
    justify-self: auto;
    margin-top: 25px;
  }

  .imedia-home-insight-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .imedia-home-cta {
    padding: 76px 0;
  }

  .imedia-home-cta-grid > div:last-child {
    margin-top: 30px;
  }
}

@media (max-width: 480px) {
  .imedia-home-kicker {
    font-size: 10px;
  }

  .imedia-home-hero {
    padding-top: 52px;
  }

  .imedia-home-actions {
    grid-template-columns: 1fr;
  }

  .imedia-home-hero-proof {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .imedia-home-hero-proof li,
  .imedia-home-hero-proof li:first-child {
    padding: 0 0 0 13px;
    border-left: 1px solid rgba(255,255,255,.17);
  }

  .imedia-home-hero-visual {
    min-height: 360px;
  }

  .imedia-home-hero-image {
    inset: -35px -70px -30px -70px;
  }

  .imedia-home-visual-label {
    top: 8%;
    right: 3%;
  }

  .imedia-home-result-card {
    padding: 18px 24px 18px 18px;
  }

  .imedia-home-result-card > strong {
    font-size: 21px;
  }

  .imedia-home-metrics strong {
    font-size: 21px;
  }

  .imedia-home-metrics p {
    font-size: 10px;
  }

  .imedia-home-method {
    grid-template-columns: 1fr;
  }

  .imedia-home-method > div,
  .imedia-home-method > div:nth-child(3) {
    min-height: 0;
    padding: 27px 20px 30px;
    border-left: 1px solid #cfcac0;
    border-right: 1px solid #cfcac0;
    border-bottom: 1px solid #cfcac0;
  }

  .imedia-home-method strong {
    margin-top: 18px;
  }

  .imedia-home-service-grid > a {
    min-height: 280px;
    padding: 25px;
  }

  .imedia-home-portfolio-grid > a {
    min-height: 345px;
    padding: 25px;
  }

  .imedia-home-portfolio-grid h3 {
    font-size: 34px;
  }

  .imedia-home-portfolio-grid i {
    position: static;
    margin-top: 18px;
  }

  .imedia-home-logo-grid > div {
    min-height: 115px;
    padding: 19px;
  }

  .imedia-home-logo-grid img {
    max-width: 110px;
    max-height: 48px;
  }

  .imedia-home-insight-grid h3 {
    font-size: 24px;
  }
}

/* FONTES DO SITE.
   Este arquivo pede Oswald e Rubik com !important, mas nao existia
   nenhum @font-face em lugar nenhum: medido no ar, so LaStudioIcons
   carregava, e todo titulo caia no sans do sistema.
   As declaracoes moram aqui porque optimize-site.mjs remove qualquer
   link para fontes-imedia.css durante o build. Os arquivos .ttf estao
   dentro do pacote do site, em /wp-content/fontes/. */
@font-face, e sem eles todo titulo caia no sans-serif do sistema. */
@font-face{font-display:swap;font-family:'Oswald';font-style:normal;font-weight:200;src:url(/wp-content/fontes/TK3_WkUHHAIjg75cFRf3bXL8LICs13FvsUZiYA.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Oswald';font-style:normal;font-weight:300;src:url(/wp-content/fontes/TK3_WkUHHAIjg75cFRf3bXL8LICs169vsUZiYA.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Oswald';font-style:normal;font-weight:400;src:url(/wp-content/fontes/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUZiYA.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Oswald';font-style:normal;font-weight:500;src:url(/wp-content/fontes/TK3_WkUHHAIjg75cFRf3bXL8LICs18NvsUZiYA.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Oswald';font-style:normal;font-weight:600;src:url(/wp-content/fontes/TK3_WkUHHAIjg75cFRf3bXL8LICs1y9osUZiYA.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Oswald';font-style:normal;font-weight:700;src:url(/wp-content/fontes/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZosUZiYA.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:italic;font-weight:300;src:url(/wp-content/fontes/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8sDE3U3f4c.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:italic;font-weight:400;src:url(/wp-content/fontes/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tdE3U3f4c.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:italic;font-weight:500;src:url(/wp-content/fontes/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tvE3U3f4c.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:italic;font-weight:600;src:url(/wp-content/fontes/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8uDFHU3f4c.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:italic;font-weight:700;src:url(/wp-content/fontes/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8u6FHU3f4c.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:italic;font-weight:800;src:url(/wp-content/fontes/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8vdFHU3f4c.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:italic;font-weight:900;src:url(/wp-content/fontes/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8v0FHU3f4c.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:normal;font-weight:300;src:url(/wp-content/fontes/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-WYiFV0Uw.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:normal;font-weight:400;src:url(/wp-content/fontes/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-B4iFV0Uw.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:normal;font-weight:500;src:url(/wp-content/fontes/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-NYiFV0Uw.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:normal;font-weight:600;src:url(/wp-content/fontes/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-2Y-FV0Uw.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:normal;font-weight:700;src:url(/wp-content/fontes/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-4I-FV0Uw.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:normal;font-weight:800;src:url(/wp-content/fontes/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-h4-FV0Uw.ttf) format('truetype')}
@font-face{font-display:swap;font-family:'Rubik';font-style:normal;font-weight:900;src:url(/wp-content/fontes/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-ro-FV0Uw.ttf) format('truetype')}

/* BLOG EDITORIAL */
.imedia-blog-archive .elementor-location-archive {
  background: #f3f0ea;
}

.imedia-blog-archive .elementor-location-archive > .elementor-element-bae3929 {
  display: none !important;
}

.imedia-blog-shell {
  width: min(100% - 48px, 1280px);
  margin-inline: auto;
}

.imedia-blog-hero {
  position: relative;
  overflow: hidden;
  padding: 76px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
  color: #fff;
  background:
    radial-gradient(circle at 78% 30%, rgba(237,18,49,.2), transparent 28%),
    linear-gradient(120deg, #030303 0%, #090909 65%, #130306 100%);
}

.imedia-blog-hero::before {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    radial-gradient(circle, rgba(255,255,255,.28) 1px, transparent 1.5px),
    linear-gradient(90deg, transparent 49.8%, rgba(255,255,255,.035) 50%, transparent 50.2%);
  background-size: 52px 52px, 128px 100%;
  content: "";
  pointer-events: none;
}

.imedia-blog-hero::after {
  position: absolute;
  top: 124px;
  right: -110px;
  width: 430px;
  height: 430px;
  border: 1px solid rgba(237,18,49,.3);
  border-radius: 50%;
  box-shadow: 0 0 90px rgba(237,18,49,.08);
  content: "";
  pointer-events: none;
}

.imedia-blog-hero .imedia-blog-shell {
  position: relative;
  z-index: 1;
}

.imedia-blog-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin-bottom: 68px;
  color: #777;
  font-family: "Rubik", sans-serif;
  font-size: 12px;
}

.imedia-blog-breadcrumb a {
  color: #aaa;
}

.imedia-blog-breadcrumb strong,
.imedia-blog-breadcrumb b {
  color: #fff;
  font-weight: 500;
}

.imedia-blog-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  align-items: end;
  gap: 84px;
}

.imedia-blog-kicker {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #ed1231;
  font-family: "Oswald", sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.imedia-blog-kicker::before {
  width: 34px;
  height: 2px;
  background: #ed1231;
  content: "";
}

.imedia-blog-hero h1 {
  max-width: 840px;
  margin: 24px 0 25px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: clamp(54px, 5.5vw, 82px);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: .98;
  text-transform: uppercase;
}

.imedia-blog-hero h1 em {
  color: #ed1231;
  font-style: normal;
}

.imedia-blog-hero-copy > p {
  max-width: 720px;
  margin: 0;
  color: #b8b8b8;
  font-family: "Rubik", sans-serif;
  font-size: 17px;
  line-height: 1.7;
}

.imedia-blog-topics {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 31px;
}

.imedia-blog-topics span {
  padding: 8px 13px;
  border: 1px solid rgba(255,255,255,.18);
  color: #ddd;
  font-family: "Rubik", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-blog-hero-panel {
  position: relative;
  padding: 30px 30px 28px;
  border-top: 2px solid #ed1231;
  border-right: 1px solid rgba(255,255,255,.13);
  border-bottom: 1px solid rgba(255,255,255,.13);
  border-left: 1px solid rgba(255,255,255,.13);
  background: rgba(8,8,8,.78);
  box-shadow: 0 25px 70px rgba(0,0,0,.34);
  backdrop-filter: blur(8px);
}

.imedia-blog-hero-panel > span {
  display: block;
  color: #ed1231;
  font-family: "Rubik", sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-blog-hero-panel > strong {
  display: block;
  margin: 11px 0 24px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 32px;
  line-height: 1.05;
  text-transform: uppercase;
}

.imedia-blog-hero-panel ol {
  display: grid;
  gap: 13px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.imedia-blog-hero-panel li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 13px;
  border-top: 1px solid rgba(255,255,255,.1);
  color: #aaa;
  font-family: "Rubik", sans-serif;
  font-size: 12px;
}

.imedia-blog-hero-panel li b {
  color: #ed1231;
  font-family: "Oswald", sans-serif;
}

.imedia-blog-hero-panel small {
  display: block;
  margin-top: 24px;
  color: #666;
  font-family: "Rubik", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.imedia-blog-archive .elementor-location-archive > .elementor-element-31023c4 {
  width: 100% !important;
  max-width: none !important;
  padding: 76px 0 96px !important;
  background: #f3f0ea !important;
  --padding-top: 76px !important;
  --padding-right: 0 !important;
  --padding-bottom: 96px !important;
  --padding-left: 0 !important;
}

.imedia-blog-archive .elementor-element-31023c4 > .e-con-inner {
  width: min(100% - 48px, 1280px) !important;
  max-width: 1280px !important;
}

.imedia-blog-archive .lakit-posts__list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  margin: 0 !important;
}

.imedia-blog-archive .lakit-posts__item {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  padding: 0 !important;
}

.imedia-blog-archive .lakit-posts__outer-box {
  height: 100%;
  padding: 0 !important;
}

.imedia-blog-archive .lakit-posts__inner-box {
  display: flex;
  overflow: hidden;
  flex-direction: column;
  height: 100%;
  border: 1px solid #d8d3ca;
  background: #fff !important;
  color: #111 !important;
  box-shadow: 0 14px 35px rgba(20,16,12,.06);
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.imedia-blog-archive .lakit-posts__inner-box::after {
  display: none !important;
}

.imedia-blog-archive .lakit-posts__thumbnail {
  overflow: hidden;
  aspect-ratio: 16 / 10;
  margin: 0 !important;
  background: #090909;
}

.imedia-blog-archive .lakit-posts__thumbnail-link {
  display: block !important;
  height: 100%;
}

.imedia-blog-archive .lakit-posts__thumbnail-img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .45s cubic-bezier(.2,.7,.2,1), opacity .3s ease;
}

.imedia-blog-archive .lakit-posts.preset-grid-2 .lakit-posts__thumbnail + .lakit-posts__inner-content,
.imedia-blog-archive .lakit-posts__inner-content {
  position: static !important;
  left: auto !important;
  display: flex;
  flex: 1;
  width: 100% !important;
  margin: 0 !important;
  padding: 25px 25px 27px !important;
  color: #111 !important;
  background: #fff !important;
  transform: none !important;
}

.imedia-blog-archive .lakit-posts__inner-content-inner {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
}

.imedia-blog-card-topic {
  display: block;
  margin-bottom: 13px;
  color: #ed1231;
  font-family: "Rubik", sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.imedia-blog-archive .lakit-posts__title {
  min-height: 95px;
  margin: 0 0 22px !important;
  color: #111 !important;
  font-family: "Oswald", sans-serif !important;
  font-size: 27px !important;
  font-weight: 700 !important;
  letter-spacing: -.015em;
  line-height: 1.17 !important;
  text-transform: uppercase;
}

.imedia-blog-archive .lakit-posts__title a {
  color: #111 !important;
}

.imedia-blog-card-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-top: auto;
  padding-bottom: 4px;
  border-bottom: 1px solid #c9c3ba;
  color: #111 !important;
  font-family: "Rubik", sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-blog-card-link span {
  color: #ed1231;
  font-size: 16px;
  transition: transform .2s ease;
}

.imedia-blog-archive .lakit-post__loadmore_ajax {
  display: none !important;
}

.imedia-blog-archive ul.page-numbers {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 64px auto 0 !important;
  padding: 0 !important;
  list-style: none;
}

.imedia-blog-archive ul.page-numbers li {
  margin: 0 !important;
}

.imedia-blog-archive ul.page-numbers a.page-numbers,
.imedia-blog-archive ul.page-numbers span.page-numbers {
  display: grid !important;
  place-items: center;
  min-width: 42px;
  height: 42px;
  padding: 0 11px !important;
  border: 1px solid #d4cec4 !important;
  border-radius: 0 !important;
  color: #181818 !important;
  background: transparent !important;
  font-family: "Rubik", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.imedia-blog-archive ul.page-numbers a.page-numbers:hover,
.imedia-blog-archive ul.page-numbers span.page-numbers.current {
  border-color: #ed1231 !important;
  color: #fff !important;
  background: #ed1231 !important;
}

.imedia-blog-archive ul.page-numbers a.next,
.imedia-blog-archive ul.page-numbers a.prev {
  padding-inline: 17px !important;
}

@media (hover: hover) {
  .imedia-blog-archive .lakit-posts__inner-box:hover {
    border-color: #bdb6ab;
    box-shadow: 0 22px 50px rgba(20,16,12,.11);
    transform: translateY(-5px);
  }

  .imedia-blog-archive .lakit-posts__inner-box:hover .lakit-posts__thumbnail-img {
    transform: scale(1.035);
  }

  .imedia-blog-card-link:hover span {
    transform: translate(3px, -3px);
  }
}

@media (max-width: 1024px) {
  .imedia-blog-hero-grid {
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 40px;
  }

  .imedia-blog-hero h1 {
    font-size: clamp(49px, 6vw, 66px);
  }

  .imedia-blog-archive .lakit-posts__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .imedia-blog-shell,
  .imedia-blog-archive .elementor-element-31023c4 > .e-con-inner {
    width: min(100% - 32px, 680px) !important;
  }

  .imedia-blog-hero {
    padding: 48px 0;
  }

  .imedia-blog-breadcrumb {
    margin-bottom: 44px;
  }

  .imedia-blog-hero-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .imedia-blog-hero h1 {
    margin: 19px 0 21px;
    font-size: clamp(42px, 13vw, 58px);
    line-height: .98;
  }

  .imedia-blog-hero-copy > p {
    font-size: 15px;
    line-height: 1.65;
  }

  .imedia-blog-topics {
    margin-top: 25px;
  }

  .imedia-blog-hero-panel {
    display: none;
  }

  .imedia-blog-archive .elementor-location-archive > .elementor-element-31023c4 {
    padding: 48px 0 70px !important;
    --padding-top: 48px !important;
    --padding-bottom: 70px !important;
  }

  .imedia-blog-archive .lakit-posts__list {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .imedia-blog-archive .lakit-posts__inner-content {
    padding: 22px 21px 24px !important;
  }

  .imedia-blog-archive .lakit-posts__title {
    min-height: 0;
    font-size: 25px !important;
  }

  .imedia-blog-archive ul.page-numbers {
    gap: 6px;
    margin-top: 46px !important;
  }

  .imedia-blog-archive ul.page-numbers a.page-numbers,
  .imedia-blog-archive ul.page-numbers span.page-numbers {
    min-width: 36px;
    height: 36px;
    padding-inline: 8px !important;
    font-size: 11px !important;
  }
}

/* Rebuilt budget page */
.imedia-budget-page {
  --budget-red: #ed1231;
  --budget-paper: #f2eee7;
  overflow: hidden;
  color: #fff;
  background: #080808;
  font-family: "Rubik", sans-serif;
}

.imedia-budget-page *,
.imedia-budget-page *::before,
.imedia-budget-page *::after {
  box-sizing: border-box;
}

.imedia-budget-page h1,
.imedia-budget-page h2,
.imedia-budget-page h3,
.imedia-budget-page p,
.imedia-budget-page ol {
  margin-top: 0;
}

.imedia-budget-hero {
  position: relative;
  padding: 84px 0 105px;
  background:
    radial-gradient(circle at 82% 24%, rgba(237,18,49,.24), transparent 34%),
    linear-gradient(112deg, #050505 0 59%, #1c080c 100%);
}

.imedia-budget-hero::before {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(to right, #000, transparent 74%);
  content: "";
  pointer-events: none;
}

.imedia-budget-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(520px, 1.14fr);
  gap: clamp(60px, 7vw, 110px);
  align-items: start;
}

.imedia-budget-copy {
  position: sticky;
  top: 115px;
  padding-top: 72px;
}

.imedia-budget-copy h1 {
  max-width: 650px;
  margin: 23px 0 28px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: clamp(62px, 6vw, 94px);
  font-weight: 700;
  letter-spacing: -.045em;
  line-height: .91;
  text-transform: uppercase;
}

.imedia-budget-copy h1 em {
  color: var(--budget-red);
  font-style: normal;
}

.imedia-budget-copy > p {
  max-width: 620px;
  margin-bottom: 30px;
  color: #d2cecd;
  font-size: 17px;
  line-height: 1.72;
}

.imedia-budget-proof {
  display: grid;
  gap: 12px;
  padding: 25px 0;
  border-top: 1px solid rgba(255,255,255,.12);
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.imedia-budget-proof span {
  display: flex;
  gap: 12px;
  align-items: center;
  color: #aaa5a4;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.imedia-budget-proof b {
  color: var(--budget-red);
  font-family: "Oswald", sans-serif;
}

.imedia-budget-note {
  margin-top: 28px;
  padding-left: 20px;
  border-left: 2px solid var(--budget-red);
}

.imedia-budget-note strong {
  display: block;
  margin-bottom: 7px;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
}

.imedia-budget-note p {
  margin-bottom: 0;
  color: #898484;
  font-size: 12px;
  line-height: 1.65;
}

.imedia-budget-form-card {
  position: relative;
  padding: clamp(34px, 4vw, 54px);
  overflow: hidden;
  border: 1px solid rgba(237,18,49,.1);
  border-radius: 28px;
  color: #111;
  background: var(--budget-paper);
  box-shadow: 0 38px 105px rgba(0,0,0,.5);
}

.imedia-budget-form-card::after {
  position: absolute;
  top: 0;
  right: 48px;
  width: 116px;
  height: 3px;
  background: var(--budget-red);
  content: "";
}

.imedia-budget-form-card .imedia-spotlight-card-glow::before {
  background:
    radial-gradient(
      360px circle at var(--imedia-spot-x) var(--imedia-spot-y),
      rgba(237,18,49,.11),
      rgba(237,18,49,.035) 38%,
      transparent 70%
    );
}

.imedia-budget-form-card .imedia-spotlight-card-glow::after {
  background:
    radial-gradient(
      250px circle at var(--imedia-spot-x) var(--imedia-spot-y),
      #ed1231,
      rgba(237,18,49,.5) 32%,
      transparent 74%
    );
}

.imedia-budget-form-card.imedia-spotlight-card[data-spotlight-active="true"] {
  border-color: rgba(237,18,49,.26);
  box-shadow: 0 40px 110px rgba(0,0,0,.52), 0 0 55px rgba(237,18,49,.08);
}

.imedia-budget-form-label,
.imedia-budget-section-head > span {
  color: var(--budget-red);
  font-family: "Oswald", sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-budget-form-card > h2 {
  max-width: 560px;
  margin: 13px 0 14px;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: clamp(42px, 4.3vw, 62px);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: .96;
  text-transform: uppercase;
}

.imedia-budget-form-card > p {
  margin-bottom: 28px;
  color: #625d58;
  font-size: 14px;
  line-height: 1.65;
}

.imedia-budget-form-card .wpforms-container {
  margin: 0 !important;
}

.imedia-budget-form-card .wpforms-field-container {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 14px;
}

.imedia-budget-form-card .wpforms-field {
  min-width: 0;
  padding: 0 !important;
}

.imedia-budget-form-card #wpforms-582-field_9-container,
.imedia-budget-form-card #wpforms-582-field_4-container,
.imedia-budget-form-card #wpforms-582-field_8-container {
  grid-column: 1 / -1;
}

.imedia-budget-form-card .wpforms-field-label {
  display: block !important;
  margin: 0 0 7px !important;
  color: #151414 !important;
  font-family: "Rubik", sans-serif !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .06em;
  line-height: 1.3 !important;
  text-transform: uppercase;
}

.imedia-budget-form-card .wpforms-required-label {
  color: var(--budget-red) !important;
}

.imedia-budget-form-card input[type="text"],
.imedia-budget-form-card input[type="email"],
.imedia-budget-form-card textarea {
  width: 100% !important;
  height: 50px !important;
  padding: 0 16px !important;
  border: 1px solid #cec7be !important;
  border-radius: 10px !important;
  outline: none !important;
  color: #171515 !important;
  background: rgba(255,255,255,.9) !important;
  box-shadow: none !important;
  font-family: "Rubik", sans-serif !important;
  font-size: 13px !important;
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.imedia-budget-form-card textarea {
  min-height: 130px !important;
  padding-block: 14px !important;
  resize: vertical;
}

.imedia-budget-form-card input::placeholder,
.imedia-budget-form-card textarea::placeholder {
  color: #96908a !important;
  opacity: 1 !important;
}

.imedia-budget-form-card input[type="text"]:focus,
.imedia-budget-form-card input[type="email"]:focus,
.imedia-budget-form-card textarea:focus {
  border-color: var(--budget-red) !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(237,18,49,.1) !important;
}

.imedia-budget-form-card .wpforms-field-radio ul,
.imedia-budget-form-card .wpforms-field-checkbox ul {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.imedia-budget-form-card .wpforms-field-checkbox ul {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.imedia-budget-form-card .wpforms-field-radio li,
.imedia-budget-form-card .wpforms-field-checkbox li {
  display: flex !important;
  min-width: 0;
  min-height: 44px;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #d2cbc3;
  border-radius: 9px;
  align-items: center;
  background: rgba(255,255,255,.68);
  transition: border-color 180ms ease, background 180ms ease;
}

.imedia-budget-form-card .wpforms-field-radio li:has(input:checked),
.imedia-budget-form-card .wpforms-field-checkbox li:has(input:checked) {
  border-color: var(--budget-red);
  background: rgba(237,18,49,.06);
}

.imedia-budget-form-card input[type="radio"],
.imedia-budget-form-card input[type="checkbox"] {
  width: 15px !important;
  height: 15px !important;
  margin: 0 8px 0 0 !important;
  flex: 0 0 auto;
  accent-color: var(--budget-red);
}

.imedia-budget-form-card .wpforms-field-radio li label,
.imedia-budget-form-card .wpforms-field-checkbox li label {
  min-width: 0;
  color: #494441 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.imedia-budget-form-card .wpforms-submit-container {
  margin-top: 22px !important;
  padding: 0 !important;
}

.imedia-budget-form-card button[type="submit"] {
  display: inline-flex !important;
  min-height: 50px !important;
  padding: 0 25px !important;
  border: 1px solid var(--budget-red) !important;
  border-radius: 999px !important;
  align-items: center;
  justify-content: center;
  color: #fff !important;
  background: var(--budget-red) !important;
  box-shadow: none !important;
  font-family: "Rubik", sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  transition: color 180ms ease, background 180ms ease, transform 180ms ease;
}

.imedia-budget-form-card button[type="submit"]:hover {
  color: var(--budget-red) !important;
  background: transparent !important;
  transform: translateY(-2px);
}

.imedia-budget-privacy {
  display: block;
  margin-top: 18px;
  color: #77716b;
  font-size: 9px;
  line-height: 1.55;
}

.imedia-budget-privacy a {
  color: #3c3835;
  font-weight: 700;
}

.imedia-budget-process {
  padding: 112px 0 120px;
  color: #111;
  background:
    radial-gradient(circle at 8% 86%, rgba(237,18,49,.065), transparent 23%),
    var(--budget-paper);
}

.imedia-budget-section-head {
  max-width: 900px;
}

.imedia-budget-section-head h2,
.imedia-budget-territories h2,
.imedia-budget-preparation h2,
.imedia-budget-final h2 {
  margin: 20px 0 22px;
  font-family: "Oswald", sans-serif;
  font-size: clamp(47px, 5vw, 76px);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: .98;
  text-transform: uppercase;
}

.imedia-budget-section-head > p {
  max-width: 700px;
  margin-bottom: 0;
  color: #5d5752;
  font-size: 16px;
  line-height: 1.75;
}

.imedia-budget-process-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 65px 0 0;
  padding: 0;
  border-top: 1px solid #cfc8bf;
  border-left: 1px solid #cfc8bf;
  list-style: none;
}

.imedia-budget-process-grid li {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 18px;
  min-height: 270px;
  padding: 29px 25px;
  border-right: 1px solid #cfc8bf;
  border-bottom: 1px solid #cfc8bf;
}

.imedia-budget-process-grid li > span {
  color: var(--budget-red);
  font-family: "Oswald", sans-serif;
  font-size: 17px;
  font-weight: 700;
}

.imedia-budget-process-grid small {
  color: #827b75;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-budget-process-grid h3 {
  margin: 50px 0 14px;
  font-family: "Oswald", sans-serif;
  font-size: 27px;
  line-height: 1.08;
  text-transform: uppercase;
}

.imedia-budget-process-grid p {
  margin-bottom: 0;
  color: #635d58;
  font-size: 13px;
  line-height: 1.65;
}

.imedia-budget-territories {
  position: relative;
  padding: 112px 0 120px;
  background:
    radial-gradient(circle at 86% 18%, rgba(237,18,49,.2), transparent 30%),
    #080808;
}

.imedia-budget-territories::before {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(120deg, transparent 0 74px, rgba(255,255,255,.022) 75px);
  content: "";
  pointer-events: none;
}

.imedia-budget-territories-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: clamp(60px, 8vw, 130px);
}

.imedia-budget-territories-copy {
  position: sticky;
  top: 120px;
  align-self: start;
}

.imedia-budget-territories-copy > p {
  max-width: 530px;
  margin-bottom: 0;
  color: #aaa5a4;
  font-size: 16px;
  line-height: 1.75;
}

.imedia-budget-territory-list {
  border-top: 1px solid rgba(255,255,255,.14);
}

.imedia-budget-territory-list article {
  display: grid;
  grid-template-columns: 52px minmax(170px, .7fr) 1fr;
  gap: 20px;
  align-items: center;
  min-height: 138px;
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.imedia-budget-territory-list article > span {
  color: var(--budget-red);
  font-family: "Oswald", sans-serif;
  font-size: 14px;
  font-weight: 700;
}

.imedia-budget-territory-list h3 {
  margin-bottom: 0;
  font-family: "Oswald", sans-serif;
  font-size: 26px;
  line-height: 1.08;
  text-transform: uppercase;
}

.imedia-budget-territory-list p {
  margin-bottom: 0;
  color: #989293;
  font-size: 13px;
  line-height: 1.6;
}

.imedia-budget-preparation {
  padding: 110px 0 116px;
  color: #111;
  background: #fff;
}

.imedia-budget-preparation-grid {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: clamp(60px, 8vw, 125px);
}

.imedia-budget-preparation h2 {
  margin-bottom: 0;
}

.imedia-budget-preparation-cards {
  display: grid;
  gap: 12px;
}

.imedia-budget-preparation-cards article {
  position: relative;
  padding: 25px 28px 25px 108px;
  border: 1px solid #ddd7cf;
  border-radius: 14px;
  background: #faf9f7;
}

.imedia-budget-preparation-cards b {
  position: absolute;
  top: 28px;
  left: 27px;
  color: var(--budget-red);
  font-family: "Oswald", sans-serif;
  font-size: 12px;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.imedia-budget-preparation-cards strong {
  display: block;
  margin-bottom: 6px;
  font-family: "Oswald", sans-serif;
  font-size: 22px;
  text-transform: uppercase;
}

.imedia-budget-preparation-cards p {
  margin-bottom: 0;
  color: #68615c;
  font-size: 13px;
  line-height: 1.55;
}

.imedia-budget-final {
  padding: 34px 0 108px;
  color: #111;
  background: #fff;
}

.imedia-budget-final-card {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
  gap: 80px;
  align-items: end;
  padding: clamp(42px, 6vw, 78px);
  overflow: hidden;
  border-radius: 28px;
  color: #fff;
  background:
    radial-gradient(circle at 94% 110%, rgba(237,18,49,.5), transparent 38%),
    linear-gradient(118deg, #070707 0 70%, #24090f 100%);
}

.imedia-budget-final h2 {
  margin-bottom: 0;
}

.imedia-budget-final-card > div:last-child p {
  margin-bottom: 24px;
  color: #bbb6b5;
  font-size: 15px;
  line-height: 1.7;
}

@media (max-width: 1050px) {
  .imedia-budget-hero-grid {
    grid-template-columns: minmax(0, .74fr) minmax(500px, 1.26fr);
    gap: 42px;
  }

  .imedia-budget-copy h1 {
    font-size: clamp(54px, 6.5vw, 72px);
  }

  .imedia-budget-territories-grid,
  .imedia-budget-preparation-grid {
    gap: 55px;
  }
}

@media (max-width: 860px) {
  .imedia-budget-hero-grid,
  .imedia-budget-territories-grid,
  .imedia-budget-preparation-grid,
  .imedia-budget-final-card {
    grid-template-columns: 1fr;
  }

  .imedia-budget-copy,
  .imedia-budget-territories-copy {
    position: static;
  }

  .imedia-budget-copy {
    max-width: 720px;
    padding-top: 10px;
  }

  .imedia-budget-process-grid {
    grid-template-columns: 1fr;
  }

  .imedia-budget-process-grid li {
    min-height: 215px;
  }

  .imedia-budget-territories-copy {
    max-width: 720px;
  }

  .imedia-budget-final-card {
    gap: 35px;
  }
}

@media (max-width: 600px) {
  .imedia-budget-hero {
    padding: 62px 0 76px;
  }

  .imedia-budget-hero-grid {
    gap: 48px;
  }

  .imedia-budget-copy h1 {
    font-size: clamp(48px, 14vw, 64px);
  }

  .imedia-budget-copy > p,
  .imedia-budget-section-head > p,
  .imedia-budget-territories-copy > p {
    font-size: 15px;
  }

  .imedia-budget-form-card {
    padding: 30px 20px;
    border-radius: 20px;
  }

  .imedia-budget-form-card > h2 {
    font-size: 40px;
  }

  .imedia-budget-form-card .wpforms-field-container,
  .imedia-budget-form-card .wpforms-field-radio ul,
  .imedia-budget-form-card .wpforms-field-checkbox ul {
    grid-template-columns: 1fr;
  }

  .imedia-budget-form-card #wpforms-582-field_9-container,
  .imedia-budget-form-card #wpforms-582-field_4-container,
  .imedia-budget-form-card #wpforms-582-field_8-container {
    grid-column: auto;
  }

  .imedia-budget-form-card button[type="submit"] {
    width: 100% !important;
  }

  .imedia-budget-process,
  .imedia-budget-territories,
  .imedia-budget-preparation {
    padding-block: 82px;
  }

  .imedia-budget-section-head h2,
  .imedia-budget-territories h2,
  .imedia-budget-preparation h2,
  .imedia-budget-final h2 {
    font-size: clamp(40px, 12vw, 52px);
  }

  .imedia-budget-process-grid {
    margin-top: 46px;
  }

  .imedia-budget-process-grid li {
    grid-template-columns: 40px 1fr;
    gap: 10px;
    padding: 24px 18px;
  }

  .imedia-budget-process-grid h3 {
    margin-top: 34px;
  }

  .imedia-budget-territory-list article {
    grid-template-columns: 36px 1fr;
    gap: 12px;
    padding: 23px 0;
  }

  .imedia-budget-territory-list article p {
    grid-column: 2;
  }

  .imedia-budget-preparation-cards article {
    padding: 72px 22px 24px;
  }

  .imedia-budget-preparation-cards b {
    top: 24px;
    left: 22px;
  }

  .imedia-budget-final {
    padding: 28px 0 76px;
  }

  .imedia-budget-final-card {
    width: calc(100% - 24px);
    padding: 32px 25px;
    border-radius: 22px;
  }
}

/* Privacy policy */
.imedia-privacy-page {
  --privacy-red: #ed1231;
  --privacy-paper: #f4f1ec;
  color: #f7f5f2;
  background: #080808;
}

.imedia-privacy-hero {
  position: relative;
  min-height: 520px;
  padding: 100px 0 108px;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 30%, rgba(237,18,49,.24), transparent 34%),
    linear-gradient(115deg, #050505 0 62%, #21080d 100%);
}

.imedia-privacy-hero::before {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 58px 58px;
  content: "";
  mask-image: linear-gradient(to right, #000, transparent 76%);
  pointer-events: none;
}

.imedia-privacy-hero::after {
  position: absolute;
  right: -130px;
  bottom: -240px;
  width: 520px;
  height: 520px;
  border: 1px solid rgba(237,18,49,.34);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.imedia-privacy-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.22fr) minmax(340px, .78fr);
  gap: clamp(64px, 9vw, 150px);
  align-items: end;
}

.imedia-privacy-hero h1 {
  max-width: 850px;
  margin: 24px 0 0;
  font-family: "Oswald", sans-serif;
  font-size: clamp(65px, 7vw, 108px);
  font-weight: 700;
  letter-spacing: -.045em;
  line-height: .9;
  text-transform: uppercase;
}

.imedia-privacy-hero h1 em {
  display: block;
  color: var(--privacy-red);
  font-style: normal;
}

.imedia-privacy-hero-copy {
  max-width: 470px;
  padding: 28px 0 7px 30px;
  border-left: 1px solid rgba(255,255,255,.2);
}

.imedia-privacy-hero-copy p {
  margin-bottom: 27px;
  color: #c5c0be;
  font-size: 16px;
  line-height: 1.75;
}

.imedia-privacy-hero-copy > span {
  color: #777273;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-privacy-overview {
  color: #111;
  background: #fff;
}

.imedia-privacy-overview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-left: 1px solid #ded8d1;
}

.imedia-privacy-overview article {
  min-height: 230px;
  padding: 36px clamp(28px, 3vw, 48px);
  border-right: 1px solid #ded8d1;
}

.imedia-privacy-overview article b {
  display: block;
  margin-bottom: 45px;
  color: var(--privacy-red);
  font-family: "Oswald", sans-serif;
  font-size: 14px;
}

.imedia-privacy-overview article strong {
  display: block;
  margin-bottom: 12px;
  font-family: "Oswald", sans-serif;
  font-size: 23px;
  line-height: 1.05;
  text-transform: uppercase;
}

.imedia-privacy-overview article p {
  max-width: 330px;
  margin-bottom: 0;
  color: #68615c;
  font-size: 13px;
  line-height: 1.62;
}

.imedia-privacy-document {
  padding: 112px 0 124px;
  color: #171513;
  background:
    radial-gradient(circle at 5% 20%, rgba(237,18,49,.055), transparent 20%),
    var(--privacy-paper);
}

.imedia-privacy-layout {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: clamp(60px, 8vw, 128px);
  align-items: start;
}

.imedia-privacy-index {
  position: sticky;
  top: 110px;
}

.imedia-privacy-index > span,
.imedia-privacy-article > header > span {
  display: block;
  padding-bottom: 18px;
  border-bottom: 1px solid #cfc8c0;
  color: #77706a;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-privacy-index ol {
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}

.imedia-privacy-index a {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 8px;
  align-items: center;
  padding: 10px 3px;
  color: #49433f;
  font-size: 11px;
  line-height: 1.35;
  transition: color 180ms ease, transform 180ms ease;
}

.imedia-privacy-index a:hover,
.imedia-privacy-index a:focus-visible {
  color: var(--privacy-red);
  transform: translateX(3px);
}

.imedia-privacy-index a b {
  color: var(--privacy-red);
  font-family: "Oswald", sans-serif;
  font-size: 10px;
}

.imedia-privacy-article {
  min-width: 0;
}

.imedia-privacy-article > header {
  padding: 0 0 76px;
}

.imedia-privacy-article > header p {
  max-width: 890px;
  margin: 34px 0 0;
  font-family: "Oswald", sans-serif;
  font-size: clamp(29px, 3vw, 43px);
  font-weight: 500;
  letter-spacing: -.018em;
  line-height: 1.2;
}

.imedia-privacy-section {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 28px;
  padding: 72px 0 80px;
  border-top: 1px solid #cfc8c0;
  scroll-margin-top: 110px;
}

.imedia-privacy-section > span {
  padding-top: 7px;
  color: var(--privacy-red);
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  font-weight: 700;
}

.imedia-privacy-section h2 {
  max-width: 760px;
  margin: 0 0 28px;
  color: #111;
  font-family: "Oswald", sans-serif;
  font-size: clamp(38px, 4vw, 58px);
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: 1.02;
  text-transform: uppercase;
}

.imedia-privacy-section p,
.imedia-privacy-section li {
  color: #57514c;
  font-size: 15px;
  line-height: 1.78;
}

.imedia-privacy-section p {
  max-width: 820px;
}

.imedia-privacy-section ul {
  display: grid;
  gap: 12px;
  max-width: 830px;
  margin: 27px 0 28px;
  padding: 0;
  list-style: none;
}

.imedia-privacy-section li {
  position: relative;
  padding-left: 27px;
}

.imedia-privacy-section li::before {
  position: absolute;
  top: .75em;
  left: 0;
  width: 7px;
  height: 7px;
  background: var(--privacy-red);
  content: "";
}

.imedia-privacy-section li strong {
  color: #1b1816;
}

.imedia-privacy-data-box {
  display: grid;
  grid-template-columns: 1.1fr 1fr 1.2fr;
  gap: 25px;
  align-items: center;
  max-width: 880px;
  margin-top: 33px;
  padding: 25px 28px;
  border: 1px solid #d5cec6;
  border-left: 3px solid var(--privacy-red);
  background: rgba(255,255,255,.56);
}

.imedia-privacy-data-box strong {
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  text-transform: uppercase;
}

.imedia-privacy-data-box p {
  margin: 0;
  color: #69625c;
  font-size: 12px;
  line-height: 1.55;
}

.imedia-privacy-data-box a {
  color: #151313;
  font-size: 11px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.imedia-privacy-purpose-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 900px;
  margin-top: 37px;
  border-top: 1px solid #d7d0c8;
  border-left: 1px solid #d7d0c8;
}

.imedia-privacy-purpose-grid article {
  min-height: 190px;
  padding: 27px;
  border-right: 1px solid #d7d0c8;
  border-bottom: 1px solid #d7d0c8;
  background: rgba(255,255,255,.38);
}

.imedia-privacy-purpose-grid strong {
  display: block;
  margin-bottom: 18px;
  font-family: "Oswald", sans-serif;
  font-size: 19px;
  text-transform: uppercase;
}

.imedia-privacy-purpose-grid p {
  margin: 0;
  font-size: 13px;
  line-height: 1.65;
}

.imedia-privacy-cookie-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  max-width: 900px;
  margin: 34px 0;
}

.imedia-privacy-cookie-list article {
  min-height: 180px;
  padding: 24px;
  border: 1px solid #d4cdc4;
  border-radius: 13px;
  background: rgba(255,255,255,.45);
}

.imedia-privacy-cookie-list span {
  display: block;
  margin-bottom: 28px;
  color: var(--privacy-red);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.imedia-privacy-cookie-list p {
  margin: 0;
  font-size: 12px;
  line-height: 1.62;
}

.imedia-privacy-rights {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 42px;
}

.imedia-privacy-contact {
  position: relative;
  grid-template-columns: 72px minmax(0, 1fr);
  margin-top: 38px;
  padding: 64px 58px 68px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 24px;
  color: #fff;
  background:
    radial-gradient(circle at 95% 110%, rgba(237,18,49,.38), transparent 42%),
    #0b0a0a;
}

.imedia-privacy-contact > span:not(.imedia-spotlight-card-glow),
.imedia-privacy-contact > div {
  position: relative;
  z-index: 2;
}

.imedia-privacy-contact small {
  display: block;
  margin-bottom: 17px;
  color: var(--privacy-red);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.imedia-privacy-contact h2 {
  color: #fff;
}

.imedia-privacy-contact p {
  max-width: 590px;
  margin-bottom: 28px;
  color: #aba6a4;
}

@media (max-width: 980px) {
  .imedia-privacy-hero-grid {
    grid-template-columns: 1fr;
    gap: 52px;
  }

  .imedia-privacy-hero-copy {
    max-width: 650px;
  }

  .imedia-privacy-layout {
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 55px;
  }

  .imedia-privacy-data-box,
  .imedia-privacy-cookie-list {
    grid-template-columns: 1fr;
  }

  .imedia-privacy-cookie-list article {
    min-height: 0;
  }
}

@media (max-width: 860px) {
  .elementor-location-footer .elementor-widget-button,
  .elementor-location-footer .elementor-widget-button .elementor-button {
    max-width: 100%;
  }

  .elementor-location-footer .elementor-widget-button .elementor-button {
    width: 100%;
    padding-inline: 20px !important;
  }
}

@media (max-width: 760px) {
  .imedia-privacy-overview-grid,
  .imedia-privacy-purpose-grid,
  .imedia-privacy-rights {
    grid-template-columns: 1fr;
  }

  .imedia-privacy-overview-grid {
    border-top: 1px solid #ded8d1;
  }

  .imedia-privacy-overview article {
    min-height: 0;
    border-bottom: 1px solid #ded8d1;
  }

  .imedia-privacy-overview article b {
    margin-bottom: 25px;
  }

  .imedia-privacy-layout {
    grid-template-columns: 1fr;
    gap: 65px;
  }

  .imedia-privacy-index {
    position: static;
  }

  .imedia-privacy-index ol {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 22px;
  }

  .imedia-privacy-article > header {
    padding-bottom: 58px;
  }

  .imedia-privacy-section {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 15px;
    padding: 55px 0 62px;
  }

  .imedia-privacy-contact {
    grid-template-columns: 38px minmax(0, 1fr);
    padding: 45px 28px 48px;
  }

  .elementor-location-footer .elementor-widget-button,
  .elementor-location-footer .elementor-widget-button .elementor-button {
    max-width: 100%;
  }

  .elementor-location-footer .elementor-widget-button .elementor-button {
    width: 100%;
    padding-inline: 20px !important;
  }
}

@media (max-width: 520px) {
  .imedia-privacy-hero {
    min-height: 0;
    padding: 70px 0 76px;
  }

  .imedia-privacy-hero h1 {
    font-size: clamp(52px, 15vw, 68px);
  }

  .imedia-privacy-hero-copy {
    padding: 23px 0 0 20px;
  }

  .imedia-privacy-document {
    padding: 76px 0 84px;
  }

  .imedia-privacy-index ol {
    grid-template-columns: 1fr;
  }

  .imedia-privacy-article > header p {
    font-size: 27px;
  }

  .imedia-privacy-section {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .imedia-privacy-section > span {
    padding-top: 0;
  }

  .imedia-privacy-section h2 {
    font-size: 38px;
  }

  .imedia-privacy-section p,
  .imedia-privacy-section li {
    font-size: 14px;
  }

  .imedia-privacy-data-box {
    padding: 22px;
  }

  .imedia-privacy-purpose-grid article {
    min-height: 0;
  }

  .imedia-privacy-contact {
    display: block;
    width: calc(100% + 8px);
    margin-left: -4px;
    padding: 38px 24px 42px;
  }

  .imedia-privacy-contact > span:not(.imedia-spotlight-card-glow) {
    display: block;
    margin-bottom: 26px;
  }

  .imedia-privacy-contact .imedia-service-button {
    width: 100%;
    text-align: center;
  }
}

/* Careers */
.imedia-careers-page {
  --careers-red: #ed1231;
  --careers-paper: #f4f1ec;
  color: #fff;
  background: #070707;
}

.imedia-careers-hero {
  position: relative;
  min-height: 760px;
  padding: 92px 0 104px;
  overflow: hidden;
  background:
    radial-gradient(circle at 84% 20%, rgba(237,18,49,.24), transparent 32%),
    linear-gradient(110deg, #050505 0 66%, #22080e 100%);
}

.imedia-careers-hero::before {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(117deg, transparent 0 82px, rgba(255,255,255,.025) 83px);
  content: "";
  pointer-events: none;
}

.imedia-careers-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(440px, .92fr);
  gap: clamp(55px, 8vw, 125px);
  align-items: center;
}

.imedia-careers-copy h1 {
  max-width: 760px;
  margin: 24px 0 27px;
  font-family: "Oswald", sans-serif;
  font-size: clamp(64px, 6.8vw, 104px);
  font-weight: 700;
  letter-spacing: -.045em;
  line-height: .91;
  text-transform: uppercase;
}

.imedia-careers-copy h1 em {
  display: block;
  color: var(--careers-red);
  font-style: normal;
}

.imedia-careers-copy > p {
  max-width: 650px;
  margin-bottom: 34px;
  color: #beb9b8;
  font-size: 16px;
  line-height: 1.75;
}

.imedia-careers-board {
  position: relative;
  min-height: 490px;
  padding: 31px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 25px;
  background: rgba(13,12,12,.92);
  transform: rotate(1deg);
}

.imedia-careers-board::after {
  position: absolute;
  right: -90px;
  bottom: -150px;
  width: 330px;
  height: 330px;
  border: 1px solid rgba(237,18,49,.36);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.imedia-careers-board > *:not(.imedia-spotlight-card-glow) {
  position: relative;
  z-index: 2;
}

.imedia-careers-board header {
  display: grid;
  gap: 15px;
  padding-bottom: 27px;
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.imedia-careers-board header span {
  color: var(--careers-red);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-careers-board header strong {
  max-width: 390px;
  font-family: "Oswald", sans-serif;
  font-size: 28px;
  line-height: 1.12;
  text-transform: uppercase;
}

.imedia-careers-board-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 22px;
}

.imedia-careers-board-grid article {
  min-height: 125px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 13px;
  background: rgba(255,255,255,.035);
}

.imedia-careers-board-grid b {
  display: block;
  margin-bottom: 26px;
  color: var(--careers-red);
  font-family: "Oswald", sans-serif;
  font-size: 11px;
}

.imedia-careers-board-grid span {
  display: block;
  font-family: "Oswald", sans-serif;
  font-size: 19px;
  line-height: 1.05;
  text-transform: uppercase;
}

.imedia-careers-board-grid small {
  color: #807a7a;
  font-size: 9px;
}

.imedia-careers-board footer {
  display: flex;
  gap: 11px;
  align-items: center;
  margin-top: 25px;
  color: #817b7b;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.imedia-careers-board footer i {
  flex: 1;
  height: 1px;
  background: rgba(237,18,49,.46);
}

.imedia-careers-principles,
.imedia-careers-process {
  padding: 112px 0 120px;
  color: #111;
  background:
    radial-gradient(circle at 10% 85%, rgba(237,18,49,.06), transparent 24%),
    var(--careers-paper);
}

.imedia-careers-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: clamp(50px, 8vw, 120px);
  align-items: end;
}

.imedia-careers-section-head h2,
.imedia-careers-areas h2,
.imedia-careers-apply h2 {
  max-width: 860px;
  margin: 22px 0 0;
  font-family: "Oswald", sans-serif;
  font-size: clamp(48px, 5.3vw, 80px);
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: .97;
  text-transform: uppercase;
}

.imedia-careers-section-head > p {
  margin-bottom: 2px;
  color: #65605b;
  font-size: 15px;
  line-height: 1.72;
}

.imedia-careers-principles-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 65px;
  border-top: 1px solid #cec7bf;
  border-left: 1px solid #cec7bf;
}

.imedia-careers-principles-grid article {
  min-height: 275px;
  padding: 28px 25px;
  border-right: 1px solid #cec7bf;
  border-bottom: 1px solid #cec7bf;
}

.imedia-careers-principles-grid span {
  display: block;
  margin-bottom: 70px;
  color: var(--careers-red);
  font-family: "Oswald", sans-serif;
  font-size: 14px;
}

.imedia-careers-principles-grid h3 {
  margin: 0 0 15px;
  font-family: "Oswald", sans-serif;
  font-size: 25px;
  line-height: 1.08;
  text-transform: uppercase;
}

.imedia-careers-principles-grid p {
  margin-bottom: 0;
  color: #655f5a;
  font-size: 12px;
  line-height: 1.65;
}

.imedia-careers-areas {
  position: relative;
  padding: 112px 0 120px;
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 16%, rgba(237,18,49,.2), transparent 31%),
    #080808;
}

.imedia-careers-areas::before {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(255,255,255,.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.02) 1px, transparent 1px);
  background-size: 60px 60px;
  content: "";
  pointer-events: none;
}

.imedia-careers-areas-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  gap: clamp(60px, 8vw, 130px);
}

.imedia-careers-areas-copy {
  position: sticky;
  top: 115px;
  align-self: start;
}

.imedia-careers-areas-copy > p {
  max-width: 530px;
  margin-top: 25px;
  color: #a9a4a3;
  font-size: 15px;
  line-height: 1.75;
}

.imedia-careers-area-list {
  border-top: 1px solid rgba(255,255,255,.15);
}

.imedia-careers-area-list article {
  display: grid;
  grid-template-columns: 55px 1fr;
  gap: 18px;
  min-height: 145px;
  padding: 29px 0;
  border-bottom: 1px solid rgba(255,255,255,.15);
}

.imedia-careers-area-list article > span {
  padding-top: 5px;
  color: var(--careers-red);
  font-family: "Oswald", sans-serif;
  font-size: 13px;
}

.imedia-careers-area-list h3 {
  margin: 0 0 9px;
  font-family: "Oswald", sans-serif;
  font-size: 28px;
  line-height: 1.08;
  text-transform: uppercase;
}

.imedia-careers-area-list p {
  margin-bottom: 0;
  color: #8e8989;
  font-size: 13px;
  line-height: 1.6;
}

.imedia-careers-process {
  background: #fff;
}

.imedia-careers-process .imedia-careers-section-head {
  grid-template-columns: 1fr;
}

.imedia-careers-process-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 64px 0 0;
  padding: 0;
  border-top: 1px solid #d4cec7;
  border-left: 1px solid #d4cec7;
  list-style: none;
}

.imedia-careers-process-grid li {
  min-height: 265px;
  padding: 29px 25px;
  border-right: 1px solid #d4cec7;
  border-bottom: 1px solid #d4cec7;
}

.imedia-careers-process-grid b {
  display: block;
  margin-bottom: 66px;
  color: var(--careers-red);
  font-family: "Oswald", sans-serif;
  font-size: 14px;
}

.imedia-careers-process-grid span {
  display: block;
  margin-bottom: 13px;
  font-family: "Oswald", sans-serif;
  font-size: 22px;
  line-height: 1.08;
  text-transform: uppercase;
}

.imedia-careers-process-grid p {
  margin-bottom: 0;
  color: #68615c;
  font-size: 12px;
  line-height: 1.62;
}

.imedia-careers-apply {
  position: relative;
  padding: 112px 0 124px;
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 17%, rgba(237,18,49,.24), transparent 32%),
    linear-gradient(116deg, #060606 0 68%, #21080d 100%);
}

.imedia-careers-apply-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .76fr) minmax(520px, 1.24fr);
  gap: clamp(60px, 8vw, 125px);
  align-items: start;
}

.imedia-careers-apply-copy {
  position: sticky;
  top: 112px;
}

.imedia-careers-apply-copy > p {
  max-width: 520px;
  margin-top: 27px;
  color: #aca7a5;
  font-size: 15px;
  line-height: 1.75;
}

.imedia-careers-apply-note {
  max-width: 520px;
  margin-top: 42px;
  padding: 25px 28px;
  border: 1px solid rgba(255,255,255,.14);
  border-left: 2px solid var(--careers-red);
  background: rgba(255,255,255,.025);
}

.imedia-careers-apply-note strong {
  display: block;
  margin-bottom: 14px;
  font-family: "Oswald", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
}

.imedia-careers-apply-note ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.imedia-careers-apply-note li {
  position: relative;
  padding-left: 17px;
  color: #918c8c;
  font-size: 11px;
}

.imedia-careers-apply-note li::before {
  position: absolute;
  top: .55em;
  left: 0;
  width: 5px;
  height: 5px;
  background: var(--careers-red);
  content: "";
}

.imedia-careers-form-card {
  position: relative;
  padding: clamp(38px, 5vw, 65px);
  overflow: hidden;
  border-radius: 25px;
  color: #171513;
  background: var(--careers-paper);
}

.imedia-careers-form-card::after {
  position: absolute;
  top: 0;
  right: 48px;
  width: 110px;
  height: 3px;
  background: var(--careers-red);
  content: "";
}

.imedia-careers-form-card > *:not(.imedia-spotlight-card-glow) {
  position: relative;
  z-index: 2;
}

.imedia-careers-form-label {
  display: block;
  margin-bottom: 22px;
  color: var(--careers-red);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.imedia-careers-form-card > h2 {
  margin: 0 0 17px;
  color: #111;
  font-size: clamp(43px, 4.7vw, 65px);
}

.imedia-careers-form-card > p {
  max-width: 610px;
  margin-bottom: 34px;
  color: #68615c;
  font-size: 13px;
  line-height: 1.65;
}

.imedia-careers-form-card #wpforms-600-field_1-container {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
}

.imedia-careers-form-card .wpforms-field-container {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 16px;
}

.imedia-careers-form-card .wpforms-field {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.imedia-careers-form-card #wpforms-600-field_9-container,
.imedia-careers-form-card #wpforms-600-field_11-container,
.imedia-careers-form-card #wpforms-600-field_10-container {
  grid-column: 1 / -1;
}

.imedia-careers-form-card label {
  display: block !important;
  margin-bottom: 8px !important;
  color: #161413 !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.imedia-careers-form-card input:not([type="hidden"]),
.imedia-careers-form-card textarea {
  width: 100% !important;
  min-width: 0 !important;
  border: 1px solid #d6cfc7 !important;
  border-radius: 10px !important;
  color: #171513 !important;
  background: #fff !important;
  box-shadow: none !important;
  font-size: 12px !important;
}

.imedia-careers-form-card input:not([type="hidden"]) {
  height: 52px !important;
  padding: 0 15px !important;
}

.imedia-careers-form-card textarea {
  min-height: 115px !important;
  padding: 14px 15px !important;
  resize: vertical;
}

.imedia-careers-form-card input:focus,
.imedia-careers-form-card textarea:focus {
  border-color: var(--careers-red) !important;
  box-shadow: 0 0 0 3px rgba(237,18,49,.1) !important;
}

.imedia-careers-form-card .wpforms-submit-container {
  margin-top: 25px !important;
  padding: 0 !important;
}

.imedia-careers-form-card button[type="submit"] {
  min-width: 210px;
  min-height: 50px !important;
  border-color: var(--careers-red) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: var(--careers-red) !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  text-transform: uppercase;
}

.imedia-careers-form-card button[type="submit"]:hover {
  color: var(--careers-red) !important;
  background: transparent !important;
}

.imedia-careers-privacy {
  display: block;
  margin-top: 18px;
  color: #7b746e;
  font-size: 9px;
  line-height: 1.55;
}

.imedia-careers-privacy a {
  color: #322e2b;
  font-weight: 800;
}

/* Formularios conectados ao administrativo. */
.imedia-form-honeypot {
  position: absolute !important;
  left: -99999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.imedia-form-feedback {
  display: none;
  margin-top: 16px;
  padding: 13px 15px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}

.imedia-form-feedback--success,
.imedia-form-feedback--error {
  display: block;
}

.imedia-form-feedback--success {
  border: 1px solid rgba(20, 128, 74, .25);
  color: #12683f;
  background: #eaf8f0;
}

.imedia-form-feedback--error {
  border: 1px solid rgba(237, 18, 49, .25);
  color: #a70b24;
  background: #fff0f2;
}

.imedia-contact-form-card input[type="tel"] {
  width: 100% !important;
  max-width: none !important;
  min-height: 52px !important;
  padding: 14px 16px !important;
  border: 1px solid #d5d0c9 !important;
  border-radius: 10px !important;
  color: #151515 !important;
  background: #fff !important;
  box-shadow: none !important;
  font-size: 13px !important;
}

/* Cases criados no painel, acrescentados sem remover o acervo historico. */
.imedia-managed-cases {
  --managed-red: #ed1231;
  padding: clamp(78px, 8vw, 132px) 24px;
  color: #f7f5f2;
  background:
    radial-gradient(circle at 82% 12%, rgba(237,18,49,.2), transparent 35%),
    linear-gradient(135deg, #080808 0%, #101010 60%, #21070b 100%);
}

.imedia-managed-cases__inner {
  width: min(1280px, 100%);
  margin: 0 auto;
}

.imedia-managed-cases__header {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: 30px;
  align-items: end;
  margin-bottom: 46px;
}

.imedia-managed-cases__header > span,
.imedia-managed-case__category,
.imedia-case-modal__category {
  color: var(--managed-red);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.imedia-managed-cases__header h2 {
  max-width: 760px;
  margin: 0;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(42px, 5.6vw, 78px);
  font-weight: 800;
  line-height: .96;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.imedia-managed-cases__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.imedia-managed-case {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 19px;
  background: rgba(255,255,255,.045);
  transition: transform 220ms ease, border-color 220ms ease;
}

.imedia-managed-case:hover {
  transform: translateY(-5px);
  border-color: rgba(237,18,49,.55);
}

.imedia-managed-case__image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.imedia-managed-case__body {
  padding: 24px;
}

.imedia-managed-case h3 {
  margin: 11px 0 9px;
  color: #fff;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: 30px;
  line-height: 1;
  text-transform: uppercase;
}

.imedia-managed-case p {
  min-height: 58px;
  margin: 0 0 22px;
  color: rgba(255,255,255,.65);
  font-size: 13px;
  line-height: 1.55;
}

.imedia-managed-case__button,
.imedia-case-modal__link {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0 19px;
  border: 1px solid var(--managed-red);
  border-radius: 999px;
  color: #fff;
  background: var(--managed-red);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  cursor: pointer;
}

.imedia-case-open {
  overflow: hidden;
}

.imedia-case-modal {
  position: fixed;
  z-index: 999999;
  inset: 0;
  display: grid;
  place-items: center;
  overflow-y: auto;
  padding: 28px;
  background: rgba(0,0,0,.82);
  backdrop-filter: blur(10px);
}

.imedia-case-modal__panel {
  position: relative;
  width: min(1040px, 100%);
  max-height: calc(100vh - 56px);
  overflow-y: auto;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 22px;
  color: #f5f3f0;
  background: #101010;
  box-shadow: 0 40px 130px rgba(0,0,0,.65);
}

.imedia-case-modal__close {
  position: absolute;
  z-index: 2;
  top: 16px;
  right: 16px;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 50%;
  color: #fff;
  background: rgba(0,0,0,.72);
  font-size: 27px;
  line-height: 1;
  cursor: pointer;
}

.imedia-case-modal__image {
  display: block;
  width: 100%;
  max-height: 500px;
  object-fit: cover;
}

.imedia-case-modal__content {
  padding: clamp(28px, 5vw, 62px);
}

.imedia-case-modal__content h2 {
  margin: 12px 0 17px;
  color: #fff;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(46px, 7vw, 84px);
  line-height: .95;
  text-transform: uppercase;
}

.imedia-case-modal__lead {
  max-width: 800px;
  color: rgba(255,255,255,.72);
  font-size: 17px;
  line-height: 1.65;
}

.imedia-case-modal__section {
  display: grid;
  grid-template-columns: 190px 1fr;
  gap: 28px;
  margin-top: 38px;
  padding-top: 30px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.imedia-case-modal__section h3 {
  margin: 0;
  color: #fff;
  font-family: "Oswald", sans-serif;
  font-size: 25px;
  text-transform: uppercase;
}

.imedia-case-modal__section p,
.imedia-case-modal__results {
  margin: 0;
  color: rgba(255,255,255,.68);
  font-size: 14px;
  line-height: 1.75;
  white-space: pre-line;
}

.imedia-case-modal__results {
  display: grid;
  gap: 10px;
  padding-left: 18px;
}

.imedia-case-modal__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 34px;
}

.imedia-case-modal__tags span {
  padding: 8px 11px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  color: rgba(255,255,255,.75);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.imedia-case-modal__link {
  margin-top: 30px;
  text-decoration: none;
}

@media (max-width: 900px) {
  .imedia-managed-cases__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .imedia-managed-cases__header,
  .imedia-case-modal__section {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .imedia-managed-cases__grid {
    grid-template-columns: 1fr;
  }

  .imedia-case-modal {
    padding: 10px;
  }

  .imedia-case-modal__panel {
    max-height: calc(100vh - 20px);
    border-radius: 16px;
  }
}

@media (max-width: 1050px) {
  .imedia-careers-hero-grid {
    grid-template-columns: minmax(0, .9fr) minmax(410px, 1.1fr);
    gap: 48px;
  }

  .imedia-careers-copy h1 {
    font-size: clamp(60px, 7vw, 76px);
  }

  .imedia-careers-principles-grid,
  .imedia-careers-process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .imedia-careers-hero-grid,
  .imedia-careers-section-head,
  .imedia-careers-areas-grid,
  .imedia-careers-apply-grid {
    grid-template-columns: 1fr;
  }

  .imedia-careers-hero {
    min-height: 0;
  }

  .imedia-careers-board {
    max-width: 650px;
    transform: none;
  }

  .imedia-careers-areas-copy,
  .imedia-careers-apply-copy {
    position: static;
  }

  .imedia-careers-areas-copy,
  .imedia-careers-apply-copy {
    max-width: 700px;
  }
}

@media (max-width: 600px) {
  .imedia-careers-hero,
  .imedia-careers-principles,
  .imedia-careers-areas,
  .imedia-careers-process,
  .imedia-careers-apply {
    padding-block: 78px;
  }

  .imedia-careers-copy h1 {
    font-size: clamp(51px, 15vw, 68px);
  }

  .imedia-careers-copy > p,
  .imedia-careers-section-head > p,
  .imedia-careers-areas-copy > p,
  .imedia-careers-apply-copy > p {
    font-size: 14px;
  }

  .imedia-careers-board {
    min-height: 0;
    padding: 23px 18px;
    border-radius: 19px;
  }

  .imedia-careers-board header strong {
    font-size: 23px;
  }

  .imedia-careers-board-grid article {
    min-height: 116px;
    padding: 15px;
  }

  .imedia-careers-board footer {
    flex-wrap: wrap;
  }

  .imedia-careers-section-head h2,
  .imedia-careers-areas h2,
  .imedia-careers-apply h2 {
    font-size: clamp(41px, 12vw, 55px);
  }

  .imedia-careers-principles-grid,
  .imedia-careers-process-grid {
    grid-template-columns: 1fr;
    margin-top: 46px;
  }

  .imedia-careers-principles-grid article,
  .imedia-careers-process-grid li {
    min-height: 220px;
  }

  .imedia-careers-principles-grid span,
  .imedia-careers-process-grid b {
    margin-bottom: 42px;
  }

  .imedia-careers-area-list article {
    grid-template-columns: 40px 1fr;
  }

  .imedia-careers-form-card {
    padding: 34px 20px;
    border-radius: 20px;
  }

  .imedia-careers-form-card .wpforms-field-container {
    grid-template-columns: 1fr;
  }

  .imedia-careers-form-card #wpforms-600-field_9-container,
  .imedia-careers-form-card #wpforms-600-field_11-container,
  .imedia-careers-form-card #wpforms-600-field_10-container {
    grid-column: auto;
  }

  .imedia-careers-form-card button[type="submit"] {
    width: 100% !important;
  }
}
