@charset "UTF-8";

.landing-page {
  --landing-accent: #386ef9;
  --landing-accent-dark: #255bea;
  --landing-accent-soft: #f3f6ff;
  --landing-deep: #071b55;
  --landing-ink: #111111;
  --landing-muted: #5d6880;
  --landing-line: #dce2ee;
  --landing-brand-gradient: linear-gradient(120deg, #255bea 0%, #1c48c8 48%, #071b55 100%);
  --landing-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
  --landing-ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
  --landing-section-space: clamp(92rem, 6.4vw, 112rem);
  --landing-content-gap: clamp(44rem, 4vw, 64rem);
  --landing-panel-inset: clamp(32rem, 3vw, 48rem);
  background: #fff;
  color: var(--landing-ink);
  font-optical-sizing: auto;
}

#sub.landing-page #container {
  padding: 96rem 0 0;
}

.landing-page #header {
  border-bottom: 1rem solid rgba(17, 24, 39, 0.08);
  background: rgba(255, 255, 255, 0.84);
  -webkit-backdrop-filter: blur(18rem) saturate(150%);
  backdrop-filter: blur(18rem) saturate(150%);
}

.landing-page #header .header_inner {
  flex-wrap: nowrap;
  gap: 12rem;
  max-width: 1760px;
}

.landing-page #header .head_right {
  min-width: 0;
  margin-left: auto;
}

.landing-page .skip-to-content {
  position: fixed;
  z-index: 1000001;
  background: var(--landing-accent-dark);
}

.landing-page a:focus-visible,
.landing-page button:focus-visible,
.landing-page summary:focus-visible {
  outline: 3rem solid var(--landing-accent-dark);
  outline-offset: 4rem;
}

.landing-page #header .landing_header_cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: max(48rem, 44px);
  padding: 11rem 24rem;
  border-radius: 24rem;
  background: var(--landing-accent-dark);
  color: #fff;
  font-family: "Pretendard", sans-serif;
  font-size: max(16rem, 15px);
  font-weight: 650;
  line-height: 1.2;
  white-space: nowrap;
  transition: background-color 180ms ease, transform 140ms var(--landing-ease-out), box-shadow 180ms ease;
}

.landing {
  overflow: hidden;
}

.landing-page .landing p,
.landing-page .landing h1,
.landing-page .landing h2,
.landing-page .landing h3,
.landing-page .landing li,
.landing-page .landing summary {
  overflow-wrap: anywhere;
  word-break: keep-all;
}

.landing_inner {
  width: calc(100% - 80rem);
  max-width: 1440px;
  margin: 0 auto;
}

.landing_hero {
  position: relative;
  padding: 84rem 0 0;
  background: linear-gradient(180deg, #fff 0%, #fff 72%, #f8faff 100%);
}

.landing_hero_grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(52rem, 4.5vw, 72rem);
  align-items: center;
}

.landing_eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10rem;
  margin-bottom: 24rem;
  color: var(--landing-accent-dark);
  font-family: "Poppins", "Pretendard", sans-serif;
  font-size: 16rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.landing_eyebrow::before {
  width: 30rem;
  height: 2rem;
  content: "";
  background: var(--landing-accent);
}

.landing_hero h1 {
  max-width: 760rem;
  font-size: clamp(50px, 3.75vw, 68px);
  font-weight: 650;
  line-height: 1.08;
  letter-spacing: -0.042em;
  text-wrap: balance;
}

html:lang(ko) .landing_hero h1,
html:lang(ja) .landing_hero h1 {
  font-size: clamp(46px, 3.45vw, 62px);
  line-height: 1.12;
  letter-spacing: -0.036em;
}

.landing_lead {
  max-width: 690rem;
  margin-top: 24rem;
  color: var(--landing-muted);
  font-size: max(21rem, 17px);
  line-height: 1.62;
  letter-spacing: -0.016em;
}

.landing_cta_group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 13rem;
  margin-top: 34rem;
}

.landing_cta_group > p {
  max-width: 560rem;
  color: #68748a;
  font-size: max(14rem, 13px);
  line-height: 1.55;
}

.landing_cta {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 30rem;
  min-width: 290rem;
  min-height: 58rem;
  padding: 15rem 22rem 15rem 26rem;
  border: 1rem solid transparent;
  border-radius: 18rem;
  font-size: max(17rem, 15px);
  font-weight: 680;
  line-height: 1.25;
  transition: background-color 180ms ease, color 180ms ease, transform 140ms var(--landing-ease-out), box-shadow 180ms ease;
}

.landing_cta span:last-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30rem;
  height: 30rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.16);
  font-size: 19rem;
}

