*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  background: #069848;
}

body {
  margin: 0;
  min-height: 100dvh;
  color: var(--color-white);
  background: var(--color-black);
  font-family: var(--font-en), var(--font-ja), sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.75;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricprecision;
}

button,
input,
select,
textarea {
  border: 0;
  border-radius: 0;
  color: inherit;
  font: inherit;
}

button {
  cursor: pointer;
}

a {
  color: inherit;
  text-decoration: none;
}

img,
svg {
  display: block;
  max-width: 100%;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

h1,
h2,
p,
figure,
dl,
dd {
  margin: 0;
}

:root {
  --font-ja: "Noto Sans JP";
  --font-en: "neue-haas-unica";
  --color-base: #E7E7CB;
  --color-main: #069848;
  --color-accent: #F9D30A;
  --color-white: var(--color-base);
  --color-black: var(--color-main);
  --color-bg: var(--color-base);
  --color-blue-light: var(--color-base);
  --color-blue-dark: var(--color-main);
  --color-green: var(--color-main);
  --color-purple: var(--color-accent);
  --color-yellow: var(--color-base);
  --color-orange: var(--color-accent);
  --lp-max-width: 480px;
  --lp-frame-width: min(100vw, var(--lp-max-width));
  --lp-frame-left: calc((100vw - var(--lp-frame-width)) / 2);
  --pad: clamp(1.125rem, 5.2vw, 1.6rem);
  --lp-header-height: 3.5rem;
  --vh-scale: clamp(.62, calc(100dvh / 844px), 1);
  --ease: cubic-bezier(.16, 1, .3, 1);
}

@property --text-reveal {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}

::selection {
  color: var(--color-main);
  background: var(--color-accent);
}

.lp-header {
  z-index: 20;
  pointer-events: none;
  width: var(--lp-frame-width);
  max-width: var(--lp-max-width);
  padding: .85rem var(--pad);
  position: fixed;
  top: 0;
  left: var(--lp-frame-left);
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: rgb(231 231 203 / .94);
  box-shadow: 0 .45rem 1.3rem rgb(6 152 72 / .08);
  opacity: 1;
  transform: translateY(0);
  transition:
    opacity .35s var(--ease),
    transform .35s var(--ease);
}

.is-intro-visible .lp-header {
  pointer-events: none;
  opacity: 0;
  transform: translateY(-.75rem);
}

.lp-header > * {
  pointer-events: auto;
}

.lp-logo {
  display: inline-flex;
  align-items: center;
  line-height: 1;
}

.lp-logo img {
  width: 8.15rem;
  height: auto;
}

.lp-header-nav {
  display: flex;
  align-items: center;
  gap: .5rem;
}

.lp-logo-mark {
  width: 2.875rem;
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    linear-gradient(145deg, transparent 49%, var(--color-white) 50% 54%, transparent 55%),
    linear-gradient(25deg, transparent 43%, var(--color-white) 44% 48%, transparent 49%),
    var(--color-black);
  border: 1px solid rgb(231 231 203 / .35);
}

.lp-header-cta {
  min-height: 2.25rem;
  padding: .62rem .95rem;
  color: var(--color-main);
  background: var(--color-accent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  clip-path: inset(0);
  white-space: nowrap;
}

.pc-side-logo,
.pc-side-cta {
  display: none;
}

.swipe-container {
  width: var(--lp-frame-width);
  max-width: var(--lp-max-width);
  height: 100dvh;
  margin-left: var(--lp-frame-left);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-y: contain;
  scroll-snap-type: y mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: auto;
  box-shadow:
    0 0 0 1px rgb(6 152 72 / .14),
    0 1.8rem 4.2rem rgb(0 72 34 / .24),
    0 .55rem 1.4rem rgb(0 0 0 / .12);
}

.swipe-container.is-programmatic-scroll {
  overflow-y: hidden;
  scroll-snap-type: none;
}

.swipe-container.is-tall-section-scroll {
  scroll-snap-type: none;
}

.swipe-container::-webkit-scrollbar {
  display: none;
}

.screen {
  width: 100%;
  height: 100dvh;
  min-height: 100dvh;
  max-height: 100dvh;
  scroll-snap-align: start;
  scroll-snap-stop: always;
  position: relative;
  display: grid;
  align-items: stretch;
  overflow: hidden;
}

.screen::before {
  content: "";
  width: 118%;
  height: 62dvh;
  position: absolute;
  left: 50%;
  bottom: -20dvh;
  z-index: 0;
  pointer-events: none;
  background: var(--shape-tone);
  clip-path: polygon(50% 0, 100% 100%, 71% 100%, 50% 38%, 29% 100%, 0 100%);
  opacity: .1;
  transform: translateX(-50%);
}

.screen-intro-video {
  background: var(--color-black);
  isolation: isolate;
}

.screen-intro-video::before {
  content: none;
}

.intro-video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.intro-scroll-cue {
  position: absolute;
  left: 50%;
  bottom: max(1.8rem, env(safe-area-inset-bottom));
  z-index: 2;
  display: grid;
  justify-items: center;
  gap: .35rem;
  color: rgb(231 231 203 / .9);
  font-size: .72rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .18em;
  text-shadow: 0 .12rem .7rem rgb(0 0 0 / .45);
  transform: translateX(-50%);
}

.intro-scroll-arrow {
  width: 2rem;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border: 1px solid rgb(231 231 203 / .72);
  border-radius: 50%;
  font-size: 1rem;
  letter-spacing: 0;
  animation: intro-scroll-bounce 1.8s var(--ease) infinite;
}

@keyframes intro-scroll-bounce {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(.45rem);
  }
}

.has-section-motion .screen:not(.screen-intro-video) .eyebrow,
.has-section-motion .screen:not(.screen-intro-video) .hero-title,
.has-section-motion .screen:not(.screen-intro-video) .section-title,
.has-section-motion .screen:not(.screen-intro-video) .body-copy,
.has-section-motion .screen:not(.screen-intro-video) .lead-block,
.has-section-motion .screen:not(.screen-intro-video) .closing-copy,
.has-section-motion .screen:not(.screen-intro-video) .large-answer,
.has-section-motion .screen:not(.screen-intro-video) .scroll-label,
.has-section-motion .screen:not(.screen-intro-video) .qualification,
.has-section-motion .screen:not(.screen-intro-video) .block-label,
.has-section-motion .screen:not(.screen-intro-video) .reward-lead,
.has-section-motion .screen:not(.screen-intro-video) .reward-close,
.has-section-motion .screen:not(.screen-intro-video) .flow-dx-heading,
.has-section-motion .screen:not(.screen-intro-video) .flow-dx-lead,
.has-section-motion .screen:not(.screen-intro-video) .flow-dx-close {
  opacity: 0;
  filter: blur(.55rem);
  transform: translate3d(0, 1.15rem, 0);
  transition:
    opacity .82s var(--ease),
    filter .82s var(--ease),
    transform .82s var(--ease);
  transition-delay: var(--motion-delay, 0ms);
}

.has-section-motion .screen.is-active:not(.screen-intro-video) .eyebrow,
.has-section-motion .screen.is-active:not(.screen-intro-video) .hero-title,
.has-section-motion .screen.is-active:not(.screen-intro-video) .section-title,
.has-section-motion .screen.is-active:not(.screen-intro-video) .body-copy,
.has-section-motion .screen.is-active:not(.screen-intro-video) .lead-block,
.has-section-motion .screen.is-active:not(.screen-intro-video) .closing-copy,
.has-section-motion .screen.is-active:not(.screen-intro-video) .large-answer,
.has-section-motion .screen.is-active:not(.screen-intro-video) .scroll-label,
.has-section-motion .screen.is-active:not(.screen-intro-video) .qualification,
.has-section-motion .screen.is-active:not(.screen-intro-video) .block-label,
.has-section-motion .screen.is-active:not(.screen-intro-video) .reward-lead,
.has-section-motion .screen.is-active:not(.screen-intro-video) .reward-close,
.has-section-motion .screen.is-active:not(.screen-intro-video) .flow-dx-heading,
.has-section-motion .screen.is-active:not(.screen-intro-video) .flow-dx-lead,
.has-section-motion .screen.is-active:not(.screen-intro-video) .flow-dx-close {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
}

.has-section-motion .screen:not(.screen-intro-video) .eyebrow,
.has-section-motion .screen:not(.screen-intro-video) .body-copy,
.has-section-motion .screen:not(.screen-intro-video) .lead-block,
.has-section-motion .screen:not(.screen-intro-video) .lead-block p,
.has-section-motion .screen:not(.screen-intro-video) .closing-copy,
.has-section-motion .screen:not(.screen-intro-video) .scroll-label,
.has-section-motion .screen:not(.screen-intro-video) .block-label,
.has-section-motion .screen:not(.screen-intro-video) .reward-lead,
.has-section-motion .screen:not(.screen-intro-video) .flow-dx-lead,
.has-section-motion .screen:not(.screen-intro-video) .qualification span,
.has-section-motion .screen:not(.screen-intro-video) .info-list dt,
.has-section-motion .screen:not(.screen-intro-video) .info-list dd {
  opacity: 1;
  filter: none;
}

.has-section-motion .screen:not(.screen-intro-video) .eyebrow,
.has-section-motion .screen:not(.screen-intro-video) .body-copy,
.has-section-motion .screen:not(.screen-intro-video) .lead-block p,
.has-section-motion .screen:not(.screen-intro-video) .closing-copy,
.has-section-motion .screen:not(.screen-intro-video) .scroll-label,
.has-section-motion .screen:not(.screen-intro-video) .block-label,
.has-section-motion .screen:not(.screen-intro-video) .reward-lead,
.has-section-motion .screen:not(.screen-intro-video) .flow-dx-lead,
.has-section-motion .screen:not(.screen-intro-video) .qualification span,
.has-section-motion .screen:not(.screen-intro-video) .info-list dt,
.has-section-motion .screen:not(.screen-intro-video) .info-list dd,
.has-section-motion .screen:not(.screen-intro-video) .flow-dx-text p,
.has-section-motion .screen:not(.screen-intro-video) .person-requirement small,
.has-section-motion .screen:not(.screen-intro-video) .person-list-title {
  --text-reveal: 0%;
  opacity: 1;
  -webkit-mask-image:
    linear-gradient(
      90deg,
      #000 0 var(--text-reveal),
      rgb(0 0 0 / .36) calc(var(--text-reveal) + 11%),
      rgb(0 0 0 / .36) 100%
    );
  mask-image:
    linear-gradient(
      90deg,
      #000 0 var(--text-reveal),
      rgb(0 0 0 / .36) calc(var(--text-reveal) + 11%),
      rgb(0 0 0 / .36) 100%
    );
  transform: translate3d(-.18rem, .16rem, 0);
  transition:
    --text-reveal 1.08s cubic-bezier(.76, 0, .24, 1),
    transform .9s var(--ease);
  transition-delay: var(--motion-delay, 0ms);
}

.has-section-motion .screen.is-active:not(.screen-intro-video) .eyebrow,
.has-section-motion .screen.is-active:not(.screen-intro-video) .body-copy,
.has-section-motion .screen.is-active:not(.screen-intro-video) .lead-block p,
.has-section-motion .screen.is-active:not(.screen-intro-video) .closing-copy,
.has-section-motion .screen.is-active:not(.screen-intro-video) .scroll-label,
.has-section-motion .screen.is-active:not(.screen-intro-video) .block-label,
.has-section-motion .screen.is-active:not(.screen-intro-video) .reward-lead,
.has-section-motion .screen.is-active:not(.screen-intro-video) .flow-dx-lead,
.has-section-motion .screen.is-active:not(.screen-intro-video) .qualification span,
.has-section-motion .screen.is-active:not(.screen-intro-video) .info-list dt,
.has-section-motion .screen.is-active:not(.screen-intro-video) .info-list dd,
.has-section-motion .screen.is-active:not(.screen-intro-video) .flow-dx-text p,
.has-section-motion .screen.is-active:not(.screen-intro-video) .person-requirement small,
.has-section-motion .screen.is-active:not(.screen-intro-video) .person-list-title {
  --text-reveal: 100%;
  opacity: 1;
  color: inherit;
  transform: translate3d(0, 0, 0);
}

.has-section-motion .screen:not(.screen-intro-video) .lead-block p:nth-child(1) {
  --motion-delay: 230ms;
}

.has-section-motion .screen:not(.screen-intro-video) .lead-block p:nth-child(2) {
  --motion-delay: 390ms;
}

.has-section-motion .screen:not(.screen-intro-video) .lead-block p:nth-child(3) {
  --motion-delay: 560ms;
}

.has-section-motion .screen .eyebrow,
.has-section-motion .screen .flow-dx-heading {
  --motion-delay: 40ms;
}

.has-section-motion .screen .hero-title,
.has-section-motion .screen .section-title {
  --motion-delay: 120ms;
}

.has-section-motion .screen .body-copy,
.has-section-motion .screen .lead-block,
.has-section-motion .screen .qualification,
.has-section-motion .screen .reward-lead,
.has-section-motion .screen .flow-dx-lead {
  --motion-delay: 230ms;
}

.has-section-motion .screen .closing-copy,
.has-section-motion .screen .large-answer,
.has-section-motion .screen .reward-close,
.has-section-motion .screen .flow-dx-close,
.has-section-motion .screen .scroll-label {
  --motion-delay: 520ms;
}

.has-section-motion .screen:not(.screen-intro-video) .hero-image,
.has-section-motion .screen:not(.screen-intro-video) .wide-image,
.has-section-motion .screen:not(.screen-intro-video) .marquee-visual,
.has-section-motion .screen:not(.screen-intro-video) .section-icon {
  opacity: 0;
  filter: blur(.35rem) saturate(.72);
  transform: translate3d(0, 1.35rem, 0) scale(.96);
  transition:
    opacity .9s var(--ease),
    filter .9s var(--ease),
    transform .9s var(--ease);
  transition-delay: 260ms;
}

.has-section-motion .screen.is-active:not(.screen-intro-video) .hero-image,
.has-section-motion .screen.is-active:not(.screen-intro-video) .wide-image,
.has-section-motion .screen.is-active:not(.screen-intro-video) .marquee-visual,
.has-section-motion .screen.is-active:not(.screen-intro-video) .section-icon {
  opacity: 1;
  filter: blur(0) saturate(1);
  transform: translate3d(0, 0, 0) scale(1);
}

.has-section-motion .screen.is-active:not(.screen-intro-video) .hero-image,
.has-section-motion .screen.is-active:not(.screen-intro-video) .wide-image,
.has-section-motion .screen.is-active:not(.screen-intro-video) .marquee-visual {
  animation: luxe-image-float 7s ease-in-out 1s infinite;
}

.has-section-motion .screen.is-active:not(.screen-intro-video) .section-icon {
  animation: luxe-icon-float 4.8s ease-in-out 1s infinite;
}

.hero-image::after,
.wide-image::after,
.marquee-visual::before,
.reward-card::after,
.flow-dx-panel::before {
  pointer-events: none;
}

.hero-image::after,
.wide-image::after,
.marquee-visual::before,
.reward-card::after {
  content: "";
  width: 38%;
  height: 140%;
  position: absolute;
  top: -20%;
  left: -58%;
  z-index: 3;
  background: linear-gradient(90deg, transparent, rgb(255 255 255 / .42), transparent);
  mix-blend-mode: screen;
  opacity: 0;
  transform: skewX(-18deg);
}

.has-section-motion .screen.is-active .hero-image::after,
.has-section-motion .screen.is-active .wide-image::after,
.has-section-motion .screen.is-active .marquee-visual::before,
.has-section-motion .screen.is-active .reward-card::after {
  animation: luxe-shine 1.35s var(--ease) .45s both;
}

.has-section-motion .screen:not(.screen-intro-video) .dot-list li,
.has-section-motion .screen:not(.screen-intro-video) .chip-row li,
.has-section-motion .screen:not(.screen-intro-video) .mini-grid li,
.has-section-motion .screen:not(.screen-intro-video) .tag-list li,
.has-section-motion .screen:not(.screen-intro-video) .step-list li,
.has-section-motion .screen:not(.screen-intro-video) .flow-step-card,
.has-section-motion .screen:not(.screen-intro-video) .flow-dx-list li,
.has-section-motion .screen:not(.screen-intro-video) .reward-card,
.has-section-motion .screen:not(.screen-intro-video) .info-list > div,
.has-section-motion .screen:not(.screen-intro-video) .entry-form label,
.has-section-motion .screen:not(.screen-intro-video) .round-button {
  opacity: 0;
  filter: blur(.45rem);
  transform: translate3d(0, .85rem, 0) scale(.97);
  transition:
    opacity .72s var(--ease),
    filter .72s var(--ease),
    transform .72s var(--ease),
    box-shadow .72s var(--ease);
  transition-delay: calc(260ms + (var(--stagger-index, 0) * 70ms));
}

.has-section-motion .screen.is-active:not(.screen-intro-video) .dot-list li,
.has-section-motion .screen.is-active:not(.screen-intro-video) .chip-row li,
.has-section-motion .screen.is-active:not(.screen-intro-video) .mini-grid li,
.has-section-motion .screen.is-active:not(.screen-intro-video) .tag-list li,
.has-section-motion .screen.is-active:not(.screen-intro-video) .step-list li,
.has-section-motion .screen.is-active:not(.screen-intro-video) .flow-step-card,
.has-section-motion .screen.is-active:not(.screen-intro-video) .flow-dx-list li,
.has-section-motion .screen.is-active:not(.screen-intro-video) .reward-card,
.has-section-motion .screen.is-active:not(.screen-intro-video) .info-list > div,
.has-section-motion .screen.is-active:not(.screen-intro-video) .entry-form label,
.has-section-motion .screen.is-active:not(.screen-intro-video) .round-button {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0) scale(1);
}

