/* =========================================================
   CATEGORIZATION ACT PAGE
   Clean visual system / v2
   ========================================================= */


/* ---------------------------------------------------------
   FOUNDATION
   --------------------------------------------------------- */

.categorization-act-page {
  --act-ink: #111111;
  --act-paper: #f7f4ed;
  --act-paper-deep: #efeae0;
  --act-white: #ffffff;

  --act-lime: #a9f04a;
  --act-lime-soft: rgba(169, 240, 74, .20);

  --act-line: rgba(17, 17, 17, .11);
  --act-line-strong: rgba(17, 17, 17, .18);

  --act-dark-line: rgba(255, 255, 255, .14);

  --act-radius-sm: 18px;
  --act-radius-md: 26px;
  --act-radius-lg: 34px;

  --act-shadow:
    0 18px 50px rgba(17, 17, 17, .07);

  --act-shadow-hover:
    0 24px 65px rgba(17, 17, 17, .11);

  overflow: hidden;

  background: var(--act-white);
}


.categorization-act-kicker {
  margin: 0 0 18px;

  color: var(--color-primary);

  font-size: .74rem;
  font-weight: 900;

  letter-spacing: .14em;
  line-height: 1.2;

  text-transform: uppercase;
}


.categorization-act-section-head {
  max-width: 980px;

  margin-bottom:
    clamp(42px, 6vw, 74px);
}


.categorization-act-section-head h2,
.categorization-act-service h2,
.categorization-act-source-data h2,
.categorization-act-cost h2,
.categorization-act-requirements h2,
.categorization-act-standard h2 {
  margin: 0;

  font-size:
    clamp(2.55rem, 4.5vw, 5rem);

  line-height: .95;

  letter-spacing: -.058em;

  text-wrap: balance;
}


.categorization-act-section-head > p:last-child {
  max-width: 800px;

  margin: 25px 0 0;

  color: var(--color-text-secondary);

  font-size:
    clamp(1rem, 1.2vw, 1.08rem);

  line-height: 1.72;
}


/* ---------------------------------------------------------
   PAGE BUTTONS
   --------------------------------------------------------- */

.categorization-act-page .button {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  min-height: 52px;

  padding:
    0
    25px;

  border:
    1px solid
    var(--act-ink);

  border-radius: 999px;

  font-size: .9rem;
  font-weight: 800;

  line-height: 1;

  text-decoration: none;

  transition:
    transform .22s ease,
    box-shadow .22s ease,
    background-color .22s ease,
    color .22s ease,
    border-color .22s ease;
}


.categorization-act-page .button--primary {
  background: var(--act-ink);
  color: #fff;
}


.categorization-act-page .button--secondary {
  background: transparent;
  color: var(--act-ink);
}


@media (hover: hover) {
  .categorization-act-page .button:hover {
    transform:
      translateY(-3px);

    box-shadow:
      0 10px 26px
      rgba(17, 17, 17, .14);
  }

  .categorization-act-page .button--primary:hover {
    background: var(--color-primary);
    border-color: var(--color-primary);
  }

  .categorization-act-page .button--secondary:hover {
    background: var(--act-ink);
    color: #fff;
  }
}


/* ---------------------------------------------------------
   HERO
   --------------------------------------------------------- */

.categorization-act-hero {
  position: relative;

  padding:
    clamp(125px, 10vw, 165px)
    0
    clamp(72px, 7vw, 105px);

  background:
    radial-gradient(
      circle at 93% 21%,
      rgba(169, 240, 74, .26),
      transparent 21%
    ),
    linear-gradient(
      180deg,
      #f8f5ee 0%,
      #f7f4ed 100%
    );
}


.categorization-act-hero::before {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  height: 1px;

  background:
    rgba(17, 17, 17, .08);
}


.categorization-act-breadcrumbs {
  display: flex;

  flex-wrap: wrap;

  gap: 9px;

  margin-bottom:
    clamp(38px, 5vw, 64px);

  color: var(--color-text-secondary);

  font-size: .82rem;
}


.categorization-act-breadcrumbs a {
  color: inherit;
  text-decoration: none;

  transition:
    color .2s ease;
}


@media (hover: hover) {
  .categorization-act-breadcrumbs a:hover {
    color: var(--act-ink);
  }
}


.categorization-act-hero__layout {
  position: relative;
  z-index: 1;

  display: grid;

  grid-template-columns:
    minmax(0, 1.28fr)
    minmax(350px, 430px);

  gap:
    clamp(54px, 6vw, 100px);

  align-items: center;
}


.categorization-act-hero__content {
  min-width: 0;
}


.categorization-act-hero__content h1 {
  max-width: 900px;

  margin: 0;

  font-size:
    clamp(3.25rem, 4.75vw, 5.35rem);

  line-height: .92;

  letter-spacing: -.062em;
}


.categorization-act-hero__lead {
  max-width: 780px;

  margin: 30px 0 0;

  color: var(--color-text-secondary);

  font-size:
    clamp(1.05rem, 1.4vw, 1.22rem);

  line-height: 1.65;
}


.categorization-act-hero__price-row {
  display: flex;

  flex-wrap: wrap;

  gap:
    28px
    38px;

  align-items: flex-end;

  margin-top: 38px;
}


.categorization-act-hero__price-row > div {
  display: flex;

  flex-direction: column;

  min-width: 190px;
}


.categorization-act-hero__price-row strong {
  font-size:
    clamp(2.7rem, 4vw, 4.35rem);

  line-height: .88;

  letter-spacing: -.065em;
}


.categorization-act-hero__price-row span {
  max-width: 225px;

  margin-top: 10px;

  color: var(--color-text-secondary);

  font-size: .82rem;

  line-height: 1.42;
}


.categorization-act-hero__check {
  display: inline-flex;

  align-items: center;

  gap: 9px;

  margin-top: 26px;

  color: var(--act-ink);

  font-size: .9rem;
  font-weight: 780;

  text-decoration: none;

  transition:
    gap .2s ease,
    color .2s ease;
}


.categorization-act-hero__check span {
  color: var(--color-primary);
}


@media (hover: hover) {
  .categorization-act-hero__check:hover {
    gap: 14px;
    color: var(--color-primary);
  }
}


