:root {
  --cert-primary: #0b9894;
  --cert-primary-soft: #dff2f0;
  --cert-text: #000;
  --cert-text-soft: rgba(0, 0, 0, 0.6);
  --cert-dark: #092938;
  --cert-line: rgba(11, 152, 148, 0.18);
  --cert-radius-xl: 2.5vw;
  --cert-radius-lg: 2.083vw;
  --cert-radius-md: 1.042vw;
}

body {
  color: var(--cert-text);
  background: #fff;
}

.cert-page {
  overflow: hidden;
}

.cert-container {
  width: min(83.333vw, calc(1600 / 1920 * 100vw));
  margin: 0 auto;
}

.cert-section-head {
  display: flex;
  align-items: center;
  gap: 0.573vw;
  margin-bottom: calc(47 / 1920 * 100vw);
}

.cert-section-head--center {
  justify-content: center;
  margin-bottom: 0;
}



.cert-section-kicker {
  flex: 0 0 auto;
}

.cert-section-title {
  display: flex;
  flex-direction: column;
  gap: 1.25vw;
}

.cert-section-title--center {
  align-items: center;
  text-align: center;
}

.cert-section-desc {
  max-width: 36.615vw;
  color: var(--cert-text-soft);
  line-height: 1.5;
}

.cert-title-line {
  width: 19.167vw;
  height: 0.104vw;
  border-radius: calc(999 / 1920 * 100vw);
  background: rgba(105, 105, 105, 0.4);
  position: relative;
}

.cert-title-line::after {
  content: "";
  position: absolute;
  left: 0;
  top: -0.052vw;
  width: 4.792vw;
  height: 0.208vw;
  border-radius: calc(999 / 1920 * 100vw);
  background: var(--cert-primary);
}

.cert-title-line--advantages::after {
  display: none;
}

.cert-title-line--advantages {
  cursor: pointer;
  touch-action: none;
}

.cert-title-line--advantages.is-dragging {
  cursor: grabbing;
}

.cert-title-line--advantages:focus-visible {
  outline: calc(2 / 1920 * 100vw) solid rgba(11, 152, 148, 0.35);
  outline-offset: 0.313vw;
}

.cert-title-line-indicator {
  position: absolute;
  left: 0;
  top: -0.052vw;
  width: 4.792vw;
  height: 0.208vw;
  border-radius: calc(999 / 1920 * 100vw);
  background: var(--cert-primary);
  transform: translateX(0);
  will-change: transform;
  transition: width 0.2s ease;
}

.cert-hero {
  position: relative;
  min-height: 32.031vw;
  background: var(--cert-primary);
}

.cert-hero-bg,
.cert-hero-overlay {
  position: absolute;
  inset: 0;
}

.cert-hero-bg {
  background: var(--cert-primary);
  transform: scaleY(-1) rotate(180deg);
  transform-origin: center;
}

.cert-hero-bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right top;
  display: block;
}

.cert-hero-overlay {
  background: linear-gradient(90deg, rgba(11, 152, 148, 1) 0%, rgba(11, 152, 148, 0.92) 30%, rgba(11, 152, 148, 0.42) 58%, rgba(11, 152, 148, 0) 100%);
}

.cert-hero-inner {
  position: relative;
  z-index: 1;
  min-height: 32.031vw;
  padding-top: 7.292vw;
  padding-bottom: 4.375vw;
}

.cert-hero-title {
  position: absolute;
  left: 0;
  bottom: 7.083vw;
  color: #fff;
  line-height: 1.2;
  font-family: "YouSheBiaoTiHei", "Noto Sans SC", sans-serif;
}

.cert-hero-nav {
  position: absolute;
  right: 16.042vw;
  top: 7.292vw;
  display: flex;
  flex-direction: column;
  gap: 0.208vw;
  width: 8.854vw;
  padding: 0.417vw;
  border-radius: 0.625vw;
  background: rgba(0, 0, 0, 0.2);
}

.cert-hero-link {
  display: flex;
  align-items: center;
  min-height: 2.5vw;
  padding: 0 0.833vw;
  border-radius: 0.625vw;
  color: #fff;
  line-height: 1.5;
}

.cert-hero-link.is-active,
.cert-hero-link:hover,
.cert-hero-link:focus-visible {
  background: var(--cert-primary);
}

.cert-about {
  background: #fff;
}

/* 关于认证：在 pd_100 基础上加大区块顶部留白 */
.cert-about.pd_100 {
  padding-top: 11.333vw;
  margin-bottom: calc(131 / 1920 * 100vw);
}

.cert-about-grid {
  display: grid;
  grid-template-columns: minmax(0, 27.656vw) minmax(0, 40.885vw);
  justify-content: space-between;
  align-items: start;
}

.cert-about-side {
  display: flex;
  flex-direction: column;
}

.cert-about-mark {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  min-height: 20.365vw;
  padding-left: 0.469vw;
}

.cert-about-mark img {
  width: min(27.656vw, calc(531 / 1920 * 100vw));
  height: auto;
  opacity: 0.18;
  object-fit: contain;
}

.cert-about-copy {
  display: flex;
  flex-direction: column;
  gap: 2.5vw;
  padding-top: 0.208vw;
}

