@import url('../shared/kuny-design-system.css');
:root{font-family:"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;color:#edf4ef;background:#08110f;--ink:#edf4ef;--muted:#9eada5;--line:#33443d;--lime:#ddef70;--surface:#14201c}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 78% 8%,#244238 0,transparent 35%),linear-gradient(135deg,#07100e,#0e1a16);display:grid;place-items:center}
main{width:min(1480px,100%);min-height:100vh;padding:42px 5vw;display:grid;align-content:space-between;gap:34px}
header{display:flex;justify-content:space-between;align-items:center}
.brand{color:var(--ink);text-decoration:none;font-size:1.35rem;font-weight:800;letter-spacing:.1em}
.brand span{font-size:.72rem;color:var(--muted);font-weight:500;margin-left:14px}
nav{display:flex;gap:8px}
button{font:inherit}
nav button{color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:99px;min-height:44px;padding:0 18px}
nav button[aria-pressed=true]{background:var(--ink);color:#0b1512}
.hero{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:34px}
.hero small,.profiles>div>small{color:var(--lime);letter-spacing:.16em}
.hero h1{font-size:clamp(3rem,7vw,7.7rem);line-height:1.02;max-width:1100px;margin:.18em 0;font-weight:600}
.hero p{color:var(--muted);font-size:1.2rem}
.hero aside{min-width:260px;border-left:1px solid var(--line);padding:24px;display:grid;grid-template-columns:auto 1fr;gap:7px 12px}
.hero aside small{color:var(--muted);grid-column:2}
.pulse{width:12px;height:12px;border-radius:50%;background:#e16a55;box-shadow:0 0 0 7px #e16a5522;margin-top:6px}
.operational .pulse{background:var(--lime);box-shadow:0 0 0 7px #ddef7022}
.facts{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line)}
.facts article{padding:22px;border-right:1px solid var(--line)}
.facts article:last-child{border:0}
.facts small{color:var(--muted);display:block}
.facts strong{font-size:2.1rem}
.profiles{display:grid;grid-template-columns:1.15fr repeat(3,1fr);gap:12px}
.profiles>div{padding:20px 20px 20px 0}
.profiles h2{font-size:2rem;margin:.3em 0}
.profiles p{color:var(--muted)}
.profiles button{position:relative;text-align:left;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:22px;min-height:210px;display:grid;grid-template-columns:1fr auto;gap:8px;transition:.2s}
.profiles button:not(:disabled):hover,.profiles button:not(:disabled):focus-visible{border-color:var(--lime);transform:translateY(-5px)}
.profiles button:disabled{opacity:.45}
.profiles button span{color:var(--muted)}
.profiles button i{width:52px;height:52px;border-radius:50%;background:var(--lime);color:#14201c;display:grid;place-items:center;font-style:normal;font-size:1.5rem}
.profiles button strong,.profiles button small,.profiles button b{grid-column:1/-1}
.profiles button strong{font-size:1.5rem}
.profiles button small{color:var(--muted)}
.profiles button b{align-self:end;font-weight:500}
footer{border-top:1px solid var(--line);padding-top:20px;color:var(--muted);display:flex;justify-content:space-between}
@media(max-width:950px){main{padding:26px}
.hero{grid-template-columns:1fr}
.profiles{grid-template-columns:1fr 1fr}
.profiles>div{grid-column:1/-1}
.facts{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:600px){.brand span{display:none}
.hero h1{font-size:3rem}
.profiles,.facts{grid-template-columns:1fr}
.facts article{border-right:0;border-bottom:1px solid var(--line)}
footer{display:grid;gap:8px}
}
.hero{grid-template-columns:minmax(0,1fr) minmax(260px,360px);align-items:center;gap:clamp(28px,5vw,76px)}
.hero h1{font-size:clamp(3rem,6.3vw,7rem);max-width:1000px}
.connection-art{margin:0;min-width:0!important;border:1px solid #806d50!important;padding:0!important;display:block!important;background:#ead9bd;box-shadow:0 28px 80px #0008}
.connection-art img{display:block;width:100%;height:auto;min-height:0;aspect-ratio:1122/1402;object-fit:contain;background:#ead9bd}
.readiness{padding:18px 20px;display:grid;grid-template-columns:auto 1fr;gap:7px 12px;border-top:1px solid var(--line)}
.readiness small{color:var(--muted);grid-column:2}
@media(max-width:950px){.hero{grid-template-columns:minmax(0,1fr) minmax(220px,300px)}}
@media(max-width:720px){.hero{grid-template-columns:1fr}.connection-art{width:min(100%,340px);justify-self:center}}
.text-action{border:0!important;background:transparent!important;color:var(--lime)!important;padding:0!important;min-height:auto!important;text-align:left;text-decoration:underline;justify-self:start}
dialog{width:min(560px,calc(100% - 32px));border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:0;box-shadow:0 30px 100px #000b}dialog::backdrop{background:#020806cc;backdrop-filter:blur(4px)}dialog form{display:grid;gap:18px;padding:34px}dialog h2,dialog p{margin:0}dialog label{display:grid;gap:8px}dialog input,dialog select{min-height:48px;background:#07110e;color:var(--ink);border:1px solid var(--line);padding:10px 12px}.dialog-close{position:absolute;right:12px;top:8px;border:0;background:transparent;color:var(--muted);font-size:1.7rem}#reset-response,#company-error{padding:12px;border-left:3px solid var(--lime);background:#ddef7010}#company-error{color:#ff927e;border-color:#ff927e}
.login-heading,#login-form,#login-form label{min-width:0;max-width:100%}#login-form input,#login-submit{width:100%;min-width:0;max-width:100%}
@media(max-width:850px){.hero{grid-template-columns:minmax(0,1fr)}.connection-art{width:min(100%,340px);justify-self:center}}
