/* style.css
   Universal professional palette:
   - Deep navy: #0a2540
   - Teal accent: #007c91
   - Slate gray (muted text): #6b7280
   - Neutral light background: #f4f7fb
   - CTA green: #2d9c59
*/

:root{
  --navy:#0a2540;
  --teal:#007c91;
  --muted:#6b7280;
  --bg:#f4f7fb;
  --accent:#2d9c59;
  --white:#ffffff;
  --card-shadow: 0 6px 30px rgba(10,37,64,0.08);
  --max-width:1100px;
  --radius:10px;
  --gap:18px;
  --container-padding:20px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  background:var(--bg);
  color:#102029;
  margin:0;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.55;
}

/* container */
.container{
  width:100%;
  max-width:var(--max-width);
  margin:0 auto;
  padding:0 var(--container-padding);
}

/* header */
.site-header{
  background:var(--white);
  border-bottom:1px solid #e6eef3;
  position:sticky;
  top:0;
  z-index:60;
}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
}
.logo img{display:block}

/* nav */
.nav a{
  margin-left:16px;
  text-decoration:none;
  color:var(--navy);
  font-weight:600;
  font-size:0.95rem;
}
.nav a.btn.small{
  margin-left:22px;
  padding:8px 12px;
  border-radius:8px;
  background:var(--teal);
  color:white;
}

/* hero */
.hero{
  background:linear-gradient(120deg, rgba(10,37,64,0.95), rgba(0,124,145,0.95));
  color:var(--white);
  padding:64px 0;
  text-align:left;
}
.hero .container{display:flex;flex-direction:column;gap:12px}
.hero h1{font-size:2.1rem;margin:0 0 6px;font-weight:700}
.hero .lead{opacity:0.95;margin-bottom:14px}
.hero-ctas a{margin-right:12px;text-decoration:none}
.btn{
  display:inline-block;
  background:var(--accent);
  color:var(--white);
  padding:12px 18px;
  border-radius:9px;
  text-decoration:none;
  font-weight:700;
  box-shadow: 0 6px 16px rgba(45,156,89,0.12);
}
.btn.ghost{
  background:transparent;
  color:var(--white);
  border:2px solid rgba(255,255,255,0.12);
}
.btn.small{padding:8px 12px}

/* sections */
section{padding:36px 0}
.about p, .course-desc {max-width:760px}
.muted{color:var(--muted)}
.small{font-size:0.95rem}

/* course card */
.course-card{
  background:var(--white);
  border-radius:var(--radius);
  box-shadow:var(--card-shadow);
  padding:20px;
  margin-top:18px;
}
.course-meta h3{margin:0 0 6px}
.course-actions{margin-top:10px}
.course-actions .btn.ghost{background:transparent;color:var(--navy);border:1px solid #d6e6ea}

/* payment box */
.payment-box{
  margin-top:16px;
  padding:12px;
  border-left:4px solid var(--teal);
  background:linear-gradient(180deg,#ffffff,#fbfeff);
  border-radius:8px;
}
.payment-list{margin:6px 0 0 18px}

/* testimonials */
.test-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:16px;
  margin-top:12px;
}
.testimonial{
  background:var(--white);
  padding:16px;
  border-radius:10px;
  box-shadow:var(--card-shadow);
  font-style:italic;
}
.testimonial footer{
  margin-top:10px;
  text-align:right;
  font-style:normal;
  color:var(--muted);
}

/* register form */
.form-card{background:var(--white);padding:22px;border-radius:10px;box-shadow:var(--card-shadow);max-width:780px}
.form-card label{display:block;margin-bottom:12px}
.form-card input, .form-card textarea{
  width:100%;
  padding:10px;
  border-radius:8px;
  border:1px solid #e1e7ea;
  font-size:1rem;
  margin-top:8px;
}
.form-actions{display:flex;gap:10px;align-items:center;margin-top:12px}

/* footer */
.site-footer{padding:22px 0;background:transparent;border-top:1px solid #e6eef3;margin-top:28px}
.site-footer p{margin:6px 0;color:var(--muted)}

/* responsive */
@media (max-width:720px){
  .header-inner{flex-direction:row;gap:8px}
  .nav{display:none}
  .hero{padding:40px 0}
  .hero h1{font-size:1.5rem}
}