/* ---------------------------------------------------------
   HERO DOCUMENT
   --------------------------------------------------------- */

.categorization-act-document {
  position: relative;

  width: 100%;
  min-width: 0;

  min-height: 555px;

  padding:
    31px
    32px
    35px;

  border:
    1px solid
    rgba(17, 17, 17, .11);

  border-radius: 12px;

  background:
    #ffffff;

  isolation: isolate;

  box-shadow:
    0 34px 80px
    rgba(17, 17, 17, .14);

  transform:
    rotate(1.2deg);

  transform-origin:
    center;

  transition:
    transform .35s cubic-bezier(.2,.75,.2,1),
    box-shadow .35s ease;
}


.categorization-act-document::before {
  content: "";

  position: absolute;

  top: 0;
  left: 0;
  right: 0;

  height: 8px;

  border-radius:
    12px
    12px
    0
    0;

  background: var(--color-primary);
}


.categorization-act-document::after {
  content: "";

  position: absolute;

  z-index: -1;

  inset:
    18px
    -18px
    -18px
    18px;

  border-radius: 14px;

  background:
    rgba(169, 240, 74, .23);
}


@media (hover: hover) {
  .categorization-act-document:hover {
    transform:
      translateY(-7px)
      rotate(.25deg);

    box-shadow:
      0 45px 95px
      rgba(17, 17, 17, .18);
  }
}


.categorization-act-document__top {
  display: flex;

  justify-content: space-between;

  gap: 20px;

  padding-bottom: 22px;

  border-bottom:
    1px solid
    var(--act-line);

  color: var(--color-text-secondary);

  font-size: .64rem;
  font-weight: 900;

  letter-spacing: .11em;
}


.categorization-act-document__title {
  padding:
    37px
    0
    29px;
}


.categorization-act-document__title small {
  display: block;

  margin-bottom: 12px;

  color: var(--color-text-secondary);

  font-size: .69rem;
  font-weight: 700;

  letter-spacing: .12em;

  text-transform: uppercase;
}


.categorization-act-document__title strong {
  display: block;

  max-width: 330px;

  font-size:
    clamp(1.9rem, 2.35vw, 2.6rem);

  line-height: .98;

  letter-spacing: -.048em;

  text-wrap: balance;
}


.categorization-act-document__fields {
  margin: 0;
}


.categorization-act-document__fields > div {
  display: grid;

  grid-template-columns:
    92px
    minmax(0, 1fr);

  gap: 14px;

  padding:
    15px
    0;

  border-top:
    1px solid
    rgba(17, 17, 17, .09);
}


.categorization-act-document__fields dt {
  color: var(--color-text-secondary);

  font-size: .7rem;
  font-weight: 700;
}


.categorization-act-document__fields dd {
  min-width: 0;

  margin: 0;

  font-size: .84rem;
  font-weight: 820;

  line-height: 1.3;
}


.categorization-act-document__stamp {
  position: absolute;

  right: 28px;
  bottom: 25px;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 102px;
  height: 102px;

  padding: 14px;

  border:
    2px solid
    var(--color-primary);

  border-radius: 50%;

  color: var(--color-primary);

  font-size: .61rem;
  font-weight: 900;

  line-height: 1.17;

  text-align: center;
  text-transform: uppercase;

  transform:
    rotate(-7deg);
}


/* ---------------------------------------------------------
   HERO FACTS
   --------------------------------------------------------- */

.categorization-act-hero__facts {
  position: relative;
  z-index: 1;

  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 12px;

  margin-top:
    clamp(50px, 6vw, 78px);
}


.categorization-act-hero__facts > div {
  display: grid;

  grid-template-columns:
    38px
    minmax(0, 1fr);

  gap: 14px;

  align-items: start;

  min-height: 104px;

  padding: 22px;

  border:
    1px solid
    var(--act-line);

  border-radius:
    var(--act-radius-sm);

  background:
    rgba(255, 255, 255, .62);

  transition:
    transform .22s ease,
    background-color .22s ease,
    box-shadow .22s ease;
}


.categorization-act-hero__facts span {
  color: var(--color-primary);

  font-size: .72rem;
  font-weight: 900;
}


.categorization-act-hero__facts p {
  max-width: 240px;

  margin: 0;

  font-size: .89rem;

  line-height: 1.45;
}


@media (hover: hover) {
  .categorization-act-hero__facts > div:hover {
    transform:
      translateY(-4px);

    background: #fff;

    box-shadow:
      var(--act-shadow);
  }
}


/* ---------------------------------------------------------
   INTRO
   --------------------------------------------------------- */

.categorization-act-intro {
  padding:
    clamp(95px, 10vw, 150px)
    0;

  background: #fff;
}


.categorization-act-intro .container {
  display: grid;

  grid-template-columns:
    minmax(0, .88fr)
    minmax(430px, .92fr);

  gap:
    clamp(60px, 9vw, 140px);

  align-items: start;
}


.categorization-act-intro
.categorization-act-section-head {
  margin-bottom: 0;
}


.categorization-act-intro__text {
  position: relative;

  max-width: none;

  padding:
    clamp(27px, 4vw, 46px);

  border:
    1px solid
    var(--act-line);

  border-radius:
    var(--act-radius-lg);

  background:
    linear-gradient(
      145deg,
      var(--act-paper),
      #fff
    );

  box-shadow:
    var(--act-shadow);
}


.categorization-act-intro__text::before {
  content: "";

  position: absolute;

  left: 0;
  top: 42px;

  width: 5px;
  height: 70px;

  border-radius:
    0
    999px
    999px
    0;

  background:
    var(--act-lime);
}


.categorization-act-intro__text p {
  margin: 0;

  color:
    var(--color-text-secondary);

  font-size:
    clamp(1.02rem, 1.25vw, 1.14rem);

  line-height: 1.78;
}


.categorization-act-intro__text p + p {
  margin-top: 21px;
}


/* ---------------------------------------------------------
   OBJECT DIRECTORY
   --------------------------------------------------------- */

.categorization-act-types {
  padding:
    clamp(95px, 10vw, 150px)
    0;

  background:
    var(--act-ink);

  color: #fff;
}


.categorization-act-types__header {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(300px, .52fr);

  gap:
    clamp(55px, 8vw, 120px);

  align-items: end;

  margin-bottom: 58px;
}