.dot-list li:nth-child(1),
.chip-row li:nth-child(1),
.mini-grid li:nth-child(1),
.tag-list li:nth-child(1),
.step-list li:nth-child(1),
.flow-dx-list li:nth-child(1),
.reward-card:nth-child(1),
.info-list > div:nth-child(1),
.entry-form label:nth-child(1) {
  --stagger-index: 0;
}

.dot-list li:nth-child(2),
.chip-row li:nth-child(2),
.mini-grid li:nth-child(2),
.tag-list li:nth-child(2),
.step-list li:nth-child(2),
.flow-dx-list li:nth-child(2),
.reward-card:nth-child(2),
.info-list > div:nth-child(2),
.entry-form label:nth-child(2) {
  --stagger-index: 1;
}

.dot-list li:nth-child(3),
.chip-row li:nth-child(3),
.mini-grid li:nth-child(3),
.tag-list li:nth-child(3),
.step-list li:nth-child(3),
.flow-dx-list li:nth-child(3),
.reward-card:nth-child(3),
.info-list > div:nth-child(3),
.entry-form label:nth-child(3) {
  --stagger-index: 2;
}

.dot-list li:nth-child(4),
.chip-row li:nth-child(4),
.mini-grid li:nth-child(4),
.tag-list li:nth-child(4),
.step-list li:nth-child(4),
.reward-card:nth-child(4),
.info-list > div:nth-child(4),
.entry-form label:nth-child(4) {
  --stagger-index: 3;
}

.dot-list li:nth-child(n+5),
.chip-row li:nth-child(n+5),
.mini-grid li:nth-child(n+5),
.tag-list li:nth-child(n+5),
.step-list li:nth-child(n+5),
.info-list > div:nth-child(n+5),
.entry-form label:nth-child(n+5),
.round-button {
  --stagger-index: 4;
}

.has-section-motion .screen.is-active .hero-title-text,
.has-section-motion .screen.is-active .section-title,
.has-section-motion .screen.is-active .large-answer,
.has-section-motion .screen.is-active .reward-close,
.has-section-motion .screen.is-active .flow-dx-close {
  animation: luxe-text-glow 1.25s var(--ease) .2s both;
}

.has-section-motion .screen.is-active:not(.screen-hero):not(.section-career):not(.section-issue):not(.section-field):not(.section-flow):not(.section-reward):not(.section-strength):not(.section-requirements)::before {
  animation: luxe-bg-pulse 8s ease-in-out infinite;
}

@keyframes luxe-image-float {
  0%,
  100% {
    transform: translate3d(0, 0, 0) scale(1);
  }

  50% {
    transform: translate3d(0, -.28rem, 0) scale(1.012);
  }
}

@keyframes luxe-icon-float {
  0%,
  100% {
    transform: translate3d(0, 0, 0) rotate(0deg);
  }

  50% {
    transform: translate3d(0, -.3rem, 0) rotate(-2deg);
  }
}

@keyframes luxe-shine {
  0% {
    left: -58%;
    opacity: 0;
  }

  18%,
  78% {
    opacity: .58;
  }

  100% {
    left: 118%;
    opacity: 0;
  }
}

@keyframes luxe-text-glow {
  0% {
    filter: brightness(1);
  }

  45% {
    filter: brightness(1.18) drop-shadow(0 .18rem .8rem rgb(249 211 10 / .24));
  }

  100% {
    filter: brightness(1);
  }
}

@keyframes luxe-bg-pulse {
  0%,
  100% {
    opacity: .1;
  }

  50% {
    opacity: .18;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;
  }

  .has-section-motion .screen * {
    opacity: 1 !important;
    clip-path: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    filter: none !important;
    transform: none !important;
  }
}