.cert-about-copy > .f_24 {
  line-height: 1.5;
}

.cert-about-copy p:last-child,
.cert-science-copy p:last-child,
.cert-branding-copy p,
.cert-product-copy p:last-child {
  color: var(--cert-text-soft);
  line-height: 1.5;
}

/* Figma 9971-6445：全宽 1920×478 薄荷底，右侧 1067×520 视觉区上移 calc(21 / 1920 * 100vw)，并叠加两层横向渐变 */
.cert-science {
  position: relative;
  overflow: hidden;
  padding: 0;
  height: min(calc(478 / 1920 * 100vw), calc(478 / 1920 * 100vw));
}

.cert-science-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: #ddf1ef;
}

.cert-science-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    #ddf1ef 0%,
    #ddf1ef 41.35%,
    rgba(221, 241, 239, 0.7) 61.49%,
    rgba(221, 241, 239, 0) 95.37%
  );
}

.cert-science-grid {
  position: relative;
  z-index: 2;
  min-height: min(calc(478 / 1920 * 100vw), calc(478 / 1920 * 100vw));
}

.cert-science-copy {
  display: flex;
  flex-direction: column;
  gap: min(calc(40 / 1920 * 100vw), calc(40 / 1920 * 100vw));
  justify-content: center;
  width: min(calc(720 / 1920 * 100vw), calc(720 / 1920 * 100vw));
  max-width: min(calc(720 / 1920 * 100vw), calc(720 / 1920 * 100vw));
  min-height: min(calc(478 / 1920 * 100vw), calc(478 / 1920 * 100vw));
  padding:
    min(calc(48 / 1920 * 100vw), calc(48 / 1920 * 100vw))
    min(calc(32 / 1920 * 100vw), calc(32 / 1920 * 100vw))
    min(calc(48 / 1920 * 100vw), calc(48 / 1920 * 100vw))
    0;
  position: relative;
  z-index: 3;
}

.cert-science-visual {
  position: absolute;
  top: min(calc(-21 / 1920 * 100vw), calc(-21 / 1920 * 100vw));
  right: calc((100vw - min(83.333vw, calc(1600 / 1920 * 100vw))) / -2);
  width: min(calc(1067 / 1920 * 100vw), calc(1067 / 1920 * 100vw));
  height: min(calc(520 / 1920 * 100vw), calc(520 / 1920 * 100vw));
  overflow: hidden;
  background: #d9d9d9;
}

.cert-science-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, #ddf1ef 5.32%, rgba(221, 241, 239, 0) 98%);
}

.cert-science-image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  display: block;
  object-fit: contain;
  object-position: center;
  border-radius: 0;
}

.cert-branding-photo-image,
.cert-process-photo img,
.cert-product-photo img,
.cert-about-mark img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.cert-advantage-scroller {
  margin-top: 3.854vw;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  cursor: grab;
  touch-action: pan-x;
  user-select: none;
}

.cert-advantage-scroller:focus-visible {
  outline: calc(2 / 1920 * 100vw) solid rgba(11, 152, 148, 0.35);
  outline-offset: 0.313vw;
}

.cert-advantage-scroller::-webkit-scrollbar {
  display: none;
}

.cert-advantage-scroller.is-dragging {
  cursor: grabbing;
}

.cert-advantage-grid {
  display: flex;
  gap: 5.833vw;
  align-items: flex-start;
  width: max-content;
  padding-right: 5.833vw;
  scroll-snap-type: x proximity;
}

/* 认证核心优势区：容器右侧贴齐区块边界，去掉右侧留白 */
.cert-advantages .cert-container {
  width: calc(100% - ((100vw - min(83.333vw, calc(1600 / 1920 * 100vw))) / 2));
  margin-left: auto;
  margin-right: 0;
  margin-top: calc(58 / 1920 * 100vw);
}

.cert-advantages .cert-advantage-grid {
  padding-right: 0;
}

.cert-advantage-card {
  flex: 0 0 calc(450 / 1920 * 100vw);
  width: calc(450 / 1920 * 100vw);
  height: calc(389 / 1920 * 100vw);
  min-height: calc(389 / 1920 * 100vw);
  padding: 1.875vw 1.25vw;
  border: 0.046vw solid var(--cert-primary);
  border-radius: 0.733vw;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 0.833vw;
  scroll-snap-align: start;
  cursor: pointer;
  transition:
    background 0.25s ease,
    min-height 0.25s ease,
    box-shadow 0.25s ease;
}

.cert-advantage-card:hover,
.cert-advantage-card:focus-visible,
.cert-advantage-card.is-active {
  min-height: 23.958vw;
  background: linear-gradient(90deg, rgba(232, 243, 241, 0.2) 0%, rgba(232, 243, 241, 0.2) 100%), #fff;
}

.cert-advantage-icon {
  width: 3.333vw;
  height: 3.333vw;
  display: block;
  object-fit: contain;
  flex-shrink: 0;
}

.cert-advantage-card p {
  line-height: 1.55;
  color: var(--cert-text-soft);
  transition: color 0.25s ease;
}

.cert-advantage-card:hover p,
.cert-advantage-card:focus-visible p,
.cert-advantage-card.is-active p {
  color: var(--cert-text);
}