.categorization-act-types__header h2 {
  max-width: 820px;

  margin: 0;

  font-size:
    clamp(2.6rem, 4.6vw, 5rem);

  line-height: .95;

  letter-spacing: -.058em;

  text-wrap: balance;
}


.categorization-act-types__header > p {
  margin: 0;

  color:
    rgba(255, 255, 255, .62);

  line-height: 1.7;
}


.categorization-act-types__directory {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 12px;
}


.categorization-act-types__directory a,
.categorization-act-types__other {
  position: relative;

  display: grid;

  grid-template-columns:
    44px
    minmax(0, 1fr)
    auto;

  gap:
    14px;

  align-items: center;

  min-height: 116px;

  padding:
    22px
    24px;

  border:
    1px solid
    rgba(255, 255, 255, .14);

  border-radius:
    var(--act-radius-sm);

  color: inherit;

  background:
    rgba(255, 255, 255, .035);

  text-decoration: none;

  transition:
    transform .25s ease,
    background-color .25s ease,
    border-color .25s ease;
}


.categorization-act-types__regulation {
  grid-column:
    2 / 3;

  color:
    rgba(255, 255, 255, .48);

  font-size: .78rem;
}


.categorization-act-types__number {
  grid-row:
    1 / 3;

  align-self: start;

  color:
    var(--color-primary);

  font-size: .71rem;
  font-weight: 900;
}


.categorization-act-types__directory strong {
  font-size:
    clamp(1rem, 1.4vw, 1.24rem);

  line-height: 1.18;
}


.categorization-act-types__arrow {
  grid-column: 3;
  grid-row: 1 / 3;

  align-self: center;

  font-size: 1.2rem;

  transition:
    transform .25s ease;
}


@media (hover: hover) {
  .categorization-act-types__directory a:hover {
    transform:
      translateY(-4px);

    border-color:
      rgba(169, 240, 74, .5);

    background:
      rgba(169, 240, 74, .08);
  }

  .categorization-act-types__directory a:hover
  .categorization-act-types__arrow {
    transform:
      translate(3px, -3px);
  }
}


/* ---------------------------------------------------------
   REQUIREMENTS
   --------------------------------------------------------- */

.categorization-act-requirements {
  padding:
    clamp(95px, 10vw, 150px)
    0;

  background:
    var(--act-paper);
}


.categorization-act-requirements__grid {
  display: grid;

  grid-template-columns:
    minmax(0, .95fr)
    minmax(350px, .72fr);

  gap:
    clamp(55px, 8vw, 125px);

  align-items: start;
}


.categorization-act-requirements__copy {
  padding-top: 8px;
}


.categorization-act-requirements__copy p {
  margin: 0;

  color: var(--color-text-secondary);

  font-size: 1.02rem;

  line-height: 1.75;
}


.categorization-act-requirements__copy p + p {
  margin-top: 22px;
}


.categorization-act-requirements__list {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 14px;

  margin-top: 70px;
}


.categorization-act-requirements__list article {
  position: relative;

  min-height: 205px;

  padding:
    25px;

  border:
    1px solid
    var(--act-line);

  border-radius:
    var(--act-radius-md);

  background: #fff;

  box-shadow:
    0 8px 28px
    rgba(17, 17, 17, .025);

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;
}


.categorization-act-requirements__list article > span {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  width: 34px;
  height: 34px;

  border-radius: 50%;

  background:
    var(--act-lime-soft);

  color: var(--act-ink);

  font-size: .68rem;
  font-weight: 900;
}


.categorization-act-requirements__list strong {
  display: block;

  margin-top: 38px;

  font-size:
    clamp(1.05rem, 1.45vw, 1.3rem);

  line-height: 1.15;
}


.categorization-act-requirements__list p {
  margin:
    11px
    0
    0;

  color: var(--color-text-secondary);

  font-size: .88rem;

  line-height: 1.55;
}


@media (hover: hover) {
  .categorization-act-requirements__list article:hover {
    transform:
      translateY(-5px);

    border-color:
      var(--act-line-strong);

    box-shadow:
      var(--act-shadow-hover);
  }
}


/* ---------------------------------------------------------
   PROCESS
   --------------------------------------------------------- */

.categorization-act-process {
  padding:
    clamp(95px, 10vw, 150px)
    0;

  background: #fff;
}


.categorization-act-process__heading {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(300px, .5fr);

  gap:
    clamp(55px, 8vw, 115px);

  align-items: end;

  margin-bottom: 68px;
}


.categorization-act-process__heading h2 {
  max-width: 800px;

  margin: 0;

  font-size:
    clamp(2.65rem, 4.8vw, 5.2rem);

  line-height: .94;

  letter-spacing: -.06em;

  text-wrap: balance;
}


.categorization-act-process__heading > p {
  margin: 0;

  color: var(--color-text-secondary);

  line-height: 1.72;
}


/* Flow */

.categorization-act-flow {
  position: relative;

  display: grid;

  grid-template-columns:
    repeat(6, minmax(0, 1fr));

  margin-bottom: 70px;
}


.categorization-act-flow::before {
  content: "";

  position: absolute;

  left: 7%;
  right: 7%;
  top: 23px;

  height: 2px;

  background:
    linear-gradient(
      90deg,
      var(--act-lime),
      var(--color-primary)
    );
}


.categorization-act-flow__item {
  position: relative;

  z-index: 1;

  text-align: center;
}


.categorization-act-flow__item span {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 48px;
  height: 48px;

  margin:
    0
    auto
    17px;

  border:
    1px solid
    var(--act-line);

  border-radius: 50%;

  background: #fff;

  color: var(--color-primary);

  font-size: .7rem;
  font-weight: 900;

  box-shadow:
    0 4px 15px
    rgba(17,17,17,.06);

  transition:
    transform .22s ease,
    background-color .22s ease;
}


.categorization-act-flow__item strong {
  font-size: .88rem;

  line-height: 1.25;
}


@media (hover: hover) {
  .categorization-act-flow__item:hover span {
    transform:
      translateY(-4px)
      scale(1.05);

    background:
      var(--act-lime);
  }
}


/* Process cards */

.categorization-act-process__details {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 14px;
}


