:root{
  --mm-primary:#0d3159;
  --mm-primary-dark:#082845;
  --mm-secondary:#b21f2d;
  --mm-secondary-dark:#951925;
  --mm-text:#223248;
  --mm-muted:#637083;
  --mm-light:#f7f9fc;
  --mm-soft-blue:#f2f6fa;
  --mm-border:#dde5ee;
  --mm-radius:22px;
  --mm-shadow:0 18px 45px rgba(13,49,89,.10);
}

@import url('https://fonts.googleapis.com/css2?family=Rubik:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,300;1,400;1,500;1,600;1,700&display=swap');

body{
  font-family: 'Rubik', Source Sans Pro, Arial;
  color:var(--mm-text);
  background:#fff;
  line-height:1.7;
}

h1,h2,h3.nav-link,.btn{
  font-weight:700;
  color:var(--mm-primary);
}

h1{font-size:clamp(2.1rem,4vw,4rem);line-height:1.12;letter-spacing:-.03em;}
h2{font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.2;letter-spacing:-.02em;}
h3{font-size:clamp(1.45rem,2.4vw,2.2rem);line-height:1.25;}
p{margin-bottom:1rem;}

.site-header{box-shadow:0 4px 20px rgba(13,49,89,.06);}
.site-logo{width:250px;max-width:100%;height:auto;display:block;}
.nav-link{font-size:.93rem;font-weight: bold;text-transform:uppercase;letter-spacing:.03em;color:var(--mm-primary);position:relative;padding:.75rem .2rem!important;margin-right: 15px;}
.nav-link.active,.nav-link:hover{color:var(--mm-secondary);}
.nav-link.active::after,.nav-link:hover::after{content:"";position:absolute;left:.2rem;right:.2rem;bottom:.25rem;height:2px;background:var(--mm-secondary);}

.hero-section{padding:75px 0 70px;background:linear-gradient(90deg,#fff 0%,#fff 48%,#f3f7fb 48%,#f3f7fb 100%);overflow:hidden;}
.hero-lead{font-size:1.2rem;max-width:600px;color:var(--mm-text);}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--mm-secondary);font-weight:700;font-size:.9rem;margin-bottom:.7rem;}
.eyebrow::after{content:"";display:block;width:44px;height:2px;background:var(--mm-secondary);margin-top:.55rem;}

