:root{--bg:#f5f6f8;--w:#fff;--ink:#111318;--mut:#69707a;--line:#e2e5e9;--orange:#ff5a36;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding-top:74px;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}
.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}
nav{position:fixed;top:0;left:0;right:0;z-index:20;background:rgba(245,246,248,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.navin{height:74px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{display:block;width:150px;height:auto}.links{display:flex;gap:24px;align-items:center;color:#515760;font-size:.94rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;background:var(--orange);color:#fff;font-weight:800}
.hero{padding:46px 0 28px}.herobox{background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:0 18px 48px rgba(17,19,24,.07)}.herogrid{display:grid;grid-template-columns:1.12fr .88fr;min-height:570px}.herotxt{padding:64px 56px;display:flex;flex-direction:column;justify-content:center}.side{background:#101217;display:flex;align-items:center;justify-content:center;padding:46px;position:relative;overflow:hidden}.side:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:rgba(255,90,54,.18);right:-130px;bottom:-130px}.side img{position:relative;z-index:2;width:min(88%,520px)}
.k{font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-bottom:17px}h1,h2,h3{line-height:1.08;letter-spacing:-.04em;margin:0}h1{font-size:clamp(3rem,5vw,5rem)}.lead{color:var(--mut);font-size:1.1rem;margin:22px 0 24px;max-width:720px}.chips{display:flex;gap:10px;flex-wrap:wrap}.chip{background:#f0f2f5;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:.84rem;font-weight:750}
section{padding:78px 0}.head{max-width:850px;margin-bottom:32px}.head h2{font-size:clamp(2.35rem,4.2vw,4.15rem);margin-bottom:14px}.head p{margin:0;color:var(--mut);font-size:1.05rem}
.dark{background:#111318;color:#fff;border-radius:24px;padding:46px}.dark p{color:#c4c8ce;margin:15px 0 0}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}.stat strong{display:block;font-size:2.35rem;letter-spacing:-.05em;line-height:1;margin-bottom:8px}.stat span{color:var(--mut);font-size:.92rem}
.note{background:#fff;border-left:8px solid var(--orange);border-radius:15px;padding:28px 30px;box-shadow:0 15px 40px rgba(17,19,24,.06)}.note h3{font-size:1.45rem;margin-bottom:9px}.note p{margin:0;color:var(--mut)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.step{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}.step b{display:inline-flex;width:34px;height:34px;border-radius:9px;background:#111318;color:#fff;align-items:center;justify-content:center;margin-bottom:17px}.step h3{font-size:1.25rem;margin-bottom:8px}.step p{margin:0;color:var(--mut)}
.visual{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 12px 34px rgba(17,19,24,.05)}.visual img{width:100%;height:auto;border-radius:12px}.caption{padding:13px 3px 2px;color:var(--mut);font-size:.9rem}.robots-visual{display:flex;flex-direction:column;justify-content:center}.robots-visual img{max-width:432px;margin:0 auto}
.architecture-visual{overflow-x:auto;scrollbar-width:thin;overscroll-behavior-inline:contain}.architecture-visual img{height:auto;aspect-ratio:1494/810;object-fit:contain}.architecture-visual:focus-visible{outline:3px solid rgba(255,90,54,.4);outline-offset:4px}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}.metric{background:#111318;color:#fff;border-radius:14px;padding:22px}.metric strong{display:block;font-size:1.95rem;letter-spacing:-.04em}.metric span{color:#bcc1c8;font-size:.9rem}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}.result{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px}.result h3{font-size:1.45rem;margin-bottom:17px}.resultgrid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.resultgrid div{background:#f7f8fa;border-radius:14px;padding:20px}.resultgrid strong{display:block;font-size:2.25rem;letter-spacing:-.05em}.resultgrid span{font-size:.9rem;color:var(--mut)}.small{font-size:.85rem;color:var(--mut)}
.period-summary{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;background:#f7f8fa;border:1px solid var(--line);border-radius:14px}.period-summary div{padding:22px 18px}.period-summary div+div{border-left:1px solid var(--line)}.period-summary strong{display:block;font-size:2rem;line-height:1;letter-spacing:-.04em;margin-bottom:8px}.period-summary span{display:block;color:var(--mut);font-size:.86rem;line-height:1.4}
.evolution-stack{display:grid;gap:14px}.period-title{font-size:1.45rem;margin:12px 0 2px}.evolution-stack>.small{margin:4px 0 0}
.comparison-stack{display:grid;gap:14px}.comparison-metrics{gap:14px}.comparison-metrics div{border:1px solid var(--line);padding:24px}
.order-proof-image{max-width:760px;margin:0 auto}.order-proof-image img{max-width:620px;margin:0 auto}.order-proof-image .caption{text-align:center}
.cta{background:#fff;border:1px solid var(--line);border-radius:24px;padding:54px;display:grid;grid-template-columns:1.3fr .7fr;gap:34px;align-items:end;box-shadow:0 18px 48px rgba(17,19,24,.06)}.cta h2{font-size:clamp(2.35rem,4.1vw,4rem)}.cta p{color:var(--mut);margin:15px 0 0}.ctar{display:flex;justify-content:flex-end}.black{background:#111318}
footer{padding:32px 0 44px;color:#7a7f87;font-size:.9rem}.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:900px){.herogrid,.grid2,.cta{grid-template-columns:1fr}.side{min-height:300px}.stats,.metrics{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}.ctar{justify-content:flex-start}}
@media(max-width:620px){.wrap{width:min(calc(100% - 24px),var(--max))}.links a:not(.btn){display:none}.hero{padding-top:20px}.herobox{border-radius:20px}.herotxt{padding:40px 24px}h1{font-size:3rem}.side{min-height:250px;padding:28px}section{padding:60px 0}.stats,.metrics,.resultgrid{grid-template-columns:1fr}.dark,.cta{padding:32px 24px}.cta .btn{width:100%}}
@media(max-width:620px){.period-summary{grid-template-columns:1fr}.period-summary div+div{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:620px){.architecture-visual{padding:12px}.architecture-visual img{width:760px;max-width:none;height:auto}}
@media(max-width:620px){.order-proof-image{padding:12px}}

/* Sony case hero — aligned with the home hero */
.sony-hero-clean{
  padding:32px 0 44px;
  position:relative;
  overflow:hidden;
}
.sony-hero-clean::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-160px;
  top:-210px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,90,54,.15) 0,rgba(255,90,54,0) 72%);
  pointer-events:none;
}
.sony-hero-box{
  min-height:520px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(250,251,253,.98)),#fff;
  border:1px solid var(--line);
  border-radius:28px;
  padding:54px 56px 42px;
  box-shadow:0 22px 60px rgba(17,19,24,.07);
}
.sony-hero-box::after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-120px;
  width:300px;
  height:300px;
  border-radius:50%;
  background:rgba(255,90,54,.08);
  pointer-events:none;
}
.sony-hero-box > *{
  position:relative;
  z-index:1;
}
.sony-hero-top{
  margin-bottom:24px;
}
.sony-hero-logo{
  width:280px;
  height:auto;
  max-height:54px;
  object-fit:contain;
  object-position:left center;
}
.sony-hero-box h1{
  max-width:1040px;
  font-size:clamp(3.75rem,5.25vw,4.65rem);
  line-height:.98;
  letter-spacing:0;
}
.sony-hero-box .lead{
  max-width:760px;
  margin:24px 0 22px;
  font-size:1.08rem;
  line-height:1.6;
}
.sony-hero-box .chips{
  width:100%;
  margin-top:6px;
  padding-top:20px;
  border-top:1px solid #e7e9ed;
}
@media(max-width:700px){
  .sony-hero-clean{padding:24px 0 28px}
  .sony-hero-box{min-height:auto;padding:38px 22px 32px;border-radius:20px}
  .sony-hero-top{margin-bottom:22px}
  .sony-hero-logo{width:210px;max-width:78%;max-height:48px}
  .sony-hero-box h1{font-size:clamp(2.5rem,11vw,3.3rem);line-height:1}
  .sony-hero-box .lead{font-size:1rem;margin:22px 0}
  .sony-hero-box .chips{gap:8px;padding-top:18px}
}