.landing_cta--primary {
  background: var(--landing-accent-dark);
  box-shadow: 0 14rem 32rem color-mix(in srgb, var(--landing-accent) 25%, transparent);
  color: #fff;
}

.landing_cta:focus-visible,
.landing-page #header .landing_header_cta:focus-visible,
.landing_faqs summary:focus-visible {
  outline: 3rem solid color-mix(in srgb, var(--landing-accent) 45%, #fff);
  outline-offset: 4rem;
}

.landing_hero_visual {
  position: relative;
}

.landing_visual_frame {
  display: block;
  padding: 0;
  overflow: hidden;
  border: 1rem solid rgba(151, 165, 201, 0.22);
  border-radius: 25rem;
  background: #f5f6fa;
  box-shadow: 0 22rem 54rem rgba(31, 53, 101, 0.14);
}

.landing_visual_frame img {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  border-radius: 24rem;
}

.landing_hero_visual figcaption {
  max-width: 620rem;
  margin: 18rem 12rem 0;
  color: #667085;
  font-size: max(14rem, 13px);
  line-height: 1.55;
}

.landing_signals {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 64rem;
  border-top: 1rem solid var(--landing-line);
  border-bottom: 1rem solid var(--landing-line);
  background: #fff;
}

.landing_signals li {
  display: flex;
  align-items: center;
  min-height: 76rem;
  padding: 20rem 28rem;
}

.landing_signals li + li {
  border-left: 1rem solid var(--landing-line);
}

.landing_signals strong {
  display: block;
  color: var(--landing-accent-dark);
  font-size: max(18rem, 15px);
  font-weight: 700;
}

.landing_section {
  padding: var(--landing-section-space) 0;
}

.landing_section--tint {
  background: linear-gradient(110deg, #edf3ff 0%, #f8faff 58%, #fff 100%);
}

.landing_section_heading {
  display: grid;
  grid-template-columns: 90rem minmax(0, 850rem);
  gap: 20rem;
  align-items: start;
  margin-bottom: var(--landing-content-gap);
}

.landing_section_index {
  padding-top: 9rem;
  color: var(--landing-accent);
  font-family: "Poppins", sans-serif;
  font-size: 15rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.landing_section h2,
.landing_final h2 {
  font-size: clamp(36px, 3vw, 54px);
  font-weight: 650;
  line-height: 1.13;
  letter-spacing: -0.038em;
  text-wrap: balance;
}

html:lang(ko) .landing_section h2,
html:lang(ko) .landing_final h2,
html:lang(ja) .landing_section h2,
html:lang(ja) .landing_final h2 {
  font-size: clamp(34px, 2.7vw, 48px);
  line-height: 1.18;
  letter-spacing: -0.032em;
}

.landing_section_heading > div > p {
  max-width: 820rem;
  margin-top: 20rem;
  color: var(--landing-muted);
  font-size: max(18rem, 16px);
  line-height: 1.7;
}

.landing_card_grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-left: 110rem;
  overflow: hidden;
  border: 1rem solid var(--landing-line);
  border-radius: 25rem;
}

.landing_card {
  min-height: 276rem;
  padding: 38rem 36rem;
  background: #fff;
}

.landing_card + .landing_card {
  border-left: 1rem solid var(--landing-line);
}

.landing_card_kicker {
  margin-bottom: 26rem;
  color: var(--landing-accent);
  font-family: "Poppins", sans-serif;
  font-size: max(14rem, 13px);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.landing_card h3 {
  margin-bottom: 16rem;
  font-size: max(23rem, 20px);
  font-weight: 680;
  line-height: 1.35;
  letter-spacing: -0.025em;
}

.landing_card > p:last-child {
  color: var(--landing-muted);
  font-size: max(16rem, 15px);
  line-height: 1.7;
}

.landing_planning_grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320rem, 0.55fr);
  gap: var(--landing-content-gap);
  align-items: start;
}

.landing_fit_panel {
  padding: 34rem 34rem 24rem;
  border: 1rem solid rgba(56, 110, 249, 0.2);
  border-radius: 22rem;
  background: rgba(255, 255, 255, 0.78);
}

.landing_fit_panel > h3 {
  font-size: max(24rem, 21px);
  font-weight: 680;
  line-height: 1.35;
  letter-spacing: -0.025em;
}

.landing_fit_panel > p {
  margin-top: 14rem;
  color: var(--landing-muted);
  font-size: max(16rem, 15px);
  line-height: 1.65;
}

.landing_checklist {
  margin-top: 24rem;
  overflow: hidden;
  border-top: 1rem solid rgba(56, 110, 249, 0.3);
  background: transparent;
}

.landing_checklist li {
  display: grid;
  grid-template-columns: 30rem minmax(0, 1fr);
  gap: 16rem;
  align-items: start;
  padding: 19rem 2rem;
}

.landing_checklist li + li {
  border-top: 1rem solid rgba(56, 110, 249, 0.16);
}

.landing_checklist span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25rem;
  height: 25rem;
  border: 1rem solid rgba(56, 110, 249, 0.35);
  border-radius: 50%;
  background: #fff;
  color: var(--landing-accent-dark);
  font-size: 12rem;
  font-weight: 700;
}