.categorization-act-process__details article {
  display: grid;

  grid-template-columns:
    42px
    minmax(0, 1fr);

  gap: 17px;

  min-height: 184px;

  padding: 27px;

  border:
    1px solid
    var(--act-line);

  border-radius:
    var(--act-radius-md);

  background:
    var(--act-paper);

  transition:
    transform .25s ease,
    background-color .25s ease,
    box-shadow .25s ease;
}


.categorization-act-process__details article > span {
  color: var(--color-primary);

  font-size: .71rem;
  font-weight: 900;
}


.categorization-act-process__details h3 {
  margin: 0 0 10px;

  font-size:
    clamp(1.15rem, 1.55vw, 1.42rem);

  line-height: 1.13;

  letter-spacing: -.028em;
}


.categorization-act-process__details p {
  margin: 0;

  color: var(--color-text-secondary);

  line-height: 1.63;
}


@media (hover: hover) {
  .categorization-act-process__details article:hover {
    transform:
      translateY(-4px);

    background: #fff;

    box-shadow:
      var(--act-shadow);
  }
}


/* ---------------------------------------------------------
   SERVICE
   --------------------------------------------------------- */

.categorization-act-service {
  padding:
    clamp(95px, 10vw, 150px)
    0;

  background:
    var(--act-paper);
}


.categorization-act-service__grid {
  display: grid;

  grid-template-columns:
    minmax(0, .55fr)
    minmax(620px, 1.45fr);

  gap:
    clamp(55px, 7vw, 110px);

  align-items: start;
}


.categorization-act-service__grid > div {
  position: sticky;

  top: 110px;
}


.categorization-act-service__grid > div > p:last-child {
  max-width: 520px;

  margin: 25px 0 0;

  color: var(--color-text-secondary);

  line-height: 1.72;
}


.categorization-act-service ol {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 12px;

  margin: 0;
  padding: 0;

  list-style: none;
}


.categorization-act-service li {
  min-height: 162px;

  padding: 22px;

  border:
    1px solid
    var(--act-line);

  border-radius:
    var(--act-radius-sm);

  background: #fff;

  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}


.categorization-act-service li span {
  display: block;

  margin-bottom: 25px;

  color: var(--color-primary);

  font-size: .69rem;
  font-weight: 900;
}


.categorization-act-service li p {
  margin: 0;

  font-size: .94rem;

  line-height: 1.5;
}


@media (hover: hover) {
  .categorization-act-service li:hover {
    transform:
      translateY(-4px);

    border-color:
      var(--act-line-strong);

    box-shadow:
      var(--act-shadow);
  }
}


/* ---------------------------------------------------------
   COST
   --------------------------------------------------------- */

.categorization-act-cost {
  padding:
    clamp(95px, 10vw, 145px)
    0;

  background:
    var(--act-ink);

  color: #fff;
}


.categorization-act-cost__card {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(360px, 430px);

  gap:
    clamp(55px, 8vw, 115px);

  align-items: center;
}


.categorization-act-cost__card > div:first-child {
  padding-top: 8px;
}


.categorization-act-cost__card > div:first-child > p:last-child {
  max-width: 700px;

  margin:
    28px
    0
    0;

  color:
    rgba(255, 255, 255, .65);

  line-height: 1.72;
}


.categorization-act-cost__price {
  position: relative;

  display: flex;

  flex-direction: column;

  align-items: flex-start;
  justify-content: center;

  min-height: 300px;

  padding:
    clamp(34px, 4vw, 48px);

  overflow: hidden;

  border:
    1px solid
    rgba(169, 240, 74, .26);

  border-radius:
    var(--act-radius-lg);

  background:
    linear-gradient(
      145deg,
      rgba(169, 240, 74, .16),
      rgba(169, 240, 74, .055)
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, .05);

  transition:
    transform .28s ease,
    border-color .28s ease,
    box-shadow .28s ease;
}


.categorization-act-cost__price::after {
  content: "";

  position: absolute;

  right: -75px;
  bottom: -95px;

  width: 210px;
  height: 210px;

  border-radius: 50%;

  background:
    rgba(169, 240, 74, .08);

  pointer-events: none;

  transition:
    transform .3s ease;
}


.categorization-act-cost__price strong {
  position: relative;
  z-index: 1;

  display: block;

  font-size:
    clamp(4rem, 5.5vw, 6.2rem);

  line-height: .86;

  letter-spacing: -.07em;

  white-space: nowrap;
}


.categorization-act-cost__price > span {
  position: relative;
  z-index: 1;

  display: block;

  margin:
    13px
    0
    32px;

  color:
    rgba(255,255,255,.62);

  font-size: .86rem;
}


.categorization-act-cost .button--primary {
  position: relative;
  z-index: 1;

  min-height: 50px;

  padding:
    0
    24px;

  border-color:
    var(--act-lime);

  background:
    var(--act-lime);

  color:
    var(--act-ink);

  box-shadow:
    0
    8px
    24px
    rgba(169, 240, 74, .10);
}


@media (hover: hover) {
  .categorization-act-cost .button--primary:hover {
    border-color: #fff;
    background: #fff;
  }
}


.categorization-act-passport-link {
  position: relative;

  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  gap: 45px;

  align-items: center;

  margin-top: 28px;

  padding:
    clamp(28px, 3.5vw, 40px);

  overflow: hidden;

  border:
    1px solid
    rgba(255,255,255,.13);

  border-radius:
    var(--act-radius-lg);

  background:
    rgba(255,255,255,.035);

  transition:
    transform .25s ease,
    background-color .25s ease,
    border-color .25s ease;
}


.categorization-act-passport-link::before {
  content: "";

  position: absolute;

  left: 0;
  top: 0;
  bottom: 0;

  width: 4px;

  background:
    var(--act-lime);
}


.categorization-act-passport-link > div > span {
  color: var(--color-primary);

  font-size: .69rem;
  font-weight: 900;

  letter-spacing: .12em;

  text-transform: uppercase;
}


.categorization-act-passport-link h3 {
  max-width: 720px;

  margin:
    13px
    0
    10px;

  font-size:
    clamp(1.6rem, 2.35vw, 2.35rem);

  line-height: 1.04;

  letter-spacing: -.038em;

  text-wrap: balance;
}


.categorization-act-passport-link p {
  margin: 0;

  color:
    rgba(255,255,255,.6);

  line-height: 1.55;
}