.contact-screen {
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.contact-screen .screen-inner {
  overflow-x: hidden;
  overflow-y: auto;
  padding-bottom: 2.5rem;
  justify-content: flex-start;
  overscroll-behavior: contain;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.contact-screen .screen-inner::-webkit-scrollbar {
  display: none;
}

.section-requirements {
  --muted: rgb(231 231 203 / .72);
  --line: rgb(231 231 203 / .22);
  height: 100dvh;
  min-height: 100dvh;
  max-height: 100dvh;
  color: var(--color-base);
  background: var(--color-main);
  overflow: hidden;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.section-requirements::before {
  width: 100%;
  height: 100%;
  min-height: 100dvh;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(140deg, transparent 0 31%, rgb(231 231 203 / .12) 31% 50%, transparent 50% 100%),
    linear-gradient(220deg, transparent 0 31%, rgb(0 72 34 / .18) 31% 50%, transparent 50% 100%);
  background-repeat: repeat-y;
  background-size: 100% 30rem;
  background-position: center -7rem;
  clip-path: none;
  opacity: 1;
  transform: none;
}

.section-requirements .screen-inner {
  height: 100dvh;
  min-height: 0;
  max-height: 100dvh;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 3rem;
  justify-content: flex-start;
  gap: 2.15rem;
}

.section-requirements .screen-inner::-webkit-scrollbar {
  display: none;
}

.requirements-block {
  width: 100%;
  position: relative;
  z-index: 1;
  display: grid;
  gap: .78rem;
  margin-bottom: 2rem;
}

.section-requirements .eyebrow,
.section-requirements .block-label {
  color: var(--color-accent);
}

.section-requirements .section-title {
  color: var(--color-base);
}

.section-requirements .section-icon {
  filter: brightness(0) saturate(100%) invert(90%) sepia(14%) saturate(406%) hue-rotate(16deg) brightness(102%) contrast(84%);
}

.section-requirements > .screen-inner > .requirements-block:first-child {
  gap: .78rem;
}

.section-requirements > .screen-inner > .requirements-block:first-child .eyebrow {
  width: fit-content;
  color: #fff !important;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  position: relative;
}

.section-requirements > .screen-inner > .requirements-block:first-child .eyebrow::after {
  content: "";
  width: 2.35rem;
  height: .16rem;
  display: block;
  margin-top: .28rem;
  background: var(--color-accent);
}

.section-requirements > .screen-inner > .requirements-block:first-child .section-icon {
  display: none;
}

.section-requirements > .screen-inner > .requirements-block:first-child .compact-title {
  width: min(100%, 19rem);
  margin: -.18rem 0 0;
  color: #fff !important;
  font-size: clamp(1.78rem, 8.4vw, 2.42rem);
  line-height: 1.18;
  letter-spacing: .02em;
  text-align: left;
}

.section-requirements .info-list div {
  border-bottom-color: rgb(231 231 203 / .24);
}

.section-requirements .info-list dt {
  color: rgb(231 231 203 / .66);
}

.section-requirements .info-list dd {
  color: var(--color-base);
}

.section-requirements .dot-list li,
.section-requirements .tag-list li {
  color: var(--color-main);
  background: rgb(231 231 203 / .94);
}

.section-requirements .section-benefits .block-label {
  color: var(--color-accent);
}

.section-requirements .marquee-visual {
  box-shadow: 0 .75rem 1.7rem rgb(0 0 0 / .22);
}

.requirements-entry-block {
  width: calc(100% + 2.5rem);
  margin: 3rem -1.25rem 0;
  padding: 2rem 1.25rem 4rem;
  border-top: 0;
  box-shadow: inset 0 1px 0 rgb(231 231 203 / .18);
  display: grid;
  justify-items: center;
  text-align: center;
  margin-bottom: 0;
}

.section-requirements .requirements-entry-block .large-answer {
  color: rgb(231 231 203 / .82);
}

.requirements-entry-block > * {
  width: min(100%, 26rem);
}

.requirements-entry-block .section-icon {
  justify-self: center;
}

.requirements-entry-block .entry-form {
  text-align: left;
}

.theme-blue {
  --panel: var(--color-bg);
  --ink: var(--color-main);
  --muted: rgb(6 152 72 / .72);
  --line: rgb(6 152 72 / .22);
  --shape-tone: var(--color-main);
  color: var(--ink);
  background: var(--panel);
}

.theme-black {
  --panel: var(--color-black);
  --ink: var(--color-white);
  --muted: rgb(231 231 203 / .72);
  --line: rgb(231 231 203 / .22);
  --shape-tone: var(--color-base);
  color: var(--ink);
  background: var(--panel);
}

.theme-black > .screen-inner {
  padding-bottom: 2rem;
}

.screen-hero {
  color: var(--color-base);
  background-image: url("images/generated/hero-background-meeting.png");
  background-size: cover;
  background-position: 57% center;
}

.screen-hero::before {
  width: 112%;
  height: 40%;
  left: 30%;
  top: auto;
  bottom: -12%;
  background: var(--color-main);
  clip-path: polygon(50% 0, 100% 100%, 72% 100%, 50% 42%, 28% 100%, 0 100%);
  opacity: 1;
  transform: translateX(-50%);
}

.screen-hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  width: 130%;
  height: 49%;
  left: 79%;
  top: auto;
  bottom: -8%;
  background: var(--color-main);
  clip-path: polygon(50% 0, 100% 100%, 72% 100%, 50% 42%, 28% 100%, 0 100%);
  opacity: .88;
  transform: translateX(-50%);
}

.screen-hero .eyebrow,
.screen-hero .hero-title,
.screen-hero .lead-block {
  color: #fff;
  text-shadow: 0 .12rem .85rem rgb(0 0 0 / .36);
}

.screen-hero .hero-title {
  width: fit-content;
  max-width: 100%;
  color: #fff;
  font-size: clamp(1.48rem, 7vw, 2rem);
  line-height: 1.62;
  text-shadow: none;
}

.hero-title-text {
  display: inline;
  padding: .18rem .62rem .28rem;
  background: var(--color-main);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.screen-hero .hero-image {
  display: none;
}

.screen-hero .lead-block {
  width: min(100%, 21rem);
  margin-top: .4rem;
  padding: 0;
  color: #fff;
  background: transparent;
  font-size: .95rem;
  font-weight: 800;
  text-shadow: 0 .12rem .85rem rgb(0 0 0 / .36);
}

.screen-hero .lead-block .strong {
  color: #fff;
}

.screen-hero .hero-shift-copy {
  font-size: 2em;
  line-height: 1.38;
}

.screen-hero .hero-shift-copy span {
  white-space: nowrap;
}

.screen-inner {
  width: 100%;
  min-height: 100%;
  padding: 5.25rem var(--pad) 1.25rem;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.125rem;
  overflow: hidden;
}

.screen-hero .screen-inner {
  justify-content: flex-end;
  padding-top: 5.85rem;
  padding-bottom: 1.75rem;
  gap: .85rem;
}

.eyebrow {
  color: var(--muted);
  font-size: .8125rem;
  line-height: 1.2;
}

.section-title,
.hero-title {
  font-feature-settings: "palt";
  letter-spacing: .04em;
  font-weight: 800;
  line-height: 1.42;
}

.hero-title {
  font-size: clamp(1.75rem, 8.8vw, 2.55rem);
  line-height: 1.24;
}

.section-title {
  font-size: clamp(1.52rem, 7.6vw, 2.25rem);
}

.compact-title {
  font-size: clamp(1.45rem, 6.4vw, 1.875rem);
}

.body-copy,
.lead-block,
.closing-copy {
  color: var(--muted);
  font-feature-settings: "palt";
  letter-spacing: .025em;
  font-size: .875rem;
  line-height: 1.85;
}

.lead-block {
  display: grid;
  gap: .65rem;
}

.strong,
.large-answer {
  color: var(--ink);
  font-weight: 800;
}

.large-answer {
  font-feature-settings: "palt";
  letter-spacing: .04em;
  font-size: 1.05rem;
  line-height: 1.75;
}

.hero-image,
.wide-image {
  width: 100%;
  border-radius: .625rem;
  overflow: clip;
  background: var(--line);
  position: relative;
  isolation: isolate;
}

.hero-image {
  aspect-ratio: 16 / 7.6;
}

.screen-hero .lead-block {
  gap: .9rem;
  font-size: .8125rem;
  line-height: 1.68;
}

.wide-image {
  aspect-ratio: 16 / 9;
}

.section-visual {
  width: 100%;
  flex: 0 0 auto;
  aspect-ratio: 16 / 6.8;
}

.person-photo {
  aspect-ratio: 16 / 6.7;
}

.section-icon {
  width: 3.15rem;
  aspect-ratio: 1;
  flex: 0 0 auto;
  margin-bottom: -.45rem;
  filter: drop-shadow(0 .45rem 1rem rgb(0 0 0 / .12));
}

.hero-image img,
.wide-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.82) contrast(.96);
}

.hero-image::before,
.wide-image::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--color-accent);
  mix-blend-mode: multiply;
  opacity: .22;
}

.scroll-label {
  width: fit-content;
  margin-left: auto;
  color: var(--muted);
  font-size: .75rem;
  line-height: 1;
}

.split-message,
.center-message {
  justify-content: center;
}

.dot-list {
  display: grid;
  gap: .625rem;
}

.dot-list li {
  min-height: 2.375rem;
  padding: .65rem .85rem .72rem 1.9rem;
  border: 1px solid var(--line);
  border-radius: 100vh;
  font-feature-settings: "palt";
  font-size: .8125rem;
  line-height: 1.45;
  position: relative;
}

.dot-list li::before {
  content: "";
  width: .45rem;
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--ink);
  position: absolute;
  top: 1rem;
  left: .85rem;
}

.dot-list.compact {
  gap: .5rem;
}

.dot-list.compact li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: .4rem;
  padding: .65rem .95rem .72rem;
  background: var(--color-main);
  color: var(--color-base);
}

.dot-list.compact li::before {
  position: static;
  background: var(--color-base);
}

.dot-list.dense li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: .4rem;
  padding: .65rem .95rem .72rem;
  border-radius: 100vmax;
  background: var(--color-base);
  color: var(--color-main);
}

.dot-list.dense li::before {
  position: static;
  background: var(--color-main);
}

.section-career {
  --line: rgb(231 231 203 / .24);
  background: #38a257;
}

.section-career::before,
.section-issue::before,
.section-field::before {
  width: 100%;
  height: 100%;
  inset: 0;
  z-index: 0;
  background-repeat: repeat-y;
  background-color: transparent;
  background-size: 100% 30rem;
  background-position: center -7rem;
  clip-path: none;
  opacity: 1;
  transform: none;
}

.section-career::before {
  background-image:
    linear-gradient(140deg, transparent 0 31%, rgb(90 188 112 / .46) 31% 50%, transparent 50% 100%),
    linear-gradient(220deg, transparent 0 31%, rgb(27 132 68 / .36) 31% 50%, transparent 50% 100%);
}

.section-career .dot-list {
  gap: .55rem;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  display: flex;
  flex-wrap: wrap;
}

.section-career .screen-inner {
  gap: calc(2rem * var(--vh-scale));
  justify-content: center;
}

.section-career .career-heading-group {
  width: fit-content;
  max-width: 88%;
  margin-right: auto;
  display: grid;
  gap: .2rem;
  text-align: left;
}

.section-career .eyebrow {
  color: var(--color-base);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .02em;
  opacity: 1;
  margin-bottom: 0;
}

.section-career .section-title {
  width: auto;
  max-width: none;
  margin-left: 0;
  color: var(--color-base);
  font-size: clamp(calc(1rem * var(--vh-scale)), calc(8.05vw * var(--vh-scale)), 1.9rem);
  line-height: 1.34;
  text-align: left;
}

.section-career .career-photo {
  width: min(21rem, 88vw);
  aspect-ratio: 16 / 9;
  margin: .05rem 0 0 auto;
  border-radius: .75rem;
  box-shadow: 0 .85rem 1.85rem rgb(0 0 0 / .22);
}

.section-career .dot-list {
  width: auto;
  max-width: none;
  margin-top: 0;
  margin-left: 0;
  justify-content: flex-start;
}

.section-career .career-copy-group {
  width: min(21rem, 88vw);
  max-width: none;
  margin-left: auto;
  display: grid;
  gap: .75rem;
  justify-items: start;
  text-align: left;
}

.section-career .dot-list li {
  width: 100%;
  min-height: 0;
  padding: .64rem 1rem .66rem .72rem;
  border: 0;
  border-radius: 100vmax;
  color: var(--color-main);
  background: var(--color-base);
  box-shadow: 0 .45rem 1.4rem rgb(0 0 0 / .12);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: .58rem;
  text-align: left;
  font-weight: 800;
  white-space: normal;
}

.section-career .dot-list li::before {
  content: "";
  width: 1.28rem;
  aspect-ratio: 1;
  flex: 0 0 auto;
  position: static;
  border-radius: 50%;
  background: url("images/generated/icons/check-cream-green.png") center / contain no-repeat;
}

.section-career .closing-copy {
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  color: var(--color-accent);
  background: transparent;
  border-radius: 0;
  text-align: left;
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1.85;
  letter-spacing: .035em;
  position: relative;
}

.section-issue {
  --muted: rgb(231 231 203 / .84);
  --line: rgb(231 231 203 / .28);
  background: #047a39;
}

.section-issue::before {
  background-image:
    linear-gradient(140deg, transparent 0 31%, rgb(23 139 68 / .46) 31% 50%, transparent 50% 100%),
    linear-gradient(220deg, transparent 0 31%, rgb(0 72 34 / .36) 31% 50%, transparent 50% 100%);
}

