/* SYSTEM_V1 Phase 1 shell + HERO_V1 */
.hero-v1{
  --hero-bg:linear-gradient(180deg,#FFFFFF 0%,#F4F8FF 100%);
  --hero-border:1px solid transparent;
  --hero-glow:radial-gradient(ellipse at 50% 0%,rgba(255,106,0,0.12) 0%,transparent 68%);
  --hero-eyebrow-bg:rgba(255,255,255,0.08);
  --hero-eyebrow-border:rgba(255,255,255,0.18);
  --hero-eyebrow-color:var(--signal,#FF6A00);
  --hero-headline-color:#fff;
  --hero-emphasis-color:#fff;
  --hero-subtext-color:rgba(255,255,255,0.78);
  --hero-secondary-bg:rgba(255,255,255,0.08);
  --hero-secondary-border:rgba(255,255,255,0.2);
  --hero-secondary-color:#fff;
  --hero-secondary-hover:rgba(255,255,255,0.14);
  background:var(--hero-bg);
  border-bottom:var(--hero-border);
  padding:88px 40px 72px;
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.hero-v1::before{
  content:"";
  position:absolute;
  inset:0;
  background:var(--hero-glow);
  pointer-events:none;
  z-index:0;
}
.hero-v1__inner{
  max-width:760px;
  margin:0 auto;
  text-align:center;
  position:relative;
  z-index:1;
}
.hero-v1__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 16px;
  border-radius:999px;
  background:var(--hero-eyebrow-bg);
  border:1px solid var(--hero-eyebrow-border);
  color:var(--hero-eyebrow-color);
  font-size:11px;
  font-weight:800;
  letter-spacing:0.16em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.hero-v1__headline{
  font-size:clamp(2.2rem,5vw,3.6rem);
  font-weight:900;
  line-height:1.05;
  letter-spacing:-0.03em;
  color:var(--hero-headline-color);
  margin-bottom:14px;
}
.hero-v1__emphasis{
  font-size:clamp(1.15rem,2.8vw,1.8rem);
  font-weight:800;
  line-height:1.15;
  letter-spacing:-0.02em;
  color:var(--hero-emphasis-color);
  margin-bottom:18px;
}
.hero-v1__subtext{
  max-width:620px;
  margin:0 auto 32px;
  font-size:1.05rem;
  line-height:1.75;
  color:var(--hero-subtext-color);
}
.hero-v1__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
}
.hero-v1__primary,
.hero-v1__secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 24px;
  border-radius:8px;
  font-size:14px;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  transition:background 0.2s,transform 0.15s,color 0.2s,border-color 0.2s;
}
.hero-v1__primary{
  background:var(--signal,#FF6A00);
  color:#fff;
}
.hero-v1__primary:hover{
  background:#e55d00;
  transform:translateY(-1px);
}
.hero-v1__secondary{
  background:var(--hero-secondary-bg);
  border:1px solid var(--hero-secondary-border);
  color:var(--hero-secondary-color);
}
.hero-v1__secondary:hover{
  background:var(--hero-secondary-hover);
}
.hero-v1 .war-chain{
  margin-top:36px;
}
.war-chain{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  flex-wrap:nowrap;
  overflow-x:auto;
  padding:0 20px;
}
.wc-step{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  padding:12px 20px;
  position:relative;
}
.wc-num{
  font-size:9px;
  font-weight:800;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--muted,#5A7A94);
}
.wc-icon{
  font-size:18px;
  line-height:1;
}
.wc-name{
  font-size:11px;
  font-weight:700;
  letter-spacing:0.06em;
  text-transform:uppercase;
  white-space:nowrap;
}
.wc-job{
  font-size:10px;
  color:var(--muted,#5A7A94);
  white-space:nowrap;
}
.wc-arrow{
  color:rgba(13,43,69,0.18);
  font-size:18px;
  padding:0 4px;
  flex-shrink:0;
}
footer.site-footer-v1{
  background:var(--accent,#1F4E79);
  color:rgba(255,255,255,0.45);
  padding:32px 40px;
  text-align:center;
  font-size:12px;
  border-top:1px solid rgba(255,255,255,0.08);
}
footer.site-footer-v1 a{
  color:rgba(255,255,255,0.45);
  text-decoration:none;
}
footer.site-footer-v1 a:hover{
  color:#fff;
}
footer.site-footer-v1 p + p{
  margin-top:8px;
}
@media(max-width:768px){
  .hero-v1{
    padding:64px 20px 56px;
  }
  .hero-v1__headline{
    font-size:clamp(2rem,9vw,3rem);
  }
  .hero-v1__emphasis{
    font-size:clamp(1.05rem,5vw,1.45rem);
  }
  .hero-v1__subtext{
    font-size:1rem;
  }
  .hero-v1__actions{
    flex-direction:column;
    align-items:stretch;
  }
  .hero-v1__primary,
  .hero-v1__secondary{
    width:100%;
  }
  .war-chain{
    justify-content:flex-start;
  }
  .wc-step{
    padding:10px 14px;
  }
  footer.site-footer-v1{
    padding:24px 20px;
  }
}


/* SYSTEM_V1 Phase 2 shared stack */
.stats-bar{
  background:var(--surface,#fff);
  border-bottom:1px solid var(--border,#E2E8F0);
  padding:28px 40px;
}
.stats-grid{
  max-width:900px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px;
  text-align:center;
}
.stat-num{
  font-size:2rem;
  font-weight:900;
  line-height:1;
  color:var(--product-accent,var(--accent,#1F4E79));
}
.stat-label{
  font-size:11px;
  font-weight:700;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--muted,#5A7A94);
  margin-top:8px;
  line-height:1.5;
}
.features-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:20px;
}
.feature-card{
  background:var(--surface,#fff);
  border:1px solid var(--border,#E2E8F0);
  border-radius:14px;
  padding:28px;
  box-shadow:0 1px 3px rgba(13,43,69,0.06);
  position:relative;
  overflow:hidden;
}
.feature-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:3px;
  background:var(--card-glow,var(--product-glow,var(--signal,#FF6A00)));
}
.feature-icon{
  font-size:28px;
  margin-bottom:14px;
}
.feature-card h3{
  font-size:15px;
  font-weight:700;
  margin-bottom:8px;
  color:var(--text,#0D2B45);
}
.feature-card p{
  font-size:13px;
  line-height:1.65;
  color:var(--muted,#5A7A94);
}
.dark-section{
  background:var(--product-dark,#0A2540);
  color:#fff;
}
.dark-section h2{
  color:#fff;
}
.dark-section .section-label{
  color:var(--product-glow,var(--signal,#FF6A00));
}
.dark-section .section-sub{
  color:rgba(255,255,255,0.7);
}
.dark-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:20px;
}
.dark-card{
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:14px;
  padding:28px;
}
.dark-card h3{
  font-size:1rem;
  font-weight:700;
  margin-bottom:10px;
  color:var(--product-glow,var(--signal,#FF6A00));
}
.dark-card p{
  font-size:13px;
  line-height:1.7;
  color:rgba(255,255,255,0.72);
}
.pricing-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:20px;
  max-width:1060px;
}
.price-card{
  background:var(--surface,#fff);
  border:1px solid var(--border,#E2E8F0);
  border-top:3px solid var(--card-glow,var(--product-glow,var(--signal,#FF6A00)));
  border-radius:12px;
  padding:28px;
  box-shadow:0 1px 3px rgba(13,43,69,0.06);
  position:relative;
}
.price-card.featured{
  border-top-color:var(--signal,#FF6A00);
  box-shadow:0 8px 24px rgba(255,106,0,0.12);
}
.price-badge,
.popular-badge{
  position:absolute;
  top:-11px;
  left:50%;
  transform:translateX(-50%);
  background:var(--signal,#FF6A00);
  color:#fff;
  font-size:10px;
  font-weight:700;
  padding:4px 14px;
  border-radius:999px;
  white-space:nowrap;
}
.price-tier,
.price-name{
  font-size:12px;
  font-weight:700;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--muted,#5A7A94);
  margin-bottom:8px;
}
.price-amount{
  font-size:36px;
  font-weight:900;
  line-height:1;
  color:var(--text,#0D2B45);
  margin-bottom:6px;
}
.price-amount span{
  font-size:14px;
  font-weight:400;
  color:var(--muted,#5A7A94);
}
.price-desc{
  font-size:13px;
  line-height:1.6;
  color:var(--muted,#5A7A94);
  margin:12px 0 18px;
}
.price-features{
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-bottom:20px;
}
.price-features li{
  display:flex;
  gap:8px;
  font-size:13px;
  line-height:1.5;
  color:var(--text,#0D2B45);
}
.price-features li::before{
  content:'✓';
  color:var(--card-glow,var(--product-glow,var(--signal,#FF6A00)));
  font-weight:700;
  flex-shrink:0;
}
.price-note{
  font-size:11px;
  color:var(--muted,#5A7A94);
  text-align:center;
  margin-top:10px;
}
.price-cta{
  display:block;
  text-align:center;
  min-height:46px;
  padding:13px 16px;
  border-radius:8px;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
  transition:background 0.2s,transform 0.15s,color 0.2s,border-color 0.2s;
}
.price-card.featured .price-cta{
  background:var(--signal,#FF6A00);
  color:#fff;
}
.price-card:not(.featured) .price-cta{
  background:var(--bg,#F8FAFC);
  color:var(--text,#0D2B45);
  border:1px solid var(--border,#E2E8F0);
}
.price-cta:hover{
  transform:translateY(-1px);
}
.cta-section{
  background:var(--signal,#FF6A00);
  text-align:center;
  padding:72px 40px;
}
.cta-section h2{
  font-size:clamp(1.6rem,3.5vw,2.2rem);
  font-weight:900;
  color:#fff;
  margin-bottom:12px;
}
.cta-section p{
  font-size:1rem;
  line-height:1.7;
  color:rgba(255,255,255,0.86);
  max-width:520px;
  margin:0 auto 28px;
}
.btn-white{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:14px 32px;
  border-radius:8px;
  background:#fff;
  color:var(--signal,#FF6A00);
  font-weight:700;
  font-size:1rem;
  text-decoration:none;
  transition:transform 0.15s;
}
.btn-white:hover{
  transform:translateY(-1px);
}
@media(max-width:768px){
  .stats-bar{padding:20px;}
  .stats-grid{grid-template-columns:1fr;gap:20px;}
  .features-grid,.dark-grid,.pricing-grid{grid-template-columns:1fr;}
  .cta-section{padding:52px 20px;}
}