.categorization-act-passport-link > a {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  min-height: 50px;

  padding:
    0
    23px;

  border:
    1px solid
    rgba(255,255,255,.32);

  border-radius: 999px;

  color: #fff;

  font-size: .84rem;
  font-weight: 800;

  text-decoration: none;

  white-space: nowrap;

  transition:
    background-color .22s ease,
    color .22s ease,
    border-color .22s ease,
    transform .22s ease;
}


@media (hover: hover) {
  .categorization-act-cost__price:hover {
    transform:
      translateY(-5px);

    border-color:
      rgba(169, 240, 74, .48);

    box-shadow:
      0
      24px
      60px
      rgba(0, 0, 0, .16);
  }


  .categorization-act-cost__price:hover::after {
    transform:
      scale(1.15);
  }


  .categorization-act-passport-link:hover {
    transform:
      translateY(-3px);

    border-color:
      rgba(255,255,255,.22);

    background:
      rgba(255,255,255,.055);
  }


  .categorization-act-passport-link > a:hover {
    transform:
      translateY(-3px);

    border-color:
      #fff;

    background: #fff;

    color: var(--act-ink);
  }
}


/* ---------------------------------------------------------
   SOURCE DATA
   --------------------------------------------------------- */

.categorization-act-source-data {
  padding:
    clamp(95px, 10vw, 150px)
    0;

  background: #fff;
}


.categorization-act-source-data__grid {
  display: grid;

  grid-template-columns:
    minmax(0, .7fr)
    minmax(460px, 1.15fr);

  gap:
    clamp(60px, 9vw, 135px);

  align-items: start;
}


.categorization-act-source-data__grid > div > p:last-child {
  max-width: 520px;

  margin:
    25px
    0
    0;

  color: var(--color-text-secondary);

  line-height: 1.7;
}


.categorization-act-source-data ul {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 12px;

  margin: 0;
  padding: 0;

  list-style: none;
}


.categorization-act-source-data li {
  position: relative;

  min-height: 98px;

  padding:
    22px
    22px
    22px
    47px;

  border:
    1px solid
    var(--act-line);

  border-radius:
    var(--act-radius-sm);

  background:
    var(--act-paper);

  line-height: 1.48;

  transition:
    transform .22s ease,
    background-color .22s ease,
    box-shadow .22s ease;
}


.categorization-act-source-data li::before {
  content: "";

  position: absolute;

  left: 22px;
  top: 27px;

  width: 9px;
  height: 9px;

  border-radius: 50%;

  background:
    var(--act-lime);
}


@media (hover: hover) {
  .categorization-act-source-data li:hover {
    transform:
      translateY(-3px);

    background: #fff;

    box-shadow:
      var(--act-shadow);
  }
}


/* ---------------------------------------------------------
   SAMPLE / DOCUMENT STRUCTURE
   --------------------------------------------------------- */

.categorization-act-sample {
  padding:
    clamp(95px, 10vw, 150px)
    0;

  background:
    var(--act-paper);
}


.categorization-act-sample__grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 12px;

  margin-bottom: 38px;
}


.categorization-act-sample__grid article {
  position: relative;

  display: grid;

  grid-template-columns:
    37px
    minmax(0, 1fr);

  gap: 13px;

  align-items: start;

  min-height: 112px;

  padding: 22px;

  overflow: hidden;

  border:
    1px solid
    var(--act-line);

  border-radius:
    var(--act-radius-sm);

  background: #fff;

  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}


.categorization-act-sample__grid article::after {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  height: 3px;

  background:
    var(--act-lime);

  transform:
    scaleX(0);

  transform-origin:
    left;

  transition:
    transform .25s ease;
}


.categorization-act-sample__grid span {
  color: var(--color-primary);

  font-size: .7rem;
  font-weight: 900;
}


.categorization-act-sample__grid p {
  margin: 0;

  line-height: 1.5;
}


@media (hover: hover) {
  .categorization-act-sample__grid article:hover {
    transform:
      translateY(-4px);

    border-color:
      var(--act-line-strong);

    box-shadow:
      var(--act-shadow);
  }

  .categorization-act-sample__grid article:hover::after {
    transform:
      scaleX(1);
  }
}


/* ---------------------------------------------------------
   STANDARD
   --------------------------------------------------------- */

.categorization-act-standard {
  padding:
    clamp(95px, 10vw, 145px)
    0;

  background:
    linear-gradient(
      130deg,
      #e6f8cd 0%,
      #f4faeb 58%,
      #ffffff 100%
    );
}


.categorization-act-standard__grid {
  display: grid;

  grid-template-columns:
    minmax(0, .92fr)
    minmax(350px, .68fr);

  gap:
    clamp(55px, 8vw, 120px);

  align-items: center;
}


.categorization-act-standard__badge {
  display: inline-flex;

  margin-bottom: 27px;

  padding:
    9px
    13px;

  border-radius: 999px;

  background:
    var(--act-ink);

  color: #fff;

  font-size: .72rem;
  font-weight: 900;

  letter-spacing: .05em;
}


.categorization-act-standard__grid > div:last-child {
  padding:
    28px;

  border:
    1px solid
    rgba(17,17,17,.1);

  border-radius:
    var(--act-radius-md);

  background:
    rgba(255,255,255,.62);

  backdrop-filter:
    blur(6px);
}


.categorization-act-standard__grid > div:last-child p {
  margin: 0;

  color: var(--color-text-secondary);

  font-size: 1.02rem;

  line-height: 1.72;
}


.categorization-act-standard__grid > div:last-child p + p {
  margin-top: 21px;
}


/* ---------------------------------------------------------
   ACT VS PASSPORT
   --------------------------------------------------------- */

.categorization-act-difference {
  padding:
    clamp(95px, 10vw, 150px)
    0;

  background: #fff;
}


.categorization-act-difference__grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 16px;
}


.categorization-act-difference__grid article {
  position: relative;

  min-height: 310px;

  padding:
    31px;

  overflow: hidden;

  border:
    1px solid
    var(--act-line);

  border-radius:
    var(--act-radius-lg);

  background:
    linear-gradient(
      145deg,
      var(--act-paper),
      #fff
    );

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;
}