.section-field {
  --muted: rgb(231 231 203 / .84);
  --line: rgb(231 231 203 / .28);
  background: #38a257;
}

.section-field::before {
  background-image:
    linear-gradient(140deg, transparent 0 31%, rgb(90 188 112 / .46) 31% 50%, transparent 50% 100%),
    linear-gradient(220deg, transparent 0 31%, rgb(27 132 68 / .36) 31% 50%, transparent 50% 100%);
}

.section-issue .screen-inner {
  gap: calc(2rem * var(--vh-scale));
  justify-content: center;
}

.section-issue .issue-heading-group {
  width: fit-content;
  max-width: 100%;
  margin-right: auto;
  display: grid;
  gap: .55rem;
  text-align: left;
}

.section-issue .eyebrow {
  color: var(--color-base);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .02em;
  opacity: 1;
  margin-bottom: 0;
}

.section-issue .section-title {
  width: auto;
  color: var(--color-base);
  font-size: clamp(calc(1rem * var(--vh-scale)), calc(8.05vw * var(--vh-scale)), 1.9rem);
  line-height: 1.34;
  text-align: left;
}

.section-issue .issue-copy-group {
  max-width: none;
  margin-left: auto;
  display: grid;
  gap: .75rem;
  justify-items: start;
  text-align: left;
}

.section-issue .body-copy {
  width: auto;
  margin: 0;
  color: var(--color-base);
  font-size: .92rem;
  font-weight: 800;
  line-height: 1.75;
  text-align: left;
}

.section-issue .chip-row {
  width: auto;
  margin-left: 0;
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}

.section-issue .chip-row li {
  color: var(--color-main);
  background: var(--color-base);
  font-weight: 800;
  display: flex;
  align-items: center;
  gap: .42rem;
}

.section-issue .chip-row img {
  width: 1.45rem;
  aspect-ratio: 1;
  flex: 0 0 auto;
  display: block;
}

.section-issue .issue-photo {
  width: min(21rem, 88vw);
  aspect-ratio: 16 / 9;
  margin: .05rem 0 0 auto;
  border-radius: .75rem;
  box-shadow: 0 .85rem 1.85rem rgb(0 0 0 / .22);
}

.section-issue .issue-answer {
  width: auto;
  margin: 0;
  padding: .15rem 0 .2rem 1.25rem;
  border-left: .32rem solid var(--color-accent);
  color: var(--color-base);
  font-size: 1.35rem;
  line-height: 1.8;
}

.section-issue .issue-answer span {
  color: var(--color-accent);
  font-size: 1.36em;
  line-height: 1.8;
}

.section-field .screen-inner {
  gap: calc(2rem * var(--vh-scale));
  justify-content: center;
}

.section-field .field-heading-group {
  width: fit-content;
  max-width: 100%;
  margin-right: auto;
  display: grid;
  gap: .55rem;
  text-align: left;
}

.section-field .eyebrow {
  color: var(--color-base);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .02em;
  opacity: 1;
  margin-bottom: 0;
}

.section-field .section-title {
  width: auto;
  color: var(--color-base);
  font-size: clamp(calc(1rem * var(--vh-scale)), calc(8.05vw * var(--vh-scale)), 1.9rem);
  line-height: 1.34;
  text-align: left;
}

.section-field .field-copy-group {
  width: min(21rem, 88vw);
  max-width: none;
  margin-left: auto;
  display: grid;
  gap: .75rem;
  justify-items: start;
  text-align: left;
}

.section-field .body-copy {
  width: auto;
  margin: 0;
  color: var(--color-base);
  font-size: .92rem;
  font-weight: 800;
  line-height: 1.75;
  text-align: left;
}

.section-field .chip-row {
  width: auto;
  margin-left: 0;
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}

.section-field .chip-row li {
  color: var(--color-main);
  background: var(--color-base);
  font-weight: 800;
  display: flex;
  align-items: center;
  gap: .42rem;
}

.section-field .chip-row img {
  width: 1.45rem;
  aspect-ratio: 1;
  flex: 0 0 auto;
  display: block;
}

.section-field .field-photo {
  width: min(21rem, 88vw);
  aspect-ratio: 16 / 9;
  margin: .05rem 0 0 auto;
  border-radius: .75rem;
  box-shadow: 0 .85rem 1.85rem rgb(0 0 0 / .22);
}

.section-field .field-answer {
  width: auto;
  margin: 0;
  padding: .15rem 0 .2rem 1.25rem;
  border-left: .32rem solid var(--color-accent);
  color: var(--color-accent);
  font-size: 1.35rem;
  line-height: 1.8;
}

.chip-row,
.mini-grid,
.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}

.mini-grid li,
.tag-list li {
  min-height: 2rem;
  padding: .56rem .85rem .65rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 100vh;
  color: var(--color-main);
  background: var(--color-accent);
  font-size: .75rem;
  line-height: 1.2;
  white-space: nowrap;
}

.chip-row li {
  min-height: 2.375rem;
  padding: .65rem .85rem .72rem;
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 100vh;
  font-feature-settings: "palt";
  font-size: .8125rem;
  line-height: 1.45;
  white-space: nowrap;
}

.mini-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mini-grid li,
.tag-list li {
  white-space: normal;
  text-align: center;
}

.company-grid li {
  min-height: 2.75rem;
}

.company-grid {
  grid-template-columns: 1fr;
}

.section-company .screen-inner {
  align-items: stretch;
  gap: .78rem;
}

.section-company .eyebrow {
  width: fit-content;
  color: #fff !important;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  position: relative;
}

.section-company .eyebrow::after {
  content: "";
  width: 2.35rem;
  height: .16rem;
  display: block;
  margin-top: .28rem;
  background: var(--color-accent);
}

.section-company .section-icon {
  display: none;
}

.section-company .compact-title {
  width: 100%;
  margin: -.18rem 0 0;
  color: #fff !important;
  font-size: clamp(1.72rem, 7.25vw, 2.2rem);
  line-height: 1.18;
  letter-spacing: .02em;
  text-align: left;
  white-space: nowrap;
}

.section-company .info-list {
  margin-top: .25rem;
}

.section-company .info-list div {
  border-bottom-color: rgb(255 255 255 / .3);
}

.section-company .info-list dt,
.section-company .info-list dd {
  color: #fff !important;
}

.company-grid {
  gap: .68rem;
}

.company-grid li {
  min-height: 3.75rem;
  padding: .85rem 1.15rem;
  justify-content: center;
  color: var(--color-main);
  background: #fff;
  border: 1px solid rgb(255 255 255 / .78);
  border-radius: 100vmax;
  box-shadow: 0 .45rem 1.25rem rgb(0 0 0 / .16);
  font-size: .86rem;
  font-weight: 900;
  line-height: 1.45;
  text-align: center;
}

.step-list {
  display: grid;
  gap: .5rem;
  counter-reset: step;
}

.step-list li {
  min-height: 6rem;
  border-bottom: 1px solid var(--line);
  display: grid;
  align-items: center;
  font-size: .875rem;
  line-height: 1.35;
}

.step-list:not(.flow-card-grid) span {
  color: var(--muted);
  font-size: 1.25rem;
  line-height: 1;
}

.section-flow {
  --flow-zigzag-light: rgb(255 255 255 / .34);
  --flow-zigzag-dark: rgb(6 152 72 / .08);
  background: var(--color-base);
}

.section-flow::before {
  width: 100%;
  height: 100%;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(140deg, transparent 0 31%, var(--flow-zigzag-light) 31% 50%, transparent 50% 100%),
    linear-gradient(220deg, transparent 0 31%, var(--flow-zigzag-dark) 31% 50%, transparent 50% 100%);
  background-size: 100% 30rem;
  background-position: center -7rem;
  clip-path: none;
  opacity: 1;
  transform: none;
}

.section-flow .screen-inner {
  gap: calc(1.3rem * var(--vh-scale));
  justify-content: center;
}

.section-flow .flow-heading-group {
  display: grid;
  gap: .2rem;
  text-align: left;
}

.section-flow .eyebrow {
  color: var(--color-main);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .02em;
}

.section-flow .section-title {
  margin-top: .5rem;
  color: #252525;
  font-size: clamp(calc(1rem * var(--vh-scale)), calc(8.05vw * var(--vh-scale)), 1.9rem);
  line-height: 1.28;
}

.section-flow .body-copy {
  color: rgb(37 37 37 / .84);
  font-size: .76rem;
  font-weight: 800;
  line-height: 1.55;
}

.flow-card-grid {
  width: calc(100% + var(--pad));
  margin-right: calc(var(--pad) * -1);
  min-height: calc(128px + .35rem);
  padding: .05rem var(--pad) .35rem 0;
  display: flex;
  align-items: stretch;
  gap: .68rem;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  counter-reset: none;
}

.flow-card-grid::-webkit-scrollbar {
  display: none;
}

.flow-step-card {
  min-width: 190px;
  max-width: 190px;
  width: 190px;
  min-height: 128px;
  height: auto;
  aspect-ratio: 19 / 12;
  padding: .46rem;
  border: 0;
  border-radius: .5rem;
  background: rgb(255 255 255 / .78);
  box-shadow: 0 .45rem 1.15rem rgb(6 152 72 / .1);
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: minmax(0, auto) minmax(0, 1fr);
  gap: .36rem;
  position: relative;
  overflow: hidden;
  line-height: 1.25;
  flex: 0 0 190px;
  scroll-snap-align: start;
}

.flow-step-card::after {
  content: none;
}

.flow-step-card strong {
  min-height: 0;
  max-height: 1.4rem;
  color: #252525;
  display: flex;
  align-items: center;
  font-size: 14px;
  line-height: 1.2;
  overflow: hidden;
  text-align: left;
  white-space: nowrap;
}

.flow-step-card img {
  width: 100%;
  height: 100%;
  max-height: 100%;
  min-height: 0;
  min-width: 0;
  aspect-ratio: auto;
  grid-column: 1 / -1;
  display: block;
  align-self: stretch;
  border-radius: .38rem;
  object-fit: cover;
  overflow: hidden;
  filter: saturate(.85) contrast(.96);
}

.flow-dx-panel {
  width: calc(100% + (var(--pad) * 2));
  margin: auto calc(var(--pad) * -1) -1.25rem;
  padding: 1.05rem var(--pad) 1.18rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: var(--color-base);
  background:
    linear-gradient(148deg, rgb(6 152 72 / .98) 0 47%, transparent 47%),
    linear-gradient(0deg, var(--color-accent) 0 42%, transparent 42%),
    linear-gradient(90deg, rgb(6 152 72 / .92) 0 38%, rgb(6 152 72 / .08) 38% 100%),
    url("images/generated/building-dx-bg.jpg") right top / 78% auto no-repeat,
    var(--color-main);
  border-radius: 0;
  position: relative;
  overflow: hidden;
}

.flow-dx-panel::before {
  content: "";
  width: 74%;
  height: 58%;
  background: rgb(249 211 10 / .92);
  clip-path: polygon(0 100%, 100% 0, 100% 100%);
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 0;
}