.cert-levels {
  --cert-level-gap: 2.656vw;
  --cert-level-card-width: calc(389 / 1920 * 100vw);
  --cert-level-active-width: calc(459 / 1920 * 100vw);
  margin-top: calc(8 / 1920 * 100vw);
}

.cert-level-scroller {
  margin-top: 3.542vw;
  overflow-x: hidden;
  overflow-y: hidden;
  scroll-snap-type: none;
  scrollbar-width: none;
  -ms-overflow-style: none;
  cursor: default;
  touch-action: auto;
  user-select: none;
  padding-inline: 0;
}

.cert-level-scroller::-webkit-scrollbar {
  display: none;
}

.cert-level-scroller.is-dragging {
  cursor: grabbing;
}

.cert-level-scroller:focus-visible {
  outline: calc(2 / 1920 * 100vw) solid rgba(11, 152, 148, 0.35);
  outline-offset: 0.313vw;
}

.cert-level-grid {
  display: flex;
  gap: var(--cert-level-gap);
  align-items: center;
  justify-content: center;
  width: 100%;
}

.cert-level-card {
  position: relative;
  flex: 0 0 var(--cert-level-card-width);
  width: var(--cert-level-card-width);
  height: calc(549 / 1920 * 100vw);
  min-height: calc(549 / 1920 * 100vw);
  padding: 1.484vw 1.667vw;
  border-radius: var(--cert-radius-lg);
  background: var(--cert-primary-soft);
  display: flex;
  flex-direction: column;
  gap: 1.875vw;
  scroll-snap-align: center;
  cursor: pointer;
  opacity: 0.82;
  filter: saturate(0.9);
  transform: scale(0.94);
  transition:
    width 0.35s ease,
    min-height 0.35s ease,
    padding 0.35s ease,
    border-radius 0.35s ease,
    background 0.35s ease,
    color 0.35s ease,
    opacity 0.35s ease,
    filter 0.35s ease,
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

.cert-level-card--active {
  flex-basis: var(--cert-level-active-width);
  width: var(--cert-level-active-width);
  height: calc(626 / 1920 * 100vw);
  min-height: calc(626 / 1920 * 100vw);
  padding: 2.526vw 2.057vw;
  border-radius: 2.5vw;
  background: rgba(11, 152, 148, 0.78);
  color: #fff;
  opacity: 1;
  filter: saturate(1) brightness(1.02);
  transform: scale(1);
  box-shadow: 0 1.25vw 3.125vw rgba(11, 152, 148, 0.18);
}

.cert-level-head {
  display: flex;
  flex-direction: column;
  gap: 0.365vw;
  text-align: center;
}

.cert-level-en {
  color: var(--cert-text-soft);
  line-height: 1.5;
}

.cert-level-card--active .cert-level-en,
.cert-level-card--active p,
.cert-level-card--active h3,
.cert-level-card--active li {
  color: #fff;
}

.cert-level-card--active .f_18 {
  color: #fff;
}

.cert-level-card p {
  line-height: 1.5;
  color: var(--cert-text-soft);
}

.cert-level-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.625vw;
  color: var(--cert-text-soft);
}

.cert-level-list li {
  position: relative;
  padding-left: 1.667vw;
  line-height: 1.5;
}

.cert-level-bullet {
  position: absolute;
  left: 0;
  top: 0.45em;
  width: 0.833vw;
  height: 0.833vw;
  display: block;
}

.cert-level-bullet img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.cert-level-bullet-active {
  opacity: 0;
}

.cert-level-card--active .cert-level-bullet-default {
  opacity: 0;
}

.cert-level-card--active .cert-level-bullet-active {
  opacity: 1;
}

/* 保证激活卡片（深绿色背景）内文字统一为白色，覆盖默认文案色 */
.cert-level-card.cert-level-card--active p,
.cert-level-card.cert-level-card--active li,
.cert-level-card.cert-level-card--active .f_16,
.cert-level-card.cert-level-card--active .f_18,
.cert-level-card.cert-level-card--active .cert-level-en {
  color: #fff;
}

.cert-level-footer {
  margin-top: 2.917vw;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3.021vw;
}

.cert-level-progress {
  width: 34.688vw;
  height: 0.104vw;
  background: #d9d9d9;
  position: relative;
}

.cert-level-progress i {
  position: absolute;
  left: 0;
  top: -0.052vw;
  width: 11.25vw;
  height: 0.208vw;
  background: var(--cert-primary);
}

.cert-level-arrows {
  display: flex;
  gap: 1.25vw;
}

.cert-level-arrow {
  appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5vw;
  height: 2.5vw;
  min-width: 3em;
  min-height: calc(48 / 1920 * 100vw);
  padding: 0;
  border-radius: 50%;
  border: 0.052vw solid var(--cert-primary);
  background: #fff;
  color: var(--cert-primary);
  position: relative;
  cursor: pointer;
  transition: color 0.22s ease, background-color 0.22s ease, border-color 0.22s ease;
}

.cert-level-arrow::after {
  content: none;
}

.cert-level-arrow--prev::after {
  transform: none;
}

.cert-level-arrow--next::after {
  transform: none;
}