.categorization-act-difference__grid article::after {
  content: "";

  position: absolute;

  right: -60px;
  bottom: -70px;

  width: 170px;
  height: 170px;

  border-radius: 50%;

  background:
    var(--act-lime-soft);

  transition:
    transform .3s ease;
}


.categorization-act-difference__grid article > span {
  color: var(--color-primary);

  font-size: .72rem;
  font-weight: 900;
}


.categorization-act-difference__grid h3 {
  max-width: 500px;

  margin:
    74px
    0
    15px;

  font-size:
    clamp(1.6rem, 2.5vw, 2.35rem);

  line-height: 1.04;

  letter-spacing: -.04em;
}


.categorization-act-difference__grid p {
  position: relative;
  z-index: 1;

  max-width: 600px;

  margin: 0;

  color: var(--color-text-secondary);

  line-height: 1.66;
}


@media (hover: hover) {
  .categorization-act-difference__grid article:hover {
    transform:
      translateY(-5px);

    border-color:
      var(--act-line-strong);

    box-shadow:
      var(--act-shadow-hover);
  }

  .categorization-act-difference__grid article:hover::after {
    transform:
      scale(1.16);
  }
}


.categorization-act-difference__sequence {
  max-width: 940px;

  margin:
    34px
    0
    0;

  padding:
    22px
    25px;

  border-left:
    4px solid
    var(--act-lime);

  border-radius:
    0
    var(--act-radius-sm)
    var(--act-radius-sm)
    0;

  background:
    var(--act-paper);

  color: var(--color-text-secondary);

  line-height: 1.68;
}


/* ---------------------------------------------------------
   FAQ
   --------------------------------------------------------- */

.categorization-act-faq {
  padding:
    clamp(95px, 10vw, 150px)
    0;

  background:
    var(--act-paper);
}


.categorization-act-faq__list {
  display: grid;

  gap: 10px;

  max-width: 1030px;
}


.categorization-act-faq details {
  overflow: hidden;

  border:
    1px solid
    var(--act-line);

  border-radius:
    var(--act-radius-sm);

  background: #fff;

  transition:
    border-color .22s ease,
    box-shadow .22s ease;
}


.categorization-act-faq details[open] {
  border-color:
    var(--act-line-strong);

  box-shadow:
    var(--act-shadow);
}


.categorization-act-faq summary {
  position: relative;

  padding:
    24px
    65px
    24px
    24px;

  cursor: pointer;

  list-style: none;

  font-size:
    clamp(1.08rem, 1.6vw, 1.35rem);

  font-weight: 780;

  line-height: 1.28;

  transition:
    color .2s ease,
    background-color .2s ease;
}


.categorization-act-faq summary::-webkit-details-marker {
  display: none;
}


.categorization-act-faq summary::after {
  content: "+";

  position: absolute;

  top: 50%;
  right: 23px;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 30px;
  height: 30px;

  border-radius: 50%;

  background:
    var(--act-lime-soft);

  color: var(--act-ink);

  font-size: 1.25rem;
  font-weight: 600;

  transform:
    translateY(-50%);

  transition:
    transform .22s ease,
    background-color .22s ease;
}


.categorization-act-faq details[open] summary::after {
  content: "−";

  background:
    var(--act-lime);

  transform:
    translateY(-50%)
    rotate(180deg);
}


.categorization-act-faq details p {
  max-width: 850px;

  margin:
    0
    24px
    27px;

  color: var(--color-text-secondary);

  line-height: 1.7;
}


@media (hover: hover) {
  .categorization-act-faq summary:hover {
    background:
      rgba(169,240,74,.055);
  }
}


/* ---------------------------------------------------------
   TABLET
   --------------------------------------------------------- */

@media (max-width: 1100px) {
  .categorization-act-hero__layout,
  .categorization-act-requirements__grid,
  .categorization-act-process__heading,
  .categorization-act-standard__grid,
  .categorization-act-service__grid,
  .categorization-act-source-data__grid,
  .categorization-act-cost__card {
    grid-template-columns: 1fr;
  }


  .categorization-act-document {
    max-width: 520px;

    margin-top: 10px;
  }


  .categorization-act-intro .container {
    grid-template-columns: 1fr;
  }


  .categorization-act-intro
  .categorization-act-section-head {
    margin-bottom:
      clamp(42px, 6vw, 70px);
  }


  .categorization-act-requirements__list {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }


  .categorization-act-service__grid > div {
    position: static;
  }


  .categorization-act-service ol {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }


  .categorization-act-types__header {
    grid-template-columns: 1fr;
  }


  .categorization-act-cost__price {
    max-width: 560px;
  }
}


/* ---------------------------------------------------------
   MOBILE / SMALL TABLET
   --------------------------------------------------------- */

@media (max-width: 760px) {
  .categorization-act-section-head h2,
  .categorization-act-service h2,
  .categorization-act-source-data h2,
  .categorization-act-cost h2,
  .categorization-act-requirements h2,
  .categorization-act-standard h2 {
    font-size:
      clamp(2.25rem, 11vw, 3.5rem);
  }


  .categorization-act-hero {
    padding-top: 110px;
  }


  .categorization-act-breadcrumbs {
    margin-bottom: 31px;
  }


  .categorization-act-hero__content h1 {
    font-size:
      clamp(2.65rem, 13vw, 4.25rem);
  }


  .categorization-act-hero__price-row {
    align-items: flex-start;
  }


  .categorization-act-document {
    min-height: 520px;

    padding:
      27px
      24px
      31px;

    transform: none;
  }


  .categorization-act-document::after {
    right: -12px;
    bottom: -14px;
  }


  .categorization-act-document__title strong {
    font-size:
      clamp(1.8rem, 9vw, 2.35rem);
  }


  .categorization-act-document__stamp {
    right: 22px;

    width: 88px;
    height: 88px;
  }


  .categorization-act-hero__facts {
    grid-template-columns: 1fr;
  }


  .categorization-act-hero__facts > div {
    padding:
      18px
      0;

    border-bottom:
      1px solid
      var(--act-line);
  }


  .categorization-act-hero__facts > div:not(:last-child)::after {
    display: none;
  }


  .categorization-act-types__directory {
    grid-template-columns: 1fr;
  }


  .categorization-act-requirements__list {
    grid-template-columns: 1fr;
  }


  .categorization-act-flow {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap:
      35px
      0;
  }


  .categorization-act-flow::before {
    display: none;
  }


  .categorization-act-process__details,
  .categorization-act-service ol,
  .categorization-act-source-data ul,
  .categorization-act-sample__grid,
  .categorization-act-difference__grid {
    grid-template-columns: 1fr;
  }


  .categorization-act-passport-link {
    grid-template-columns: 1fr;

    align-items: start;
  }


  .categorization-act-passport-link > a {
    justify-self: start;

    white-space: normal;
  }


  .categorization-act-cost__price strong {
    font-size:
      clamp(3.4rem, 16vw, 5rem);
  }
}