.flow-dx-panel::after {
  content: "";
  width: 100%;
  height: 100%;
  background:
    linear-gradient(140deg, transparent 0 32%, rgb(255 255 255 / .08) 32% 50%, transparent 50% 100%),
    linear-gradient(220deg, transparent 0 34%, rgb(0 0 0 / .06) 34% 50%, transparent 50% 100%);
  background-size: 100% 16rem;
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

.flow-dx-heading,
.flow-dx-lead,
.flow-dx-list,
.flow-dx-close {
  position: relative;
  z-index: 1;
}

.flow-dx-heading {
  display: flex;
  align-items: center;
  gap: .75rem;
  color: var(--color-base);
  font-size: 1.45rem;
  font-weight: 900;
  line-height: 1;
}

.flow-dx-heading span {
  height: 1px;
  flex: 1;
  background: rgb(231 231 203 / .62);
}

.flow-dx-lead {
  margin-top: .45rem;
  color: var(--color-base);
  font-size: .8rem;
  font-weight: 900;
  line-height: 1.55;
  white-space: nowrap;
}

.flow-dx-list {
  width: calc(100% + var(--pad));
  margin-top: .52rem;
  margin-right: calc(var(--pad) * -1);
  padding: .1rem var(--pad) .6rem 0;
  display: flex;
  gap: .55rem;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.flow-dx-list::-webkit-scrollbar {
  display: none;
}

.flow-dx-list li {
  min-width: 175px;
  max-width: 175px;
  width: 175px;
  height: auto;
  aspect-ratio: auto;
  padding: .72rem .82rem .78rem;
  color: var(--color-main);
  background: rgb(231 231 203 / .92);
  border-radius: .44rem;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  gap: .42rem;
  align-content: stretch;
  align-items: stretch;
  text-align: left;
  font-size: .62rem;
  font-weight: 800;
  line-height: 1.35;
  flex: 0 0 175px;
  position: relative;
  overflow: hidden;
  scroll-snap-align: start;
}

.flow-dx-icon-wrap {
  display: block;
  grid-row: 1;
  align-self: start;
  justify-self: start;
  position: relative;
  z-index: 1;
}

.flow-dx-text {
  display: grid;
  grid-row: 2;
  align-self: start;
  justify-items: start;
  gap: .2rem;
  position: relative;
  z-index: 1;
}

.flow-dx-text span {
  color: var(--color-main);
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.15;
}

.flow-dx-text p {
  margin: 0;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.35;
}

.flow-dx-icon {
  width: 3.55rem;
  aspect-ratio: 1;
  border-radius: 0;
  grid-row: 1 / 1;
  object-fit: contain;
  display: block;
}

.flow-dx-close {
  color: #252525;
  font-size: clamp(1.28rem, 6.2vw, 1.86rem);
  font-weight: 900;
  line-height: 1.35;
  text-align: center;
}

.section-reward {
  --reward-zigzag-light: rgb(255 255 255 / .16);
  --reward-zigzag-dark: rgb(6 152 72 / .08);
  background: var(--color-accent);
  color: #252525;
}

.section-reward::before {
  width: 100%;
  height: 100%;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(140deg, transparent 0 31%, var(--reward-zigzag-light) 31% 50%, transparent 50% 100%),
    linear-gradient(220deg, transparent 0 31%, var(--reward-zigzag-dark) 31% 50%, transparent 50% 100%);
  background-size: 100% 30rem;
  background-position: center -7rem;
  clip-path: none;
  opacity: 1;
  transform: none;
}

.section-reward .screen-inner {
  gap: calc(.78rem * var(--vh-scale));
  justify-content: center;
}

.reward-heading-group {
  display: grid;
  gap: .2rem;
  text-align: left;
}

.section-reward .eyebrow {
  color: var(--color-main);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .02em;
}

.section-reward .section-title {
  color: #252525;
  font-size: clamp(calc(1rem * var(--vh-scale)), calc(8.05vw * var(--vh-scale)), 1.9rem);
  line-height: 1.28;
}

.section-reward .body-copy {
  color: rgb(37 37 37 / .84);
  font-size: .86rem;
  font-weight: 900;
  line-height: 1.55;
}

.reward-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .58rem;
}

.reward-card {
  min-height: 0;
  padding: .68rem .62rem .58rem;
  border-radius: .5rem;
  background: rgb(231 231 203 / .94);
  box-shadow: 0 .55rem 1.2rem rgb(6 152 72 / .12);
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: .14rem .42rem;
  position: relative;
  overflow: hidden;
}

.reward-card-icon {
  width: 2.2rem;
  aspect-ratio: 1;
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  border-radius: 50%;
  object-fit: contain;
}

.reward-card-label {
  color: #252525;
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  font-size: 1.44rem;
  font-weight: 900;
  line-height: 1.2;
}

.reward-card-value {
  color: #252525;
  grid-column: 1 / -1;
  grid-row: 2;
  font-size: clamp(1.45rem, 10.5vw, 2.55rem);
  font-weight: 900;
  line-height: .98;
  letter-spacing: 0;
}

.reward-card-value span {
  margin-left: .08rem;
  font-size: .5em;
}

.reward-card-value .reward-card-prefix {
  margin-right: .08rem;
  margin-left: 0;
  font-size: .48em;
  vertical-align: .08em;
}

.reward-card-note {
  grid-column: 1 / -1;
  margin-top: -.12rem;
  color: #252525;
  font-size: .68rem;
  font-weight: 900;
  line-height: 1.2;
}

.reward-card-photo {
  width: calc(100% + 1.24rem);
  max-width: none;
  height: 4.25rem;
  grid-column: 1 / -1;
  margin: .38rem -.62rem -.58rem;
  display: block;
  object-fit: cover;
}

.reward-close {
  color: #252525;
  font-size: clamp(1.16rem, 6.2vw, 1.72rem);
  font-weight: 900;
  line-height: 1.48;
  text-align: center;
}

.section-strength {
  --muted: rgb(231 231 203 / .84);
  --line: rgb(231 231 203 / .28);
  background-color: #047a39;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.section-strength::before {
  width: 100%;
  height: 100%;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(180deg, rgb(0 0 0 / .42) 0%, rgb(0 0 0 / .54) 52%, rgb(0 0 0 / .7) 100%),
    linear-gradient(90deg, rgb(6 152 72 / .22), transparent 42%, rgb(6 152 72 / .2));
  clip-path: none;
  opacity: 1;
  transform: none;
}

.section-strength-trust {
  background-image: url("images/generated/strength-trust.jpg");
}

.section-strength-skill {
  background-image: url("images/generated/strength-skill.jpg");
}

.section-strength-income {
  background-image: url("images/generated/strength-income.jpg");
}

.section-strength .screen-inner {
  gap: calc(1.05rem * var(--vh-scale));
  justify-content: center;
  align-items: center;
  text-align: center;
}

.strength-heading-group {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  display: grid;
  gap: .65rem;
  text-align: center;
}

.section-strength .eyebrow {
  color: #fff !important;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: .02em;
  margin-bottom: 0;
}

.section-strength .section-title {
  width: auto;
  max-width: none;
  margin: 0 auto;
  color: #fff;
  font-size: clamp(calc(1.65rem * var(--vh-scale)), calc(9.2vw * var(--vh-scale)), 2.7rem);
  line-height: 1.28;
  text-align: center;
  text-shadow: 0 .2rem 1rem rgb(0 0 0 / .42);
}

.section-strength .strength-copy-group {
  width: min(22rem, 88vw);
  max-width: 100%;
  margin: .55rem auto 0;
  display: grid;
  gap: .95rem;
  justify-items: center;
  text-align: center;
}

.section-strength .body-copy {
  width: auto;
  margin: 0;
  color: #fff !important;
  font-size: .95rem;
  font-weight: 800;
  line-height: 1.8;
  text-align: center;
  text-shadow: 0 .15rem .75rem rgb(0 0 0 / .5);
  overflow-wrap: normal;
}

.section-strength.section-strength-skill .eyebrow {
  color: #fff !important;
}

.section-strength.section-strength-skill .body-copy {
  color: #fff !important;
}

.has-section-motion .section-strength.section-strength-skill.is-active .eyebrow,
.has-section-motion .section-strength.section-strength-skill.is-active .body-copy {
  color: #fff !important;
}

.has-section-motion .section-strength.is-active .eyebrow,
.has-section-motion .section-strength.is-active .section-title,
.has-section-motion .section-strength.is-active .body-copy {
  color: #fff !important;
}

.section-strength .dot-list {
  width: auto;
  max-width: none;
  margin-top: 0;
  margin-left: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  justify-content: center;
}

.section-strength .dot-list li {
  min-height: 0;
  padding: .62rem .9rem;
  border: 1px solid rgb(6 152 72 / .9);
  border-radius: 100vmax;
  color: #fff;
  background: rgb(6 152 72 / .92);
  box-shadow:
    0 .45rem 1.4rem rgb(0 0 0 / .24),
    inset 0 1px 0 rgb(255 255 255 / .18);
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: .86rem;
  font-weight: 900;
  line-height: 1.32;
  white-space: normal;
}

.section-strength .dot-list li::before {
  content: none;
}

.section-strength .dot-list {
  width: min(18rem, 82vw);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.section-strength .dot-list li {
  justify-content: center;
}

.section-strength .chip-row {
  width: min(18rem, 82vw);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
}

.section-strength .chip-row li {
  justify-content: center;
  color: #fff;
  border: 1px solid rgb(6 152 72 / .9);
  background: rgb(6 152 72 / .92);
  box-shadow:
    0 .45rem 1.4rem rgb(0 0 0 / .24),
    inset 0 1px 0 rgb(255 255 255 / .18);
  font-weight: 900;
}

.section-strength .strength-answer {
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  color: var(--color-accent);
  background: transparent;
  border-radius: 0;
  text-align: center;
  font-size: clamp(1.08rem, 5.8vw, 1.55rem);
  font-weight: 900;
  line-height: 1.55;
  letter-spacing: .035em;
  text-shadow: 0 .2rem .95rem rgb(0 0 0 / .58);
}

.section-person {
  --person-zigzag-light: rgb(255 255 255 / .42);
  --person-zigzag-dark: rgb(6 152 72 / .1);
  color: #252525;
  background: var(--color-base);
  overflow: hidden;
}

.section-person::before {
  width: 100%;
  height: 100%;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(140deg, transparent 0 31%, var(--person-zigzag-light) 31% 50%, transparent 50% 100%),
    linear-gradient(220deg, transparent 0 31%, var(--person-zigzag-dark) 31% 50%, transparent 50% 100%);
  background-size: 100% 30rem;
  background-position: center -7rem;
  clip-path: none;
  opacity: 1;
  transform: none;
}

.section-person .screen-inner {
  padding-top: 4.85rem;
  padding-bottom: 1.25rem;
  gap: .7rem;
  justify-content: center;
}

.person-heading-group {
  width: 72%;
  max-width: 20rem;
  position: relative;
  z-index: 3;
  display: grid;
  gap: .62rem;
  text-align: left;
}

.section-person .eyebrow {
  width: fit-content;
  color: #252525;
  font-size: .82rem;
  font-weight: 900;
  line-height: 1.1;
}

.section-person .eyebrow::after {
  content: "";
  width: 2rem;
  height: .12rem;
  display: block;
  margin-top: .32rem;
  background: var(--color-main);
}

.section-person .section-title {
  color: #252525;
  font-size: clamp(1.65rem, 8.2vw, 2.42rem);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: .02em;
}

.section-person .body-copy {
  width: 82%;
  color: rgb(37 37 37 / .72);
  font-size: .78rem;
  font-weight: 800;
  line-height: 1.72;
}

.person-visual {
  width: 56%;
  aspect-ratio: 1;
  margin: 0;
  position: absolute;
  top: 8.2rem;
  right: -.15rem;
  z-index: 2;
  border-radius: 0;
  overflow: visible;
  clip-path: none;
  opacity: 1;
  mix-blend-mode: normal;
  filter: drop-shadow(-.4rem .7rem 1.15rem rgb(6 152 72 / .22));
}

.person-visual::before {
  content: "";
  position: absolute;
  z-index: 0;
  width: 135%;
  aspect-ratio: 1299 / 1211;
  top: -19%;
  right: -15%;
  background: url("images/generated/person-arrow-layer.png") center / contain no-repeat;
  opacity: .88;
  pointer-events: none;
}

.person-visual img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 68% center;
  filter: saturate(.96) contrast(1.04) brightness(1.03);
}

.person-requirement {
  width: min(100%, 23.5rem);
  min-height: 5.75rem;
  margin-top: .25rem;
  padding: .9rem 1rem;
  position: relative;
  z-index: 4;
  display: grid;
  grid-template-columns: 4rem 1fr;
  align-items: center;
  gap: .8rem;
  color: #252525;
  background: rgb(255 255 255 / .92);
  border-radius: .65rem;
  box-shadow: 0 .8rem 1.6rem rgb(6 152 72 / .12);
}

.person-requirement-icon {
  width: 3.6rem;
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--color-main);
  display: grid;
  place-items: center;
  overflow: hidden;
}

