﻿.home-main { padding-top: 60px; overflow: hidden; }
.home-main, .home-footer { --home-max: 1376px; --home-gutter: clamp(16px, 2.25vw, 32px); }
.home-hero, .home-section, .home-feature, .home-cta, .home-metrics { width: min(calc(100% - (var(--home-gutter) * 2)), var(--home-max)); margin-inline: auto; }
.home-kicker { margin: 0 0 16px; color: #123047; font-size: 14px; font-weight: 600; }
.home-hero { padding: clamp(70px, 8vw, 118px) 0 42px; }
.home-hero-copy { max-width: 1020px; margin: 0 auto clamp(54px, 7vw, 96px); text-align: center; }
.home-hero h1 { margin: 0; font-size: clamp(58px, 8.4vw, 124px); line-height: .89; letter-spacing: -.078em; font-weight: 600; text-wrap: balance; }
.home-lead { max-width: 700px; margin: 30px auto 0; color: #4f5357; font-size: clamp(18px, 1.5vw, 22px); line-height: 1.5; }
.home-actions { margin-top: 30px; display: flex; justify-content: center; align-items: center; gap: 22px; flex-wrap: wrap; }
.home-button { min-height: 46px; display: inline-flex; align-items: center; padding: 0 20px; background: #101112; color: white; text-decoration: none; font-size: 14px; font-weight: 600; border-radius: 999px; transition: transform .3s ease, opacity .2s ease; }
.home-button:hover { transform: translateY(-2px); opacity: .78; }
.home-link { color: #101112; font-size: 14px; font-weight: 600; text-decoration: none; }
.home-link:hover { opacity: .55; }
.home-hero-art { margin: 0; height: min(54vw, 690px); overflow: hidden; background: #f5f3ee; }
.home-hero-art img { width: 100%; height: 100%; object-fit: cover; }
.home-metrics { display: grid; grid-template-columns: repeat(4, 1fr); padding: 28px 0 34px; border-bottom: 1px solid #deded8; }
.home-metrics div { padding: 0 24px; border-left: 1px solid #deded8; }
.home-metrics div:first-child { padding-left: 0; border-left: 0; }
.home-metrics strong { display: block; margin-bottom: 7px; font-size: clamp(27px, 3vw, 42px); letter-spacing: -.055em; }
.home-metrics span { color: #666b70; font-size: 14px; }
.home-section { padding: clamp(78px, 9vw, 138px) 0; }
.home-section-head { max-width: 980px; margin-bottom: clamp(42px, 6vw, 80px); }
.home-section-head > p:last-child { max-width: 700px; margin: 22px 0 0; color: #55595d; font-size: 19px; line-height: 1.55; }
.home-section h2, .home-feature h2, .home-cta h2 { margin: 0; font-size: clamp(48px, 6.5vw, 96px); line-height: .94; letter-spacing: -.07em; font-weight: 600; text-wrap: balance; }
.home-products { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(18px, 2.4vw, 34px); }
.home-artefacts { border-bottom: 1px solid #deded8; }
.home-artefact-grid { display: grid; grid-template-columns: 1.18fr .91fr .91fr; gap: 16px; }
.home-artefact { display: block; padding-bottom: 24px; color: #101112; text-decoration: none; border-bottom: 1px solid #deded8; transition: transform .4s cubic-bezier(.22,1,.36,1); }
.home-artefact:hover { transform: translateY(-5px); }
.home-artefact > div { aspect-ratio: .92; margin-bottom: 20px; overflow: hidden; background: #f5f3ee; }
.home-artefact-featured > div { aspect-ratio: 1.18; }
.home-artefact img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.22,1,.36,1); }
.home-artefact:hover img { transform: scale(1.025); }
.home-artefact > span { color: #9b653c; font-size: 12px; font-weight: 600; }
.home-artefact h3 { margin: 12px 0 8px; font-size: clamp(25px,2.5vw,38px); line-height: 1; letter-spacing: -.05em; }
.home-artefact p { margin: 0; color: #666b70; font-size: 14px; }
.home-product { min-width: 0; color: #101112; text-decoration: none; }
.home-product-media { aspect-ratio: 1.16; overflow: hidden; background: #f5f3ee; }
.home-product-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.22,1,.36,1); }
.home-product:hover img { transform: scale(1.025); }
.home-product-copy { position: relative; padding: 26px 0 0 46px; }
.home-product-number { position: absolute; left: 0; top: 32px; color: #9b653c; font-size: 12px; }
.home-product h3 { max-width: 620px; margin: 0 0 15px; font-size: clamp(32px, 4vw, 58px); line-height: .98; letter-spacing: -.055em; }
.home-product p { max-width: 560px; margin: 0 0 24px; color: #666b70; font-size: 17px; line-height: 1.55; }
.home-product-action { font-size: 14px; font-weight: 600; }
.home-access-entry {
  border-top: 1px solid #deded8;
}
.home-access-entry .home-section-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(320px,.58fr);
  align-items: end;
  gap: clamp(28px,5vw,76px);
  max-width: none;
  margin-bottom: clamp(34px,5vw,62px);
}
.home-access-entry .home-section-head p {
  max-width: 520px;
  margin: 0 0 6px;
  color: #5f666b;
  font-size: 16px;
  line-height: 1.65;
}
.home-access-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: clamp(18px,2.4vw,34px);
}
.home-access-card {
  position: relative;
  min-height: clamp(430px,35vw,560px);
  padding: clamp(24px,3vw,38px);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  border: 1px solid #dfe3e6;
  border-radius: 8px;
  color: #101112;
  text-decoration: none;
  background: #f5f3ee;
  box-shadow: 0 28px 74px rgba(16,42,67,.08);
  transition: transform .45s cubic-bezier(.22,1,.36,1), box-shadow .24s ease;
}
.home-access-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 36px 92px rgba(16,42,67,.12);
}
.home-access-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .75s cubic-bezier(.22,1,.36,1);
}
.home-access-card:hover img {
  transform: scale(1.025);
}
.home-access-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(255,255,255,0) 12%, rgba(255,255,255,.24) 56%, rgba(255,255,255,.72) 100%);
}
.home-access-card > div {
  position: relative;
  z-index: 1;
  max-width: 520px;
}
.home-access-card span {
  display: inline-flex;
  margin-bottom: 14px;
  color: rgba(16,17,18,.72);
  font-size: 13px;
  font-weight: 700;
}
.home-access-card strong {
  display: block;
  margin-bottom: 12px;
  font-size: clamp(34px,4vw,58px);
  line-height: .95;
  letter-spacing: -.06em;
}
.home-access-card p {
  max-width: 420px;
  margin: 0;
  color: rgba(16,17,18,.72);
  font-size: 16px;
  line-height: 1.55;
}
.home-access-card i {
  position: absolute;
  z-index: 1;
  top: 24px;
  right: 24px;
  font-style: normal;
  font-weight: 700;
}
.home-access-card :is(strong,p,span) > :is(.cnw-lang-es,.cnw-lang-en) {
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
}
.home-media-placeholder { display: grid; place-items: center; border: 1px dashed #b8b8b1; background: #fafaf8; }
.home-media-placeholder > span { max-width: 390px; padding: 28px; display: grid; gap: 10px; color: #777b7f; font-size: 15px; line-height: 1.5; text-align: center; }
.home-media-placeholder b { color: #123047; font-size: 13px; text-transform: uppercase; letter-spacing: .06em; }
.home-feature { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: clamp(50px, 8vw, 140px); padding: clamp(76px, 9vw, 138px) 0; border-top: 1px solid #deded8; }
.home-feature-copy > p:not(.home-kicker) { max-width: 510px; margin: 26px 0 24px; color: #666b70; font-size: 18px; line-height: 1.6; }
.home-feature figure, .home-research-layout figure { margin: 0; overflow: hidden; background: #f5f3ee; }
.home-feature figure { aspect-ratio: .88; }
.home-feature img, .home-research-layout img { width: 100%; height: 100%; object-fit: cover; }
.home-research { border-top: 1px solid #deded8; }
.home-research-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(34px, 6vw, 96px); align-items: start; }
.home-research-layout figure { aspect-ratio: 1.25; }
.home-paper-list { border-top: 1px solid #deded8; }
.home-paper-list a { display: grid; grid-template-columns: 80px 1fr 20px; gap: 22px; align-items: start; padding: 24px 0; border-bottom: 1px solid #deded8; color: #101112; text-decoration: none; transition: transform .3s ease; }
.home-paper-list a:hover { transform: translateX(5px); }
.home-paper-list span { color: #777b7f; font-size: 13px; }
.home-paper-list strong { font-size: clamp(18px, 2vw, 26px); line-height: 1.15; letter-spacing: -.025em; }
.home-paper-list i { font-style: normal; }
.home-cta { padding: clamp(72px, 8vw, 118px) 0; display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: end; border-top: 1px solid #deded8; }
.home-cta h2 { max-width: 900px; }
nav { position: fixed !important; inset: 0 0 auto 0; z-index: 100; height: 60px !important; padding: 0 var(--home-gutter, 30px) !important; display: flex !important; align-items: center; justify-content: space-between; gap: 24px; }
nav .nav-logo { display: inline-flex; align-items: center; gap: 10px; color: #101112; text-decoration: none; font-size: 12px; font-weight: 650; letter-spacing: .06em; white-space: nowrap; }
nav .nav-logo img { width: 28px; height: 28px; object-fit: contain; border-radius: 0; }
nav .nav-links { position: absolute; left: 50%; transform: translateX(-50%); margin: 0; padding: 0; display: flex; align-items: center; gap: clamp(14px, 1.5vw, 26px); list-style: none; white-space: nowrap; }
nav .nav-links a { color: #4f5357; text-decoration: none; font-size: 13px; }
nav .nav-links a:hover { color: #101112; }
nav .nav-actions { margin-left: auto; display: flex; align-items: center; gap: 10px; }
nav .lang-toggle { min-width: 58px; height: 30px; display: flex; align-items: center; justify-content: center; gap: 4px; border: 1px solid #deded8; background: white; color: #777b7f; font-size: 10px; cursor: pointer; }
nav .lt-on { color: #101112; font-weight: 650; }
nav .nav-toggle { display: none; width: 34px; height: 34px; padding: 7px; border: 0; background: transparent; flex-direction: column; justify-content: center; gap: 5px; }
nav .nav-toggle span { display: block; width: 20px; height: 1px; background: #101112; }
.nav-mobile { display: none; position: fixed; top: 60px; left: 0; right: 0; z-index: 99; padding: 14px 16px 24px; background: white; border-bottom: 1px solid #deded8; }
.nav-mobile.open { display: flex; flex-direction: column; }
.nav-mobile a { padding: 13px 0; color: #101112; text-decoration: none; border-bottom: 1px solid #ecece8; font-size: 15px; }
.home-explore { border-top: 1px solid #deded8; }
.home-explore-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid #deded8; }
.home-explore-grid a { position: relative; min-height: 220px; padding: 26px 46px 28px 0; color: #101112; text-decoration: none; border-bottom: 1px solid #deded8; transition: transform .35s ease, background .3s ease; }
.home-explore-grid a:nth-child(even) { padding-left: 30px; border-left: 1px solid #deded8; }
.home-explore-grid a:hover { transform: translateY(-4px); background: #f7f7f5; }
.home-explore-grid a > span { color: #9b653c; font-size: 12px; }
.home-explore-grid strong { display: block; margin: 40px 0 12px; font-size: clamp(29px, 3vw, 46px); letter-spacing: -.05em; }
.home-explore-grid p { max-width: 430px; margin: 0; color: #666b70; font-size: 15px; }
.home-explore-grid i { position: absolute; right: 20px; top: 28px; font-style: normal; }
footer { padding: 0 !important; background: #101112 !important; }
.home-footer { padding: clamp(58px, 7vw, 94px) 0 28px; color: white; }
.home-footer-lead { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; padding-bottom: 56px; border-bottom: 1px solid rgba(255,255,255,.14); }
.home-footer-lead strong { font-size: clamp(28px, 4vw, 52px); letter-spacing: -.05em; }
.home-footer-lead p { max-width: 450px; margin: 0; color: rgba(255,255,255,.62); font-size: 17px; line-height: 1.55; }
.home-footer-nav { display: grid; grid-template-columns: repeat(5,1fr); gap: 32px; padding: 48px 0 60px; border-bottom: 1px solid rgba(255,255,255,.14); }
.home-footer-nav > div { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
.home-footer-nav > div > span { margin-bottom: 8px; color: rgba(255,255,255,.35); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.home-footer-nav a { color: rgba(255,255,255,.72); text-decoration: none; font-size: 14px; }
.home-footer-nav a:hover { color: white; }
.home-footer-bottom { padding-top: 26px; display: flex; justify-content: space-between; gap: 30px; }
.home-footer-bottom p { margin: 0; color: rgba(255,255,255,.36); font-size: 12px; }
.nav-access { color: #101112; text-decoration: none; font-size: 13px; font-weight: 600; }
@media (max-width: 900px) {
  .home-products, .home-feature, .home-research-layout, .home-artefact-grid { grid-template-columns: 1fr; }
  .home-access-entry .home-section-head { grid-template-columns: 1fr; }
  .home-access-grid { grid-template-columns: 1fr; }
  .home-artefact > div, .home-artefact-featured > div { aspect-ratio: 1.35; }
  .home-feature-copy { max-width: 720px; }
  .home-feature figure { max-height: 720px; }
  .home-cta { grid-template-columns: 1fr; align-items: start; }
  nav .nav-links { display: none !important; }
  nav .nav-toggle { display: flex; }
  .home-footer-lead { grid-template-columns: 1fr; }
  .home-footer-nav { grid-template-columns: repeat(2,1fr); row-gap: 42px; }
  .nav-access { display: none; }
}
@media (max-width: 600px) {
  .home-main { padding-top: 58px; }
  .home-hero { padding-top: 54px; }
  .home-hero h1 { font-size: clamp(48px, 15vw, 72px); }
  .home-hero-art { height: 68vw; }
  .home-metrics { grid-template-columns: 1fr 1fr; }
  .home-metrics div { padding: 18px 0; border-left: 0; border-bottom: 1px solid #deded8; }
  .home-metrics div:nth-child(even) { padding-left: 18px; border-left: 1px solid #deded8; }
  .home-product-copy { padding-left: 34px; }
  .home-paper-list a { grid-template-columns: 58px 1fr 16px; gap: 12px; }
  .home-explore-grid { grid-template-columns: 1fr; }
  .home-explore-grid a:nth-child(even) { padding-left: 0; border-left: 0; }
  .home-footer-nav { grid-template-columns: 1fr 1fr; }
  .home-footer-bottom { flex-direction: column; }
}

/* Shared wide grid and static interaction */
.home-main, .home-footer { --home-max: var(--site-max,1600px); --home-gutter: var(--site-gutter,32px); }
.home-hero, .home-section, .home-feature, .home-cta, .home-metrics {
  width: min(calc(100% - (var(--site-gutter) * 2)),var(--site-max)) !important;
  max-width: var(--site-max) !important;
}
.home-button:hover { opacity: .75; transform: translateY(-1px); }
.home-artefact:hover { transform: translateY(-3px); }
.home-artefact:hover img { transform: scale(1.03); }
.home-product:hover img { transform: scale(1.03); }
.home-paper-list a:hover { transform: translateX(4px); }
.home-explore-grid a:hover { transform: none; background: #f7f7f5; }
/* Final home cleanup: no decorative labels or spatial hover movement. */
.home-kicker, .home-product-number, .home-artefact > span { display: none !important; }
@keyframes cnwHomeFade { from { opacity: .74; } to { opacity: 1; } }
.home-main .reveal { opacity: 1 !important; transform: none !important; animation: cnwHomeFade .28s ease both !important; }
.home-main :is(a,button,.home-artefact,.home-product,.home-paper-list a,.home-explore-grid a) { transition: color .2s ease, background-color .2s ease, border-color .2s ease, opacity .2s ease, transform .5s cubic-bezier(.22,1,.36,1) !important; }

/* Final editorial explore cards: image and destination form one composition. */
.home-explore .home-section-head { margin-bottom: clamp(38px,5vw,68px); }
.home-explore-grid { gap: 1px; border: 1px solid #deded8; background: #deded8; }
.home-explore-grid a,
.home-explore-grid a:nth-child(even) {
  min-height: 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  align-items: stretch;
  border: 0;
  background: #fff;
}
.home-explore-grid a:hover { background: #fff; opacity: .82; }
.home-explore-grid img { width: 100%; height: 100%; min-height: 320px; display: block; object-fit: cover; }
.home-explore-grid a > div { position: relative; min-height: 320px; padding: clamp(26px,3vw,42px); display: flex; flex-direction: column; justify-content: flex-end; }
.home-explore-grid strong { margin: 0 0 12px; font-size: clamp(28px,2.7vw,43px); }
.home-explore-grid p { padding-right: 28px; }
.home-explore-grid i { right: 26px; top: 26px; }
.home-explore-grid :is(strong,p) > :is(.cnw-lang-es,.cnw-lang-en) { color: inherit; font: inherit; letter-spacing: inherit; }
@media(max-width:900px){
  .home-explore-grid { grid-template-columns: 1fr; }
}
@media(max-width:560px){
  .home-explore-grid a,
  .home-explore-grid a:nth-child(even) { grid-template-columns: 1fr; }
  .home-explore-grid img { min-height: 0; aspect-ratio: 1.35; }
  .home-explore-grid a > div { min-height: 190px; }
}

/* Product map: rebuilt from scratch as clean route cards. */
.home-product-map {
  border-top: 1px solid #deded8;
}
.home-product-map .home-section-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(320px,.58fr);
  align-items: end;
  gap: clamp(28px,5vw,76px);
  max-width: none;
  margin-bottom: clamp(34px,5vw,62px);
}
.home-product-map .home-section-head p {
  max-width: 520px;
  margin: 0 0 6px;
  color: #5f666b;
  font-size: 16px;
  line-height: 1.65;
}
.home-product-map-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1px;
  border: 1px solid #dfe3e6;
  background: #dfe3e6;
}
.home-map-card {
  position: relative;
  min-height: 430px;
  padding: clamp(22px,2.4vw,34px);
  display: flex;
  flex-direction: column;
  background: #fff;
  color: #101112;
  text-decoration: none;
  overflow: hidden;
  transition: background-color .25s ease, opacity .2s ease, transform .45s cubic-bezier(.22,1,.36,1);
}
.home-map-card:hover {
  background: #f8faf9;
  opacity: .96;
  transform: translateY(-4px);
}
.home-map-index {
  color: #8a9298;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: .08em;
}
.home-map-picture {
  width: 100%;
  margin: clamp(28px,3.4vw,46px) 0 30px;
  aspect-ratio: 1.08;
  overflow: hidden;
  border: 1px solid #dfe3e6;
  background: #f5f3ee;
}
.home-map-picture img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  filter: saturate(.88) contrast(.98);
  transition: transform .65s cubic-bezier(.22,1,.36,1);
}
.home-map-card:hover .home-map-picture img {
  transform: scale(1.025);
}
.home-map-visual {
  width: 100%;
  height: 112px;
  margin: clamp(34px,4vw,58px) 0 auto;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 8px;
  align-items: end;
}
.home-map-visual b {
  display: block;
  min-height: 28px;
  border: 1px solid rgba(16,42,67,.16);
  background: #eef3f0;
}
.home-map-visual b:nth-child(1) { height: 42%; background: #d9e7df; }
.home-map-visual b:nth-child(2) { height: 70%; background: #c8d7dc; }
.home-map-visual b:nth-child(3) { height: 52%; background: #e8dcc8; }
.home-map-visual b:nth-child(4) { height: 90%; background: #102a43; }
.home-map-visual-lines {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
}
.home-map-visual-lines b {
  width: 100%;
  height: 1px !important;
  min-height: 1px;
  background: rgba(16,42,67,.28);
}
.home-map-visual-lines b:nth-child(even) { width: 72%; margin-left: auto; background: rgba(16,42,67,.14); }
.home-map-visual-dots {
  grid-template-columns: repeat(4,40px);
  align-content: center;
  justify-content: start;
}
.home-map-visual-dots b {
  width: 40px;
  height: 40px !important;
  min-height: 40px;
  border-radius: 999px;
}
.home-map-visual-stack {
  grid-template-columns: 1fr;
  align-content: center;
}
.home-map-visual-stack b {
  height: 18px !important;
  min-height: 18px;
}
.home-map-card strong {
  display: block;
  margin: 0 0 14px;
  font-size: clamp(30px,3vw,48px);
  line-height: .96;
  letter-spacing: -.06em;
}
.home-map-card p {
  max-width: 360px;
  min-height: 96px;
  margin: 0;
  color: #626a70;
  font-size: 15px;
  line-height: 1.6;
}
.home-map-card small {
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.home-map-card small span {
  min-height: 26px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  border: 1px solid #dfe3e6;
  color: #52606a;
  font-size: 11px;
  font-weight: 650;
}
.home-map-card i {
  position: absolute;
  top: 24px;
  right: 24px;
  color: #102a43;
  font-style: normal;
  font-weight: 700;
}
.home-map-card :is(strong,p) > :is(.cnw-lang-es,.cnw-lang-en) {
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
}
.home-product-map-editorial {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(360px,.92fr);
  grid-template-rows: repeat(3,minmax(0,1fr));
  gap: 1px;
  border: 1px solid #dfe3e6;
  background: #dfe3e6;
}
.home-product-map-editorial .home-map-card {
  min-height: 0;
  border: 0;
  box-shadow: none;
}
.home-product-map-editorial .home-map-card-featured {
  grid-row: span 3;
  min-height: 640px;
  padding: clamp(28px,3vw,44px);
}
.home-product-map-editorial .home-map-card-featured .home-map-picture {
  aspect-ratio: 1.05;
  margin: clamp(34px,4vw,64px) 0 auto;
}
.home-product-map-editorial .home-map-card-featured strong {
  font-size: clamp(48px,5.6vw,84px);
}
.home-product-map-editorial .home-map-card-row {
  min-height: 210px;
  display: grid;
  grid-template-columns: 160px minmax(0,1fr);
  grid-template-rows: auto auto 1fr;
  column-gap: 24px;
  align-items: start;
}
.home-product-map-editorial .home-map-card-row .home-map-index {
  grid-column: 1 / -1;
}
.home-product-map-editorial .home-map-card-row .home-map-picture {
  grid-row: 2 / 5;
  width: 160px;
  aspect-ratio: 1;
  margin: 22px 0 0;
}
.home-product-map-editorial .home-map-card-row strong {
  margin-top: 16px;
  font-size: clamp(28px,3vw,44px);
}
.home-product-map-editorial .home-map-card-row p {
  min-height: 0;
  max-width: 320px;
}
.home-product-map-editorial .home-map-card-row small {
  display: none;
}
.home-product-map-editorial .home-map-card-featured small {
  display: none;
}
@media(max-width:1100px){
  .home-product-map-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .home-product-map-editorial {
    grid-template-columns: 1fr;
    grid-template-rows: none;
  }
  .home-product-map-editorial .home-map-card-featured {
    grid-row: auto;
    min-height: 560px;
  }
}
@media(max-width:760px){
  .home-product-map .home-section-head { grid-template-columns: 1fr; }
  .home-product-map-grid { grid-template-columns: 1fr; }
  .home-map-card { min-height: 360px; }
  .home-map-card p { min-height: 0; }
  .home-product-map-editorial .home-map-card-row {
    display: flex;
    min-height: 360px;
  }
  .home-product-map-editorial .home-map-card-row .home-map-picture {
    width: 100%;
    aspect-ratio: 1.08;
    margin: 28px 0 30px;
  }
}

/* Ambient hero: motion stays behind content and fades with page scroll. */
.home-hero {
  --hero-visual-opacity: 1;
  position: relative;
  isolation: isolate;
  width: 100% !important;
  max-width: none !important;
  overflow: hidden;
  padding-inline: var(--site-gutter) !important;
  background: #fff;
}
.home-hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: -24% -12% 0;
  opacity: var(--hero-visual-opacity);
  background:
    radial-gradient(48% 54% at 16% 23%, rgba(75,137,181,.58), transparent 72%),
    radial-gradient(45% 52% at 82% 20%, rgba(144,177,200,.50), transparent 73%),
    radial-gradient(44% 46% at 64% 72%, rgba(35,83,117,.34), transparent 72%),
    radial-gradient(42% 46% at 30% 78%, rgba(205,219,228,.42), transparent 74%),
    #f7f9fb;
  filter: blur(34px) saturate(.86);
  will-change: transform, opacity;
  animation: cnwAuroraDrift 18s ease-in-out infinite alternate;
}
.home-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(255,255,255,.08) 0%, rgba(255,255,255,0) 58%, #fff 100%);
}
.home-hero-copy,
.home-hero-art { position: relative; z-index: 1; }
.home-hero-copy { padding-top: clamp(12px,2vw,30px); }
.home-hero-art {
  width: min(100%,var(--site-max));
  margin-inline: auto;
  background: transparent;
  opacity: .84;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 13%, #000 82%, transparent 100%);
  mask-image: linear-gradient(to bottom, transparent 0%, #000 13%, #000 82%, transparent 100%);
}
.home-hero-art img { mix-blend-mode: multiply; }
body.index-page .cnw-global-nav { background: rgba(255,255,255,.18); transition: background-color .24s ease, border-color .24s ease !important; }
body.index-page.home-has-scrolled .cnw-global-nav { background: rgba(255,255,255,.94); border-color: rgba(16,17,18,.09); backdrop-filter: blur(16px); }
body.index-page .cnw-global-nav {
  border-bottom: 1px solid #102a43 !important;
}
@keyframes cnwAuroraDrift {
  0% { transform: translate3d(-2%,0,0) scale(1.03); }
  45% { transform: translate3d(2.5%,2%,0) scale(1.08); }
  100% { transform: translate3d(-1%,4%,0) scale(1.05); }
}
@media(max-width:600px){
  .home-hero { padding-inline: 16px !important; }
  .home-hero::before { inset: -12% -42% 6%; filter: blur(24px) saturate(.82); }
}
@media(prefers-reduced-motion:reduce){
  .home-hero::before { animation: none; }
}

/* One motion language across the home page. */
.home-main .cnw-motion-item {
  opacity: 0 !important;
  transform: translateY(18px) !important;
  transition: opacity .58s ease var(--motion-delay,0ms), transform .72s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms) !important;
}
.home-main .cnw-motion-item.cnw-in-view { opacity: 1 !important; transform: translateY(0) !important; }
.home-main :is(.home-product,.home-artefact,.home-explore-grid a) img { transition: transform .65s cubic-bezier(.22,1,.36,1), opacity .3s ease !important; }
.home-main :is(.home-product,.home-artefact,.home-explore-grid a):hover img { transform: scale(1.022) !important; }
.home-main :is(.home-product,.home-artefact,.home-explore-grid a).cnw-in-view:hover { transform: translateY(-4px) !important; }
.home-main .home-paper-list a.cnw-in-view:hover { transform: translateX(5px) !important; }
.home-main :is(.home-button,.home-link):active { transform: scale(.97) !important; }
.cnw-global-nav .cnw-products-toggle i { transition: transform .28s cubic-bezier(.22,1,.36,1) !important; }
.cnw-global-nav.products-open .cnw-products-toggle i { transform: rotate(45deg) !important; }
@media(prefers-reduced-motion:reduce){
  .home-main .cnw-motion-item { opacity: 1 !important; transform: none !important; transition: none !important; }
  .home-main :is(.home-product,.home-artefact,.home-explore-grid a):hover img { transform: none !important; }
}

/* Home follows the same monochrome and dark-blue accent system. */
.home-link,
.home-product-action { color: #102a43; }
.home-footer-nav a:hover { color: #fff; }
.home-main :is(.home-hero-art,.home-artefact,.home-product-media,.home-feature figure,.home-research-layout figure,.home-explore-grid a) img {
  filter: grayscale(1) contrast(.96);
}

/* The atmospheric hero now transitions directly into content. */
.home-hero { padding-bottom: clamp(112px,14vw,210px) !important; }
.home-hero-copy { margin-bottom: 0; }
.home-artefacts { border-top: 1px solid #dfe3e6; }

/* Product tabs: Grok-inspired product entry, replacing duplicated home blocks. */
.home-product-tabs {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(18px,2.5vw,36px);
}
.home-product-tabs .home-product {
  position:relative;
  display:block;
  padding:clamp(14px,1.6vw,22px);
  overflow:hidden;
  border:1px solid rgba(16,42,67,.12);
  border-radius:34px;
  background:#06080d;
  box-shadow:0 36px 90px rgba(16,42,67,.12);
}
.home-product-tabs .home-product::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,0) 28%);
  opacity:.65;
}
.home-product-tabs .home-product-media {
  position:relative;
  aspect-ratio:16/9;
  border-radius:24px;
  overflow:hidden;
  background:#07080d;
}
.home-product-tabs .home-product-media img {
  width:100%;
  height:100%;
  object-fit:cover;
  filter:none!important;
  transform:none;
}
.home-product-tabs .home-product:hover img {
  transform:scale(1.018)!important;
}
.home-product-tabs .home-product-copy {
  position:relative;
  z-index:1;
  padding:clamp(24px,2.8vw,38px) clamp(8px,1vw,14px) clamp(10px,1vw,16px);
  color:#fff;
}
.home-product-tabs .home-product-number {
  position:static;
  display:inline-flex!important;
  align-items:center;
  min-height:30px;
  margin-bottom:18px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  color:rgba(255,255,255,.72);
  font-size:12px;
  font-weight:650;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.home-product-tabs .home-product-copy::before {
  content:"";
  position:absolute;
  top:0;
  left:clamp(8px,1vw,14px);
  width:78px;
  height:2px;
  background:rgba(255,255,255,.72);
}
.home-product-tabs .home-product h3 {
  margin:0 0 14px;
  max-width:720px;
  color:#fff;
  font-size:clamp(42px,5.8vw,92px);
  line-height:.88;
  letter-spacing:-.07em;
  font-weight:300;
}
.home-product-tabs .home-product p {
  max-width:560px;
  margin:0 0 24px;
  color:rgba(255,255,255,.68);
  font-size:clamp(16px,1.35vw,20px);
  line-height:1.5;
}
.home-product-tabs .home-product-action {
  color:#fff;
  font-size:14px;
  font-weight:650;
}
.home-product-tabs .home-product:first-child {
  background:
    radial-gradient(circle at 10% 10%, rgba(0,96,255,.36), transparent 38%),
    #06080d;
}
.home-product-tabs .home-product:last-child {
  background:
    radial-gradient(circle at 8% 86%, rgba(255,0,126,.32), transparent 42%),
    radial-gradient(circle at 92% 12%, rgba(111,68,255,.30), transparent 38%),
    #06080d;
}
.home-product-tabs .home-product :is(h3,p,.home-product-action) > :is(.cnw-lang-es,.cnw-lang-en) {
  color:inherit;
  font:inherit;
  letter-spacing:inherit;
}
@media(max-width:900px){
  .home-product-tabs { grid-template-columns:1fr; }
  .home-product-tabs .home-product { border-radius:24px; }
  .home-product-tabs .home-product-media { border-radius:16px; }
}

/* Grok-style product showcase */
.home-product-showcase {
  width:100%;
  max-width:none;
  padding:clamp(70px,7vw,118px) clamp(22px,4.6vw,76px);
  background:#fff;
}
.home-product-showcase .home-section-head {
  max-width:1460px;
  margin:0 auto clamp(54px,6vw,88px);
}
.home-product-showcase .home-section-head h2 {
  max-width:1220px;
  font-size:clamp(58px,7.6vw,128px);
  line-height:.86;
  letter-spacing:0;
  font-weight:300;
  text-transform:uppercase;
}
.home-product-showcase .home-products.home-product-tabs {
  width:min(100%,1460px);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,3vw,38px);
}
.home-product-showcase .home-product-tabs .home-product {
  min-height:clamp(620px,54vw,840px);
  padding:clamp(18px,1.8vw,28px);
  border:0;
  border-radius:34px 34px 0 0;
  background:#05060b;
  box-shadow:0 0 0 clamp(10px,1.4vw,22px) #131821, 0 34px 90px rgba(7,10,18,.18);
  color:#fff;
}
.home-product-showcase .home-product-tabs .home-product:first-child {
  background:
    radial-gradient(circle at 78% 5%, rgba(31,104,255,.30), transparent 44%),
    linear-gradient(180deg,#080a12 0%,#05060b 100%);
}
.home-product-showcase .home-product-tabs .home-product:last-child {
  background:
    radial-gradient(circle at 18% 18%, rgba(236,20,126,.24), transparent 44%),
    radial-gradient(circle at 88% 8%, rgba(101,71,255,.26), transparent 42%),
    linear-gradient(180deg,#080812 0%,#05060b 100%);
}
.home-product-showcase .home-product-tabs .home-product::before {
  opacity:.35;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,0) 30%);
}
.home-product-showcase .home-product-tabs .home-product-media {
  aspect-ratio:16/8.6;
  border-radius:24px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18), 0 0 0 1px rgba(255,255,255,.08);
  background:#06070e;
}
.home-product-showcase .home-product-tabs .home-product-media img {
  object-fit:cover;
  opacity:.98;
  filter:saturate(1.14) contrast(1.05)!important;
  transform: scale(1.16);
}
.home-product-showcase .home-product-tabs .home-product:hover img {
  transform: scale(1.2) !important;
}
.home-product-showcase .home-product-tabs .home-product-copy {
  padding:clamp(34px,3.6vw,58px) clamp(6px,1.2vw,18px) 0;
}
.home-product-showcase .home-product-tabs .home-product-copy::before {
  top:14px;
  width:86px;
  background:rgba(255,255,255,.84);
}
.home-product-showcase .home-product-tabs .home-product-number {
  margin-bottom:clamp(18px,2vw,30px);
  color:rgba(255,255,255,.70);
  border-color:rgba(255,255,255,.28);
}
.home-product-showcase .home-product-tabs .home-product h3 {
  max-width:650px;
  font-size:clamp(62px,6.5vw,116px);
  line-height:.82;
  letter-spacing:0;
  font-weight:300;
}
.home-product-showcase .home-product-tabs .home-product p {
  max-width:650px;
  margin-top:clamp(18px,2vw,28px);
  color:rgba(255,255,255,.72);
  font-size:clamp(18px,1.55vw,25px);
  line-height:1.28;
}
.home-product-showcase .home-product-tabs .home-product-action {
  display:inline-flex;
  margin-top:8px;
  color:#fff;
}
.home-product-feed {
  width:min(100%,1460px);
  margin:clamp(30px,4vw,54px) auto 0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(16px,1.7vw,24px);
}
.home-product-feed a {
  display:block;
  min-width:0;
  padding-bottom:14px;
  color:#0c0d10;
  text-decoration:none;
}
.home-product-feed-media {
  display:block;
  height:clamp(128px,12vw,178px);
  margin-bottom:14px;
  overflow:hidden;
  border-radius:7px;
  background:#07080d;
}
.home-product-feed-media img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.home-product-feed-ink {
  background:
    radial-gradient(circle at 18% 52%, rgba(255,142,91,.78), transparent 36%),
    radial-gradient(circle at 68% 12%, rgba(31,45,70,.82), transparent 44%),
    radial-gradient(circle at 78% 78%, rgba(228,196,126,.70), transparent 40%),
    #090909;
}
.home-product-feed-dark {
  background:
    radial-gradient(circle at 26% 35%, rgba(245,31,144,.76), transparent 34%),
    radial-gradient(circle at 86% 66%, rgba(106,66,255,.82), transparent 44%),
    radial-gradient(circle at 52% 22%, rgba(0,0,0,.88), transparent 42%),
    #08080a;
}
.home-product-feed small {
  display:block;
  margin-bottom:8px;
  color:#757b82;
  font-size:13px;
}
.home-product-feed strong {
  display:block;
  max-width:360px;
  color:#0c0d10;
  font-size:clamp(17px,1.25vw,22px);
  line-height:1.16;
  font-weight:520;
}
.home-product-feed strong > :is(.cnw-lang-es,.cnw-lang-en) {
  color:inherit;
  font:inherit;
  letter-spacing:inherit;
}
@media(max-width:1000px){
  .home-product-showcase .home-products.home-product-tabs,
  .home-product-feed { grid-template-columns:1fr; }
  .home-product-showcase .home-product-tabs .home-product {
    min-height:auto;
    border-radius:28px;
  }
  .home-product-feed { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:620px){
  .home-product-showcase { padding-inline:18px; }
  .home-product-showcase .home-section-head h2 { font-size:clamp(42px,13vw,70px); }
  .home-product-feed { grid-template-columns:1fr; }
}

/* Product showcase repair: keep cards readable before the layout gets narrow. */
.home-product-showcase {
  padding: clamp(64px,7vw,108px) clamp(18px,4.5vw,64px);
}
.home-product-showcase .home-section-head {
  width: min(100%, 1280px);
  margin-bottom: clamp(34px,5vw,64px);
}
.home-product-showcase .home-section-head h2 {
  max-width: 980px;
  font-size: clamp(46px,5.8vw,88px);
  line-height: .92;
}
.home-product-showcase .home-products.home-product-tabs {
  width: min(100%,1280px);
  grid-template-columns: repeat(auto-fit,minmax(min(100%,430px),1fr));
  gap: clamp(18px,2vw,28px);
}
.home-product-showcase .home-product-tabs .home-product {
  min-height: clamp(500px,44vw,650px);
  border-radius: 22px;
  box-shadow: 0 0 0 10px #131821, 0 24px 60px rgba(7,10,18,.14);
}
.home-product-showcase .home-product-tabs .home-product-media {
  border-radius: 14px;
}
.home-product-showcase .home-product-tabs .home-product-copy {
  padding-top: clamp(28px,3vw,42px);
}
.home-product-showcase .home-product-tabs .home-product h3 {
  max-width: 520px;
  font-size: clamp(42px,4.6vw,68px);
  line-height: .9;
  overflow-wrap: anywhere;
}
.home-product-showcase .home-product-tabs .home-product p {
  max-width: 470px;
  font-size: clamp(15px,1.25vw,18px);
  line-height: 1.38;
}
.home-product-feed {
  width: min(100%,1280px);
  grid-template-columns: repeat(auto-fit,minmax(min(100%,180px),1fr));
}
.home-product-feed-media {
  height: auto;
  aspect-ratio: 16 / 9;
}
.home-product-feed small {
  font-size: 11px;
}
.home-product-feed strong {
  font-size: clamp(14px,1.05vw,17px);
  line-height: 1.22;
}
@media(max-width:760px){
  .home-product-showcase {
    padding-inline: 18px;
  }
  .home-product-showcase .home-section-head h2 {
    font-size: clamp(40px,11vw,58px);
  }
  .home-product-showcase .home-product-tabs .home-product {
    min-height: 0;
    box-shadow: none;
  }
  .home-product-showcase .home-product-tabs .home-product h3 {
    font-size: clamp(38px,11vw,54px);
  }
}

/* Final product tabs: only the two main entries remain. */
.home-product-feed {
  display: none !important;
}
.home-product-showcase .home-product-tabs .home-product {
  min-height: 0;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
}
.home-product-showcase .home-product-tabs .home-product::before,
.home-product-showcase .home-product-tabs .home-product-copy::before,
.home-product-showcase .home-product-tabs .home-product-number {
  display: none !important;
}
.home-product-showcase .home-product-tabs .home-product-media {
  aspect-ratio: 16 / 9;
  border-radius: 16px;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.home-product-showcase .home-product-tabs .home-product-copy {
  padding: 14px 0 0;
  color: #101112;
}
.home-product-showcase .home-product-tabs .home-product-copy small {
  display: block;
  margin: 0 0 6px;
  color: #6b7280;
  font-size: 12px;
  line-height: 1;
}
.home-product-showcase .home-product-tabs .home-product h3 {
  max-width: 520px;
  margin: 0;
  color: #101112;
  font-size: clamp(17px,1.35vw,22px);
  line-height: 1.12;
  font-weight: 750;
  letter-spacing: 0;
}
.home-product-showcase .home-product-tabs .home-product p,
.home-product-showcase .home-product-tabs .home-product-action { display: none !important; }

/* Current home art direction */
.home-research-layout .home-flower-frame {
  display: grid;
  place-items: center;
  aspect-ratio: 1.25;
  background: #fff;
}
.home-research-layout .home-flower-frame img {
  width: min(70%, 430px);
  height: min(92%, 620px);
  object-fit: contain;
  image-rendering: pixelated;
}
.home-cta-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}
.home-button-secondary {
  background: #fff !important;
  color: #101112 !important;
  border: 1px solid #deded8;
}
.home-product-showcase .home-product-tabs .home-product:first-child .home-product-media {
  background: #eef6ff;
}
.home-product-showcase .home-product-tabs .home-product:last-child .home-product-media {
  background: #fff0f6;
}
.home-product-showcase .home-product-tabs .home-product:first-child .home-product-media img {
  filter: brightness(1.45) saturate(.78) contrast(.92) !important;
}
.home-product-showcase .home-product-tabs .home-product:last-child .home-product-media img {
  filter: brightness(1.38) saturate(.82) contrast(.94) hue-rotate(-4deg) !important;
}
@media (max-width: 900px) {
  .home-cta-actions { justify-content: flex-start; }
  .home-research-layout .home-flower-frame img { width: min(78%, 360px); }
}

/* Ruty features: white console with monochrome motion. */
.home-feature-console {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding: clamp(84px,10vw,150px) var(--site-gutter) !important;
  display: block !important;
  border-top: 1px solid #e6e6e0;
  border-bottom: 1px solid #e6e6e0;
  background: #fff;
  color: #050505;
}
.feature-console-head {
  position: relative;
  width: min(100%,var(--site-max));
  margin: 0 auto clamp(48px,6vw,82px);
  text-align: center;
}
.feature-console-head::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -18px;
  width: min(440px,72vw);
  height: 120px;
  transform: translateX(-50%);
  background-image: radial-gradient(rgba(0,0,0,.16) 1px, transparent 1.5px);
  background-size: 12px 12px;
  opacity: .34;
  pointer-events: none;
}
.feature-console-head h2 {
  position: relative;
  margin: 0;
  color: #050505;
  font-size: clamp(46px,5.2vw,78px);
  line-height: .88;
  font-weight: 760;
  letter-spacing: 0;
  text-transform: uppercase;
}
.feature-console-head p {
  position: relative;
  max-width: 620px;
  margin: 16px auto 0;
  color: #4b4f55;
  font-size: clamp(15px,1.2vw,18px);
  line-height: 1.5;
  font-weight: 650;
}
.feature-console-grid {
  width: min(100%,980px);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0,.92fr) minmax(360px,1.08fr);
  align-items: center;
  gap: clamp(44px,6vw,72px);
}
.feature-console-list {
  display: flex;
  flex-direction: column;
}
.feature-console-list article {
  position: relative;
  padding: 28px 0 30px;
  border-bottom: 1px solid #deded8;
  cursor: pointer;
  opacity: .42;
  transition: opacity .24s ease, transform .34s cubic-bezier(.22,1,.36,1);
}
.feature-console-list article:first-child {
  border-top: 1px solid #deded8;
}
.feature-console-list article.is-active {
  opacity: 1;
  transform: translateX(2px);
}
.feature-console-list h3 {
  margin: 0;
  color: #050505;
  font-size: clamp(27px,2.5vw,40px);
  line-height: 1;
  font-weight: 760;
  letter-spacing: 0;
}
.feature-console-list p {
  max-width: 470px;
  margin: 16px 0 0;
  color: #30343a;
  font-size: 15px;
  line-height: 1.55;
}
.feature-console-visual {
  min-height: 414px;
  display: grid;
  place-items: center;
  border: 1px solid #d7d7d2;
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(0,0,0,.035), transparent 48%),
    #fff;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.025);
}
.feature-phone {
  width: 174px;
  min-height: 282px;
  padding: 18px 16px 20px;
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  background: #fff;
  color: #050505;
  box-shadow: 0 34px 70px rgba(0,0,0,.16), 0 0 0 1px rgba(0,0,0,.08);
  transform: translateY(0);
  transition: transform .34s cubic-bezier(.22,1,.36,1), box-shadow .34s ease;
}
.feature-console-list:has(article:nth-child(2).is-active) + .feature-console-visual .feature-phone {
  transform: translateY(-5px);
}
.feature-console-list:has(article:nth-child(3).is-active) + .feature-console-visual .feature-phone {
  transform: translateY(5px);
}
.feature-phone-status {
  display: flex;
  justify-content: center;
  gap: 5px;
  margin-bottom: 30px;
}
.feature-phone-status span {
  width: 16px;
  height: 3px;
  border-radius: 999px;
  background: #d9dde4;
}
.feature-phone-status span:first-child {
  background: #050505;
}
.feature-phone strong {
  font-size: 29px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: 0;
}
.feature-phone small {
  margin-top: 36px;
  color: #59606a;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.feature-bars {
  height: 90px;
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 6px;
  align-items: end;
}
.feature-bars i {
  display: block;
  border-radius: 5px 5px 0 0;
  background: #dfe4eb;
  transform-origin: bottom;
  animation: cnwFeatureBars 1.8s ease-in-out infinite alternate;
}
.feature-bars i:nth-child(1) { height: 42%; animation-delay: 0s; }
.feature-bars i:nth-child(2) { height: 62%; animation-delay: .08s; }
.feature-bars i:nth-child(3) { height: 52%; animation-delay: .16s; }
.feature-bars i:nth-child(4) { height: 80%; background: #aeb8c6; animation-delay: .24s; }
.feature-bars i:nth-child(5) { height: 98%; background: #050505; animation-delay: .32s; }
.feature-phone b {
  margin-top: auto;
  color: #050505;
  font-size: 13px;
  line-height: 1;
  font-weight: 850;
}
@keyframes cnwFeatureBars {
  from { transform: scaleY(.86); opacity: .78; }
  to { transform: scaleY(1); opacity: 1; }
}
@media(max-width:900px){
  .feature-console-grid {
    grid-template-columns: 1fr;
    width: min(100%,680px);
  }
  .feature-console-visual {
    min-height: 360px;
  }
}
@media(max-width:560px){
  .home-feature-console {
    padding-inline: 18px !important;
  }
  .feature-console-head {
    text-align: left;
  }
  .feature-console-head::before {
    left: 0;
    transform: none;
    width: 100%;
  }
  .feature-console-head p {
    margin-inline: 0;
  }
  .feature-console-list article {
    padding: 24px 0;
  }
  .feature-console-visual {
    min-height: 330px;
    border-radius: 12px;
  }
}

/* Final API-style feature section requested: white version of the reference. */
.home-feature-console {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(86px,10vw,136px) var(--site-gutter) !important;
  display: block !important;
  border: 0 !important;
  border-top: 1px solid #ececec !important;
  border-bottom: 1px solid #ececec !important;
  background: #fff !important;
  color: #050505 !important;
}
.home-feature-console .feature-console-grid {
  width: min(100%,1160px) !important;
  margin-inline: auto !important;
  display: grid !important;
  grid-template-columns: minmax(320px,.86fr) minmax(420px,1.14fr) !important;
  align-items: center !important;
  gap: clamp(56px,8vw,118px) !important;
}
.feature-api-copy {
  max-width: 430px;
}
.feature-api-kicker {
  margin: 0 0 16px;
  color: #67717d;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 520;
}
.feature-api-copy h2 {
  margin: 0;
  color: #050505;
  font-size: clamp(42px,4.7vw,64px);
  line-height: .96;
  font-weight: 560;
  letter-spacing: 0;
}
.feature-api-copy h2 span {
  color: #77808a;
  font: inherit;
}
.feature-api-lead {
  max-width: 430px;
  margin: 20px 0 0;
  color: #5d6875;
  font-size: 16px;
  line-height: 1.55;
  font-weight: 440;
}
.feature-api-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 28px;
}
.feature-api-actions a {
  min-height: 34px;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid #d9dde2;
  background: #050505;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  line-height: 1;
  font-weight: 650;
}
.feature-api-actions a + a {
  background: #fff;
  color: #050505;
}
.feature-api-metrics {
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 28px;
}
.feature-api-metrics strong {
  display: block;
  color: #050505;
  font-size: 14px;
  line-height: 1.1;
  font-weight: 650;
}
.feature-api-metrics span {
  display: block;
  margin-top: 4px;
  color: #6f7781;
  font-size: 12px;
  line-height: 1.25;
}
.feature-code-wrap {
  position: relative;
  min-height: 420px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  isolation: isolate;
}
.feature-code-glow {
  position: absolute;
  z-index: -1;
  inset: 10px 0 58px;
  background:
    radial-gradient(42% 68% at 95% 50%, rgba(0,0,0,.18), transparent 72%),
    radial-gradient(65% 70% at 35% 50%, rgba(0,0,0,.10), transparent 75%),
    #f2f2f2;
  box-shadow: 18px 18px 0 #050505, -12px 12px 0 #050505, 0 22px 80px rgba(0,0,0,.12);
}
.feature-code-card {
  width: min(100%,430px);
  margin-inline: auto 42px;
  overflow: hidden;
  border: 1px solid #d7dce2;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(0,0,0,.14);
}
.feature-code-top {
  height: 40px;
  padding: 0 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #e6e8eb;
  background: #f9fafb;
}
.feature-code-lights {
  display: flex;
  gap: 6px;
}
.feature-code-lights i {
  width: 9px;
  height: 9px;
  display: block;
  border-radius: 999px;
}
.feature-code-lights i:nth-child(1) { background: #ff5f57; }
.feature-code-lights i:nth-child(2) { background: #febc2e; }
.feature-code-lights i:nth-child(3) { background: #28c840; }
.feature-code-top button {
  border: 0;
  background: transparent;
  color: #68727d;
  font: 500 12px/1 var(--font-sans,Inter,system-ui,sans-serif);
  cursor: pointer;
}
.feature-code-card pre {
  max-height: 250px;
  margin: 0;
  padding: 14px 14px 24px;
  overflow: hidden;
  background: #fff;
  color: #15191f;
  font: 650 12px/1.78 "SFMono-Regular","Cascadia Code","Consolas",monospace;
  white-space: pre;
}
.feature-code-card code {
  font: inherit;
}
.code-pink { color: #c72560; }
.code-blue { color: #276fbf; }
.feature-code-tabs {
  width: min(100%,430px);
  margin: 34px 42px 0 auto;
  display: flex;
  align-items: center;
  gap: 12px;
}
.feature-code-tabs button {
  min-height: 30px;
  padding: 0 14px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #697481;
  font-size: 13px;
  font-weight: 620;
  cursor: pointer;
}
.feature-code-tabs button.is-active {
  background: #050505;
  color: #fff;
}
@media(max-width:980px){
  .home-feature-console .feature-console-grid {
    grid-template-columns: 1fr !important;
  }
  .feature-api-copy {
    max-width: 620px;
  }
  .feature-code-card,
  .feature-code-tabs {
    margin-inline: 0 auto;
  }
}
@media(max-width:620px){
  .home-feature-console {
    padding-inline: 18px !important;
  }
  .feature-api-copy h2 {
    font-size: clamp(42px,13vw,58px);
  }
  .feature-api-actions,
  .feature-api-metrics {
    flex-wrap: wrap;
  }
  .feature-api-metrics {
    grid-template-columns: 1fr 1fr;
    gap: 18px;
  }
  .feature-code-wrap {
    min-height: 0;
    padding-bottom: 8px;
  }
  .feature-code-glow {
    inset: 8px 0 50px;
    box-shadow: 10px 12px 0 #050505, -8px 12px 0 #050505, 0 18px 54px rgba(0,0,0,.10);
  }
  .feature-code-card {
    width: calc(100% - 18px);
    margin-left: 0;
  }
  .feature-code-card pre {
    font-size: 11px;
  }
  .feature-code-tabs {
    width: 100%;
    margin-top: 24px;
    overflow-x: auto;
  }
}
.signal-price{--w:78%;--d:500ms}
.signal-volatility{--w:46%;--d:630ms}
.signal-trend{--w:62%;--d:760ms}
.signal-liquidity{--w:88%;--d:890ms}
.signal-events{--w:24%;--d:1020ms}