.cert-level-arrow-icon {
  width: 0.66vw;
  height: 0.66vw;
  min-width: 0.75em;
  min-height: calc(12 / 1920 * 100vw);
  display: block;
  object-fit: contain;
  /* 默认绿色 */
  filter: brightness(0) saturate(100%) invert(43%) sepia(79%) saturate(702%) hue-rotate(131deg) brightness(90%) contrast(92%);
  transition: filter 0.22s ease;
}

.cert-level-arrow:hover,
.cert-level-arrow:focus-visible {
  color: #fff;
  background-color: var(--cert-primary);
}

.cert-level-arrow:hover .cert-level-arrow-icon,
.cert-level-arrow:focus-visible .cert-level-arrow-icon {
  /* hover/focus 时箭头变白 */
  filter: brightness(0) saturate(100%) invert(100%);
}

.cert-level-arrow:focus-visible {
  outline: calc(2 / 1920 * 100vw) solid var(--cert-primary);
  outline-offset: calc(3 / 1920 * 100vw);
}

.cert-branding-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 39.01vw) minmax(0, 26.094vw);
  gap: 8.646vw;
  align-items: center;
  justify-content: space-between;
  margin-top: calc(16 / 1920 * 100vw);
}

.cert-branding-copy {
  display: flex;
  flex-direction: column;
  gap: 3.542vw;
}

.cert-branding-copy .cert-section-head {
  margin-bottom: 0;
}

.cert-branding-text {
  display: flex;
  flex-direction: column;
  gap: 1.25vw;
}

.cert-process.pd_120.index-depth-item.is-depth-visible {
  padding-top: calc(135 / 1920 * 100vw);
}

.cert-branding-photo {
  position: relative;
  width: min(26.094vw, calc(501 / 1920 * 100vw));
  max-width: 100%;
  border-radius: 2.083vw;
  overflow: hidden;
  min-height: 32.865vw;
  background: #d9d9d9;
  justify-self: end;
  transform: translateX(calc(-90 / 1920 * 100vw));
}

.cert-branding-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.05);
  pointer-events: none;
}

.cert-branding-photo-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.cert-branding-photo-logo {
  position: absolute;
  top: 1.667vw;
  right: calc(5 / 1920 * 100vw);
  z-index: 3;
  width: calc(233 / 1920 * 100vw);
  height: calc(233 / 1920 * 100vw);
  display: block;
  object-fit: contain;
  pointer-events: none;
}

.cert-process-actions {
  display: flex;
  align-items: center;
  gap: 2.188vw;
}

.cert-pill-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.833vw;
  min-height: 2.448vw;
  padding: 0.26vw 0.521vw 0.26vw 1.458vw;
  border: 0.052vw solid var(--cert-primary);
  border-radius: 52.083vw;
  color: var(--cert-primary);
  background: #fff;
  transition:
    background-color 0.22s ease,
    color 0.22s ease,
    border-color 0.22s ease,
    transform 0.22s ease;
}

.cert-pill-btn i {
  width: 1.771vw;
  height: 1.771vw;
  border-radius: 50%;
  background: var(--cert-primary);
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.cert-pill-btn i::after {
  content: none;
}

.cert-pill-btn i.is-down::after {
  transform: none;
}

.cert-pill-btn-icon {
  width: 0.625vw;
  height: 0.625vw;
  min-width: 0.625em;
  min-height: calc(10 / 1920 * 100vw);
  display: block;
  object-fit: contain;
  /* 默认白色 */
  filter: brightness(0) saturate(100%) invert(100%);
  transition: filter 0.22s ease;
}

.cert-pill-btn:hover,
.cert-pill-btn:focus-visible {
  background: var(--cert-primary);
  border-color: var(--cert-primary);
  color: #fff;
  transform: translateY(calc(-2 / 1920 * 100vw));
}

.cert-pill-btn:hover i,
.cert-pill-btn:focus-visible i {
  background: #fff;
}

.cert-pill-btn:hover .cert-pill-btn-icon,
.cert-pill-btn:focus-visible .cert-pill-btn-icon {
  /* hover/focus 时箭头变绿色 */
  filter: brightness(0) saturate(100%) invert(43%) sepia(79%) saturate(702%) hue-rotate(131deg) brightness(90%) contrast(92%);
}

.cert-process-scroll {
  position: relative;
  margin: 4.427vw auto 0;
  max-width: 63.958vw;
  height: calc(610 / 1920 * 100vw);
}

.cert-process-scroll::before,
.cert-process-scroll::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 4.167vw;
  pointer-events: none;
  z-index: 3;
}

.cert-process-scroll::after {
  bottom: 0;
  display: none;
}

.cert-process-scrollbar {
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 0.208vw;
  min-width: 0.25em;
  transform: translateX(-50%);
  background: rgba(11, 152, 148, 0.18);
  z-index: 2;
}

.cert-process-scrollbar-thumb {
  position: absolute;
  left: 50%;
  top: 0;
  width: 100%;
  min-height: 7.188vw;
  height: 9.792vw;
  transform: translateX(-50%);
  background: var(--cert-primary);
}