.hero-media{min-height:420px;border-radius:var(--mm-radius);background:linear-gradient(135deg,rgba(13,49,89,.08),rgba(178,31,45,.07));box-shadow:var(--mm-shadow);display:flex;align-items:center;justify-content:center;padding:30px;position:relative;overflow:hidden;}
.hero-media::before{content:"";position:absolute;inset:auto -60px -90px auto;width:260px;height:260px;border-radius:50%;background:rgba(178,31,45,.12);}
.hero-media::after{content:"";position:absolute;inset:-80px auto auto -80px;width:240px;height:240px;border-radius:50%;background:rgba(13,49,89,.08);}
.hero-media-inner{position:relative;z-index:2;background:#fff;border:1px dashed rgba(13,49,89,.25);border-radius:18px;padding:48px;text-align:center;color:var(--mm-muted);}
.hero-media-label{display:block;font-size:1.6rem;font-weight:700;color:var(--mm-primary);margin-bottom:.35rem;}

.btn{border-radius:20px;padding:.95rem 1.45rem;text-transform:uppercase;font-size:.88rem;letter-spacing:.02em;}
.btn-primary-custom{background:var(--mm-secondary);border:1px solid var(--mm-secondary);color:#fff;box-shadow:0 12px 22px rgba(178,31,45,.18);}
.btn-primary-custom:hover{background:var(--mm-secondary-dark);border-color:var(--mm-secondary-dark);color:#fff;transform:translateY(-1px);}
.btn-outline-custom{background:#fff;border:1px solid var(--mm-secondary);color:var(--mm-secondary);}
.btn-outline-custom:hover{background:var(--mm-secondary);color:#fff;}

.section-spacing{padding:96px 0;}
.bg-soft{background:var(--mm-light);}
.bg-soft-blue{background:var(--mm-soft-blue);}
.section-title{display:flex;align-items:center;justify-content:center;gap:18px;}
.section-title span{width:54px;height:2px;background:var(--mm-secondary);display:inline-block;}
.section-title h2{font-size:1.25rem;letter-spacing:.06em;margin:0;}

.card-clean{background:#fff;border:1px solid var(--mm-border);border-radius:var(--mm-radius);box-shadow:var(--mm-shadow);overflow:hidden;}
.course-visual{height:100%;min-height:390px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff,#f5f7fa);padding:36px;}
.course-illustration{text-align:center;color:var(--mm-primary);}
.course-illustration i{font-size:9rem;opacity:.2;display:block;line-height:1;}
.course-illustration p{margin-top:20px;color:var(--mm-muted);font-weight:700;}
.course-content{padding:54px 58px;}
.course-meta li{display:flex;gap:12px;align-items:flex-start;margin-bottom:.75rem;color:var(--mm-text);}
.course-meta i{color:var(--mm-primary);font-size:1.1rem;}
.course-meta strong{margin-right:4px;color:var(--mm-primary);}

.section-img{width:100%;border-radius:20px;box-shadow:var(--mm-shadow);object-fit:cover;display:block;}
.check-list{list-style:none;padding-left:0;margin:1.4rem 0 0;}
.check-list li{position:relative;padding-left:28px;margin-bottom:.55rem;}
.check-list li::before{content:"\F26A";font-family:"bootstrap-icons";position:absolute;left:0;top:0;color:var(--mm-secondary);}

.custom-accordion{display:flex;flex-direction:column;gap:14px;}
.custom-accordion .accordion-item{border:1px solid var(--mm-border);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 10px 24px rgba(13,49,89,.06);}
.custom-accordion .accordion-button{gap:16px;font-weight:700;color:var(--mm-primary);background:#fff;padding:1.25rem 1.35rem;box-shadow:none;}
.custom-accordion .accordion-button:not(.collapsed){background:#fff;color:var(--mm-primary);}
.custom-accordion .accordion-button i{font-size:1.45rem;color:var(--mm-primary);}
.custom-accordion .accordion-body{padding:0 1.35rem 1.35rem 4.05rem;color:var(--mm-muted);}

.site-footer{background:linear-gradient(135deg,var(--mm-primary-dark),var(--mm-primary));color:#dce7f3;padding:72px 0 28px;}
.site-footer h3{color:#fff;font-size:1rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.35rem;}
.site-footer p,.site-footer li,.site-footer a{color:#dce7f3;font-size:.96rem;margin-bottom: .7rem;}
.site-footer a{text-decoration:none;}
.site-footer a:hover{color:#fff;text-decoration:underline;}
.footer-logo{width:300px;max-width:100%;}
.footer-contact li{display:flex;gap:12px;margin-bottom:.7rem;}
.footer-contact i{color:#fff;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.16);font-size:.9rem;color:#c7d4e3;}

@media (max-width:991.98px){
  .site-logo{width:220px;}
  .hero-section{padding:50px 0;background:#fff;}
  .hero-media{min-height:280px;}
  .section-spacing{padding:72px 0;}
  .course-content{padding:36px 30px;}
  .course-visual{min-height:260px;}
  .custom-accordion .accordion-body{padding-left:1.35rem;}
}

@media (max-width:575.98px){
  .section-title span{width:32px;}
  .btn{width:100%;}
  .hero-media-inner{padding:32px 24px;}
  .course-content{padding:30px 22px;}
}

.registration-section {
  padding: 90px 0;
  background: linear-gradient(180deg, var(--mm-soft-blue) 0%, #fff 100%);
}

.registration-heading {
  max-width: 760px;
  margin: 0 auto 54px;
}

.registration-heading .section-label {
  display: inline-block;
  margin-bottom: 14px;
  color: var(--mm-secondary);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .82rem;
}

.registration-heading h1 {
  color: var(--mm-primary);
  font-weight: 700;
  font-size: clamp(2.2rem, 4vw, 3.1rem);
  margin-bottom: 16px;
}

.registration-heading p {
  color: var(--mm-muted);
  font-size: 1.12rem;
  margin: 0;
}

.registration-card {
  background: #fff;
  border: 1px solid var(--mm-border);
  border-radius: var(--mm-radius);
  box-shadow: var(--mm-shadow);
  overflow: hidden;
}

.registration-form-box,
.registration-info-box {
  padding: 52px;
}

.registration-form-box h2,
.registration-info-box h2 {
  font-size: 1.45rem;
  font-weight: 800;
  color: var(--mm-primary);
  margin-bottom: 32px;
}

.registration-form-box .form-label {
  font-weight: 700;
  color: var(--mm-text);
  font-size: .95rem;
  margin-bottom: 8px;
}

.registration-form-box .form-control {
  min-height: 54px;
  border-radius: 14px;
  border: 1px solid var(--mm-border);
  color: var(--mm-text);
  padding: 13px 16px;
  box-shadow: none;
}

.registration-form-box textarea.form-control {
  min-height: 130px;
  resize: vertical;
}

.registration-form-box .form-control:focus {
  border-color: var(--mm-primary);
  box-shadow: 0 0 0 .2rem rgba(13, 49, 89, .10);
}

.registration-check {
  margin-top: 8px;
  color: var(--mm-muted);
}

.registration-check a,
.registration-check label {
  font-size: .95rem;
}

.btn-mm-primary {
  width: 100%;
  min-height: 56px;
  border-radius: 14px;
  background: var(--mm-secondary);
  border-color: var(--mm-secondary);
  color: #fff;
  font-weight: 800;
  letter-spacing: .02em;
}

.btn-mm-primary:hover,
.btn-mm-primary:focus {
  background: var(--mm-secondary-dark);
  border-color: var(--mm-secondary-dark);
  color: #fff;
}

.registration-info-box {
  height: 100%;
  background: linear-gradient(180deg, var(--mm-soft-blue) 0%, #fff 100%);
  border-left: 1px solid var(--mm-border);
}

.course-info-item {
  display: flex;
  gap: 18px;
  padding: 20px 0;
  border-bottom: 1px solid var(--mm-border);
}

.course-info-icon {
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  border-radius: 50%;
  background: #fff;
  color: var(--mm-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 25px rgba(13, 49, 89, .08);
}

.course-info-item strong {
  display: block;
  color: var(--mm-primary);
  font-weight: 800;
  margin-bottom: 4px;
}

.course-info-item p {
  margin: 0;
  color: var(--mm-muted);
}

.registration-note {
  margin-top: 32px;
  padding: 24px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid var(--mm-border);
}

.registration-note strong {
  display: block;
  color: var(--mm-primary);
  margin-bottom: 8px;
}

.registration-note p {
  margin: 0;
  color: var(--mm-muted);
}

@media (max-width: 991.98px) {
  .registration-section {
    padding: 70px 0;
  }

  .registration-form-box,
  .registration-info-box {
    padding: 36px;
  }

  .registration-info-box {
    border-left: 0;
    border-top: 1px solid var(--mm-border);
  }
}

@media (max-width: 575.98px) {
  .registration-form-box,
  .registration-info-box {
    padding: 28px 22px;
  }

  .registration-heading {
    margin-bottom: 36px;
  }
}

.color11 {
  color: var(--mm-secondary);
}

.color10 {
  color: var(--mm-primary);
}
