
:root{
 --red:#e30613;
 --ink:#111318;
 --muted:#676c76;
 --line:#e7e8ec;
 --soft:#f6f7f9;
 --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;
 font-family:"Segoe UI","Noto Sans","Helvetica Neue",Arial,sans-serif;
 color:var(--ink);
 background:#fff;
 line-height:1.5;
 -webkit-font-smoothing:antialiased;
 text-rendering:optimizeLegibility;
}
a{text-decoration:none;color:inherit}
.wrap{width:min(1160px,calc(100% - 34px));margin:auto}
.narrow{max-width:900px}
.header{
 position:sticky;top:0;z-index:50;
 background:rgba(255,255,255,.96);
 backdrop-filter:blur(12px);
 border-bottom:1px solid rgba(0,0,0,.06)
}
.header-inner{height:72px;display:flex;align-items:center;gap:28px}
.logo{font-size:25px;font-weight:800;letter-spacing:-1px;white-space:nowrap}
.logo span{color:var(--red)}
.header nav{display:flex;gap:25px;margin-left:auto;font-size:13px;font-weight:600}
.header nav a:hover{color:var(--red)}
.header-cta{
 background:var(--red);color:#fff;padding:10px 16px;border-radius:10px;
 font-size:13px;font-weight:700
}
.hero{padding:80px 0;background:linear-gradient(180deg,#fff,#fafafa)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.eyebrow,.section-tag{
 font-size:12px;font-weight:800;letter-spacing:1.2px;color:var(--red);text-transform:uppercase
}
.hero h1{
 font-size:56px;line-height:1.04;letter-spacing:-2.6px;margin:16px 0 22px
}
.hero h1 span,.register-copy h2 span{color:var(--red)}
.lead{font-size:18px;color:var(--muted);max-width:660px}
.hero-points{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}
.hero-points span{
 border:1px solid var(--line);background:#fff;padding:8px 11px;border-radius:30px;
 font-size:12px;font-weight:600
}
.hero-actions{display:flex;gap:12px;margin-top:28px}
.btn{
 display:inline-flex;align-items:center;justify-content:center;
 padding:14px 20px;border-radius:10px;font-size:14px;font-weight:700;transition:.2s
}
.btn.primary{background:var(--red);color:#fff}
.btn.ghost{border:1px solid var(--line);background:#fff}
.btn.white{background:#fff;color:var(--red)}
.btn:hover{transform:translateY(-2px)}
.hero-visual{display:flex;justify-content:center}
.visual-card{
 width:100%;max-width:470px;background:#101217;border-radius:26px;padding:28px;
 box-shadow:0 30px 70px rgba(0,0,0,.15);color:#fff
}
.visual-logo{font-size:22px;font-weight:800}.visual-logo span{color:#ff4a53}
.visual-search{height:42px;background:#fff;border-radius:9px;color:#9a9da5;font-size:12px;padding:13px;margin:18px 0}
.visual-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.visual-grid div{background:#1b1e25;border:1px solid #292d35;border-radius:13px;padding:12px}
.visual-grid i{display:block;height:95px;background:linear-gradient(145deg,#3a3d45,#262931);border-radius:9px;margin-bottom:10px}
.visual-grid b,.visual-grid small{display:block}
.visual-grid b{font-size:12px}.visual-grid small{font-size:9px;color:#9da2ad;margin-top:3px}
.section{padding:82px 0}
.section h2{font-size:43px;line-height:1.08;letter-spacing:-1.7px;margin:14px 0 20px}
.bigtext{font-size:18px;color:var(--muted)}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:42px}
.info-grid article{border:1px solid var(--line);border-radius:16px;padding:25px}
.info-grid article>b{color:var(--red);font-size:11px}
.info-grid h3{font-size:18px;margin:22px 0 8px}
.info-grid p,.feature p{font-size:13px;color:var(--muted)}
.soft{background:var(--soft)}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:35px}
.feature{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}
.feature>span{
 width:35px;height:35px;border-radius:50%;background:#fff1f2;color:var(--red);
 display:grid;place-items:center;font-size:10px;font-weight:800
}
.feature h3{font-size:17px;margin:20px 0 8px}
.callout{padding-top:0}
.callout-card{
 background:linear-gradient(110deg,#b90009,#e30613);
 border-radius:22px;padding:40px 44px;color:#fff;
 display:flex;align-items:center;justify-content:space-between;gap:35px
}
.callout-card h2{font-size:36px;margin:12px 0}
.callout-card p{font-size:13px;color:#ffdfe1;max-width:700px}
.section-tag.light{color:#ffd1d4}
.register-section{background:#f4f5f7}
.register-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px;align-items:start}
.register-copy{position:sticky;top:105px}
.register-copy p{color:var(--muted)}
.privacy-note{
 background:#fff;border:1px solid var(--line);border-left:4px solid #1eaa63;
 border-radius:11px;padding:15px;font-size:12px;margin-top:25px
}
.register-card{
 background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;
 box-shadow:0 20px 45px rgba(0,0,0,.05)
}
.form-step-label{font-size:11px;font-weight:800;letter-spacing:1px;color:var(--red);margin-bottom:18px}
.form-step-label.second{border-top:1px solid #eee;padding-top:26px;margin-top:26px}
fieldset{border:0;padding:0;margin:0 0 26px}
legend{font-size:15px;font-weight:700;margin-bottom:11px}
.choice{
 display:flex;gap:9px;border:1px solid var(--line);padding:11px 12px;
 border-radius:10px;margin:7px 0;cursor:pointer
}
.choice:hover{border-color:#ef9aa0;background:#fffafa}
.choice input{accent-color:var(--red);margin-top:3px}
.choice b,.choice small{display:block}
.choice b{font-size:12px}.choice small{font-size:10px;color:#888d96;margin-top:2px}
.compact-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.compact-choices.three{grid-template-columns:repeat(3,1fr)}
.compact-choices input{display:none}
.compact-choices span{
 display:block;border:1px solid var(--line);border-radius:9px;padding:10px;text-align:center;
 font-size:11px;font-weight:700;cursor:pointer
}
.compact-choices input:checked+span{background:#fff0f1;border-color:var(--red);color:var(--red)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field-row label>span,.single-field>span{display:block;font-size:11px;font-weight:700;margin-bottom:6px}
.field-row input,.single-field input{
 width:100%;height:45px;border:1px solid #dfe1e5;border-radius:9px;padding:0 12px;
 font:inherit;outline:none
}
.field-row input:focus,.single-field input:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(227,6,19,.06)}
.single-field{display:block;margin-top:12px}
.consent{display:flex;gap:8px;font-size:10px;color:#666;margin:18px 0}
.consent input{accent-color:var(--red)}
.submit-btn{
 width:100%;height:52px;border:0;border-radius:10px;background:var(--red);color:#fff;
 font:inherit;font-size:13px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px
}
.submit-btn span{font-size:20px}
.form-foot{text-align:center;font-size:10px;color:#92969f}
.error-box{background:#fff0f1;color:#9c1016;padding:11px;border-radius:8px;font-size:12px;margin-bottom:16px}
.success-box{text-align:center;padding:42px 20px}
.success-icon{
 width:62px;height:62px;background:#e9f9f0;color:#169b57;border-radius:50%;
 display:grid;place-items:center;margin:0 auto 17px;font-size:27px;font-weight:800
}
.success-box p{font-size:13px;color:var(--muted)}
.footer{background:#0d0f13;color:#aeb3bc;padding:38px 0 18px}
.footer-inner{display:grid;grid-template-columns:230px 1fr auto;gap:40px;align-items:center}
.footer-logo{color:#fff}.footer-inner p{font-size:11px;margin:0}.footer-inner>a{color:#fff;font-size:11px;font-weight:700}
.legal{border-top:1px solid #252831;margin-top:22px;padding-top:16px;font-size:9px}
@media(max-width:950px){
 .header nav{display:none}
 .hero-grid,.register-grid{grid-template-columns:1fr}
 .feature-grid{grid-template-columns:1fr 1fr}
 .register-copy{position:static}
 .footer-inner{grid-template-columns:1fr}
}
@media(max-width:640px){
 .header-inner{height:66px}.logo{font-size:21px}.header-cta{font-size:11px;padding:9px 11px}
 .hero{padding:55px 0}.hero h1{font-size:39px;letter-spacing:-1.8px}.lead{font-size:15px}
 .hero-actions{flex-direction:column}.visual-card{padding:20px}.visual-grid i{height:75px}
 .section{padding:58px 0}.section h2{font-size:33px}
 .info-grid,.feature-grid{grid-template-columns:1fr}
 .callout-card{padding:30px 24px;display:block}.callout-card h2{font-size:30px}.callout-card .btn{margin-top:18px}
 .compact-choices,.compact-choices.three,.field-row{grid-template-columns:1fr 1fr}
 .register-card{padding:21px}
}


.first100-note{
 margin-top:18px;
 max-width:610px;
 padding:14px 16px;
 border-left:3px solid var(--red);
 background:#fff7f7;
 border-radius:0 10px 10px 0;
}
.first100-note span{
 display:block;
 font-size:10px;
 font-weight:800;
 letter-spacing:1px;
 color:var(--red);
 margin-bottom:4px;
}
.first100-note p{
 margin:0;
 font-size:12px;
 color:#5f636c;
 line-height:1.55;
}