.person-requirement-icon img {
  width: 2.35rem;
  height: 2.35rem;
  object-fit: contain;
}

.person-requirement span:not(.person-requirement-icon) {
  color: var(--color-main);
  display: block;
  font-size: .78rem;
  font-weight: 900;
  line-height: 1;
}

.person-requirement p {
  margin-top: .18rem;
  font-size: clamp(1.08rem, 5vw, 1.48rem);
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: .02em;
  white-space: nowrap;
}

.person-requirement small {
  color: rgb(37 37 37 / .72);
  display: block;
  margin-top: .22rem;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.person-list-group {
  width: min(100%, 23.5rem);
  position: relative;
  z-index: 4;
  display: grid;
  gap: .5rem;
}

.person-list-title {
  color: var(--color-main);
  display: flex;
  align-items: center;
  gap: .7rem;
  font-size: .86rem;
  font-weight: 900;
  line-height: 1.3;
}

.person-list-title::after {
  content: "";
  height: 1px;
  flex: 1;
  background: rgb(6 152 72 / .32);
}

.person-check-list {
  display: grid;
  gap: .42rem;
}

.person-check-list li {
  min-height: 2.25rem;
  padding: .48rem .82rem .52rem 3.05rem;
  position: relative;
  display: flex;
  align-items: center;
  color: #252525;
  background: rgb(255 255 255 / .92);
  border-radius: 100vmax;
  box-shadow: 0 .4rem 1rem rgb(6 152 72 / .08);
  font-size: .78rem;
  font-weight: 900;
  line-height: 1.25;
}

.person-check-list li::before {
  content: "";
  width: 1.22rem;
  aspect-ratio: 1;
  position: absolute;
  left: .56rem;
  top: 50%;
  border-radius: 50%;
  background: var(--color-main);
  transform: translateY(-50%);
}

.person-check-list li::after {
  content: "";
  width: .58rem;
  height: .34rem;
  position: absolute;
  left: 1.13rem;
  top: 50%;
  border-bottom: .16rem solid var(--color-base);
  border-left: .16rem solid var(--color-base);
  transform: translate(-50%, -62%) rotate(-45deg);
}

.person-closing {
  margin-top: .1rem;
  position: relative;
  z-index: 4;
  color: #252525;
  font-size: clamp(1.08rem, 5.15vw, 1.48rem);
  font-weight: 900;
  line-height: 1.48;
  letter-spacing: .02em;
  text-align: center;
}

.person-closing::before {
  content: "";
  width: 1.4rem;
  height: 1.4rem;
  display: block;
  margin: 0 auto 0.9rem;
  border-right: .14rem solid var(--color-main);
  border-bottom: .14rem solid var(--color-main);
  transform: rotate(45deg);
}

.person-closing span {
  padding: .02rem .35rem .12rem;
  background: var(--color-accent);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  white-space: nowrap;
}

.block-label {
  color: var(--muted);
  font-size: .75rem;
  line-height: 1.2;
}

.qualification {
  padding: 1rem;
  border: 1px solid var(--line);
  border-radius: .625rem;
}

.qualification p {
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.35;
}

.qualification span {
  display: block;
  margin-top: .25rem;
  color: var(--muted);
  font-size: .8125rem;
}

.info-list {
  display: grid;
  gap: .75rem;
}

.info-list div {
  display: grid;
  grid-template-columns: 5.4rem 1fr;
  gap: .75rem;
  padding-bottom: .75rem;
  border-bottom: 1px solid var(--line);
}

.info-list dt {
  color: var(--muted);
  font-size: .75rem;
  line-height: 1.5;
}

.info-list dd {
  font-feature-settings: "palt";
  font-size: .8125rem;
  line-height: 1.65;
}

.info-list.slim {
  gap: .55rem;
}

.marquee-visual-section .screen-inner {
  gap: .72rem;
}

.marquee-visual {
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0;
  border-radius: .75rem;
  overflow: hidden;
  position: relative;
  box-shadow: 0 .75rem 1.7rem rgb(0 0 0 / .18);
}

.marquee-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgb(0 0 0 / .1), rgb(0 0 0 / .28), rgb(0 0 0 / .1));
  pointer-events: none;
}

.marquee-visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.marquee-title {
  width: max-content;
  position: absolute;
  left: 0;
  bottom: -5%;
  z-index: 1;
  display: flex;
  gap: 0;
  color: rgb(255 255 255 / .92);
  font-family: var(--font-en);
  font-size: clamp(3.8rem, 17vw, 6rem);
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  text-shadow: 0 .2rem 1rem rgb(0 0 0 / .35);
  transform: translate3d(0, 0, 0);
  will-change: transform;
  animation: marquee-slide 13s linear infinite;
}

.marquee-title span {
  display: block;
  padding-right: 2.5rem;
}

@keyframes marquee-slide {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}

.two-blocks {
  display: grid;
  gap: 1rem;
}

.two-blocks > div {
  display: grid;
  gap: .625rem;
}

.tag-list {
  gap: .45rem;
}

.tag-list li {
  min-height: 1.85rem;
  padding: .5rem .65rem .58rem;
  font-size: .6875rem;
}

.section-job-work .dot-list {
  gap: .42rem;
}

.section-job-work .dot-list li {
  min-height: 1.9rem;
  padding: .48rem .72rem .54rem;
  font-size: .7rem;
  line-height: 1.3;
}

.section-job-work .info-list.slim {
  gap: .42rem;
}

.section-job-work .info-list div {
  padding-bottom: .48rem;
}

.section-job-work .info-list dt,
.section-job-work .info-list dd {
  font-size: .7rem;
  line-height: 1.45;
}

.section-benefits .two-blocks {
  gap: .58rem;
}

.section-benefits .two-blocks > div {
  gap: .42rem;
}

.section-benefits .tag-list {
  gap: .36rem;
}

.section-benefits .block-label {
  color: var(--color-main);
  font-size: 1.125rem;
  font-weight: 700;
}

.section-benefits .tag-list li {
  min-height: 1.65rem;
  padding: .42rem .55rem .48rem;
  font-size: .93rem;
}

.entry-form {
  display: grid;
  gap: .75rem;
}

.entry-form label {
  display: grid;
  gap: .35rem;
  color: var(--muted);
  font-size: .6875rem;
  line-height: 1.3;
}

.entry-form label > span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
}

.entry-form em {
  color: rgb(231 231 203 / .58);
  font-size: .625rem;
  font-style: normal;
  line-height: 1;
}

.entry-form input,
.entry-form select,
.entry-form textarea {
  width: 100%;
  padding: .55rem .65rem;
  color: var(--color-white);
  background: rgb(231 231 203 / .1);
  border: 1px solid var(--line);
  border-radius: .375rem;
  outline: none;
}

.entry-form select {
  -webkit-appearance: none;
  appearance: none;
  padding-right: 48px;
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23E7E7CB' stroke-opacity='.82' stroke-width='1.4'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 18px center;
  background-size: 10px 6px;
}

.entry-form textarea {
  min-height: 160px;
  max-height: 320px;
  resize: vertical;
}

.entry-form input::placeholder,
.entry-form textarea::placeholder {
  color: rgb(231 231 203 / .46);
}

.entry-form input:focus,
.entry-form select:focus,
.entry-form textarea:focus {
  border-color: var(--color-accent);
}

.round-button {
  width: fit-content;
  min-width: 8rem;
  min-height: 3.125rem;
  margin: .35rem auto 0;
  padding: 0 1.1rem;
  color: var(--color-main);
  background: var(--color-accent);
  border-radius: 100vh;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .9rem;
  font-size: .9375rem;
}

.round-button span {
  width: 1.7rem;
  aspect-ratio: 1;
  border-radius: 50%;
  color: var(--color-base);
  background: var(--color-main);
  display: grid;
  place-items: center;
  font-size: 0;
  line-height: 1;
}

.round-button span::before {
  content: "›";
  font-size: 1.35rem;
  line-height: 1;
  transform: translate(.02em, -.02em);
}

.eyebrow,
.body-copy,
.dot-list li,
.chip-row li,
.tag-list li,
.mini-grid li,
.info-list dt,
.info-list dd,
.flow-step-card strong,
.flow-dx-card strong,
.flow-dx-card p,
.reward-card-label,
.reward-card-note,
.person-requirement small,
.person-list-title,
.person-check-list li,
.entry-form label,
.entry-form em {
  font-size: max(13px, 1em);
}

@media (max-width: 360px), (max-height: 760px) {
  body {
    font-size: 14px;
  }

  .lp-header {
    padding-top: .875rem;
  }

  .lp-logo-mark {
    width: 2.375rem;
  }

  .screen-inner {
    padding-top: 4.35rem;
    gap: .8rem;
  }

  .hero-title {
    font-size: clamp(1.72rem, 9.4vw, 2.4rem);
  }

  .section-title {
    font-size: clamp(1.28rem, 6.7vw, 1.8rem);
    line-height: 1.36;
  }

  .body-copy,
  .lead-block,
  .closing-copy {
    font-size: .7625rem;
    line-height: 1.65;
  }

  .large-answer {
    font-size: .92rem;
    line-height: 1.6;
  }

  .dot-list {
    gap: .4rem;
  }

  .dot-list li {
    min-height: 2rem;
    padding-top: .48rem;
    padding-bottom: .55rem;
    font-size: .72rem;
  }

  .step-list li,
  .info-list dd {
    font-size: .72rem;
  }

  .hero-image {
    aspect-ratio: 16 / 8.7;
  }

  .wide-image {
    aspect-ratio: 16 / 8.4;
  }

  .entry-form {
    gap: .35rem;
  }

  .entry-form input,
  .entry-form select,
  .entry-form textarea {
    padding: .45rem .55rem;
  }

  .entry-form select {
    padding-right: 48px;
    background-position: right 18px center;
  }

  .entry-form textarea {
    min-height: 160px;
  }
}

