:root{
  color-scheme:dark;
  --bg:#080a0f;--panel:#11151e;--panel2:#171c28;--line:#2d3443;
  --text:#f2f4f8;--muted:#aab2c1;--faint:#788295;--lime:#c5f447;
  --blue:#69adff;--error:#ff7b82;--max:1180px;
  font-family:system-ui,-apple-system,"Segoe UI","Noto Sans KR","Malgun Gothic",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 86% 0,#1d2940 0,transparent 34%),var(--bg);color:var(--text);line-height:1.6}
a{color:inherit}
button,input,select,textarea{font:inherit}
.skip{position:fixed;left:18px;top:-80px;z-index:100;padding:10px 14px;background:var(--lime);color:#080a0f;font-weight:800}
.skip:focus{top:16px}
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:70px;padding:12px max(24px,calc((100% - var(--max))/2));border-bottom:1px solid rgba(255,255,255,.08);background:rgba(8,10,15,.86);backdrop-filter:blur(16px)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:900;line-height:1.05}
.brand-logo{display:block;width:clamp(126px,11vw,150px);height:auto;overflow:visible;color:var(--text)}
.brand small{display:block;color:var(--faint);font:9px ui-monospace,monospace;letter-spacing:.18em}
.topbar nav{display:flex;align-items:center;gap:22px}.topbar nav a{color:var(--muted);font-size:13px;text-decoration:none}
.topbar nav a:hover{color:var(--text)}.topbar .call-mini{padding:7px 12px;border:1px solid var(--line);border-radius:9px;color:var(--text)}
main{width:min(var(--max),calc(100% - 40px));margin:auto;padding:72px 0 90px}
.intro{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end;margin-bottom:54px}
.eyebrow{margin:0 0 10px;color:var(--lime);font:11px ui-monospace,monospace;letter-spacing:.16em}
h1{margin:0;font-size:clamp(43px,6vw,74px);line-height:1.04;letter-spacing:-.055em;word-break:keep-all}h1 span{color:var(--lime)}
.lead{max-width:700px;margin:23px 0 0;color:var(--muted);font-size:18px;word-break:keep-all}
.steps{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0;border-block:1px solid var(--line)}
.steps li{padding:18px 10px;border-right:1px solid var(--line)}.steps li:last-child{border:0}
.steps b,.steps span{display:block}.steps b{color:var(--lime);font:11px ui-monospace,monospace}.steps span{margin-top:8px;font-size:13px;font-weight:750}
.quote-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}
.form-card,.side-card{border:1px solid var(--line);border-radius:18px;background:rgba(17,21,30,.92)}
.form-card{padding:clamp(24px,4vw,44px)}
.form-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.form-head h2{margin:0;font-size:28px}.form-head>span{color:var(--faint);font-size:12px}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.field{min-width:0}.field.wide{grid-column:1/-1}.field label{display:block;margin-bottom:7px;color:#dfe4ed;font-size:13px;font-weight:800}
input,select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#0b0e14;color:var(--text);padding:12px 13px;outline:none}
textarea{resize:vertical;min-height:112px}input:focus,select:focus,textarea:focus{border-color:var(--lime);box-shadow:0 0 0 3px rgba(197,244,71,.11)}
input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:var(--error)}
.field small{display:block;margin-top:5px;color:var(--faint);font-size:11px}.field small:last-child{text-align:right}
.consent{display:flex;gap:11px;margin:23px 0 0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--muted);font-size:12.5px}
.consent input{flex:0 0 auto;width:18px;height:18px;margin:2px 0}.consent b{color:var(--lime)}.consent a{text-underline-offset:3px}
.form-note{margin:13px 0 0;color:var(--faint);font-size:11.5px}
.form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.submit,.call{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:48px;padding:0 20px;border-radius:10px;font-weight:850;text-decoration:none}
.submit{border:0;background:var(--lime);color:#0b0d11;cursor:pointer}.submit:hover{filter:brightness(1.05)}.call{border:1px solid var(--line);background:transparent;color:var(--text)}
.status{min-height:1.6em;margin:10px 0 0;color:var(--lime);font-size:12px}.status.error{color:var(--error)}
aside{display:grid;gap:14px}.side-card{padding:22px}.side-card h2{margin:0 0 14px;font-size:17px}
.response{background:linear-gradient(150deg,rgba(197,244,71,.14),rgba(17,21,30,.95))}.response>b{display:block;font-size:29px;line-height:1.2;letter-spacing:-.03em}.response p:last-child{color:var(--muted);font-size:13px}
.side-card ul{list-style:none;margin:0;padding:0}.side-card li{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.06);color:var(--muted);font-size:13px}.side-card li:last-child{border:0}.side-card li span{color:var(--lime);font:10px ui-monospace,monospace}
.contact>a:first-of-type{display:block;color:var(--lime);font-size:29px;font-weight:900;text-decoration:none}.contact p{color:var(--muted);font-size:12px}.contact .email{color:var(--blue);overflow-wrap:anywhere;font-size:13px}
footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px max(24px,calc((100% - var(--max))/2));border-top:1px solid var(--line);color:var(--faint);font:11px ui-monospace,monospace}
.footer-logo{display:block;width:126px;height:auto;overflow:visible;color:var(--text)}
.noscript{position:fixed;inset:auto 16px 16px;padding:14px;background:#291417;border:1px solid var(--error);border-radius:10px}
@media(max-width:900px){.intro,.quote-layout{grid-template-columns:1fr}.intro{gap:34px}.quote-layout{max-width:760px;margin:auto}}
@media(max-width:620px){
  .topbar{align-items:flex-start}.topbar nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.topbar nav a:not(.call-mini){display:none}
  main{width:min(100% - 28px,var(--max));padding-top:48px}.lead{font-size:16px}.steps{grid-template-columns:1fr 1fr}.steps li:nth-child(2){border-right:0}.steps li:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .fields{grid-template-columns:1fr}.field.wide{grid-column:auto}.form-head{align-items:flex-start}.form-actions>*{width:100%}
  footer{display:grid}.form-card{padding:22px 18px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