.landing_checklist p {
  padding-top: 1rem;
  font-size: max(17rem, 15px);
  font-weight: 560;
  line-height: 1.55;
}

.landing_steps {
  display: block;
  border-top: 1rem solid var(--landing-line);
  border-bottom: 1rem solid var(--landing-line);
  background: rgba(255, 255, 255, 0.5);
}

.landing_steps li {
  display: grid;
  grid-template-columns: 64rem minmax(0, 1fr);
  gap: 24rem;
  align-items: start;
  min-height: 0;
  padding: 28rem 8rem;
}

.landing_steps li + li {
  border-top: 1rem solid var(--landing-line);
}

.landing_step_number {
  display: block;
  color: var(--landing-accent);
  font-family: "Poppins", sans-serif;
  font-size: 36rem;
  font-weight: 500;
  line-height: 1;
}

.landing_steps h3 {
  margin-bottom: 15rem;
  font-size: max(24rem, 20px);
  font-weight: 680;
  letter-spacing: -0.025em;
}

.landing_steps p {
  max-width: 920rem;
  color: var(--landing-muted);
  font-size: max(17rem, 15px);
  line-height: 1.7;
}

.landing_trust {
  padding: var(--landing-panel-inset) 40rem 0;
  background: #fff;
}

.landing_trust_grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1fr) minmax(300rem, 0.88fr);
  gap: var(--landing-content-gap);
  align-items: start;
  width: 100%;
  max-width: 1760px;
  padding: 52rem;
  overflow: hidden;
  border: 1rem solid rgba(56, 110, 249, 0.18);
  border-radius: 25rem;
  background: linear-gradient(115deg, #edf3ff 0%, #f7f9ff 58%, #fff 100%);
}

.landing_trust_grid--edge-only {
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
}

.landing_trust_intro h2 {
  max-width: 620rem;
  font-size: clamp(30px, 2.35vw, 42px);
  font-weight: 650;
  line-height: 1.16;
  letter-spacing: -0.034em;
  text-wrap: balance;
}

html:lang(ko) .landing_trust_intro h2,
html:lang(ja) .landing_trust_intro h2 {
  font-size: clamp(29px, 2.15vw, 39px);
  line-height: 1.22;
  letter-spacing: -0.03em;
}

.landing_trust_intro > p {
  max-width: 660rem;
  margin-top: 18rem;
  color: var(--landing-muted);
  font-size: max(17rem, 15px);
  line-height: 1.7;
}

.landing_trust_list {
  border-top: 1rem solid rgba(56, 110, 249, 0.24);
}

.landing_trust_list li {
  display: grid;
  grid-template-columns: 28rem minmax(0, 1fr);
  gap: 14rem;
  align-items: start;
  padding: 20rem 0;
  border-bottom: 1rem solid rgba(56, 110, 249, 0.18);
}

.landing_trust_list span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25rem;
  height: 25rem;
  border: 1rem solid rgba(56, 110, 249, 0.34);
  border-radius: 50%;
  background: #fff;
  color: var(--landing-accent-dark);
  font-size: 12rem;
  font-weight: 700;
}

.landing_trust_list p {
  padding-top: 1rem;
  color: #26354f;
  font-size: max(16rem, 15px);
  line-height: 1.62;
}

.landing_section--dark {
  position: relative;
  overflow: hidden;
  padding: var(--landing-panel-inset) 40rem;
  background: #fff;
  color: #fff;
}

.landing_section--dark::after {
  display: none;
}

.landing_section--dark .landing_inner {
  position: relative;
  width: 100%;
  max-width: 1760px;
  padding: 104rem 110rem;
  overflow: hidden;
  border-radius: 25rem;
  background: var(--landing-brand-gradient);
}