.cert-process-timeline {
  position: relative;
  height: 100%;
  overflow-y: auto;
  display: grid;
  padding-right: 1.25vw;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.cert-process-timeline::-webkit-scrollbar {
  display: none;
}

.cert-process-step {
  width: calc(50% - 3.646vw);
  display: flex;
  flex-direction: column;
  gap: 1.875vw;
  position: relative;
}

.cert-process-step--left {
  justify-self: start;
}

.cert-process-step--right {
  justify-self: end;
  transform: translateY(-14vw);
}

.cert-process-step--left::before {
  content: none;
}

.cert-process-step--right::before {
  left: -4.219vw;
}

.cert-products.pd_120.index-depth-item.is-depth-visible{
  margin-top: calc(47 / 1920 * 100vw);
  padding-bottom: calc(184 / 1920 * 100vw);
}

.cert-products.pd_120.index-depth-item.is-depth-visible > .cert-container {
  width: calc(1400 / 1920 * 100vw);
  max-width: 100%;
}

.cert-process-photo {
  border-radius: 1.042vw;
  overflow: hidden;
  height: 11.302vw;
  width: calc(391 / 1920 * 100vw);
  position: relative;
}

.cert-process-step--plain .cert-process-photo {
  display: none;
}

.cert-process-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 1.042vw;
  pointer-events: none;
  background: linear-gradient(
    0deg,
    rgba(11, 152, 148, 0.8) -16.22%,
    rgba(11, 152, 148, 0.08) 54.12%
  );
}

.cert-process-copy {
  display: flex;
  flex-direction: column;
  gap: 0.781vw;
}

.cert-process-copy ol {
  color: #696969;
  padding-left: 1.406vw;
}

.cert-process-copy li {
  line-height: 1.5;
}

.cert-process-copy li + li {
  margin-top: 0.417vw;
}

.cert-product-list {
  display: flex;
  flex-direction: column;
  gap: 6.667vw;
}

.cert-product-row {
  display: grid;
  grid-template-columns: minmax(0, 28.542vw) minmax(0, 31.198vw);
  justify-content: space-between;
  align-items: center;
  gap: 6.406vw;
}

.cert-product-row--reverse {
  grid-template-columns: minmax(0, 31.198vw) minmax(0, 28.542vw);
}

.cert-product-copy {
  display: flex;
  flex-direction: column;
  gap: 0.781vw;
}

.cert-product-sub {
  color: var(--cert-primary);
  line-height: 1.5;
}

.cert-product-photo {
  border-radius: var(--cert-radius-xl);
  overflow: hidden;
  min-height: 27.552vw;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
}

.cert-product-photo--large {
  min-height: 30.885vw;
}

.cert-product-photo img {
  object-fit: contain;
}

.cert-loadmore-wrap {
  display: flex;
  justify-content: center;
}

.cert-loadmore {
  min-width: 7.656vw;
  min-height: 2.448vw;
  padding: 0 1.458vw;
  border: 0.052vw solid var(--cert-primary);
  border-radius: 52.083vw;
  background: transparent;
  color: var(--cert-primary);
  cursor: pointer;
}

.cert-loadmore.is-disabled,
.cert-loadmore:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

