*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

html{scroll-behavior:smooth}
body{background:#fff;color:#111;font-family:'Inter',sans-serif;font-weight:400;min-height:100vh}
footer{padding:32px 0;border-top:1px solid #eee}

.topbarCustom{background:#d40000;position:sticky;top:0;z-index:100;padding:0 16px;height:44px;display:flex;align-items:center;justify-content:space-between}
.tbLogoWrap{display:flex;align-items:center;border-right:1px solid rgba(255,255,255,.2);padding-right:16px;margin-right:16px;height:44px}
.tbLogo{font-size:13px;font-weight:600;color:#fff;letter-spacing:.04em;text-decoration:none}
.tbNav{display:flex;align-items:center;gap:0;height:44px}
.tbNav a{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.65);text-decoration:none;padding:0 14px;height:44px;display:flex;align-items:center;transition:color .15s,background .15s}
.tbNav a:hover{color:#fff;background:rgba(255,255,255,.08)}
.tbMobileOnlyLink{display:none;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.9);text-decoration:none;padding:0 12px;height:44px;align-items:center;font-weight:500}
.tbRight{display:flex;align-items:center;margin-left:auto;height:44px}
.tbStart{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff;text-decoration:none;background:rgba(255,255,255,.15);padding:6px 16px;transition:background .15s;border:none;cursor:pointer}
.tbStart:hover{background:rgba(255,255,255,.25);color:#fff}
.nickOverlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:500;align-items:center;justify-content:center;padding:20px}
.nickOverlay.open{display:flex}
.nickModal{background:#fff;border-top:3px solid #d40000;padding:40px;max-width:440px;width:100%;position:relative}
.nickModalClose{position:absolute;top:12px;right:16px;background:none;border:none;font-size:18px;color:#bbb;cursor:pointer;line-height:1}
.nickModalClose:hover{color:#111}
.nickQNum{font-size:3rem;font-weight:600;color:#d40000;line-height:1;letter-spacing:-.03em;margin-bottom:4px}
.nickRule1{border:none;border-top:1.5px solid #111;margin-bottom:4px}
.nickRule2{border:none;border-top:.5px solid #ddd;margin-bottom:20px}
.nickTitle{font-size:1rem;font-weight:600;color:#111;margin-bottom:6px}
.nickSub{font-size:12px;color:#999;line-height:1.6;margin-bottom:24px;text-align:justify}
.nickLabel{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#bbb;margin-bottom:7px;display:block}
.nickInput{width:100%;background:#fff;border:1px solid #ddd;border-bottom:2px solid #d40000;color:#111;font-family:'Inter',sans-serif;font-size:15px;font-weight:500;padding:11px 14px;outline:none;transition:border-color .2s;margin-bottom:5px;border-radius:0}
.nickInput:focus{border-bottom-color:#111}
.nickInput::placeholder{color:#ccc;font-weight:400}
.nickError{font-size:11px;color:#d40000;min-height:16px;display:block;margin-bottom:16px;letter-spacing:.02em}
.nickBtn{display:flex;align-items:center;gap:10px;background:#d40000;color:#fff;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:13px 24px;border:none;cursor:pointer;width:100%;justify-content:center;transition:background .15s}
.nickBtn:hover{background:#b80000}
.nickBtnIcon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:rgba(255,255,255,.2);font-size:10px}
.nickPrivacy{font-size:10px;color:#bbb;line-height:1.6;margin-top:14px;border-top:1px solid #f0f0f0;padding-top:12px}
.hero{background:#111;position:relative;overflow:hidden;padding:64px 0;min-height:280px;display:flex;align-items:center;text-align:center}
.heroAccent{position:absolute;left:0;top:0;bottom:0;width:5px;background:#d40000}
.heroTag{font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:14px}
.heroTitle{font-size:clamp(2.2rem,6vw,5.5rem);font-weight:600;color:#fff;line-height:.95;letter-spacing:-.02em;margin-bottom:16px}
.heroSub{font-size:13px;color:rgba(255,255,255,.45);line-height:1.7;max-width:480px;margin:0 auto 28px}
.heroBtn{display:inline-flex;align-items:center;gap:10px;background:#d40000;color:#fff;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:14px 28px;text-decoration:none;transition:background .15s}
.heroBtn:hover{background:#b80000;color:#fff}
.heroBtnIcon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:rgba(255,255,255,.2);font-size:10px}
.heroHint{margin-top:12px;font-size:10px;color:rgba(255,255,255,.22);letter-spacing:.06em}
.sectionRule1{border:none;border-top:2px solid #111;margin-bottom:1px}
.sectionRule2{border:none;border-top:.5px solid #ddd;margin-bottom:0}
.sectionHdr{padding:20px 0 14px;display:flex;align-items:baseline;gap:14px}
.sectionTitle{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#111}
.scenarioGrid{display:grid;grid-template-columns:1fr;border-top:1px solid #eee}
.scItem{padding:14px 18px;border-right:1px solid #eee;border-bottom:1px solid #eee;display:flex;align-items:flex-start;gap:12px;transition:background .15s}
.scItem:hover{background:#fafafa}
.scIdx{font-size:10px;font-weight:500;color:#ccc;letter-spacing:.06em;padding-top:2px;flex-shrink:0}
.scWrap{flex:1;min-width:0}
.scName{font-size:12px;font-weight:500;color:#222;margin-bottom:6px}
.scFig{width:100%;height:auto;display:block}
.stepsSection{background:#fafafa;border-top:1px solid #eee;border-bottom:1px solid #eee;padding:40px 0}
.stepRow{display:flex;align-items:flex-start;gap:16px;padding:16px 0;border-bottom:1px solid #eee}
.stepRow:last-child{border-bottom:none}
.stepNum{background:#d40000;color:#fff;font-size:11px;font-weight:600;width:28px;height:28px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.stepBody h6{font-size:13px;font-weight:600;color:#111;margin-bottom:4px}
.stepBody p{font-size:12px;color:#777;line-height:1.6;margin:0}
.ctaBand{background:#d40000;padding:52px 0}
.ctaBand h2{font-size:clamp(1.8rem,5vw,3.5rem);font-weight:600;color:#fff;line-height:1.1;letter-spacing:-.02em;margin-bottom:12px}
.ctaBand p{font-size:13px;color:rgba(255,255,255,.65);max-width:440px;line-height:1.7;margin-bottom:28px}
.btnCtaWhite{display:inline-flex;align-items:center;gap:10px;background:#fff;color:#d40000;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:14px 28px;text-decoration:none;transition:background .15s}
.btnCtaWhite:hover{background:#f5f5f5;color:#d40000}
.footerLogo{font-size:13px;font-weight:600;color:#111;letter-spacing:.04em}
.footerLogo span{color:#d40000}
.footerCopy{font-size:12px;color:#999;margin-top:16px}

@media(max-width:767.98px){.tbNav{display:none}.tbMobileOnlyLink{display:flex}.tbLogoWrap{border-right:none;margin-right:8px;padding-right:0}.tbStart{font-size:10px;padding:4px 10px}}
@media(min-width:480px){.scenarioGrid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:768px){.scenarioGrid{grid-template-columns:repeat(4,1fr)}}