.landing_section--dark .landing_inner::after {
  position: absolute;
  right: -190rem;
  bottom: -270rem;
  width: 650rem;
  height: 650rem;
  border: 1rem solid rgba(255, 255, 255, 0.12);
  border-radius: 50%;
  box-shadow: 0 0 0 82rem rgba(255, 255, 255, 0.028), 0 0 0 164rem rgba(255, 255, 255, 0.018);
  content: "";
}

.landing_evidence_grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: var(--landing-content-gap);
}

.landing_section--dark .landing_section_index {
  margin-bottom: 22rem;
  color: #a9c1ff;
}

.landing_evidence_intro {
  max-width: 600rem;
  margin-top: 22rem;
  color: #e4ebff;
  font-size: max(18rem, 16px);
  line-height: 1.7;
}

.landing_evidence_list {
  border-top: 1rem solid rgba(255, 255, 255, 0.18);
}

.landing_evidence_list li {
  display: grid;
  grid-template-columns: 12rem minmax(0, 1fr);
  gap: 18rem;
  align-items: start;
  padding: 24rem 0;
  border-bottom: 1rem solid rgba(255, 255, 255, 0.18);
}

.landing_evidence_list li > span {
  width: 9rem;
  height: 9rem;
  margin-top: 8rem;
  border-radius: 50%;
  background: #a9c1ff;
  box-shadow: 0 0 0 6rem rgba(169, 193, 255, 0.15);
}

.landing_evidence_list p {
  color: #f7f9ff;
  font-size: max(18rem, 16px);
  line-height: 1.55;
}

.landing_agent {
  padding: 0 40rem var(--landing-panel-inset);
  background: #fff;
}

.landing_agent_panel {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
  gap: clamp(48rem, 5vw, 80rem);
  align-items: center;
  width: 100%;
  max-width: 1760px;
  padding: clamp(56rem, 5vw, 80rem);
  overflow: hidden;
  border: 1rem solid rgba(56, 110, 249, 0.18);
  border-radius: 25rem;
  background: linear-gradient(125deg, #f7f9ff 0%, #fff 62%, #edf3ff 100%);
  box-shadow: 0 24rem 64rem rgba(31, 53, 101, 0.08);
}

.landing_agent_copy {
  min-width: 0;
}

.landing_agent_meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10rem;
  align-items: center;
  margin-bottom: 20rem;
}

.landing_agent_meta span:first-child {
  color: var(--landing-accent-dark);
  font-family: "Poppins", sans-serif;
  font-size: max(13rem, 12px);
  font-weight: 700;
  letter-spacing: 0.08em;
}

.landing_agent_meta span:last-child {
  display: inline-flex;
  align-items: center;
  min-height: 28rem;
  padding: 5rem 11rem;
  border: 1rem solid rgba(56, 110, 249, 0.22);
  border-radius: 999rem;
  background: rgba(255, 255, 255, 0.86);
  color: #42516d;
  font-size: max(12rem, 11px);
  font-weight: 650;
  line-height: 1.3;
}

.landing_agent h2 {
  max-width: 760rem;
  font-size: clamp(36px, 2.8vw, 50px);
  font-weight: 650;
  line-height: 1.14;
  letter-spacing: -0.036em;
  text-wrap: balance;
}

html:lang(ko) .landing_agent h2,
html:lang(ja) .landing_agent h2 {
  font-size: clamp(33px, 2.55vw, 45px);
  line-height: 1.2;
  letter-spacing: -0.03em;
}

.landing_agent_heading > p {
  max-width: 760rem;
  margin-top: 18rem;
  color: var(--landing-muted);
  font-size: max(17rem, 15px);
  line-height: 1.68;
}

.landing_agent_questions {
  margin-top: 30rem;
}

.landing_agent_questions > p {
  margin-bottom: 10rem;
  color: #56637d;
  font-size: max(13rem, 12px);
  font-weight: 700;
  letter-spacing: 0.02em;
}

.landing_agent_questions ul {
  display: grid;
  gap: 8rem;
}

.landing_agent_question {
  display: grid;
  grid-template-columns: 32rem minmax(0, 1fr);
  gap: 12rem;
  align-items: start;
  padding: 14rem 16rem;
  border: 1rem solid rgba(56, 110, 249, 0.16);
  border-radius: 14rem;
  background: rgba(255, 255, 255, 0.78);
}

.landing_agent_question > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30rem;
  height: 30rem;
  border-radius: 50%;
  background: var(--landing-accent-dark);
  color: #fff;
  font-family: "Poppins", sans-serif;
  font-size: max(12rem, 11px);
  font-weight: 700;
}

.landing_agent_question p {
  padding-top: 3rem;
  color: #26354f;
  font-size: max(15rem, 14px);
  font-weight: 560;
  line-height: 1.55;
}