@media screen and (max-width: 75em) {
  .cert-container {
    width: calc(100% - calc(80 / 1920 * 100vw));
  }

  .cert-advantages .cert-container {
    width: calc(100% - calc(40 / 1920 * 100vw));
  }

  .cert-hero {
    min-height: calc(560 / 1920 * 100vw);
  }

  .cert-hero-inner {
    min-height: calc(560 / 1920 * 100vw);
    padding-top: calc(116 / 1920 * 100vw);
  }

  .cert-hero-title {
    bottom: calc(88 / 1920 * 100vw);
  }

  .cert-hero-nav {
    right: 0;
    width: calc(170 / 1920 * 100vw);
    top: calc(140 / 1920 * 100vw);
    padding: calc(8 / 1920 * 100vw);
    border-radius: calc(12 / 1920 * 100vw);
    gap: calc(4 / 1920 * 100vw);
  }

  .cert-hero-link {
    min-height: calc(48 / 1920 * 100vw);
    padding: 0 calc(16 / 1920 * 100vw);
    border-radius: calc(12 / 1920 * 100vw);
  }

  .cert-about-grid,
  .cert-branding-grid,
  .cert-product-row,
  .cert-product-row--reverse {
    grid-template-columns: 1fr;
    gap: calc(40 / 1920 * 100vw);
    min-height: 0;
  }

  .cert-about-side {
    gap: calc(24 / 1920 * 100vw);
  }

  .cert-advantage-scroller {
    margin-top: calc(32 / 1920 * 100vw);
  }

  .cert-advantage-grid {
    gap: calc(24 / 1920 * 100vw);
    padding-right: calc(24 / 1920 * 100vw);
  }

  .cert-advantages .cert-advantage-grid {
    padding-right: 0;
  }

  .cert-advantage-card {
    flex-basis: calc(320 / 1920 * 100vw);
    width: calc(320 / 1920 * 100vw);
  }

  .cert-levels {
    --cert-level-gap: calc(24 / 1920 * 100vw);
    --cert-level-card-width: min(calc(320 / 1920 * 100vw), calc(100vw - calc(280 / 1920 * 100vw)));
    --cert-level-active-width: min(calc(380 / 1920 * 100vw), calc(100vw - calc(180 / 1920 * 100vw)));
  }

  .cert-level-scroller {
    margin-top: calc(32 / 1920 * 100vw);
    padding-inline: 0;
  }

  .cert-level-grid {
    gap: calc(24 / 1920 * 100vw);
  }

  .cert-level-footer {
    margin-top: calc(32 / 1920 * 100vw);
  }

  .cert-level-progress {
    width: calc(420 / 1920 * 100vw);
    height: calc(2 / 1920 * 100vw);
  }

  .cert-level-progress i {
    top: calc(-1 / 1920 * 100vw);
    height: calc(4 / 1920 * 100vw);
    width: calc(135 / 1920 * 100vw);
  }

  .cert-level-arrow {
    width: calc(48 / 1920 * 100vw);
    height: calc(48 / 1920 * 100vw);
    border-width: calc(1 / 1920 * 100vw);
  }

  .cert-level-arrow-icon {
    width: calc(12 / 1920 * 100vw);
    height: calc(12 / 1920 * 100vw);
    min-width: 0.75em;
    min-height: calc(12 / 1920 * 100vw);
  }

  .cert-advantage-card,
  .cert-level-card,
  .cert-branding-photo,
  .cert-product-photo,
  .cert-product-photo--large {
    min-height: auto;
  }

  .cert-level-card {
    flex-basis: var(--cert-level-card-width);
    width: var(--cert-level-card-width);
    height: auto;
  }

  .cert-level-card--active {
    flex-basis: var(--cert-level-active-width);
    width: var(--cert-level-active-width);
    min-height: auto;
    height: auto;
  }

  .cert-branding-photo {
    width: 100%;
    transform: none;
  }

  .cert-branding-photo-logo {
    top: calc(20 / 1920 * 100vw);
    right: calc(20 / 1920 * 100vw);
    width: calc(52 / 1920 * 100vw);
  }

  .cert-advantage-card:hover,
  .cert-advantage-card:focus-visible,
  .cert-advantage-card.is-active {
    min-height: auto;
  }

  .cert-advantage-icon {
    width: calc(48 / 1920 * 100vw);
    height: calc(48 / 1920 * 100vw);
  }

  .cert-process-actions {
    flex-wrap: wrap;
    justify-content: center;
    gap: calc(20 / 1920 * 100vw);
    margin-top: calc(16 / 1920 * 100vw);
  }

  .cert-pill-btn {
    min-height: calc(47 / 1920 * 100vw);
    padding: calc(5 / 1920 * 100vw) calc(10 / 1920 * 100vw) calc(5 / 1920 * 100vw) calc(28 / 1920 * 100vw);
    border-width: calc(1 / 1920 * 100vw);
  }

  .cert-pill-btn i {
    width: calc(34 / 1920 * 100vw);
    height: calc(34 / 1920 * 100vw);
  }

  .cert-pill-btn-icon {
    width: calc(10 / 1920 * 100vw);
    height: calc(10 / 1920 * 100vw);
    min-width: 0.625em;
    min-height: calc(10 / 1920 * 100vw);
  }

  .cert-process-scroll {
    max-width: 100%;
    height: calc(650 / 1920 * 100vw);
  }

  .cert-process-scroll::before,
  .cert-process-scroll::after {
    height: calc(48 / 1920 * 100vw);
  }

  .cert-process-step,
  .cert-process-step--left,
  .cert-process-step--right {
    width: calc(50% - calc(44 / 1920 * 100vw));
  }

  .cert-process-step--left::before {
    content: none;
  }

  .cert-process-step--right::before {
    left: calc(-52 / 1920 * 100vw);
  }

  .cert-process-photo {
    height: calc(217 / 1920 * 100vw);
    border-radius: calc(20 / 1920 * 100vw);
  }

  .cert-process-copy {
    gap: calc(15 / 1920 * 100vw);
  }

  .cert-process-copy ol {
    padding-left: calc(24 / 1920 * 100vw);
  }

  .cert-product-list {
    gap: calc(56 / 1920 * 100vw);
  }

  .cert-loadmore {
    min-width: 9.1875em;
    min-height: calc(47 / 1920 * 100vw);
    padding: 0 calc(28 / 1920 * 100vw);
    border-width: calc(1 / 1920 * 100vw);
  }

  .cert-section-desc,
  .cert-about-copy,
  .cert-science-copy,
  .cert-branding-copy,
  .cert-product-copy {
    max-width: none;
  }
}