@media (max-height: 843px) {
  :root {
    --lp-header-height: calc(3.5rem * var(--vh-scale));
  }

  body {
    font-size: max(13px, calc(15px * var(--vh-scale)));
  }

  .lp-header {
    padding-top: calc(.85rem * var(--vh-scale));
    padding-bottom: calc(.85rem * var(--vh-scale));
  }

  .lp-logo img {
    width: calc(8.15rem * var(--vh-scale));
  }

  .lp-header-cta {
    min-height: calc(2.25rem * var(--vh-scale));
    padding: calc(.62rem * var(--vh-scale)) calc(.95rem * var(--vh-scale));
    font-size: 13px;
  }

  .screen-inner {
    padding-top: calc(5.25rem * var(--vh-scale));
    padding-bottom: calc(1.25rem * var(--vh-scale));
    gap: calc(1.125rem * var(--vh-scale));
  }

  .screen-hero .screen-inner {
    padding-top: calc(5.85rem * var(--vh-scale));
    padding-bottom: calc(1.75rem * var(--vh-scale));
    gap: calc(.85rem * var(--vh-scale));
  }

  .screen-hero .hero-title {
    font-size: clamp(calc(1.24rem * var(--vh-scale)), calc(7vw * var(--vh-scale)), 2rem);
    line-height: 1.5;
  }

  .hero-title-text {
    padding: calc(.18rem * var(--vh-scale)) calc(.62rem * var(--vh-scale)) calc(.28rem * var(--vh-scale));
  }

  .screen-hero .lead-block {
    margin-top: calc(.4rem * var(--vh-scale));
    gap: calc(.9rem * var(--vh-scale));
    font-size: max(13px, calc(.95rem * var(--vh-scale)));
    line-height: 1.55;
  }

  .screen-hero .hero-shift-copy {
    font-size: max(13px, calc(2em * var(--vh-scale)));
  }

  .eyebrow {
    font-size: max(13px, calc(.8125rem * var(--vh-scale)));
  }

  .section-title {
    font-size: clamp(calc(1.18rem * var(--vh-scale)), calc(7.6vw * var(--vh-scale)), 2.25rem);
    line-height: 1.34;
  }

  .compact-title {
    font-size: clamp(calc(1.12rem * var(--vh-scale)), calc(6.4vw * var(--vh-scale)), 1.875rem);
  }

  .body-copy,
  .lead-block,
  .closing-copy {
    font-size: max(13px, calc(.875rem * var(--vh-scale)));
    line-height: 1.68;
  }

  .large-answer {
    font-size: max(13px, calc(1.05rem * var(--vh-scale)));
    line-height: 1.58;
  }

  .section-icon {
    width: calc(3.15rem * var(--vh-scale));
  }

  .wide-image,
  .section-visual {
    width: 100%;
    height: calc(12rem * var(--vh-scale));
    aspect-ratio: auto;
  }

  .person-photo,
  .section-issue .issue-photo,
  .section-field .field-photo {
    width: 100%;
    height: calc(9.8rem * var(--vh-scale));
    aspect-ratio: auto;
  }

  .section-career .career-photo {
    width: min(calc(21rem * var(--vh-scale)), calc(88vw * var(--vh-scale)));
    height: calc(11.8rem * var(--vh-scale));
    aspect-ratio: auto;
    margin-top: calc(.05rem * var(--vh-scale));
    margin-left: auto;
    margin-bottom: 0;
  }

  .section-issue .issue-photo {
    width: min(calc(21rem * var(--vh-scale)), calc(88vw * var(--vh-scale)));
    height: calc(11.8rem * var(--vh-scale));
    margin-top: calc(.05rem * var(--vh-scale));
    margin-left: auto;
    margin-bottom: 0;
  }

  .section-field .field-photo {
    width: min(calc(21rem * var(--vh-scale)), calc(88vw * var(--vh-scale)));
    height: calc(11.8rem * var(--vh-scale));
    margin-top: calc(.05rem * var(--vh-scale));
    margin-left: auto;
    margin-bottom: 0;
  }

  .dot-list,
  .section-career .dot-list,
  .step-list,
  .entry-form,
  .info-list {
    gap: calc(.625rem * var(--vh-scale));
  }

  .dot-list li {
    min-height: calc(2.375rem * var(--vh-scale));
    padding-top: calc(.65rem * var(--vh-scale));
    padding-bottom: calc(.72rem * var(--vh-scale));
    font-size: max(13px, calc(.8125rem * var(--vh-scale)));
  }

  .section-career .screen-inner {
    gap: calc(2rem * var(--vh-scale));
  }

  .section-career .eyebrow {
    font-size: max(13px, calc(14px * var(--vh-scale)));
    margin-bottom: 0;
  }

  .section-career .section-title {
    font-size: clamp(calc(1rem * var(--vh-scale)), calc(8.05vw * var(--vh-scale)), 1.9rem);
  }

  .section-career .dot-list {
    padding: 0;
  }

  .section-career .career-copy-group {
    gap: calc(.75rem * var(--vh-scale));
  }

  .section-career .dot-list li {
    min-height: 0;
    padding:
      calc(.64rem * var(--vh-scale))
      calc(1rem * var(--vh-scale))
      calc(.66rem * var(--vh-scale))
      calc(.72rem * var(--vh-scale));
    font-size: max(13px, calc(.76rem * var(--vh-scale)));
  }

  .section-career .dot-list li::before {
    width: calc(1.28rem * var(--vh-scale));
  }

  .section-career .closing-copy {
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 0;
    font-size: max(13px, calc(1.05rem * var(--vh-scale)));
    line-height: 1.65;
  }

  .section-issue .screen-inner {
    gap: calc(2rem * var(--vh-scale));
  }

  .section-issue .eyebrow {
    font-size: max(13px, calc(14px * var(--vh-scale)));
    margin-bottom: 0;
  }

  .section-issue .section-title {
    font-size: clamp(calc(1rem * var(--vh-scale)), calc(8.05vw * var(--vh-scale)), 1.9rem);
  }

  .section-issue .body-copy,
  .section-field .body-copy {
    font-size: max(13px, calc(.92rem * var(--vh-scale)));
    line-height: 1.58;
  }

  .section-issue .issue-copy-group,
  .section-field .field-copy-group {
    gap: calc(.75rem * var(--vh-scale));
  }

  .section-issue .chip-row,
  .section-field .chip-row {
    gap: calc(.55rem * var(--vh-scale));
  }

  .section-issue .chip-row img {
    width: calc(1.45rem * var(--vh-scale));
  }

  .section-field .chip-row img {
    width: calc(1.45rem * var(--vh-scale));
  }

  .chip-row li {
    min-height: calc(2.375rem * var(--vh-scale));
    padding-top: calc(.65rem * var(--vh-scale));
    padding-bottom: calc(.72rem * var(--vh-scale));
    font-size: 13px;
  }

  .section-issue .issue-answer,
  .section-field .field-answer {
    padding-left: calc(1.25rem * var(--vh-scale));
    font-size: max(13px, calc(1.18rem * var(--vh-scale)));
    line-height: 1.8;
  }

  .section-issue .issue-answer span {
    font-size: 1.25em;
    line-height: 1.8;
  }

  .section-strength .screen-inner {
    gap: calc(1.05rem * var(--vh-scale));
  }

  .section-strength .eyebrow {
    font-size: max(13px, calc(14px * var(--vh-scale)));
    margin-bottom: 0;
  }

  .section-strength .section-title {
    font-size: clamp(calc(1.65rem * var(--vh-scale)), calc(9.2vw * var(--vh-scale)), calc(2.7rem * var(--vh-scale)));
  }

  .section-strength .body-copy {
    font-size: max(13px, calc(.95rem * var(--vh-scale)));
    line-height: 1.8;
  }

  .section-strength .strength-copy-group {
    gap: calc(.95rem * var(--vh-scale));
  }

  .section-strength .dot-list {
    gap: calc(.5rem * var(--vh-scale));
  }

  .section-strength .dot-list li {
    min-height: 0;
    padding: calc(.62rem * var(--vh-scale)) calc(.9rem * var(--vh-scale));
    font-size: max(13px, calc(.86rem * var(--vh-scale)));
    line-height: 1.32;
  }

  .section-strength .strength-answer {
    font-size: clamp(calc(1.08rem * var(--vh-scale)), calc(5.8vw * var(--vh-scale)), calc(1.55rem * var(--vh-scale)));
    line-height: 1.55;
  }

  .section-person .screen-inner {
    padding-top: calc(4.85rem * var(--vh-scale));
    padding-bottom: calc(1.25rem * var(--vh-scale));
    gap: calc(.7rem * var(--vh-scale));
  }

  .person-heading-group {
    gap: calc(.62rem * var(--vh-scale));
  }

  .section-person .section-title {
    font-size: clamp(calc(1.52rem * var(--vh-scale)), calc(7.6vw * var(--vh-scale)), calc(2.2rem * var(--vh-scale)));
  }

  .section-person .body-copy {
    font-size: max(13px, calc(.72rem * var(--vh-scale)));
    line-height: 1.62;
  }

  .person-visual {
    top: calc(8rem * var(--vh-scale));
  }

  .person-requirement {
    min-height: calc(5.35rem * var(--vh-scale));
    padding: calc(.78rem * var(--vh-scale)) calc(.9rem * var(--vh-scale));
  }

  .person-requirement p {
    font-size: clamp(calc(1.02rem * var(--vh-scale)), calc(4.75vw * var(--vh-scale)), calc(1.36rem * var(--vh-scale)));
  }

  .person-check-list {
    gap: calc(.36rem * var(--vh-scale));
  }

  .person-check-list li {
    min-height: calc(2.05rem * var(--vh-scale));
    padding-top: calc(.42rem * var(--vh-scale));
    padding-bottom: calc(.46rem * var(--vh-scale));
    font-size: max(13px, calc(.72rem * var(--vh-scale)));
  }

  .person-closing {
    font-size: clamp(calc(1rem * var(--vh-scale)), calc(4.9vw * var(--vh-scale)), calc(1.38rem * var(--vh-scale)));
  }

  .chip-row,
  .mini-grid,
  .tag-list {
    gap: calc(.55rem * var(--vh-scale));
  }

  .mini-grid li,
  .tag-list li {
    min-height: calc(2rem * var(--vh-scale));
    padding: calc(.56rem * var(--vh-scale)) calc(.85rem * var(--vh-scale)) calc(.65rem * var(--vh-scale));
    font-size: max(13px, calc(.75rem * var(--vh-scale)));
  }

  .step-list li,
  .info-list dd {
    font-size: max(13px, calc(.8125rem * var(--vh-scale)));
  }

  .section-flow .screen-inner {
    gap: calc(1.3rem * var(--vh-scale));
  }

  .section-flow .eyebrow {
    font-size: max(13px, calc(14px * var(--vh-scale)));
  }

  .section-flow .body-copy {
    font-size: max(13px, calc(.76rem * var(--vh-scale)));
    line-height: 1.58;
  }

  .flow-card-grid {
    gap: calc(.68rem * var(--vh-scale));
  }

  .flow-step-card {
    min-width: 190px;
    max-width: 190px;
    width: 190px;
    min-height: 128px;
    padding: calc(.46rem * var(--vh-scale));
  }

  .flow-step-card strong {
    font-size: 14px;
  }

  .flow-dx-panel {
    padding-top: calc(1.05rem * var(--vh-scale));
    padding-bottom: calc(1.18rem * var(--vh-scale));
  }

  .flow-dx-heading {
    font-size: max(13px, calc(1.45rem * var(--vh-scale)));
  }

  .flow-dx-lead {
    margin-top: calc(.45rem * var(--vh-scale));
    font-size: max(13px, calc(.8rem * var(--vh-scale)));
  }

  .flow-dx-list {
    margin-top: calc(.52rem * var(--vh-scale));
    gap: calc(.55rem * var(--vh-scale));
  }

  .flow-dx-list li {
    min-width: 175px;
    max-width: 175px;
    width: 175px;
    height: auto;
    padding: calc(.72rem * var(--vh-scale)) calc(.82rem * var(--vh-scale)) calc(.78rem * var(--vh-scale));
    font-size: max(13px, calc(.58rem * var(--vh-scale)));
  }

  .flow-dx-text p {
    font-size: 13px;
  }

  .flow-dx-text span {
    font-size: max(13px, calc(1rem * var(--vh-scale)));
  }

  .flow-dx-icon {
    width: calc(3.55rem * var(--vh-scale));
  }

  .flow-dx-close {
    font-size: clamp(calc(1.28rem * var(--vh-scale)), calc(6.2vw * var(--vh-scale)), calc(1.86rem * var(--vh-scale)));
  }

  .section-reward .screen-inner {
    gap: calc(.78rem * var(--vh-scale));
  }

  .section-reward .eyebrow {
    font-size: max(13px, calc(14px * var(--vh-scale)));
  }

  .section-reward .body-copy {
    font-size: max(13px, calc(.86rem * var(--vh-scale)));
  }

  .reward-card-grid {
    gap: calc(.58rem * var(--vh-scale));
  }

  .reward-card {
    padding: calc(.68rem * var(--vh-scale)) calc(.62rem * var(--vh-scale)) calc(.58rem * var(--vh-scale));
  }

  .reward-card-icon {
    width: calc(2.2rem * var(--vh-scale));
  }

  .reward-card-label,
  .reward-card-note {
    font-size: max(13px, calc(1.4rem * var(--vh-scale)));
  }

  .reward-card-note {
    font-size: max(13px, calc(.7rem * var(--vh-scale)));
  }

  .reward-card-value {
    font-size: clamp(calc(1.45rem * var(--vh-scale)), calc(10.5vw * var(--vh-scale)), calc(2.55rem * var(--vh-scale)));
  }

  .reward-card-photo {
    height: calc(7.25rem * var(--vh-scale));
    margin-top: calc(.38rem * var(--vh-scale));
  }

  .reward-close {
    font-size: clamp(calc(1.16rem * var(--vh-scale)), calc(5.7vw * var(--vh-scale)), calc(1.62rem * var(--vh-scale)));
    line-height: 1.48;
  }

  .step-list:not(.flow-card-grid) span,
  .qualification p {
    font-size: max(13px, calc(1.25rem * var(--vh-scale)));
  }

  .qualification {
    padding-top: calc(1rem * var(--vh-scale));
    padding-bottom: calc(1rem * var(--vh-scale));
  }

  .tag-list li {
    min-height: calc(1.85rem * var(--vh-scale));
    font-size: max(13px, calc(.6875rem * var(--vh-scale)));
  }

  .marquee-visual-section .screen-inner {
    gap: calc(.72rem * var(--vh-scale));
  }

  .marquee-visual {
    border-radius: calc(.75rem * var(--vh-scale));
  }

  .section-job-work .dot-list {
    gap: calc(.42rem * var(--vh-scale));
  }

  .section-job-work .dot-list li {
    min-height: calc(1.9rem * var(--vh-scale));
    padding: calc(.48rem * var(--vh-scale)) calc(.72rem * var(--vh-scale)) calc(.54rem * var(--vh-scale));
    font-size: max(13px, calc(.7rem * var(--vh-scale)));
  }

  .section-job-work .info-list.slim {
    gap: calc(.42rem * var(--vh-scale));
  }

  .section-job-work .info-list div {
    padding-bottom: calc(.48rem * var(--vh-scale));
  }

  .section-job-work .info-list dt,
  .section-job-work .info-list dd {
    font-size: max(13px, calc(.7rem * var(--vh-scale)));
  }

  .section-benefits .two-blocks {
    gap: calc(.58rem * var(--vh-scale));
  }

  .section-benefits .two-blocks > div {
    gap: calc(.42rem * var(--vh-scale));
  }

  .section-benefits .tag-list {
    gap: calc(.36rem * var(--vh-scale));
  }

  .section-benefits .block-label {
    font-size: max(13px, calc(1.125rem * var(--vh-scale)));
  }

  .section-benefits .tag-list li {
    min-height: calc(1.65rem * var(--vh-scale));
    padding: calc(.42rem * var(--vh-scale)) calc(.55rem * var(--vh-scale)) calc(.48rem * var(--vh-scale));
    font-size: max(13px, calc(.93rem * var(--vh-scale)));
  }

  .entry-form input,
  .entry-form select,
  .entry-form textarea {
    padding-top: calc(.55rem * var(--vh-scale));
    padding-bottom: calc(.55rem * var(--vh-scale));
  }

  .round-button {
    min-height: calc(3.125rem * var(--vh-scale));
    font-size: max(13px, calc(.9375rem * var(--vh-scale)));
  }
}