.landing_agent_guardrail {
  display: grid;
  grid-template-columns: 28rem minmax(0, 1fr);
  gap: 12rem;
  align-items: start;
  margin-top: 18rem;
  padding: 16rem;
  border: 1rem solid rgba(56, 110, 249, 0.2);
  border-radius: 14rem;
  background: #edf3ff;
  color: #33415c;
  font-size: max(14rem, 13px);
  line-height: 1.58;
}

.landing_agent_guardrail > span:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26rem;
  height: 26rem;
  border: 1rem solid rgba(56, 110, 249, 0.3);
  border-radius: 50%;
  background: #fff;
  color: var(--landing-accent-dark);
  font-size: 12rem;
  font-weight: 700;
}

.landing_agent_visual {
  min-width: 0;
  margin: 0;
}

.landing_agent_visual_frame {
  overflow: hidden;
  border: 1rem solid rgba(56, 110, 249, 0.16);
  border-radius: 22rem;
  background: #f5f8ff;
}

.landing_agent_visual img {
  display: block;
  width: 100%;
  height: auto;
}

.landing_agent_visual figcaption {
  margin-top: 12rem;
  color: #59667f;
  font-size: max(12rem, 11px);
  line-height: 1.5;
  text-align: right;
}

.landing_ontology {
  grid-column: 1 / -1;
  display: grid;
  gap: 24rem;
  padding: clamp(30rem, 3vw, 42rem);
  overflow: hidden;
  border: 1rem solid rgba(127, 164, 255, 0.3);
  border-radius: 20rem;
  background:
    radial-gradient(circle at 12% 0%, rgba(91, 139, 255, 0.3), transparent 34%),
    radial-gradient(circle at 92% 100%, rgba(112, 85, 255, 0.2), transparent 38%),
    linear-gradient(135deg, #10295d 0%, #0a1b43 58%, #101d3b 100%);
  color: #fff;
  box-shadow: 0 22rem 48rem rgba(18, 41, 88, 0.18);
}

.landing_ontology_head {
  display: grid;
  grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
  gap: clamp(28rem, 4vw, 64rem);
  align-items: end;
}

.landing_ontology_kicker {
  margin-bottom: 12rem;
  color: #a9c2ff;
  font-family: "Poppins", "Pretendard", sans-serif;
  font-size: max(12rem, 11px);
  font-weight: 700;
  letter-spacing: 0.07em;
}

.landing_ontology h3 {
  max-width: 680rem;
  color: #fff;
  font-size: clamp(27px, 2.1vw, 36px);
  font-weight: 650;
  line-height: 1.22;
  letter-spacing: -0.03em;
  text-wrap: balance;
}

html:lang(ko) .landing_ontology h3 {
  font-size: clamp(25px, 1.95vw, 33px);
  line-height: 1.28;
}

.landing_ontology_head > p {
  max-width: 820rem;
  color: #dce6ff;
  font-size: max(16rem, 14px);
  line-height: 1.7;
}

.landing_ontology_result {
  display: block;
  padding-top: 22rem;
  border-top: 1rem solid rgba(169, 194, 255, 0.2);
  color: #fff;
  font-size: max(16rem, 14px);
  font-weight: 600;
  line-height: 1.58;
}

.landing_assurance {
  align-self: stretch;
  padding: 27rem;
  border: 1rem solid rgba(56, 110, 249, 0.2);
  border-radius: 20rem;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 16rem 36rem rgba(31, 53, 101, 0.08);
}

.landing_assurance_label {
  color: var(--landing-accent-dark);
  font-family: "Poppins", "Pretendard", sans-serif;
  font-size: max(12rem, 11px);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.landing_assurance_credentials {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10rem;
  margin-top: 12rem;
}

.landing_assurance_credentials article {
  display: flex;
  flex-direction: column;
  min-height: 96rem;
  padding: 14rem;
  border: 1rem solid rgba(56, 110, 249, 0.18);
  border-radius: 14rem;
  background: #f8faff;
  color: var(--landing-ink);
}

.landing_assurance_credentials article > span {
  color: #65718a;
  font-size: max(10rem, 10px);
  line-height: 1.35;
}

.landing_assurance_credentials strong {
  margin-top: 7rem;
  font-size: max(14rem, 13px);
  font-weight: 700;
  line-height: 1.35;
}

.landing_assurance_credentials small {
  margin-top: 5rem;
  color: #59667f;
  font-size: max(10rem, 10px);
  line-height: 1.4;
}

.landing_assurance_scope {
  margin-top: 14rem;
  color: #33415c;
  font-size: max(12rem, 11px);
  line-height: 1.55;
}

.landing_assurance_validity {
  margin-top: 7rem;
  color: #68748a;
  font-size: max(11rem, 10px);
  line-height: 1.45;
}

.landing_faq_grid {
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
  gap: clamp(56rem, 6vw, 88rem);
}

.landing_faq_grid .landing_section_index {
  margin-bottom: 20rem;
}

.landing_faqs {
  border-top: 1rem solid rgba(56, 110, 249, 0.24);
}

.landing_faqs details {
  border-bottom: 1rem solid rgba(56, 110, 249, 0.24);
}

.landing_faqs summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32rem;
  gap: 20rem;
  align-items: center;
  padding: 25rem 4rem;
  cursor: pointer;
  list-style: none;
  font-size: max(19rem, 17px);
  font-weight: 650;
  line-height: 1.5;
}

.landing_faqs summary::-webkit-details-marker {
  display: none;
}

.landing_faqs summary span:last-child {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30rem;
  height: 30rem;
  border: 1rem solid color-mix(in srgb, var(--landing-accent) 45%, #aab4c8);
  border-radius: 50%;
  color: var(--landing-accent-dark);
  font-size: 20rem;
  font-weight: 400;
  transition: transform 220ms var(--landing-ease-in-out), background-color 180ms ease;
}

.landing_faqs details[open] summary span:last-child {
  background: #fff;
  transform: rotate(45deg);
}

.landing_faqs details > p {
  max-width: 900rem;
  padding: 0 54rem 28rem 4rem;
  color: var(--landing-muted);
  font-size: max(16rem, 15px);
  line-height: 1.75;
}

.landing_faqs details[open] > p {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 220ms var(--landing-ease-out), transform 220ms var(--landing-ease-out);
}

@starting-style {
  .landing_faqs details[open] > p {
    opacity: 0;
    transform: translateY(-5rem);
  }
}

.landing_final {
  padding: var(--landing-panel-inset) 40rem;
  background: #fff;
  color: #fff;
}

.landing_final_inner {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(340rem, 0.8fr);
  gap: clamp(52rem, 5.5vw, 82rem);
  align-items: center;
  width: 100%;
  max-width: 1760px;
  padding: 90rem 110rem;
  overflow: hidden;
  border-radius: 25rem;
  background: var(--landing-brand-gradient);
}

.landing_final h2 {
  max-width: 850rem;
}

.landing_final_inner > div:first-child > p {
  max-width: 780rem;
  margin-top: 24rem;
  color: rgba(255, 255, 255, 0.9);
  font-size: max(18rem, 16px);
  line-height: 1.7;
}

.landing_cta_group--final {
  margin-top: 0;
}

.landing_cta_group--final > p {
  color: rgba(255, 255, 255, 0.88);
}

.landing_cta--light {
  border-color: #fff;
  background: #fff;
  color: var(--landing-accent-dark);
}

.landing_cta--light span:last-child {
  background: var(--landing-accent-soft);
}

.landing-page #header .landing_header_cta:active,
.landing_cta:active {
  transform: scale(0.97);
  transition-duration: 100ms;
}

.landing-motion-ready .landing_motion_item {
  opacity: 0;
  transform: translate3d(0, 14rem, 0);
  transition: opacity 420ms var(--landing-ease-out), transform 420ms var(--landing-ease-out);
  transition-delay: var(--landing-motion-delay, 0ms);
  will-change: opacity, transform;
}

.landing-motion-ready .landing_motion_item.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.landing-motion-ready .landing_motion_item.is-visible {
  will-change: auto;
}

@media (max-width: 1280px) {
  #sub.landing-page #container {
    padding-top: 68rem;
  }

  .landing-page #header .head_right {
    display: flex;
  }

  .landing-page #header .landing_header_cta {
    min-height: 44px;
    padding: 10rem 18rem;
    font-size: 14rem;
  }

  .landing_inner {
    width: calc(100% - 48rem);
  }

  .landing_hero {
    padding-top: 72rem;
  }

  .landing_hero_grid {
    gap: 42rem;
  }

  .landing_visual_frame {
    padding: 0;
  }

  .landing_signals li {
    padding: 25rem 22rem;
  }

  .landing_section {
    padding: 96rem 0;
  }

  .landing_card_grid {
    margin-left: 0;
  }

  .landing_trust {
    padding: 36rem 24rem 0;
  }

  .landing_trust_grid {
    width: 100%;
    gap: 40rem;
    padding: 48rem 40rem;
  }

  .landing_agent {
    padding: 0 24rem 36rem;
  }

  .landing_agent_panel {
    width: 100%;
    gap: 40rem;
    padding: 52rem 40rem;
  }

  .landing_section--dark {
    padding: 36rem 24rem;
  }

  .landing_section--dark .landing_inner {
    width: 100%;
    padding: 82rem 64rem;
  }

  .landing_final {
    padding: 36rem 24rem;
  }

  .landing_final_inner {
    width: 100%;
    padding: 76rem 64rem;
  }

  .landing_planning_grid,
  .landing_evidence_grid,
  .landing_faq_grid {
    gap: 48rem;
  }
}

