.curs-page{background:#fff;color:#111;font-family:"Source Sans 3",Arial,sans-serif}
.curs-page main{overflow-x:hidden}
.curs-page h2{color:#111}

.curs-hero{
  display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;
  max-width:1180px;margin:0 auto;padding:48px 28px 20px;position:relative
}
.curs-hero h1{
  margin:0;font-size:clamp(36px,5vw,58px);font-weight:800;letter-spacing:.02em;line-height:1.05
}
.curs-hero h1 em{font-style:normal;color:#c98a00}
.curs-kicker{
  margin:14px 0 16px;color:#c98a00;font-weight:800;letter-spacing:.08em;font-size:clamp(14px,1.6vw,18px)
}
.curs-hero p.lead{margin:0 0 22px;max-width:34rem;color:#333;font-size:17px;line-height:1.65}
.curs-feats{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}
.curs-feats span{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#222}
.curs-feats svg{width:22px;height:22px;color:#c98a00;flex:0 0 auto}
.curs-hero-visual{position:relative}
.curs-hero-visual img{width:100%;height:auto;max-height:420px;object-fit:cover;border-radius:10px;display:block}
.curs-side-quote{
  position:absolute;right:-8px;top:50%;transform:rotate(90deg) translateX(-50%);transform-origin:right center;
  color:#c98a00;font-size:11px;letter-spacing:.08em;white-space:nowrap;font-weight:600
}

.curs-block{max-width:1180px;margin:0 auto;padding:42px 28px}
.curs-title{
  margin:0 auto 28px;text-align:center;font-size:clamp(20px,2.6vw,28px);letter-spacing:.08em;font-weight:800;
  color:#111;display:flex;align-items:center;justify-content:center;gap:14px
}
.curs-title::before,.curs-title::after{
  content:"";height:1px;width:min(16vw,120px);background:linear-gradient(90deg,transparent,#c98a00)
}
.curs-title::after{background:linear-gradient(90deg,#c98a00,transparent)}
.curs-title.is-gold{color:#c98a00;background:none;width:auto;padding:0;border:0;cursor:default}

.curs-flow{
  display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-wrap:wrap
}
.curs-flow article{flex:1 1 140px;text-align:center;min-width:130px}
.curs-flow svg{width:36px;height:36px;color:#c98a00;display:block;margin:0 auto 8px}
.curs-flow p{margin:0;font-size:13px;font-weight:700;color:#222;line-height:1.35}
.curs-arrow{flex:0 0 18px;align-self:center;color:#c98a00;font-size:20px;line-height:1}

.course-grid{
  display:grid;grid-template-columns:repeat(6,1fr);gap:16px
}
.course-card{
  display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid #eee;
  border-radius:14px;overflow:hidden;box-shadow:0 8px 20px rgba(0,0,0,.05)
}
.course-card img{width:100%;height:118px;object-fit:cover;display:block}
.course-card .body{padding:12px 12px 16px;text-align:center}
.course-card svg{width:26px;height:26px;color:#c98a00;display:block;margin:0 auto 8px}
.course-card h3{margin:0 0 6px;font-size:15px}
.course-card p{margin:0;color:#555;font-size:12.5px;line-height:1.4}
a.course-card:hover{border-color:rgba(201,138,0,.45)}

.need-box{
  max-width:920px;margin:8px auto 0;border:1px solid #c98a00;border-radius:12px;padding:22px 24px;background:#fff
}
.need-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.need-copy{text-align:left}
.need-box h3{margin:0 0 6px;font-size:16px;letter-spacing:.04em;font-weight:800;color:#111}
.need-box p{margin:0;color:#333;line-height:1.55;font-size:15px}
.need-btn{
  flex:0 0 auto;width:auto;border:0;border-radius:8px;padding:12px 20px;cursor:pointer;
  background:linear-gradient(135deg,#f2c45b,#c98a00);color:#fff;font-weight:800;letter-spacing:.04em;white-space:nowrap
}
.need-form{margin-top:18px;display:grid;gap:12px;text-align:left}
.need-form.hidden{display:none}
.need-field label{display:block;font-weight:700;margin-bottom:6px;font-size:13px}
.need-field input,.need-field textarea{
  width:100%;padding:11px 12px;border:1px solid #e6d5a8;border-radius:8px;background:#fff;font:inherit
}
.need-form .need-btn{justify-self:start}
.need-form-msg{margin:4px 0 0;font-size:14px;min-height:1.2em}
.need-form-msg.is-ok{color:#11643e}
.need-form-msg.is-error{color:#8f1d14}

.lang-cols{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.lang-cols h3{margin:0 0 6px;color:#c98a00;letter-spacing:.08em;font-size:16px;text-align:center}
.lang-cols .sub{margin:0 0 18px;text-align:center;color:#555;font-size:14px}
.flag-row{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 18px}
.flag-row figure{margin:0;width:72px;text-align:center}
.flag-row img,.flag-more span{
  width:58px;height:58px;border-radius:50%;object-fit:cover;display:block;margin:0 auto;
  border:1px solid #eee;box-shadow:0 4px 12px rgba(0,0,0,.06)
}
.flag-more span{
  display:grid;place-items:center;background:#fff;color:#c98a00;font-size:18px;font-weight:700
}
.flag-row figcaption{margin-top:6px;font-size:12px;color:#222}

.curs-foot{
  background:#111;color:#ddd;padding:22px 28px;display:flex;justify-content:space-between;align-items:center;
  gap:16px;flex-wrap:wrap
}
.curs-foot .brand{display:flex;align-items:center;gap:10px;color:#c98a00;font-weight:800;letter-spacing:.12em;text-decoration:none}
.curs-foot img{width:36px;height:36px;object-fit:cover;border-radius:50%}
.curs-foot p{margin:0;font-size:13px}
.curs-foot-brand{color:#c98a00;font-weight:700;letter-spacing:.08em;font-size:11px}

.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0
}

@media (max-width:1100px){
  .course-grid{grid-template-columns:repeat(3,1fr)}
  .curs-side-quote{display:none}
}
@media (max-width:980px){
  .curs-hero,.lang-cols{grid-template-columns:1fr}
  .curs-hero-visual img{max-height:280px}
  .curs-flow{justify-content:center}
  .curs-arrow{display:none}
}
@media (max-width:700px){
  .course-grid,.curs-feats{grid-template-columns:1fr 1fr}
  .curs-hero,.curs-block,.curs-foot{padding-left:18px;padding-right:18px}
  .need-row{flex-direction:column;align-items:stretch;text-align:center}
  .need-copy{text-align:center}
  .need-btn{width:100%}
}
@media (max-width:480px){
  .course-grid,.curs-feats{grid-template-columns:1fr}
}
