:root{--navy:#071b3b;--blue:#1769e8;--sky:#eaf3ff;--ice:#f7faff;--cyan:#61d5f4;--text:#10213b;--muted:#5e6b80;--line:#dbe5f2;--white:#fff;--shadow:0 24px 70px rgba(23,76,145,.16)}
.hero>*{min-width:0}.hero-visual{width:100%}.workspace-card{max-width:100%}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;color:var(--text);font-family:"Helvetica Neue","Hiragino Sans","Noto Sans JP",sans-serif;background:var(--white);line-height:1.75;overflow-x:hidden}a{color:inherit}.skip-link{position:fixed;left:-9999px;top:1rem;background:#fff;padding:.7rem 1rem;z-index:100}.skip-link:focus{left:1rem}
.site-header{height:80px;padding:0 clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);z-index:20;border-bottom:1px solid rgba(7,27,59,.08)}.brand{display:flex;align-items:center}.brand img{display:block;width:152px;height:auto}nav{display:flex;align-items:center;gap:clamp(18px,2vw,34px)}nav a{font-size:.82rem;font-weight:700;text-decoration:none;white-space:nowrap}nav a:not(.nav-cta):hover{color:var(--blue)}.nav-cta{padding:.72rem 1.25rem;background:var(--blue);color:#fff;border-radius:999px}.menu-button{display:none}
.hero{min-height:calc(100vh - 80px);padding:clamp(70px,8vw,130px) clamp(24px,7vw,110px);display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);gap:6vw;align-items:center;overflow:hidden;background:radial-gradient(circle at 90% 5%,#d9edff 0,transparent 30%),linear-gradient(145deg,#fff 0%,#f3f8ff 100%)}.eyebrow{margin:0 0 1rem;color:var(--blue);font-weight:800;font-size:.72rem;letter-spacing:.2em}.hero h1{font-size:clamp(3rem,6.4vw,6.8rem);line-height:1.08;letter-spacing:-.065em;margin:.18em 0 .35em;color:var(--navy)}.hero-line{display:inline-block;white-space:nowrap}h1 em,h2 em{font-style:normal;color:var(--blue)}.lead{max-width:650px;font-size:clamp(1rem,1.35vw,1.25rem);color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:3rem;min-width:215px;padding:1rem 1.3rem;text-decoration:none;font-weight:800;border-radius:8px;transition:.2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--blue);color:white;box-shadow:0 14px 35px rgba(23,105,232,.25)}.text-link{font-weight:700;text-underline-offset:5px}.microcopy{font-size:.75rem;color:var(--muted)}
.hero-visual{position:relative;min-height:520px;display:grid;place-items:center}.glow{position:absolute;width:480px;height:480px;border-radius:50%;background:linear-gradient(145deg,#b6dcff,#e5f3ff)}.workspace-card{position:relative;width:min(100%,520px);padding:1.5rem;background:rgba(255,255,255,.94);border:1px solid #d9e7f7;border-radius:20px;box-shadow:var(--shadow);transform:rotate(-2deg)}.card-top{display:flex;align-items:center;gap:.8rem;padding-bottom:1.2rem;border-bottom:1px solid var(--line)}.avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--blue);color:white;font-size:.7rem;font-weight:900}.card-top div{display:grid}.card-top small,.task small{color:var(--muted)}.card-top i{margin-left:auto;color:#36c886;font-style:normal}.brief{display:grid;gap:.4rem;margin:1.2rem 0;padding:1.2rem;border-radius:12px;background:var(--navy);color:white}.brief small{color:#91baf6;letter-spacing:.12em}.progress{height:5px;margin-top:.5rem;background:#274166;border-radius:8px}.progress span{display:block;width:68%;height:100%;background:var(--cyan);border-radius:8px}.task{display:grid;grid-template-columns:32px 1fr auto;gap:.7rem;align-items:center;padding:1rem .4rem;border-bottom:1px solid var(--line)}.task>span{display:grid;place-items:center;width:28px;height:28px;background:var(--sky);color:var(--blue);border-radius:8px}.task div{display:grid}.task em{font-size:.65rem;font-style:normal;color:#73520b;background:#fff2cb;border-radius:10px;padding:.2rem .55rem}.task em.working{color:#075e44;background:#dff9ed}.float-note{position:absolute;right:-20px;bottom:40px;display:grid;grid-template-columns:36px 1fr;gap:0 .7rem;align-items:center;background:#fff;padding:1rem 1.2rem;border-radius:14px;box-shadow:var(--shadow)}.float-note>span{grid-row:span 2;display:grid;place-items:center;width:36px;height:36px;background:var(--blue);color:#fff;border-radius:50%}.float-note small{color:var(--muted)}
.section-shell{max-width:1320px;margin:auto;padding:clamp(80px,9vw,140px) clamp(24px,6vw,80px)}.problem{background:var(--navy);color:white}.problem h2,.concept h2,.features h2,.usecases h2,.start h2{font-size:clamp(2.4rem,4.4vw,5rem);line-height:1.25;letter-spacing:-.045em;margin:.25em 0}.problem .eyebrow,.features .eyebrow{color:#75b5ff}.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:4rem;background:#294364}.problem-grid p{margin:0;padding:2rem;background:var(--navy);font-weight:700}.problem-grid p:before{content:"／";display:block;color:var(--cyan);font-size:1.4rem;margin-bottom:1rem}
.section-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:7vw;align-items:end}.section-heading>p{color:var(--muted);margin-bottom:.7rem}.role-board{margin-top:5rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:clamp(24px,4vw,60px);background:var(--ice);border:1px solid var(--line);border-radius:24px}.role{padding:2rem}.role span{color:var(--blue);font-size:.72rem;font-weight:900;letter-spacing:.15em}.role h3{font-size:1.7rem;margin:.4rem 0}.role p{color:var(--muted);font-weight:600}.role.ai{background:var(--blue);color:white;border-radius:18px}.role.ai span,.role.ai p{color:#dceaff}.handoff{display:grid;gap:.4rem;text-align:center;color:var(--blue);padding:2rem}.handoff i{font-size:2rem;font-style:normal}.handoff b{max-width:130px;font-size:.75rem}
.features{background:linear-gradient(155deg,#071b3b,#0b2c62);color:white}.light-heading>p{color:#b8c8dd}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:5rem;border-top:1px solid #31517d}.feature-grid article{position:relative;padding:2.4rem 2rem;border-right:1px solid #31517d}.feature-grid article:first-child{padding-left:0}.feature-grid article>span{color:#6d8eb8;font:italic 1.1rem Georgia}.feature-icon{margin:2.8rem 0 2rem;display:grid;place-items:center;width:54px;height:54px;border-radius:15px;background:#163d74;color:var(--cyan);font-size:1.4rem}.feature-grid h3{font-size:1.2rem}.feature-grid p{color:#b8c8dd;font-size:.9rem}
.usecases>h2{max-width:800px}.case-list{margin-top:4rem;border-top:1px solid var(--line)}.case-list article{position:relative;display:grid;grid-template-columns:1fr 1.1fr 1.3fr;gap:3vw;align-items:start;padding:2.7rem 4rem 2.7rem 0;border-bottom:1px solid var(--line)}.case-list article>span{color:var(--blue);font-weight:800;font-size:.8rem}.case-list h3{margin:0;font-size:1.4rem;line-height:1.55}.case-list p{margin:0;color:var(--muted)}.case-list b{position:absolute;right:0;top:2.5rem;color:#b8c8d8;font:italic 1rem Georgia}.start{background:var(--sky)}.start .section-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw}.start>div>div>p:last-child{color:var(--muted);max-width:520px}.start ol{list-style:none;margin:0;padding:0}.start li{display:grid;grid-template-columns:55px 1fr;gap:1rem;padding:1.7rem 0;border-bottom:1px solid #c8dcf6}.start li span{color:var(--blue);font-weight:900}.start li b{font-size:1.1rem}.start li p{margin:.3rem 0;color:var(--muted)}
.contact{position:relative;overflow:hidden;text-align:center;background:var(--blue);color:white;padding:clamp(90px,10vw,155px) 24px}.contact .eyebrow{color:#bce8ff}.contact h2{font-size:clamp(2.7rem,5.2vw,5.7rem);line-height:1.2;letter-spacing:-.055em;margin:.35em}.contact p:not(.eyebrow){color:#dceaff}.white{position:relative;background:white;color:var(--blue);margin-top:1.5rem}.contact-orb{position:absolute;width:600px;height:600px;border:1px solid rgba(255,255,255,.2);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.contact-orb:after{content:"";position:absolute;inset:80px;border:1px solid rgba(255,255,255,.15);border-radius:50%}footer{min-height:120px;padding:2.5rem clamp(24px,5vw,76px);display:flex;align-items:center;gap:3rem}footer div{margin-left:auto;display:flex;gap:2rem}footer div a{font-size:.75rem;color:var(--muted)}footer p{font-size:.72rem;color:var(--muted)}
@media(max-width:960px){.site-header{height:68px}.brand img{width:132px}.menu-button{display:grid;grid-template-columns:22px auto;align-items:center;column-gap:.5rem;border:0;background:none;padding:.5rem}.menu-button span{grid-column:1;width:22px;height:2px;background:var(--navy);margin:2px 0}.menu-button b{grid-column:2;grid-row:1/4;font-size:.7rem}.site-header nav{display:none;position:absolute;top:68px;left:0;right:0;padding:1.5rem 24px;background:#fff;box-shadow:0 15px 35px rgba(7,27,59,.12);flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.hero{min-height:auto;grid-template-columns:1fr;padding-top:70px}.hero-visual{min-height:440px}.float-note{right:0}.problem-grid,.feature-grid{grid-template-columns:repeat(2,1fr)}.feature-grid article:nth-child(2){border-right:0}.section-heading{grid-template-columns:1fr}.case-list article{grid-template-columns:1fr 1fr}.case-list p{grid-column:2}.start .section-shell{grid-template-columns:1fr}.role-board{grid-template-columns:1fr}.handoff{grid-auto-flow:column;justify-content:center}.handoff i{transform:rotate(90deg)}footer{flex-wrap:wrap}}
@media(max-width:620px){html{scroll-padding-top:68px}.hero{padding:58px 24px 70px}.hero h1{font-size:clamp(2rem,10.5vw,4rem)}.hero-actions{align-items:flex-start;flex-direction:column;gap:1rem}.button{width:100%}.hero-visual{min-height:390px}.glow{width:330px;height:330px}.workspace-card{padding:1rem}.float-note{bottom:5px;max-width:285px}.task{grid-template-columns:30px 1fr}.task em{display:none}.problem-grid,.feature-grid{grid-template-columns:1fr}.problem-grid p{padding:1.3rem}.feature-grid article{border-right:0;border-bottom:1px solid #31517d;padding:2rem 0}.role{padding:1.2rem}.case-list article{grid-template-columns:1fr;padding:2rem 2.5rem 2rem 0}.case-list p{grid-column:1}.contact h2{margin:.4em 0}.contact .button{max-width:330px}footer{align-items:flex-start;flex-direction:column;gap:1.2rem}footer div{margin:0;flex-direction:column;gap:.6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