/* ---------------------------------------------------------
   SMALL MOBILE
   --------------------------------------------------------- */

@media (max-width: 480px) {
  .categorization-act-page .button {
    width: 100%;
  }


  .categorization-act-hero__price-row {
    display: grid;

    grid-template-columns: 1fr;

    width: 100%;
  }


  .categorization-act-document__fields > div {
    grid-template-columns:
      78px
      minmax(0, 1fr);
  }


  .categorization-act-process__details article {
    grid-template-columns:
      34px
      minmax(0, 1fr);

    padding: 22px;
  }


  .categorization-act-cost__price,
  .categorization-act-passport-link,
  .categorization-act-intro__text {
    border-radius:
      22px;
  }
}


/* ---------------------------------------------------------
   MOTION
   --------------------------------------------------------- */

@media (
  prefers-reduced-motion:
  no-preference
) {
  .categorization-act-document {
    animation:
      categorization-document-enter
      .65s
      cubic-bezier(.2,.75,.2,1)
      both;
  }


  @keyframes categorization-document-enter {
    from {
      opacity: 0;

      transform:
        translateY(18px)
        rotate(2deg);
    }

    to {
      opacity: 1;

      transform:
        translateY(0)
        rotate(1.2deg);
    }
  }
}


@media (
  prefers-reduced-motion:
  reduce
) {
  .categorization-act-page *,
  .categorization-act-page *::before,
  .categorization-act-page *::after {
    scroll-behavior: auto !important;

    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;

    transition-duration: .01ms !important;
  }
}

/* === FINAL FEEDBACK V3 START === */


/* =========================================================
   1. INTRO
   Fix orphan "и" + stronger editorial balance
   ========================================================= */

.categorization-act-intro .container {
  display: grid;

  grid-template-columns:
    minmax(0, 1.06fr)
    minmax(410px, .94fr);

  gap:
    clamp(60px, 7vw, 105px);

  align-items: start;
}


.categorization-act-intro
.categorization-act-section-head {
  margin-bottom: 0;
}


.categorization-act-intro
.categorization-act-section-head h2 {
  max-width: 11ch;

  font-size:
    clamp(2.65rem, 3.9vw, 4.55rem);

  line-height: .96;

  letter-spacing: -.055em;

  text-wrap: pretty;
}


.categorization-act-intro__text {
  max-width: none;

  padding:
    clamp(34px, 3vw, 44px);

  border-radius: 30px;
}


.categorization-act-intro__text::before {
  top: 38px;

  height: 64px;
}


/* =========================================================
   2. HERO VISUAL
   Nikolay instead of document illustration
   ========================================================= */

.categorization-act-expert-visual {
  position: relative;

  justify-self: end;

  width:
    min(100%, 430px);

  margin: 0;

  border-radius: 34px;

  isolation: isolate;
}


.categorization-act-expert-visual::before {
  content: "";

  position: absolute;

  z-index: -2;

  width: 82%;
  aspect-ratio: 1 / 1;

  right: -20%;
  top: -9%;

  border-radius: 50%;

  background:
    rgba(169, 240, 74, .26);
}


.categorization-act-expert-visual::after {
  content: "";

  position: absolute;

  z-index: -1;

  left: 18px;
  right: -18px;
  top: 18px;
  bottom: -18px;

  border-radius: 32px;

  background:
    linear-gradient(
      145deg,
      rgba(169, 240, 74, .24),
      rgba(169, 240, 74, .08)
    );

  transition:
    transform .3s ease;
}


.categorization-act-expert-visual img {
  position: relative;

  display: block;

  width: 100%;
  height: auto;

  aspect-ratio:
    930 / 1400;

  object-fit: cover;
  object-position: center top;

  overflow: hidden;

  border:
    1px solid
    rgba(17, 17, 17, .09);

  border-radius: 30px;

  background:
    #edf7d7;

  box-shadow:
    0
    35px
    85px
    rgba(17, 17, 17, .14);

  transform:
    rotate(.7deg);

  transition:
    transform .32s
    cubic-bezier(.2,.75,.2,1),
    box-shadow .32s ease;
}


@media (hover: hover) {
  .categorization-act-expert-visual:hover img {
    transform:
      translateY(-6px)
      rotate(0deg);

    box-shadow:
      0
      45px
      95px
      rgba(17, 17, 17, .18);
  }


  .categorization-act-expert-visual:hover::after {
    transform:
      translate(4px, 5px);
  }
}


/* =========================================================
   3. SERVICE
   More space between title and 3x3 cards
   ========================================================= */

.categorization-act-service__grid {
  grid-template-columns:
    minmax(280px, .5fr)
    minmax(650px, 1.5fr);

  gap:
    clamp(80px, 8vw, 135px);

  align-items: start;
}


.categorization-act-service__grid > div {
  padding-top: 9px;
  padding-right: 12px;
}


.categorization-act-service h2 {
  max-width: 6.3ch;

  line-height: .94;

  text-wrap: pretty;
}


.categorization-act-service ol {
  gap: 15px;
}


.categorization-act-service li {
  position: relative;

  min-height: 172px;

  padding:
    25px
    23px;

  overflow: hidden;
}


.categorization-act-service li::after {
  content: "";

  position: absolute;

  left: 0;
  bottom: 0;

  width: 100%;
  height: 3px;

  background:
    var(--act-lime);

  transform:
    scaleX(0);

  transform-origin: left;

  transition:
    transform .25s ease;
}


@media (hover: hover) {
  .categorization-act-service li:hover::after {
    transform:
      scaleX(1);
  }
}