@media (max-width: 1100px) {
  .landing_trust_grid,
  .landing_trust_grid--edge-only {
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  }

  .landing_assurance {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  .landing_hero_grid,
  .landing_planning_grid,
  .landing_trust_grid,
  .landing_agent_panel,
  .landing_evidence_grid,
  .landing_faq_grid,
  .landing_final_inner {
    grid-template-columns: 1fr;
  }

  .landing_hero_visual {
    margin-top: 18rem;
  }

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

  .landing_signals li:nth-child(3) {
    border-left: 0;
    border-top: 1rem solid var(--landing-line);
  }

  .landing_signals li:nth-child(4) {
    border-top: 1rem solid var(--landing-line);
  }

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

  .landing_card {
    min-height: 0;
  }

  .landing_card + .landing_card {
    border-top: 1rem solid var(--landing-line);
    border-left: 0;
  }

  .landing_assurance {
    grid-column: auto;
  }

  .landing_ontology {
    grid-column: auto;
  }

  .landing_ontology_head {
    grid-template-columns: 1fr;
    gap: 16rem;
  }

  .landing_final_inner {
    gap: 42rem;
  }
}

@media (max-width: 600px) {
  .landing-page #header .header_inner {
    width: calc(100% - 28rem);
  }

  .landing-page #header .landing_header_cta {
    flex: 0 0 auto;
    max-width: 148rem;
    min-width: 0;
    min-height: 44px;
    padding: 10rem 16rem;
    font-size: 13rem;
    text-align: center;
  }

  .landing_inner {
    width: calc(100% - 32rem);
  }

  .landing_hero {
    padding-top: 44rem;
  }

  .landing_eyebrow {
    margin-bottom: 16rem;
    font-size: 13rem;
  }

  .landing_hero h1 {
    font-size: clamp(36rem, 10.25vw, 40rem);
    line-height: 1.1;
  }

  html:lang(ko) .landing_hero h1,
  html:lang(ja) .landing_hero h1 {
    font-size: clamp(34rem, 9.7vw, 38rem);
    line-height: 1.16;
  }

  .landing_lead {
    margin-top: 20rem;
    font-size: 17rem;
    line-height: 1.65;
  }

  .landing_cta_group {
    margin-top: 28rem;
  }

  .landing_cta {
    width: 100%;
    min-width: 0;
    min-height: 54rem;
    font-size: 15rem;
  }

  .landing_visual_frame {
    padding: 0;
    border-radius: 20rem;
  }

  .landing_visual_frame img {
    border-radius: 19rem;
  }

  .landing_hero_visual figcaption {
    margin: 13rem 4rem 0;
    font-size: 12rem;
  }

  .landing_signals {
    margin-top: 44rem;
  }

  .landing_signals li {
    min-height: 0;
    padding: 18rem;
  }

  .landing_signals strong {
    font-size: 16rem;
  }

  .landing_section {
    padding: 72rem 0;
  }

  .landing_section_heading {
    grid-template-columns: 1fr;
    gap: 10rem;
    margin-bottom: 32rem;
  }

  .landing_section_index {
    padding-top: 0;
  }

  .landing_section h2,
  .landing_final h2 {
    font-size: 32rem;
  }

  html:lang(ko) .landing_section h2,
  html:lang(ko) .landing_final h2,
  html:lang(ja) .landing_section h2,
  html:lang(ja) .landing_final h2 {
    font-size: 30rem;
    line-height: 1.22;
  }

  .landing_section_heading > div > p,
  .landing_evidence_intro,
  .landing_final_inner > div:first-child > p {
    font-size: 16rem;
  }

  .landing_card_grid {
    gap: 0;
  }

  .landing_card {
    padding: 27rem 24rem;
  }

  .landing_card_kicker {
    margin-bottom: 20rem;
  }

  .landing_card h3 {
    font-size: 21rem;
  }

  .landing_planning_grid,
  .landing_evidence_grid,
  .landing_faq_grid {
    gap: 32rem;
  }

  .landing_fit_panel,
  .landing_assurance {
    padding: 24rem;
  }

  .landing_trust {
    padding: 24rem 16rem 0;
  }

  .landing_trust_grid {
    gap: 32rem;
    padding: 36rem 24rem;
    border-radius: 20rem;
  }

  .landing_trust_intro h2,
  html:lang(ko) .landing_trust_intro h2,
  html:lang(ja) .landing_trust_intro h2 {
    font-size: 28rem;
    line-height: 1.24;
  }

  .landing_trust_intro > p,
  .landing_trust_list p {
    font-size: 15rem;
  }

  .landing_agent {
    padding: 0 16rem 24rem;
  }

  .landing_agent_panel {
    gap: 32rem;
    width: 100%;
    padding: 36rem 24rem;
    border-radius: 20rem;
  }

  .landing_agent h2,
  html:lang(ko) .landing_agent h2,
  html:lang(ja) .landing_agent h2 {
    font-size: 28rem;
    line-height: 1.24;
  }

  .landing_agent_heading > p {
    font-size: 15rem;
  }

  .landing_agent_questions {
    margin-top: 24rem;
  }

  .landing_agent_question {
    grid-template-columns: 30rem minmax(0, 1fr);
    gap: 10rem;
    padding: 13rem 14rem;
  }

  .landing_agent_question > span {
    width: 28rem;
    height: 28rem;
  }

  .landing_agent_question p,
  .landing_agent_guardrail {
    font-size: 14rem;
  }

  .landing_agent_visual_frame {
    border-radius: 16rem;
  }

  .landing_ontology {
    gap: 20rem;
    padding: 28rem 20rem;
    border-radius: 16rem;
  }

  .landing_ontology h3,
  html:lang(ko) .landing_ontology h3 {
    font-size: 25rem;
  }

  .landing_ontology_head > p {
    font-size: 15rem;
  }

  .landing_ontology_result {
    padding-top: 18rem;
  }

  .landing_checklist li {
    padding: 20rem;
  }

  .landing_steps li {
    grid-template-columns: 48rem minmax(0, 1fr);
    gap: 16rem;
    padding: 24rem 4rem;
  }

  .landing_step_number {
    font-size: 30rem;
  }

  .landing_steps h3 {
    font-size: 20rem;
  }

  .landing_steps p,
  .landing_evidence_list p {
    font-size: 15rem;
  }

  .landing_faqs summary {
    padding: 22rem 0;
    font-size: 17rem;
  }

  .landing_faqs details > p {
    padding: 0 42rem 24rem 0;
    font-size: 15rem;
  }

  .landing_final {
    padding: 24rem 16rem;
  }

  .landing_final_inner {
    gap: 30rem;
    width: 100%;
    padding: 58rem 24rem;
    border-radius: 20rem;
  }

  .landing_section--dark {
    padding: 24rem 16rem;
  }

  .landing_section--dark .landing_inner {
    width: 100%;
    padding: 56rem 24rem;
    border-radius: 20rem;
  }

  .landing-id--retail-media-measurement .landing_visual_frame {
    aspect-ratio: 1.16;
  }

  .landing-id--retail-media-measurement .landing_visual_frame img {
    width: 166%;
    max-width: none;
    height: 100%;
    object-fit: cover;
    object-position: 20% center;
    transform: translateX(-8%);
  }
}