@media screen and (max-width: 48em) {
  .cert-container {
    width: calc(100% - calc(32 / 375 * 100vw));
  }

  .cert-section-title,
  .cert-about-copy,
  .cert-science-copy,
  .cert-branding-copy {
    gap: calc(24 / 375 * 100vw);
  }

  .cert-branding-text {
    gap: calc(16 / 375 * 100vw);
  }

  .cert-hero {
    min-height: calc(420 / 375 * 100vw);
  }

  .cert-hero-bg {
    background-position: center;
  }

  .cert-hero-inner {
    min-height: calc(420 / 375 * 100vw);
    padding-top: calc(96 / 375 * 100vw);
    padding-bottom: calc(48 / 375 * 100vw);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: calc(24 / 375 * 100vw);
  }

  .cert-hero-title {
    position: static;
    color: #fff;
  }

  .cert-hero-nav {
    position: static;
    width: 100%;
    max-width: 13.75em;
    padding: calc(8 / 375 * 100vw);
    border-radius: calc(12 / 375 * 100vw);
  }

  .cert-about-mark {
    min-height: calc(160 / 375 * 100vw);
    padding-left: 0;
  }

  .cert-about-mark img {
    width: min(calc(280 / 375 * 100vw), 78vw);
  }

  .cert-science {
    height: auto;
    padding: calc(48 / 375 * 100vw) 0;
    min-height: 0;
  }

  .cert-science-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: calc(24 / 375 * 100vw);
    min-height: 0;
  }

  .cert-science-copy {
    gap: calc(24 / 375 * 100vw);
    width: 100%;
    max-width: 100%;
    min-height: 0;
    padding: 0;
  }

  .cert-science-visual {
    position: relative;
    top: auto;
    right: auto;
    width: 100%;
    height: auto;
    min-height: calc(220 / 375 * 100vw);
    border-radius: calc(24 / 375 * 100vw);
  }

  .cert-science-visual::after {
    background: linear-gradient(180deg, #ddf1ef 0%, rgba(221, 241, 239, 0.55) 35%, rgba(221, 241, 239, 0) 75%);
  }

  .cert-science,
  .cert-about,
  .cert-advantages,
  .cert-levels,
  .cert-branding,
  .cert-process,
  .cert-products {
    padding-top: calc(48 / 375 * 100vw);
    padding-bottom: calc(48 / 375 * 100vw);
  }

  .cert-about.pd_100 {
    padding-top: calc(72 / 375 * 100vw);
  }

  .cert-branding-photo,
  .cert-product-photo,
  .cert-product-photo--large {
    border-radius: calc(24 / 375 * 100vw);
  }

  .cert-science-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    transform: none;
    object-fit: contain;
    object-position: center;
    border-radius: 0;
  }

  .cert-title-line {
    width: calc(180 / 375 * 100vw);
    height: calc(2 / 375 * 100vw);
  }

  .cert-title-line::after {
    top: calc(-1 / 375 * 100vw);
    width: calc(72 / 375 * 100vw);
    height: calc(4 / 375 * 100vw);
  }

  .cert-title-line--advantages .cert-title-line-indicator {
    top: calc(-1 / 375 * 100vw);
    width: calc(72 / 375 * 100vw);
    height: calc(4 / 375 * 100vw);
  }

  .cert-advantages .cert-container {
    width: calc(100% - calc(32 / 375 * 100vw));
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }

  .cert-title-line--advantages {
    display: none;
  }

  .cert-advantage-scroller {
    margin-top: calc(24 / 375 * 100vw);
    overflow: visible;
    cursor: default;
    touch-action: auto;
  }

  .cert-advantage-grid {
    flex-direction: column;
    width: 100%;
    gap: calc(16 / 375 * 100vw);
    padding-right: 0;
  }

  .cert-advantage-card {
    position: relative;
    flex-basis: auto;
    width: 100%;
    min-height: 0;
    padding: calc(18 / 375 * 100vw) calc(16 / 375 * 100vw);
    border-radius: calc(16 / 375 * 100vw);
    gap: calc(14 / 375 * 100vw);
    border: calc(1 / 375 * 100vw) solid rgba(11, 152, 148, 0.22);
    background: linear-gradient(180deg, rgba(223, 242, 240, 0.65) 0%, rgba(255, 255, 255, 0) 70%), #fff;
    box-shadow: 0 calc(10 / 375 * 100vw) calc(26 / 375 * 100vw) rgba(9, 41, 56, 0.1);
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    overflow: hidden;
  }

  .cert-advantage-card::before {
    position: absolute;
    top: calc(12 / 375 * 100vw);
    right: calc(14 / 375 * 100vw);
    z-index: 0;
    pointer-events: none;
    color: rgba(11, 152, 148, 0.22);
    font-family: "Oswald", "Noto Sans SC", sans-serif;
    font-size: calc(22 / 375 * 100vw);
    letter-spacing: 0.06em;
    line-height: 1;
  }

  .cert-advantage-card:nth-child(1)::before { content: "01"; }
  .cert-advantage-card:nth-child(2)::before { content: "02"; }
  .cert-advantage-card:nth-child(3)::before { content: "03"; }
  .cert-advantage-card:nth-child(4)::before { content: "04"; }

  .cert-advantage-icon {
    position: relative;
    z-index: 1;
    width: calc(44 / 375 * 100vw);
    height: calc(44 / 375 * 100vw);
    flex: 0 0 auto;
    padding: calc(10 / 375 * 100vw);
    border-radius: calc(14 / 375 * 100vw);
    background: rgba(223, 242, 240, 0.95);
    border: calc(1 / 375 * 100vw) solid rgba(11, 152, 148, 0.18);
    box-sizing: border-box;
  }

  .cert-advantage-card:hover,
  .cert-advantage-card:focus-visible,
  .cert-advantage-card.is-active {
    min-height: 0;
  }

  .cert-advantage-card p {
    position: relative;
    z-index: 1;
    flex: 1;
    margin: 0;
    line-height: 1.65;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .cert-levels {
    --cert-level-gap: calc(16 / 375 * 100vw);
    --cert-level-card-width: calc(100vw - calc(104 / 375 * 100vw));
    --cert-level-active-width: calc(100vw - calc(64 / 375 * 100vw));
  }

  .cert-level-scroller {
    margin-top: calc(24 / 375 * 100vw);
    padding-inline: 0;
  }

  .cert-level-arrow {
    width: calc(48 / 375 * 100vw);
    height: calc(48 / 375 * 100vw);
    min-width: calc(48 / 375 * 100vw);
    min-height: calc(48 / 375 * 100vw);
    border-width: calc(1 / 375 * 100vw);
  }

  .cert-level-arrow-icon {
    width: calc(12 / 375 * 100vw);
    height: calc(12 / 375 * 100vw);
    min-width: calc(12 / 375 * 100vw);
    min-height: calc(12 / 375 * 100vw);
  }

  .cert-level-grid {
    gap: calc(16 / 375 * 100vw);
  }

  .cert-level-card,
  .cert-level-card--active {
    min-height: 0;
    padding: calc(24 / 375 * 100vw) calc(20 / 375 * 100vw);
    border-radius: calc(24 / 375 * 100vw);
    gap: calc(24 / 375 * 100vw);
  }

  .cert-level-card {
    flex-basis: var(--cert-level-card-width);
    width: var(--cert-level-card-width);
    height: auto;
  }

  .cert-level-card--active {
    flex-basis: var(--cert-level-active-width);
    width: var(--cert-level-active-width);
    height: auto;
  }

  .cert-branding-photo {
    width: 100%;
    transform: none;
  }

  .cert-branding-photo-logo {
    top: calc(16 / 375 * 100vw);
    right: calc(16 / 375 * 100vw);
    width: calc(40 / 375 * 100vw);
  }

  .cert-level-list {
    gap: calc(10 / 375 * 100vw);
  }

  .cert-level-list li {
    padding-left: calc(20 / 375 * 100vw);
  }

  .cert-level-list li::before {
    width: calc(10 / 375 * 100vw);
    height: calc(10 / 375 * 100vw);
  }

  .cert-level-footer {
    gap: calc(16 / 375 * 100vw);
    flex-wrap: wrap;
  }

  .cert-level-progress {
    width: 100%;
    max-width: 17.5em;
  }

  .cert-level-progress i {
    width: calc(92 / 375 * 100vw);
  }

  .cert-process-actions {
    flex-direction: column;
    align-items: stretch;
    gap: calc(12 / 375 * 100vw);
    margin-top: calc(18 / 375 * 100vw);
  }

  .cert-pill-btn {
    width: 100%;
    justify-content: space-between;
    min-height: calc(44 / 375 * 100vw);
    padding: calc(8 / 375 * 100vw) calc(12 / 375 * 100vw) calc(8 / 375 * 100vw) calc(18 / 375 * 100vw);
    border-width: calc(1 / 375 * 100vw);
  }

  .cert-pill-btn i {
    width: calc(34 / 375 * 100vw);
    height: calc(34 / 375 * 100vw);
  }

  .cert-pill-btn-icon {
    width: calc(10 / 375 * 100vw);
    height: calc(10 / 375 * 100vw);
  }

  .cert-process-scroll {
    height: auto;
    margin-top: calc(32 / 375 * 100vw);
  }

  .cert-process-scroll::before,
  .cert-process-scroll::after,
  .cert-process-scrollbar {
    display: none;
  }

  .cert-process-timeline {
    display: flex;
    flex-direction: column;
    gap: calc(28 / 375 * 100vw);
    height: auto;
    overflow: visible;
    padding-right: 0;
  }

  .cert-process-step,
  .cert-process-step--left,
  .cert-process-step--right {
    width: 100%;
  }

  .cert-process-step--right {
    transform: none;
  }

  .cert-process-step,
  .cert-process-step--plain {
    padding: calc(20 / 375 * 100vw) calc(18 / 375 * 100vw);
    border: calc(1 / 375 * 100vw) solid rgba(11, 152, 148, 0.16);
    border-radius: calc(20 / 375 * 100vw);
    background: #fff;
  }

  .cert-process-step {
    gap: calc(16 / 375 * 100vw);
  }

  .cert-process-photo {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    border-radius: calc(16 / 375 * 100vw);
  }

  .cert-process-step--plain {
    background: #f7fbfb;
  }

  .cert-process-copy {
    gap: calc(12 / 375 * 100vw);
  }

  .cert-process-copy ol {
    padding-left: calc(20 / 375 * 100vw);
  }

  .cert-process-copy li + li {
    margin-top: calc(6 / 375 * 100vw);
  }

  .cert-product-list {
    margin-top: calc(28 / 375 * 100vw);
    gap: calc(40 / 375 * 100vw);
  }

  .cert-product-photo,
  .cert-product-photo--large {
    min-height: calc(220 / 375 * 100vw);
    border-radius: calc(24 / 375 * 100vw);
  }

  .cert-loadmore-wrap {
    margin-top: calc(24 / 375 * 100vw);
  }
}
