/* Shared original-site palette and readable S5 layouts. */
.home-v4 .s5-home {
  background:linear-gradient(120deg,#f5f8fd,#edf3ff);
  color:#13263b;
  padding:88px 0;
  border-top:1px solid #e2e9f2;
  border-bottom:1px solid #e2e9f2;
}
.home-v4 .s5-home:before { display:none; }
.home-v4 .s5-home-head { grid-template-columns:1fr;gap:20px;margin-bottom:36px; }
.home-v4 .s5-home h2 { font-size:clamp(28px,3.1vw,42px);line-height:1.4;margin:12px 0; }
.home-v4 .s5-home-head>p { color:#536477;max-width:900px;font-size:16px; }
.home-v4 .s5-home-flow { background:#fff;border:1px solid #dae3ef; }
.home-v4 .s5-home-flow article { padding:26px 18px;min-height:230px;border-color:#e1e8f1; }
.home-v4 .s5-home-flow b { color:#2861bd;font-size:30px; }
.home-v4 .s5-home-flow span { color:#718198;font-size:9px;letter-spacing:.04em; }
.home-v4 .s5-home-flow h3 { color:#152c46;font-size:18px;line-height:1.5; }
.home-v4 .s5-home-flow p { color:#607085; }
.home-v4 .s5-home-decision { border-color:#dbe4ef;background:#fff;color:#183353; }
.home-v4 .s5-home-decision span { color:#65778c; }
.home-v4 .s5-home-decision i { color:#2d62bc; }
.home-v4 .s5-hero-subtitle { font-size:22px;color:#2a5fb8;line-height:1.6;margin:16px 0 24px; }
.home-v4 .v4-hero h1#hero-title { font-size:clamp(25px,2.65vw,40px);white-space:nowrap;line-height:1.35;letter-spacing:-.04em; }
.home-v4.tech-page { color:#152c46;background:#fff; }
.home-v4.tech-page .tech-hero {
  background:radial-gradient(ellipse at 88% 50%,#e0ebff,transparent 62%),linear-gradient(120deg,#fff,#f2f6fd);
  color:#142a44;padding:95px 0;border-bottom:1px solid #dfe7f1;
}
.home-v4.tech-page .tech-hero:before {
  background:linear-gradient(#315d9a06 1px,transparent 1px),linear-gradient(90deg,#315d9a06 1px,transparent 1px);
  background-size:52px 52px;
}
.home-v4.tech-page .tech-hero-grid { grid-template-columns:1.4fr .8fr;gap:5%; }
.home-v4.tech-page .tech-hero h1 { color:#14345c;font-size:clamp(30px,3.4vw,48px);line-height:1.4;white-space:nowrap;letter-spacing:-.025em; }
.home-v4.tech-page .tech-lead { color:#5b6c80;font-size:17px;line-height:1.9; }
.home-v4.tech-page .tech-orbit { width:min(330px,100%);border-color:#b7c9e4;box-shadow:inset 0 0 65px #c9daef44;animation:none; }
.home-v4.tech-page .tech-orbit:before,.home-v4.tech-page .tech-orbit:after { border-color:#b4c6e4;inset:20% -8%;transform:rotate(35deg); }
.home-v4.tech-page .tech-orbit:after { transform:rotate(-45deg); }
.home-v4.tech-page .tech-orbit strong { color:#2358ac;font-size:64px;font-family:inherit;font-weight:500; }
.home-v4.tech-page .tech-orbit span { color:#4573b1; }
.home-v4.tech-page .tech-orbit small { color:#71829a;letter-spacing:.05em;font-size:9px;bottom:35%; }
.home-v4.tech-page .tech-section { padding:80px 0; }
.home-v4.tech-page .tech-tone { background:#f3f6fc; }
.home-v4.tech-page .tech-heading { max-width:100%;margin-bottom:36px; }
.home-v4.tech-page .tech-heading h2 { font-size:clamp(26px,2.7vw,38px);line-height:1.4; }
.home-v4.tech-page .tech-heading>p:last-child { font-size:16px;max-width:920px; }
.home-v4.tech-page .tech-layers b,.home-v4.tech-page .decision-grid b { color:#2a61b9; }
.home-v4.tech-page .tech-layers h3 { font-size:23px; }
.home-v4.tech-page .algorithm-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:22px; }
.home-v4.tech-page .algorithm-grid article,.home-v4.tech-page .decision-grid article,.home-v4.tech-page .application-grid article {
  border:1px solid #dfe6f0;border-radius:5px;padding:30px;box-shadow:0 8px 26px #173b6c04;
}
.home-v4.tech-page .algorithm-grid article:hover,.home-v4.tech-page .decision-grid article:hover,.home-v4.tech-page .application-grid article:hover { border-color:#b5c9e8;box-shadow:0 12px 26px #1a478810; }
.home-v4.tech-page .algorithm-grid small { color:#2c60b1; }
.home-v4.tech-page .tech-cta { background:#e8effc;color:#17395f;border:1px solid #d6e2f5;border-radius:5px; }
.home-v4.tech-page .tech-cta h2 { font-size:28px;line-height:1.5; }
.home-v4.tech-page .tech-cta p { color:#596e89; }
.home-v4.about-page #channel-hero-title { font-size:clamp(28px,3.4vw,44px);white-space:nowrap; }
.home-v4.about-page #channel-content .section-title { font-size:32px; }
@media(min-width:1001px) {
  .s5-home h2,.tech-page .tech-heading h2 { white-space:nowrap; }
}
@media(max-width:1000px) {
  .home-v4.tech-page .tech-hero-grid { grid-template-columns:1fr;gap:35px; }
  .home-v4.tech-page .tech-orbit { margin:auto;width:270px; }
  .home-v4.tech-page .algorithm-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-v4 .s5-home-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:640px) {
  .home-v4 .v4-hero h1#hero-title { font-size:clamp(20px,5.35vw,30px);letter-spacing:-.06em; }
  .home-v4.tech-page .tech-hero h1 { font-size:clamp(24px,6.4vw,36px);letter-spacing:-.04em; }
  .home-v4.about-page #channel-hero-title { font-size:clamp(24px,6.8vw,34px); }
  .home-v4 .s5-hero-subtitle { font-size:17px; }
  .home-v4 .s5-home { padding:56px 0; }
  .home-v4 .s5-home h2 { font-size:26px; }
  .home-v4 .s5-home-flow,.home-v4.tech-page .algorithm-grid { grid-template-columns:1fr; }
  .home-v4 .s5-home-flow article { min-height:0;padding:24px; }
  .home-v4.tech-page .tech-hero { padding:55px 0; }
  .home-v4.tech-page .tech-section { padding:55px 0; }
  .home-v4.tech-page .tech-heading h2 { font-size:26px; }
  .home-v4.tech-page .tech-cta { padding:24px; }
}
