/* Centauri Partner · agencia marketing industrial · afinado V5 */

html { scroll-padding-top: 108px; }

.hero .wrap { width: min(1380px, calc(100% - 64px)); }
.hero-grid { grid-template-columns: minmax(0, 1.5fr) minmax(390px, .72fr); }
h1 { max-width: 980px; font-size: clamp(3.05rem, 4vw, 4.35rem); line-height: .96; }
.chapter { overflow: clip; }
.chapter h2 { max-width: 980px; }
.chapter-head { grid-template-columns: 140px minmax(0, 980px); }

.section-cta {
  position: relative;
  z-index: 3;
  min-height: 108px;
  margin-top: clamp(44px, 6vw, 76px);
  padding: 22px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  border: 1px solid rgba(145, 171, 236, .22);
  border-radius: 18px;
  background: linear-gradient(115deg, rgba(49, 92, 246, .13), rgba(114, 223, 234, .025) 58%, rgba(255, 255, 255, .035));
  box-shadow: 0 24px 70px rgba(0, 0, 0, .12), inset 0 1px rgba(255, 255, 255, .05);
  overflow: hidden;
}
.light .section-cta { border-color: #d8deeb; background: linear-gradient(115deg, #fff, #edf2ff); box-shadow: 0 24px 70px rgba(27, 54, 118, .08); }
.section-cta::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--grad); }
.section-cta > div { min-width: 0; display: grid; gap: 8px; }
.section-cta > div span { color: #7086b7; font: 600 .48rem/1 var(--mono); letter-spacing: .13em; }
.section-cta > div strong { max-width: 700px; color: #f1f5ff; font-family: var(--serif); font-size: clamp(1.15rem, 1.8vw, 1.55rem); font-weight: 500; line-height: 1.08; letter-spacing: -.03em; }
.light .section-cta > div strong { color: #14213b; }
.section-cta .cta { flex: 0 0 auto; }

/* Audiencias: cuatro negocios, un mismo recorrido comercial */
.sector-chapter { background: radial-gradient(circle at 78% 28%, rgba(49, 92, 246, .16), transparent 35%), linear-gradient(180deg, #030711, #071127); }
.sector-showcase { display: grid; grid-template-columns: minmax(320px, .72fr) minmax(0, 1.28fr); gap: 1px; border: 1px solid rgba(156, 183, 245, .16); border-radius: 26px; background: rgba(156, 183, 245, .16); box-shadow: 0 48px 120px rgba(0, 0, 0, .32); overflow: hidden; }
.sector-switcher { display: grid; align-content: stretch; background: rgba(3, 8, 20, .96); }
.sector-tab { position: relative; min-height: 132px; display: grid; grid-template-columns: 40px 1fr 25px; grid-template-rows: auto auto; align-content: center; gap: 7px 14px; padding: 20px 22px; border: 0; border-bottom: 1px solid rgba(151, 178, 238, .12); background: transparent; color: #93a3c2; text-align: left; cursor: pointer; transition: background .35s, color .35s, transform .35s var(--ease); }
.sector-tab:last-child { border-bottom: 0; }
.sector-tab::before { content: ""; position: absolute; left: 0; top: 15%; bottom: 15%; width: 2px; background: var(--cyan); transform: scaleY(0); transition: transform .35s var(--ease); }
.sector-tab > span { grid-row: 1 / 3; align-self: start; padding-top: 6px; color: #6076a5; font: 600 .48rem/1 var(--mono); }
.sector-tab b { color: #c7d3e9; font-size: .75rem; line-height: 1.35; transition: color .3s, transform .3s; }
.sector-tab small { color: #6f82a8; font-size: .58rem; line-height: 1.45; }
.sector-tab > i { grid-column: 3; grid-row: 1 / 3; align-self: center; color: #6177a7; font-style: normal; transition: transform .35s, color .35s; }
.sector-tab:hover, .sector-tab:focus-visible, .sector-tab.is-current { z-index: 2; background: linear-gradient(90deg, rgba(49, 92, 246, .19), rgba(114, 223, 234, .025)); color: #fff; outline: none; }
.sector-tab:hover::before, .sector-tab:focus-visible::before, .sector-tab.is-current::before { transform: scaleY(1); }
.sector-tab:hover b, .sector-tab:focus-visible b, .sector-tab.is-current b { color: #fff; transform: translateX(4px); }
.sector-tab:hover > i, .sector-tab.is-current > i { color: var(--cyan); transform: translate(3px, -3px); }
.sector-stage { min-width: 0; min-height: 620px; padding: 22px; background: radial-gradient(circle at 80% 20%, rgba(114, 223, 234, .08), transparent 34%), linear-gradient(145deg, #0a1a3a, #040b1d); }
.sector-stage-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 2px 3px 18px; border-bottom: 1px solid rgba(155, 181, 241, .13); color: #7186b2; font: 600 .44rem/1 var(--mono); letter-spacing: .1em; }
.sector-stage-head span { display: flex; align-items: center; gap: 8px; }
.sector-stage-head i { width: 6px; height: 6px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 12px var(--cyan); animation: v5Pulse 1.8s ease-in-out infinite; }
.sector-panel { min-height: 548px; display: grid; grid-template-rows: auto 1fr; gap: 24px; padding: 32px 18px 10px; }
.sector-panel[hidden] { display: none; }
.sector-panel-copy { max-width: 710px; }
.sector-panel-copy > small { color: #8298c5; font: 600 .47rem/1 var(--mono); letter-spacing: .12em; }
.sector-panel-copy h3 { max-width: 690px; margin: 16px 0 0; color: #f3f6ff; font-family: var(--serif); font-size: clamp(1.9rem, 3vw, 3.15rem); font-weight: 500; line-height: .99; letter-spacing: -.05em; }
.sector-panel-copy p { max-width: 67ch; margin: 18px 0 0; color: #91a1c0; font-size: .72rem; line-height: 1.75; }
.v5-sector-photo-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 26px; }
.v5-sector-photo-strip figure { position: relative; min-height: 260px; margin: 0; overflow: hidden; border: 1px solid rgba(164, 190, 248, .16); border-radius: 18px; background: #050b18; box-shadow: 0 24px 70px rgba(0, 0, 0, .24); }
.v5-sector-photo-strip figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 26%, rgba(2, 6, 16, .92) 100%), linear-gradient(120deg, rgba(49, 92, 246, .08), transparent 55%); pointer-events: none; }
.v5-sector-photo-strip img { width: 100%; height: 100%; min-height: 260px; object-fit: cover; filter: saturate(.72) contrast(1.05); transform: scale(1.01); transition: transform .9s var(--ease), filter .55s ease; }
.v5-sector-photo-strip figure:hover img { filter: saturate(.98) contrast(1.06); transform: scale(1.065); }
.v5-sector-photo-strip figcaption { position: absolute; z-index: 2; left: 20px; right: 20px; bottom: 18px; display: grid; gap: 8px; }
.v5-sector-photo-strip figcaption span { color: #91edf1; font: 600 .45rem/1 var(--mono); letter-spacing: .12em; }
.v5-sector-photo-strip figcaption b { max-width: 28ch; color: #fff; font: 500 1.15rem/1.08 var(--serif); letter-spacing: -.025em; }
.section-cta-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.sector-demo { align-self: end; min-height: 235px; display: grid; grid-template-columns: minmax(180px, .78fr) 120px minmax(220px, 1fr); align-items: center; gap: 16px; padding: 20px; border: 1px solid rgba(144, 173, 238, .14); border-radius: 18px; background: linear-gradient(145deg, rgba(255, 255, 255, .035), rgba(3, 9, 24, .72)); overflow: hidden; }
.sector-offer, .sector-demand { display: grid; gap: 8px; padding: 16px; border: 1px solid rgba(145, 173, 237, .13); border-radius: 12px; background: rgba(2, 8, 22, .68); }
.sector-offer > span, .sector-demand > span { color: #6075a0; font: 600 .42rem/1 var(--mono); letter-spacing: .11em; }
.sector-offer b, .sector-demand b { min-height: 30px; display: flex; align-items: center; padding: 7px 9px; border: 1px solid rgba(135, 163, 226, .12); border-radius: 7px; color: #c8d5ec; font-size: .56rem; font-weight: 600; }
.sector-demand strong { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 4px; padding: 9px 11px; border: 1px solid rgba(114, 223, 234, .3); border-radius: 8px; background: rgba(114, 223, 234, .07); color: #9aebee; font: 600 .44rem/1.3 var(--mono); letter-spacing: .07em; }
.sector-demand strong i { width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 11px var(--cyan); animation: v5Pulse 1.8s ease-in-out infinite; }
.sector-bridge { position: relative; min-height: 140px; display: grid; place-items: center; }
.sector-bridge::before { content: ""; position: absolute; left: -10px; right: -10px; top: 50%; height: 1px; background: linear-gradient(90deg, transparent, #5478e8, var(--cyan), transparent); }
.sector-bridge i { position: relative; z-index: 2; width: 13px; height: 13px; border-radius: 50%; background: #fff; box-shadow: 0 0 9px #fff, 0 0 26px var(--cyan); animation: v5Route 2.8s ease-in-out infinite; }
.sector-bridge em { position: absolute; left: 50%; bottom: 25px; width: 120px; color: #7185ad; font: 600 .42rem/1 var(--mono); font-style: normal; letter-spacing: .08em; text-align: center; transform: translateX(-50%); }

/* Servicios: el panel completo cambia, no solo un pie de foto */
.v5-services { background: radial-gradient(circle at 88% 16%, rgba(114, 223, 234, .07), transparent 30%), #071127; }
.v5-services-layout { grid-template-columns: minmax(330px, .72fr) minmax(0, 1.28fr); gap: clamp(38px, 5vw, 72px); }
.v5-services .service-list { position: sticky; top: 108px; }
.v5-services .service-item { min-height: 108px; grid-template-columns: 43px 1fr 34px; align-items: center; padding: 17px 4px; }
.v5-services .service-copy { display: grid; gap: 8px; }
.v5-services .service-copy b { color: #c9d5eb; font-family: var(--serif); font-size: 1.23rem; font-weight: 500; line-height: 1.08; letter-spacing: -.03em; transition: color .3s, transform .3s; }
.v5-services .service-copy small { color: #7789ad; font-size: .58rem; line-height: 1.55; }
.v5-services .service-item:hover .service-copy b, .v5-services .service-item.is-current .service-copy b { color: #fff; transform: translateX(4px); }
.v5-service-stage { min-width: 0; min-height: 760px; }
.v5-service-panel { position: relative; inset: auto; min-height: 760px; padding: clamp(24px, 3.5vw, 42px); border: 1px solid rgba(157, 184, 245, .17); border-radius: 26px; background: radial-gradient(circle at 90% 8%, rgba(49, 92, 246, .18), transparent 32%), linear-gradient(145deg, #0b1d42, #030a1c 75%); box-shadow: 0 45px 110px rgba(0, 0, 0, .34), inset 0 1px rgba(255, 255, 255, .04); overflow: hidden; }
.v5-service-panel[hidden] { display: none; }
.v5-service-panel > header { display: block; }
.v5-service-panel > header > span { color: #7f95c3; font: 600 .47rem/1 var(--mono); letter-spacing: .12em; }
.v5-service-panel > header h3 { max-width: 720px; margin: 16px 0 0; color: #f3f6ff; font-family: var(--serif); font-size: clamp(2rem, 3vw, 3.15rem); font-weight: 500; line-height: .98; letter-spacing: -.05em; }
.v5-service-panel > header p { max-width: 65ch; margin: 16px 0 0; color: #8fa0bf; font-size: .68rem; line-height: 1.7; }
.v5-panel-link { min-height: 48px; display: inline-flex; align-items: center; gap: 14px; margin-top: 22px; border-bottom: 1px solid rgba(114, 223, 234, .55); color: #eaf2ff; font-size: .61rem; font-weight: 700; transition: color .3s, gap .3s, border-color .3s; }
.v5-panel-link i { color: var(--cyan); font-style: normal; }
.v5-panel-link:hover, .v5-panel-link:focus-visible { gap: 22px; border-color: var(--cyan); color: var(--cyan); outline: none; }
.v5-panel-note { margin: 18px 0 0; color: #7f90b1; font-size: .62rem; line-height: 1.65; }

.v5-search-scene { min-height: 392px; display: grid; grid-template-columns: minmax(180px, .78fr) 92px minmax(240px, 1.22fr); align-items: center; gap: 10px; margin-top: 28px; padding: 20px; border: 1px solid rgba(145, 174, 238, .13); border-radius: 18px; background: rgba(2, 8, 22, .62); }
.v5-search-query { min-height: 146px; display: grid; align-content: center; gap: 14px; padding: 18px; border: 1px solid rgba(170, 194, 246, .16); border-radius: 13px; background: #fff; color: #1d2942; }
.v5-search-query small { color: #6f7c93; font: 600 .42rem/1.3 var(--mono); }
.v5-search-query strong { font-size: .7rem; line-height: 1.45; }
.v5-search-query > i { justify-self: end; color: #315cf6; font: 400 1.3rem/1 var(--sans); font-style: normal; }
.v5-scene-connector { position: relative; height: 120px; display: grid; place-items: center; }
.v5-scene-connector::before { content: ""; position: absolute; left: -14px; right: -14px; top: 50%; height: 1px; background: linear-gradient(90deg, transparent, #6e8dff, #72dfea, transparent); }
.v5-scene-connector i { position: relative; z-index: 2; width: 10px; height: 10px; border-radius: 50%; background: #fff; box-shadow: 0 0 18px var(--cyan); animation: v5Route 2.8s ease-in-out infinite; }
.v5-scene-connector span { position: absolute; bottom: 8px; color: #657aa7; font: 600 .38rem/1 var(--mono); letter-spacing: .08em; }
.v5-browser-card { position: relative; min-height: 310px; display: grid; align-content: start; gap: 12px; padding: 25px 22px; border: 1px solid rgba(157, 184, 243, .17); border-radius: 15px; background: linear-gradient(145deg, rgba(16, 39, 84, .95), rgba(4, 12, 29, .97)); box-shadow: 0 25px 60px rgba(0, 0, 0, .25); }
.v5-browser-dots { display: flex; gap: 5px; padding-bottom: 10px; border-bottom: 1px solid rgba(151, 178, 237, .12); }
.v5-browser-dots i { width: 6px; height: 6px; border-radius: 50%; background: #33476f; }
.v5-browser-dots i:first-child { background: var(--cyan); }
.v5-browser-card > small { color: #7185ad; font: 500 .42rem/1 var(--mono); }
.v5-browser-card > b { color: #fff; font-family: var(--serif); font-size: 1.43rem; font-weight: 500; line-height: 1.05; }
.v5-browser-card > p { margin: 0; color: #8c9cba; font-size: .58rem; line-height: 1.55; }
.v5-browser-card > em { color: #7c91bd; font: 600 .4rem/1.3 var(--mono); font-style: normal; letter-spacing: .08em; }
.v5-browser-card > strong { justify-self: start; padding: 10px 13px; border-radius: 8px; background: var(--blue); color: #fff; font-size: .5rem; }

.v5-architecture-scene { margin-top: 28px; padding: 23px; border: 1px solid rgba(145, 174, 238, .13); border-radius: 18px; background: rgba(2, 8, 22, .62); }
.v5-architecture-root { width: min(320px, 80%); margin: 0 auto; padding: 16px; border: 1px solid rgba(114, 223, 234, .28); border-radius: 11px; background: rgba(49, 92, 246, .12); text-align: center; }
.v5-architecture-root small { display: block; color: #7187b5; font: 600 .41rem/1 var(--mono); letter-spacing: .11em; }
.v5-architecture-root strong { display: block; margin-top: 8px; color: #fff; font-family: var(--serif); font-size: 1.22rem; font-weight: 500; }
.v5-architecture-line { position: relative; height: 54px; }
.v5-architecture-line::before { content: ""; position: absolute; left: 50%; top: 0; width: 1px; height: 28px; background: linear-gradient(var(--cyan), #5879df); }
.v5-architecture-line::after { content: ""; position: absolute; left: 16%; right: 16%; bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, #5879df 12%, var(--cyan) 50%, #5879df 88%, transparent); }
.v5-architecture-line i { position: absolute; left: 50%; top: 20px; width: 8px; height: 8px; border-radius: 50%; background: #fff; box-shadow: 0 0 16px var(--cyan); transform: translateX(-50%); }
.v5-architecture-clusters { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.v5-architecture-clusters section { position: relative; padding: 16px; border: 1px solid rgba(149, 177, 239, .14); border-radius: 12px; background: linear-gradient(145deg, rgba(16, 38, 81, .7), rgba(3, 10, 25, .8)); }
.v5-architecture-clusters section::before { content: ""; position: absolute; left: 50%; top: -17px; width: 1px; height: 17px; background: #5879df; }
.v5-architecture-clusters section > span { color: #667da9; font: 600 .39rem/1 var(--mono); letter-spacing: .1em; }
.v5-architecture-clusters section > b { display: block; margin-top: 9px; color: #fff; font-family: var(--serif); font-size: 1.05rem; font-weight: 500; }
.v5-architecture-clusters ul { display: grid; gap: 7px; margin: 12px 0 0; padding: 0; list-style: none; }
.v5-architecture-clusters li { padding: 6px 8px; border: 1px solid rgba(139, 168, 231, .1); border-radius: 6px; color: #8b9cbc; font-size: .48rem; }
.v5-architecture-signal { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.v5-architecture-signal span { display: flex; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid rgba(114, 223, 234, .18); border-radius: 999px; color: #8ca1c9; font: 600 .4rem/1 var(--mono); }
.v5-architecture-signal i { width: 5px; height: 5px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 9px var(--cyan); }

.v5-semantic-scene { min-height: 360px; display: grid; grid-template-columns: minmax(0, 1fr) 70px minmax(0, 1fr); align-items: stretch; gap: 12px; margin-top: 28px; padding: 20px; border: 1px solid rgba(145, 174, 238, .13); border-radius: 18px; background: rgba(2, 8, 22, .62); }
.v5-semantic-scene > section { min-width: 0; padding: 19px; border: 1px solid rgba(149, 177, 239, .14); border-radius: 13px; background: linear-gradient(145deg, rgba(16, 38, 81, .7), rgba(3, 10, 25, .82)); }
.v5-semantic-scene section > small { color: #7186b2; font: 600 .4rem/1 var(--mono); letter-spacing: .11em; }
.v5-semantic-scene section > b { display: block; margin-top: 16px; color: #fff; font-family: var(--serif); font-size: 1.36rem; font-weight: 500; line-height: 1.05; }
.v5-semantic-scene section > p { margin: 13px 0 0; color: #8c9dbc; font-size: .55rem; line-height: 1.55; }
.v5-semantic-scene ul { display: grid; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.v5-semantic-scene li { position: relative; padding-left: 13px; color: #a1b0cb; font-size: .5rem; }
.v5-semantic-scene li::before { content: ""; position: absolute; left: 0; top: .55em; width: 5px; height: 5px; border-radius: 50%; background: var(--cyan); }
.v5-semantic-bridge { display: grid; place-items: center; align-content: center; gap: 18px; }
.v5-semantic-bridge i { width: 9px; height: 9px; border-radius: 50%; background: #5271ce; box-shadow: 0 0 15px rgba(82, 113, 206, .5); animation: v5Pulse 1.8s ease-in-out infinite; }
.v5-semantic-bridge i:nth-child(2) { animation-delay: .35s; }
.v5-semantic-bridge i:nth-child(3) { animation-delay: .7s; }
.v5-schema-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 16px; }
.v5-schema-tags span { padding: 7px 8px; border: 1px solid rgba(110, 141, 255, .24); border-radius: 7px; color: #9eb0d3; font: 500 .4rem/1 var(--mono); }
.v5-ai-answer { margin-top: 19px; padding: 14px; border: 1px solid rgba(114, 223, 234, .22); border-radius: 10px; background: rgba(114, 223, 234, .05); }
.v5-ai-answer b { color: #8ee8ec; font: 600 .42rem/1 var(--mono); letter-spacing: .09em; }
.v5-ai-answer p { margin: 10px 0 0; color: #b9c6dc; font-size: .51rem; line-height: 1.5; }
.v5-ai-answer span { display: block; margin-top: 10px; color: #647ca8; font: 500 .39rem/1 var(--mono); }

.v5-measurement-scene { margin-top: 28px; padding: 20px; border: 1px solid rgba(145, 174, 238, .13); border-radius: 18px; background: rgba(2, 8, 22, .62); }
.v5-measurement-status { display: flex; justify-content: space-between; gap: 16px; padding-bottom: 14px; border-bottom: 1px solid rgba(149, 176, 237, .12); }
.v5-measurement-status span { display: flex; align-items: center; gap: 8px; color: #91e5e9; font: 600 .43rem/1 var(--mono); letter-spacing: .08em; }
.v5-measurement-status i { width: 6px; height: 6px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 10px var(--cyan); }
.v5-measurement-status small { color: #6379a4; font: 500 .41rem/1 var(--mono); }
.v5-measurement-scene ol { display: grid; gap: 8px; margin: 18px 0 0; padding: 0; list-style: none; }
.v5-measurement-scene li { min-height: 64px; display: grid; grid-template-columns: 39px 1fr auto; align-items: center; gap: 13px; padding: 10px 12px; border: 1px solid rgba(145, 173, 236, .12); border-radius: 10px; background: linear-gradient(90deg, rgba(49, 92, 246, .09), transparent); transition: transform .3s, border-color .3s, background .3s; }
.v5-measurement-scene li:hover { transform: translateX(5px); border-color: rgba(114, 223, 234, .3); background: linear-gradient(90deg, rgba(49, 92, 246, .2), rgba(114, 223, 234, .03)); }
.v5-measurement-scene li > span { width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid rgba(114, 223, 234, .25); border-radius: 8px; color: var(--cyan); font: 600 .42rem/1 var(--mono); }
.v5-measurement-scene li b { display: block; color: #d9e3f5; font: 600 .48rem/1 var(--mono); letter-spacing: .07em; }
.v5-measurement-scene li small { display: block; margin-top: 6px; color: #7789ac; font-size: .48rem; }
.v5-measurement-scene li em { color: #6077a5; font: 600 .39rem/1 var(--mono); font-style: normal; letter-spacing: .08em; }
.v5-measurement-decision { margin-top: 14px; padding: 14px; border: 1px solid rgba(114, 223, 234, .2); border-radius: 10px; background: rgba(114, 223, 234, .045); }
.v5-measurement-decision small { color: #77d6dc; font: 600 .4rem/1 var(--mono); letter-spacing: .1em; }
.v5-measurement-decision strong { display: block; margin-top: 8px; color: #e3ebfa; font-family: var(--serif); font-size: 1.05rem; font-weight: 500; }

/* Método: cuatro escenas completas y accesibles en el DOM inicial */
.v5-method-steps { position: relative; margin: 0; padding: 0; display: grid; gap: 22px; list-style: none; }
.v5-method-steps::before, .v5-method-steps .method-progress { display: none; }
.v5-method-step { min-width: 0; min-height: 500px; display: grid; grid-template-columns: minmax(290px, .72fr) minmax(0, 1.28fr); gap: clamp(34px, 6vw, 76px); align-items: center; padding: clamp(28px, 4vw, 50px); border: 1px solid #d7deeb; border-radius: 24px; background: linear-gradient(145deg, #fff, #edf2fb); box-shadow: 0 30px 90px rgba(31, 59, 119, .08); overflow: hidden; transition: transform .4s var(--ease), box-shadow .4s, border-color .4s; }
.v5-method-step:nth-child(even) .v5-method-copy { order: 2; }
.v5-method-step:hover, .v5-method-step:focus-visible { transform: translateY(-4px); border-color: #b7c7ea; box-shadow: 0 42px 110px rgba(31, 59, 119, .13); outline: none; }
.v5-method-step::before { display: none; }
.v5-method-copy > span { color: #5d73a6; font: 600 .49rem/1 var(--mono); letter-spacing: .12em; }
.v5-method-copy h3 { margin: 16px 0 0; color: #14213b; font-family: var(--serif); font-size: clamp(2rem, 3.3vw, 3.35rem); font-weight: 500; line-height: .99; letter-spacing: -.05em; }
.v5-method-copy p { max-width: 60ch; margin: 19px 0 0; color: #5d697f; font-size: .75rem; line-height: 1.75; }
.v5-method-scene { min-width: 0; min-height: 390px; margin: 0; padding: 19px; display: grid; grid-template-rows: auto 1fr auto; border: 1px solid rgba(151, 179, 240, .2); border-radius: 18px; background: radial-gradient(circle at 82% 12%, rgba(49, 92, 246, .2), transparent 34%), linear-gradient(145deg, #0a1b3c, #030a1c); color: #eef4ff; box-shadow: 0 30px 70px rgba(6, 18, 45, .25); overflow: hidden; }
.v5-method-scene figcaption { display: flex; justify-content: space-between; gap: 15px; padding-bottom: 14px; border-bottom: 1px solid rgba(148, 176, 237, .13); }
.v5-method-scene figcaption span { color: #7c92bd; font: 600 .42rem/1 var(--mono); letter-spacing: .11em; }
.v5-method-scene figcaption b { color: #cbd8ef; font: 600 .48rem/1 var(--mono); }
.v5-method-output { padding: 13px 14px; border: 1px solid rgba(114, 223, 234, .18); border-radius: 10px; background: rgba(114, 223, 234, .045); }
.v5-method-output small { color: #74d5da; font: 600 .39rem/1 var(--mono); letter-spacing: .1em; }
.v5-method-output b { display: block; margin-top: 8px; color: #dbe6f8; font-family: var(--serif); font-size: .98rem; font-weight: 500; }
.v5-radar { position: relative; width: min(260px, 78%); aspect-ratio: 1; align-self: center; justify-self: center; border: 1px solid rgba(114, 223, 234, .22); border-radius: 50%; background: repeating-radial-gradient(circle, transparent 0 29px, rgba(110, 141, 255, .14) 30px 31px), linear-gradient(rgba(110, 141, 255, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(110, 141, 255, .06) 1px, transparent 1px); background-size: auto, 28px 28px, 28px 28px; }
.v5-radar::before { content: ""; position: absolute; inset: 50% -8% auto 50%; height: 1px; background: linear-gradient(90deg, var(--cyan), transparent); transform-origin: left; animation: v5Radar 6s linear infinite; }
.v5-radar > i { position: absolute; width: 9px; height: 9px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 13px var(--cyan); animation: v5Pulse 2s ease-in-out infinite; }
.v5-radar > i:nth-child(1) { left: 26%; top: 35%; }.v5-radar > i:nth-child(2) { right: 20%; top: 26%; animation-delay: .5s; }.v5-radar > i:nth-child(3) { right: 29%; bottom: 22%; animation-delay: 1s; }
.v5-radar > span { position: absolute; padding: 6px 8px; border: 1px solid rgba(114, 223, 234, .2); border-radius: 6px; background: rgba(3, 10, 26, .82); color: #9bb0d4; font: 600 .38rem/1 var(--mono); }
.v5-radar .signal-a { left: -18%; top: 27%; }.v5-radar .signal-b { right: -20%; top: 19%; }.v5-radar .signal-c { right: -9%; bottom: 17%; }
.v5-radar > strong { position: absolute; left: 50%; top: 50%; width: 92px; height: 92px; display: grid; place-items: center; border: 1px solid rgba(114, 223, 234, .34); border-radius: 50%; background: radial-gradient(circle, rgba(49, 92, 246, .3), #061229 72%); color: #dce9fa; font: 600 .42rem/1 var(--mono); letter-spacing: .07em; transform: translate(-50%, -50%); }
.v5-priority-matrix { position: relative; align-self: center; min-height: 250px; margin: 22px 12px; border-left: 1px solid #5870a5; border-bottom: 1px solid #5870a5; background: linear-gradient(rgba(110, 141, 255, .055) 1px, transparent 1px), linear-gradient(90deg, rgba(110, 141, 255, .055) 1px, transparent 1px); background-size: 40px 40px; }
.v5-priority-matrix::after { content: "PRIORIDAD"; position: absolute; right: 5%; top: 7%; padding: 7px 9px; border: 1px solid rgba(114, 223, 234, .2); border-radius: 7px; color: var(--cyan); font: 600 .4rem/1 var(--mono); }
.v5-priority-matrix > span { position: absolute; color: #647aa6; font: 600 .39rem/1 var(--mono); letter-spacing: .08em; }
.v5-priority-matrix .axis-y { left: -12px; top: 45%; transform: rotate(-90deg) translateY(-28px); }.v5-priority-matrix .axis-x { left: 45%; bottom: -21px; }
.v5-priority-matrix > i { position: absolute; width: 13px; height: 13px; border-radius: 50%; background: #6e8dff; box-shadow: 0 0 15px rgba(110, 141, 255, .55); font-style: normal; }
.v5-priority-matrix > i b, .v5-priority-matrix > i small { position: absolute; left: 18px; width: 88px; color: #dbe5f6; font-size: .44rem; line-height: 1.2; }.v5-priority-matrix > i small { top: 17px; color: #7185ac; }
.v5-priority-matrix .dot-a { right: 19%; top: 23%; background: var(--cyan); box-shadow: 0 0 18px var(--cyan); }.v5-priority-matrix .dot-b { left: 48%; top: 52%; }.v5-priority-matrix .dot-c { left: 21%; bottom: 15%; background: #65728d; box-shadow: none; }
.v5-blueprint { align-self: center; display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; padding: 22px 0; }
.v5-blueprint > span { position: relative; min-height: 190px; display: grid; align-content: center; gap: 10px; padding: 13px 10px; border: 1px solid rgba(148, 176, 237, .15); border-radius: 10px; background: linear-gradient(145deg, rgba(17, 40, 84, .72), rgba(3, 10, 25, .8)); text-align: center; }
.v5-blueprint > span::after { content: ""; position: absolute; right: -9px; top: 50%; width: 9px; height: 1px; background: var(--cyan); }
.v5-blueprint > span:last-child::after { display: none; }
.v5-blueprint i { width: 30px; height: 30px; display: grid; place-items: center; justify-self: center; border: 1px solid rgba(114, 223, 234, .24); border-radius: 50%; color: var(--cyan); font: 600 .4rem/1 var(--mono); font-style: normal; }
.v5-blueprint b { color: #dce6f7; font: 600 .42rem/1 var(--mono); letter-spacing: .07em; }
.v5-blueprint small { color: #7185aa; font-size: .43rem; line-height: 1.4; }
.v5-review-flow { align-self: center; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin: 20px 0; padding: 0; list-style: none; }
.v5-review-flow li { position: relative; min-height: 105px; display: grid; place-items: center; align-content: center; gap: 12px; border: 1px solid rgba(146, 174, 235, .14); border-radius: 10px; background: rgba(15, 36, 77, .65); }
.v5-review-flow li::after { content: ""; position: absolute; left: calc(100% + 1px); top: 50%; width: 18px; height: 1px; background: linear-gradient(90deg, #647fd0, var(--cyan)); }
.v5-review-flow li:last-child::after { display: none; }
.v5-review-flow span { color: #cbd7ea; font: 600 .39rem/1 var(--mono); letter-spacing: .06em; }
.v5-review-flow i { width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 11px var(--cyan); }
.v5-review-decisions { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-bottom: 18px; }
.v5-review-decisions > span { padding: 11px; border: 1px solid rgba(145, 173, 235, .13); border-radius: 8px; }
.v5-review-decisions i { display: inline-block; width: 5px; height: 5px; margin-right: 6px; border-radius: 50%; background: #6e8dff; }
.v5-review-decisions b { color: #d7e1f2; font: 600 .39rem/1 var(--mono); letter-spacing: .07em; }.v5-review-decisions small { display: block; margin-top: 7px; color: #6f83a9; font-size: .4rem; line-height: 1.35; }
.v5-method > .wrap > .method-note { max-width: 840px; margin: 28px auto 0; }

/* HERGA: galería horizontal sin recorte y relato completo */
.v5-case .case-frame { display: block; min-height: 0; border-radius: 30px; overflow: hidden; }
.v5-case .case-gallery { width: 100%; min-height: 0; aspect-ratio: 8 / 5; background: #02050d; }
.v5-case .case-slide { background: #02050d; transform: none; }
.v5-case .case-slide.is-current { transform: none; }
.v5-case .case-slide img { width: 100%; height: 100%; object-fit: contain; object-position: center; filter: saturate(.9) contrast(1.03); }
.v5-case .case-gallery::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 50%, rgba(49, 92, 246, .08), transparent 58%); pointer-events: none; }
.v5-case .case-gallery::after { background: linear-gradient(0deg, rgba(2, 5, 13, .92), transparent 34%), linear-gradient(180deg, rgba(2, 5, 13, .4), transparent 28%); }
.v5-case .case-gallery-controls > button, .v5-case .case-dots button { min-width: 48px; min-height: 48px; }
.v5-case .case-control-actions { display: flex; align-items: center; gap: 8px; }
.v5-case .case-control-actions button { width: 48px; height: 48px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(255, 255, 255, .22); border-radius: 50%; background: rgba(3, 7, 17, .62); color: #fff; cursor: pointer; backdrop-filter: blur(12px); transition: transform .3s, border-color .3s, background .3s, color .3s; }
.v5-case .case-control-actions button:hover, .v5-case .case-control-actions button:focus-visible { border-color: var(--cyan); background: rgba(49, 92, 246, .35); color: var(--cyan); transform: scale(1.06); outline: none; }
.v5-case [data-case-pause][aria-pressed="true"] { border-color: var(--cyan); background: rgba(49, 92, 246, .34); color: var(--cyan); box-shadow: 0 0 20px rgba(114, 223, 234, .14); }
.v5-case [data-case-pause] span { font: 700 .74rem/1 var(--mono); letter-spacing: -.14em; transform: translateX(-1px); }
.v5-case .case-dots { gap: 4px; }
.v5-case .case-dots button { width: 48px; height: 48px; position: relative; border: 0; background: transparent; }
.v5-case .case-dots button::before { content: ""; position: absolute; left: 7px; right: 7px; top: 50%; height: 3px; background: rgba(255, 255, 255, .28); transform: translateY(-50%); transition: background .3s, box-shadow .3s; }
.v5-case .case-dots button.is-current::before { background: var(--cyan); box-shadow: 0 0 12px rgba(114, 223, 234, .55); }
.v5-case .case-copy { position: relative; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr); gap: 1px; padding: 0; background: rgba(151, 179, 240, .13); }
.v5-case .case-copy::after { display: none; }
.v5-case-story, .v5-case-results { min-width: 0; padding: clamp(32px, 4.6vw, 62px); background: linear-gradient(145deg, #071127, #030a1c); }
.v5-case-story h3 { max-width: 720px; margin: 20px 0 0; font-family: var(--serif); font-size: clamp(2.25rem, 3.8vw, 3.85rem); font-weight: 500; line-height: .98; letter-spacing: -.055em; }
.v5-case-story > p { max-width: 69ch; margin: 23px 0 0; color: #9aabc8; font-size: .74rem; line-height: 1.78; }
.v5-case-process { display: grid; gap: 9px; margin: 30px 0 0; padding: 0; list-style: none; }
.v5-case-process li { display: grid; grid-template-columns: 42px 1fr; gap: 14px; padding: 16px; border: 1px solid rgba(145, 173, 235, .13); border-radius: 12px; background: rgba(255, 255, 255, .02); transition: border-color .3s, background .3s, transform .3s; }
.v5-case-process li:hover { transform: translateX(5px); border-color: rgba(114, 223, 234, .3); background: rgba(49, 92, 246, .08); }
.v5-case-process li > span { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(114, 223, 234, .24); border-radius: 9px; color: var(--cyan); font: 600 .42rem/1 var(--mono); }
.v5-case-process b { color: #7489b5; font: 600 .4rem/1 var(--mono); letter-spacing: .1em; }
.v5-case-process h4 { margin: 8px 0 0; color: #dce6f6; font-family: var(--serif); font-size: 1.04rem; font-weight: 500; line-height: 1.08; }
.v5-case-process p { margin: 8px 0 0; color: #8292af; font-size: .55rem; line-height: 1.55; }
.v5-case-results { background: radial-gradient(circle at 90% 8%, rgba(49, 92, 246, .18), transparent 35%), #030918; }
.v5-case-results > header { display: flex; justify-content: space-between; gap: 18px; padding-bottom: 17px; border-bottom: 1px solid rgba(147, 175, 237, .13); }
.v5-case-results > header span { color: #7489b5; font: 600 .4rem/1 var(--mono); letter-spacing: .09em; }
.v5-case-results > header b { display: flex; align-items: center; gap: 7px; color: #91e7eb; font: 600 .4rem/1 var(--mono); letter-spacing: .07em; }
.v5-case-results > header i { width: 6px; height: 6px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 10px var(--cyan); }
.v5-case .case-metrics { grid-template-columns: 1fr; gap: 9px; margin-top: 24px; }
.v5-case .case-metric { min-height: 124px; display: grid; grid-template-columns: 140px 1fr; align-items: center; gap: 18px; }
.v5-case .case-value { font-size: clamp(2.35rem, 4vw, 3.8rem); }
.v5-case .case-label { margin: 0; font-size: .58rem; }
.v5-case .case-label strong { display: block; margin-bottom: 5px; color: #dbe5f6; font-size: .63rem; }
.v5-case .case-growth { margin-top: 13px; }
.v5-case-disclaimer { margin: 18px 0 0; color: #6e82a8; font-size: .52rem; line-height: 1.55; }
.v5-case-ctas { display: flex; flex-wrap: wrap; gap: 12px; padding: 25px clamp(30px, 4.6vw, 62px); border-top: 1px solid rgba(145, 173, 235, .13); background: #020713; }
.v5-case-ctas .cta { width: auto; }

/* Contexto B2B recolocado después de la prueba */
.v5-b2b-context .sport-card { border-color: #dce2ed; background: #fff; box-shadow: 0 28px 75px rgba(24, 51, 108, .08); }
.v5-b2b-context .sport-card h3 { color: #18243c; }
.v5-b2b-context .sport-card p { color: #606d82; }
.v5-b2b-context .card-code, .v5-b2b-context .card-detail { color: #5f74a4; }

/* FAQ: el mapa permanece fijo en escritorio e iPad de 1024 px */
.faq-chapter { overflow: clip; }
.faq-chapter .wrap { position: relative; }
.faq-heading { margin: 0; font: inherit; }
.faq-layout { grid-template-columns: minmax(320px, .64fr) minmax(0, 1.36fr); }
.faq-list { padding-bottom: clamp(360px, 52vh, 460px); }
.faq-guide { top: 104px; max-height: calc(100vh - 120px); overflow: auto; scrollbar-width: thin; scrollbar-color: rgba(114, 223, 234, .28) transparent; }
.faq-guide-nav { gap: 3px; }
.faq-guide .faq-orbit-node { min-height: 50px; }
.faq-section-cta { margin-top: 62px; }
.faq-item { scroll-margin-top: 112px; }

/* Contacto: estrellas como la home, sin fotografía de fondo */
.contact { position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(circle at 18% 22%, rgba(49, 92, 246, .16), transparent 34%), radial-gradient(circle at 82% 65%, rgba(114, 223, 234, .08), transparent 32%), #02050d; }
.contact::before { z-index: -2; inset: 0; width: auto; height: auto; border-radius: 0; background: linear-gradient(180deg, rgba(2, 5, 13, .2), rgba(2, 5, 13, .82)) !important; filter: none; transform: none; opacity: 1; }
.contact::after { z-index: -1; opacity: .6; }
.contact-stars { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; pointer-events: none; opacity: .82; }
.contact-grid { position: relative; z-index: 2; grid-template-columns: minmax(0, 1.45fr) minmax(400px, .55fr); gap: clamp(42px, 4vw, 58px); }
.contact-copy h2 { max-width: 780px; font-size: clamp(2.65rem, 3.5vw, 3.65rem); line-height: .96; letter-spacing: -.055em; text-wrap: pretty; }
.signature::before { content: "NG"; }

@keyframes v5Pulse { 50% { opacity: .35; transform: scale(.78); } }
@keyframes v5Route { 0%, 100% { transform: translateX(-18px); } 50% { transform: translateX(18px); } }
@keyframes v5Radar { to { transform: rotate(360deg); } }

@media (max-width: 1160px) {
  .hero .wrap { width: min(100% - 48px, 1180px); }
  .hero-grid { grid-template-columns: minmax(0, 1.23fr) minmax(365px, .77fr); }
  .sector-showcase { grid-template-columns: 300px 1fr; }
  .sector-demo { grid-template-columns: 1fr 90px 1fr; }
  .v5-services-layout { grid-template-columns: 330px 1fr; }
  .v5-case .case-copy { grid-template-columns: 1fr; }
  .v5-case-results { border-top: 1px solid rgba(145, 173, 235, .13); }
  .contact-grid { grid-template-columns: 1fr; }
  .contact-card { width: min(780px, 100%); }
}

@media (max-width: 980px) {
  .hero-grid { grid-template-columns: 1fr; }
  .sector-showcase { grid-template-columns: 1fr; }
  .sector-switcher { grid-template-columns: repeat(2, 1fr); }
  .sector-tab { min-height: 112px; border-right: 1px solid rgba(151, 178, 238, .12); }
  .sector-stage { min-height: 570px; }
  .v5-services-layout { grid-template-columns: 1fr; }
  .v5-services .service-list { position: relative; top: auto; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; border: 1px solid rgba(151, 178, 238, .14); background: rgba(151, 178, 238, .14); }
  .v5-services .service-item { min-height: 130px; padding: 15px; background: #071127; border: 0; }
  .v5-service-stage { min-height: 0; }
  .v5-service-panel { min-height: 720px; }
  .v5-method-step { grid-template-columns: 1fr; }
  .v5-method-step:nth-child(even) .v5-method-copy { order: initial; }
  .v5-method-scene { min-height: 360px; }
  .faq-layout { grid-template-columns: minmax(300px, .66fr) minmax(0, 1.34fr); gap: 28px; }
  .faq-guide { position: sticky; top: 96px; max-height: calc(100vh - 110px); padding: 14px; }
  .faq-guide-focus { grid-template-columns: 70px 1fr; gap: 12px; padding: 14px 0; }
  .faq-guide-focus > span { height: 64px; }
  .faq-guide .faq-orbit-node { min-height: 46px; padding: 6px 7px; }
  .faq-guide .faq-orbit-node span small { display: none; }
  .faq-guide-note { display: none; }
  .contact-grid { grid-template-columns: 1fr; }
  .contact-card { width: min(780px, 100%); }
}

@media (max-width: 820px) {
  .chapter-head { grid-template-columns: 92px minmax(0, 1fr); }
  .section-cta { align-items: stretch; flex-direction: column; }
  .section-cta .cta { width: 100%; justify-content: space-between; }
  .sector-demo { grid-template-columns: 1fr; }
  .sector-bridge { min-height: 70px; }
  .sector-bridge::before { left: 50%; right: auto; top: -7px; bottom: -7px; width: 1px; height: auto; }
  .sector-bridge em { bottom: 7px; }
  .v5-search-scene { grid-template-columns: 1fr; }
  .v5-scene-connector { height: 70px; }
  .v5-scene-connector::before { left: 50%; right: auto; top: -6px; bottom: -6px; width: 1px; height: auto; }
  .v5-architecture-clusters { grid-template-columns: 1fr; }
  .v5-architecture-line { display: none; }
  .v5-architecture-clusters section::before { display: none; }
  .v5-semantic-scene { grid-template-columns: 1fr; }
  .v5-semantic-bridge { grid-auto-flow: column; min-height: 50px; }
  .v5-blueprint, .v5-review-flow { grid-template-columns: repeat(2, 1fr); }
  .v5-blueprint > span::after, .v5-review-flow li::after { display: none; }
  .faq-layout { grid-template-columns: 1fr; }
  .faq-list { padding-bottom: 0; }
  .faq-guide { position: relative; top: auto; max-height: none; overflow: hidden; }
  .faq-guide-nav { grid-template-columns: repeat(3, 1fr); }
  .faq-guide .faq-orbit-node { grid-template-columns: 30px 1fr; }
  .faq-guide .faq-orbit-node em { display: none; }
  .v5-sector-photo-strip { grid-template-columns: 1fr; }
  .v5-sector-photo-strip figure, .v5-sector-photo-strip img { min-height: 310px; }
  .section-cta-actions { justify-content: stretch; }
  .section-cta-actions .cta { width: 100%; justify-content: space-between; }
}

@media (max-width: 700px) {
  .hero .wrap { width: min(100% - 32px, 1180px); }
  h1 { font-size: clamp(2.45rem, 10.7vw, 3.35rem); line-height: .97; }
  .chapter h2 { font-size: clamp(2.2rem, 9.8vw, 3rem); }
  .sector-switcher { grid-template-columns: 1fr; }
  .sector-tab { min-height: 102px; }
  .sector-stage { margin-inline: -1px; padding: 14px; }
  .sector-panel { padding-inline: 4px; }
  .sector-stage-head b { display: none; }
  .v5-services .service-list { grid-template-columns: 1fr; }
  .v5-services .service-item { min-height: 110px; }
  .v5-service-panel { min-height: 0; margin-inline: -8px; padding: 24px 17px; border-radius: 18px; }
  .v5-service-panel > header h3 { font-size: 2rem; }
  .v5-search-scene, .v5-architecture-scene, .v5-semantic-scene, .v5-measurement-scene { margin-inline: -5px; padding: 13px; }
  .v5-measurement-status { display: grid; }
  .v5-measurement-scene li { grid-template-columns: 36px 1fr; }
  .v5-measurement-scene li em { display: none; }
  .v5-method-step { min-height: 0; margin-inline: -4px; padding: 25px 18px; border-radius: 18px; }
  .v5-method-copy h3 { font-size: 2.15rem; }
  .v5-method-scene { min-height: 350px; padding: 13px; }
  .v5-method-scene figcaption { display: grid; }
  .v5-radar { width: 210px; }
  .v5-radar .signal-a { left: -10%; }.v5-radar .signal-b { right: -12%; }.v5-radar .signal-c { right: -3%; }
  .v5-review-decisions { grid-template-columns: 1fr; }
  .v5-case .case-frame { margin-inline: -16px; border-radius: 0; }
  .v5-case .case-gallery { aspect-ratio: 8 / 5; min-height: 0; }
  .v5-case .case-gallery-copy { bottom: 88px; }
  .v5-case .case-gallery-copy b { font-size: 2rem; }
  .v5-case .case-gallery-controls { left: 14px; right: 14px; bottom: 14px; }
  .v5-case .case-gallery-controls > button { width: 48px; }
  .v5-case .case-dots button { width: 38px; min-width: 38px; }
  .v5-case-story, .v5-case-results { padding: 32px 22px; }
  .v5-case .case-metric { grid-template-columns: 112px 1fr; padding: 15px 13px; }
  .v5-case-ctas { display: grid; padding: 22px; }
  .v5-case-ctas .cta { width: 100%; }
  .faq-guide-nav { grid-template-columns: repeat(2, 1fr); }
  .contact::before { background: linear-gradient(rgba(2, 5, 13, .25), rgba(2, 5, 13, .9)) !important; }
  .contact-copy h2 { font-size: clamp(2.55rem, 11.5vw, 3.45rem); }
}

@media (max-width: 430px) {
  .sector-showcase { margin-inline: -8px; }
  .sector-demo { padding: 12px; }
  .v5-blueprint { grid-template-columns: 1fr; }
  .v5-review-flow { grid-template-columns: repeat(2, 1fr); }
  .v5-case .case-gallery-copy span { font-size: .4rem; }
  .v5-case .case-gallery-copy b { font-size: 1.68rem; }
  .v5-case .case-dots { gap: 0; }
  .v5-case .case-dots button { width: 30px; min-width: 30px; }
  .v5-case .case-dots button::before { left: 5px; right: 5px; }
  .faq-guide-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  .sector-stage-head i, .sector-demand strong i, .sector-bridge i, .v5-scene-connector i, .v5-semantic-bridge i, .v5-radar::before, .v5-radar > i { animation: none !important; }
}