/* =========================================================
   4. SOURCE DATA
   Turn loose boxes into one coherent checklist surface
   ========================================================= */

.categorization-act-source-data__grid {
  grid-template-columns:
    minmax(280px, .62fr)
    minmax(560px, 1.38fr);

  gap:
    clamp(70px, 8vw, 125px);

  align-items: start;
}


.categorization-act-source-data h2 {
  max-width: 6.6ch;

  text-wrap: pretty;
}


.categorization-act-source-data ul {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 12px;

  margin: 0;

  padding: 14px;

  border:
    1px solid
    var(--act-line);

  border-radius: 32px;

  background:
    linear-gradient(
      145deg,
      #f6f3ec,
      #f0ece3
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(255,255,255,.65);
}


.categorization-act-source-data li {
  position: relative;

  display: flex;

  align-items: center;

  min-height: 108px;

  padding:
    22px
    22px
    22px
    51px;

  border:
    1px solid
    rgba(17,17,17,.08);

  border-radius: 19px;

  background: #fff;

  box-shadow:
    0
    5px
    18px
    rgba(17,17,17,.025);

  line-height: 1.48;

  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}


.categorization-act-source-data li::before {
  content: "";

  position: absolute;

  left: 22px;
  top: 50%;

  width: 9px;
  height: 9px;

  border-radius: 50%;

  background:
    var(--act-lime);

  box-shadow:
    0
    0
    0
    6px
    rgba(169, 240, 74, .16);

  transform:
    translateY(-50%);
}


@media (hover: hover) {
  .categorization-act-source-data li:hover {
    transform:
      translateY(-3px);

    border-color:
      rgba(169, 240, 74, .42);

    box-shadow:
      0
      13px
      30px
      rgba(17,17,17,.07);
  }
}


/* =========================================================
   5. SAMPLE
   Make it read as a document index, not another card grid
   ========================================================= */

.categorization-act-sample {
  position: relative;
}


.categorization-act-sample
.categorization-act-section-head {
  max-width: 1060px;
}


.categorization-act-sample
.categorization-act-section-head h2 {
  max-width: 12ch;

  text-wrap: pretty;
}


.categorization-act-sample__grid {
  position: relative;

  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 0;

  margin-bottom: 36px;

  padding:
    18px;

  overflow: hidden;

  border:
    1px solid
    var(--act-line);

  border-radius:
    30px;

  background:
    repeating-linear-gradient(
      180deg,
      rgba(17,17,17,.025)
      0,
      rgba(17,17,17,.025)
      1px,
      transparent
      1px,
      transparent
      46px
    ),
    #fff;

  box-shadow:
    0
    22px
    55px
    rgba(17,17,17,.06);
}


.categorization-act-sample__grid::before {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  top: 0;

  height: 6px;

  background:
    linear-gradient(
      90deg,
      var(--color-primary),
      var(--act-lime)
    );
}


.categorization-act-sample__grid article {
  position: relative;

  display: grid;

  grid-template-columns:
    36px
    minmax(0, 1fr);

  gap: 12px;

  align-items: center;

  min-height: 112px;

  padding:
    23px
    20px;

  border: 0;

  border-right:
    1px solid
    var(--act-line);

  border-bottom:
    1px solid
    var(--act-line);

  border-radius: 0;

  background:
    rgba(255,255,255,.76);

  box-shadow: none;

  transition:
    background-color .22s ease;
}


.categorization-act-sample__grid
article:nth-child(3n) {
  border-right: 0;
}


.categorization-act-sample__grid
article:nth-child(n + 7) {
  border-bottom: 0;
}


.categorization-act-sample__grid
article::after {
  display: none;
}


.categorization-act-sample__grid span {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 30px;
  height: 30px;

  border-radius: 50%;

  background:
    rgba(47,91,255,.09);

  color:
    var(--color-primary);

  font-size: .68rem;
  font-weight: 900;
}


.categorization-act-sample__grid p {
  margin: 0;

  font-weight: 630;

  line-height: 1.45;
}


@media (hover: hover) {
  .categorization-act-sample__grid article:hover {
    transform: none;

    background:
      rgba(169, 240, 74, .13);

    box-shadow: none;
  }
}


.categorization-act-sample
.button--secondary {
  min-height: 52px;

  padding:
    0
    27px;

  border-radius:
    999px;
}


/* =========================================================
   6. RESPONSIVE
   ========================================================= */

@media (max-width: 1100px) {
  .categorization-act-intro .container,
  .categorization-act-service__grid,
  .categorization-act-source-data__grid {
    grid-template-columns: 1fr;
  }


  .categorization-act-intro
  .categorization-act-section-head {
    margin-bottom:
      38px;
  }


  .categorization-act-intro
  .categorization-act-section-head h2,
  .categorization-act-service h2,
  .categorization-act-source-data h2 {
    max-width: 11ch;
  }


  .categorization-act-expert-visual {
    justify-self: start;

    max-width: 520px;
  }


  .categorization-act-service__grid {
    gap: 44px;
  }


  .categorization-act-service ol {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }
}


@media (max-width: 760px) {
  .categorization-act-intro
  .categorization-act-section-head h2,
  .categorization-act-service h2,
  .categorization-act-source-data h2 {
    max-width: none;
  }


  .categorization-act-expert-visual {
    width: 100%;
  }


  .categorization-act-source-data ul {
    grid-template-columns: 1fr;

    padding: 10px;

    border-radius: 24px;
  }


  .categorization-act-service ol,
  .categorization-act-sample__grid {
    grid-template-columns: 1fr;
  }


  .categorization-act-sample__grid article {
    border-right: 0;

    border-bottom:
      1px solid
      var(--act-line);
  }


  .categorization-act-sample__grid
  article:nth-child(n + 7) {
    border-bottom:
      1px solid
      var(--act-line);
  }


  .categorization-act-sample__grid
  article:last-child {
    border-bottom: 0;
  }
}


/* =========================================================
   MOTION ACCESSIBILITY
   ========================================================= */

@media (
  prefers-reduced-motion:
  reduce
) {
  .categorization-act-expert-visual *,
  .categorization-act-service li,
  .categorization-act-source-data li,
  .categorization-act-sample__grid article {
    transition: none !important;
  }
}


/* === FINAL FEEDBACK V3 END === */