@media (min-width: 769px) {
  html,
  body {
    background:
      linear-gradient(rgb(231 231 203 / .18), rgb(231 231 203 / .18)),
      url("images/generated/backgrounds/pc-zigzag-bg.png") center / cover fixed no-repeat,
      var(--color-base);
  }

  .pc-side-logo {
    z-index: 18;
    display: block;
    position: fixed;
    top: 50%;
    left: calc(var(--lp-frame-left) / 2);
    transform: translate(-50%, -50%);
    max-width: calc(var(--lp-frame-left) - 2rem);
  }

  .pc-side-logo-link {
    display: inline-flex;
    align-items: center;
  }

  .pc-side-logo img {
    width: min(10rem, calc(var(--lp-frame-left) - 3rem));
    min-width: 6.5rem;
    height: auto;
    flex: 0 0 auto;
  }

  .pc-side-cta {
    z-index: 18;
    display: flex;
    flex-direction: column;
    gap: 14px;
    position: fixed;
    top: 50%;
    left: calc(var(--lp-frame-left) + var(--lp-frame-width) + (100vw - var(--lp-frame-left) - var(--lp-frame-width)) / 2);
    transform: translate(-50%, -50%);
    width: min(10rem, calc(100vw - var(--lp-frame-left) - var(--lp-frame-width) - 2rem));
  }

  .pc-side-button {
    min-height: 3.25rem;
    padding: .95rem 1.05rem;
    color: var(--color-main);
    background:
      linear-gradient(145deg, rgb(255 255 255 / .28), transparent 42%),
      var(--color-accent);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    font-size: .8125rem;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    border: 1px solid rgb(6 152 72 / .18);
    border-radius: 999px;
    box-shadow:
      0 .7rem 1.6rem rgb(0 72 34 / .16),
      inset 0 1px 0 rgb(255 255 255 / .38);
    clip-path: none;
    transition:
      opacity .2s ease-out,
      transform .2s ease-out,
      box-shadow .2s ease-out;
  }

  .pc-side-button::after {
    content: "›";
    width: 1.35rem;
    aspect-ratio: 1;
    color: var(--color-base);
    background: var(--color-main);
    border-radius: 50%;
    font-size: 1.05rem;
    line-height: 1;
    text-align: center;
  }

  .pc-side-button:hover {
    opacity: .78;
    transform: translateY(-2px);
    box-shadow:
      0 .95rem 2rem rgb(0 72 34 / .22),
      inset 0 1px 0 rgb(255 255 255 / .42);
  }

  .section-issue .screen-inner {
    gap: 1.18rem;
  }

  .section-issue .issue-heading-group {
    gap: .32rem;
  }

  .section-issue .section-title {
    font-size: clamp(1rem, 6.9vw, 1.68rem);
    line-height: 1.26;
  }

  .section-issue .issue-photo {
    width: min(21rem, 88vw);
    height: min(11.8rem, 49.5vw);
    margin-top: 0;
    margin-left: auto;
  }

  .section-issue .issue-copy-group {
    gap: .48rem;
  }

  .section-career .career-copy-group,
  .section-issue .issue-copy-group,
  .section-field .field-copy-group {
    width: calc(100% - ((100% - min(17rem, 72vw)) / 2));
    margin-right: 0;
    margin-left: calc((100% - min(17rem, 72vw)) / 2);
  }

  .section-issue .issue-copy-group {
    width: calc(100% - ((100% - min(21rem, 88vw)) / 2));
    margin-left: calc((100% - min(21rem, 88vw)) / 2);
  }

  .section-field .field-copy-group {
    width: calc(100% - ((100% - min(21rem, 88vw)) / 2));
    margin-left: calc((100% - min(21rem, 88vw)) / 2);
  }

  .section-issue .body-copy {
    font-size: .8rem;
    line-height: 1.55;
  }

  .section-issue .chip-row {
    gap: .38rem;
  }

  .section-issue .chip-row li {
    min-height: 2rem;
    padding: .46rem .7rem .5rem .5rem;
    font-size: 13px;
  }

  .section-issue .chip-row img {
    width: 1.18rem;
  }

  .section-field .chip-row li {
    min-height: 2rem;
    padding: .46rem .7rem .5rem .5rem;
    font-size: 13px;
  }

  .section-field .chip-row img {
    width: 1.18rem;
  }

  .section-issue .issue-answer {
    padding: .06rem 0 .08rem .85rem;
    border-left-width: .24rem;
    font-size: 1rem;
    line-height: 1.55;
  }

  .section-issue .issue-answer span {
    font-size: 1.18em;
    line-height: 1.55;
  }

  .section-flow .screen-inner {
    gap: .92rem;
  }

  .flow-dx-panel {
    margin: 0 calc(var(--pad) * -1) -1.25rem;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }

  .reward-close {
    font-size: clamp(1.16rem, 5.7vw, 1.55rem);
    line-height: 1.42;
  }
}

.theme-black .eyebrow,
.theme-black .section-title,
.theme-black .body-copy,
.theme-black .lead-block,
.theme-black .closing-copy,
.theme-black .scroll-label,
.screen-hero .eyebrow,
.screen-hero .hero-title,
.screen-hero .lead-block,
.screen-hero .scroll-label,
.section-career .eyebrow,
.section-career .section-title,
.section-career .body-copy,
.section-issue .eyebrow,
.section-issue .section-title,
.section-issue .body-copy,
.section-issue .issue-answer,
.section-field .eyebrow,
.section-field .section-title,
.section-field .body-copy,
.section-field .field-answer,
.section-requirements,
.section-requirements .section-title,
.section-requirements .info-list dd,
.section-requirements .requirements-entry-block .large-answer,
.flow-dx-panel,
.flow-dx-heading,
.flow-dx-lead {
  color: #fff !important;
}

.has-section-motion .theme-black.is-active .eyebrow,
.has-section-motion .theme-black.is-active .section-title,
.has-section-motion .theme-black.is-active .body-copy,
.has-section-motion .theme-black.is-active .lead-block,
.has-section-motion .theme-black.is-active .closing-copy,
.has-section-motion .theme-black.is-active .scroll-label,
.has-section-motion .screen-hero.is-active .eyebrow,
.has-section-motion .screen-hero.is-active .hero-title,
.has-section-motion .screen-hero.is-active .lead-block,
.has-section-motion .screen-hero.is-active .scroll-label,
.has-section-motion .section-career.is-active .eyebrow,
.has-section-motion .section-career.is-active .section-title,
.has-section-motion .section-career.is-active .body-copy,
.has-section-motion .section-issue.is-active .eyebrow,
.has-section-motion .section-issue.is-active .section-title,
.has-section-motion .section-issue.is-active .body-copy,
.has-section-motion .section-field.is-active .eyebrow,
.has-section-motion .section-field.is-active .section-title,
.has-section-motion .section-field.is-active .body-copy,
.has-section-motion .section-requirements.is-active .section-title,
.has-section-motion .section-requirements.is-active .body-copy {
  color: #fff;
}

.section-requirements .info-list dt,
.section-requirements .entry-form label,
.section-requirements .entry-form em {
  color: #fff !important;
}

.section-requirements .entry-form input::placeholder,
.section-requirements .entry-form textarea::placeholder {
  color: rgb(255 255 255 / .72);
}

body,
.intro-scroll-cue,
.eyebrow,
.body-copy,
.lead-block,
.closing-copy,
.scroll-label,
.dot-list li,
.tag-list li,
.mini-grid li,
.step-list li,
.info-list dt,
.info-list dd,
.block-label,
.qualification span,
.flow-dx-lead,
.flow-dx-list li,
.flow-dx-text span,
.reward-card-label,
.reward-card-note,
.person-requirement span:not(.person-requirement-icon),
.person-list-title,
.person-check-list li,
.entry-form label,
.entry-form em,
.pc-side-button,
.round-button {
  font-size: max(13px, 1em);
}

.flow-dx-text p {
  font-size: 13px;
}

.flow-step-card strong {
  font-size: 14px;
}

.person-requirement small {
  font-size: 13px;
}