@media (hover: hover) and (pointer: fine) {
  .landing-page #header .landing_header_cta:hover {
    background: #1649d8;
    transform: translateY(-1rem);
  }

  .landing_cta--primary:hover {
    background: #1649d8;
    box-shadow: 0 18rem 38rem rgba(37, 91, 234, 0.28);
    transform: translateY(-2rem);
  }

  .landing_cta--light:hover {
    box-shadow: 0 15rem 34rem rgba(8, 20, 55, 0.22);
    transform: translateY(-2rem);
  }

}

@media (prefers-reduced-motion: reduce) {
  .landing-page *,
  .landing-page *::before,
  .landing-page *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }

  .landing-motion-ready .landing_motion_item,
  .landing-motion-ready .landing_motion_item.is-visible {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-transparency: reduce) {
  .landing-page #header {
    background: #fff;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
}

@media (prefers-contrast: more) {
  .landing-page #header {
    background: #fff;
    border-bottom-color: #111;
  }

  .landing_visual_frame,
  .landing_card_grid,
  .landing_fit_panel,
  .landing_trust_grid,
  .landing_agent_panel,
  .landing_agent_question,
  .landing_agent_guardrail,
  .landing_agent_visual_frame,
  .landing_assurance {
    border-color: #59647b;
  }
}
