:root{
  --red:#E30313;
  --bg:#FFFFFF;
  --bg-secondary:#F5F5F7;
  --text-dark:#1D1D1F;
  --text-gray:#86868B;
  --radius-card:20px;
  --radius-btn:30px;
  --shadow-card:0 4px 12px rgba(0,0,0,0.08);
  --max-width:1140px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Apple SD Gothic Neo","Malgun Gothic","Segoe UI",Helvetica,Arial,sans-serif;
  color:var(--text-dark);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
h1,h2,h3,p,ul,ol{margin:0;}
ul,ol{padding:0;list-style:none;}
a{color:inherit;text-decoration:none;}
.container{max-width:var(--max-width);margin:0 auto;padding:0 24px;}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  border-radius:var(--radius-btn);
  padding:16px 32px;
  font-size:16px;
  font-weight:600;
  border:none;
  cursor:pointer;
  transition:transform .15s ease, opacity .15s ease;
  white-space:nowrap;
}
.btn:active{transform:scale(0.97);}
.btn-primary{background:var(--red);color:#fff;}
.btn-primary:hover{opacity:0.9;}
.btn-secondary{background:#fff;color:var(--text-dark);border:1px solid #d2d2d7;}
.btn-secondary:hover{background:#fafafa;}
.btn-white{background:#fff;color:var(--red);}
.btn-white:hover{opacity:0.9;}
.btn-large{padding:18px 40px;font-size:18px;}
.btn-full{width:100%;}

.check-list li{
  position:relative;
  padding-left:26px;
  margin-bottom:12px;
  font-size:15px;
  color:var(--text-dark);
}
.check-list li::before{
  content:"✓";
  position:absolute;left:0;top:0;
  color:var(--red);
  font-weight:700;
}

.section-title{
  font-size:clamp(24px,4vw,36px);
  font-weight:700;
  text-align:center;
  letter-spacing:-0.02em;
  line-height:1.35;
}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease, transform .6s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
