.registration-intro{background:var(--navy);color:#fff;padding:56px 0 48px}
.registration-intro-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.registration-intro h1{font-size:clamp(3rem,5.5vw,5.9rem);line-height:1.02}
.registration-intro h1 span{color:var(--lime)}
.registration-intro-copy>p:not(.eyebrow){font-size:1.125rem;line-height:1.65;color:#d7e7ef;max-width:520px;margin-top:22px}
.registration-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:28px}
.registration-intro figure{margin:0;min-width:0}
.registration-intro figure img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:5px}
.registration-intro figcaption{font-size:.875rem;color:#bdced9;margin-top:10px}
.registration-section{padding:76px 0}
.registration-section h2{font-size:clamp(2.4rem,4.1vw,4.1rem);line-height:1.03}
.registration-start,.registration-faq,.registration-place-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.registration-start>div>p:not(.eyebrow){margin-top:22px}
.registration-email{display:inline-block;font-size:1.125rem;font-weight:700;color:#087cb9;border-bottom:1px solid currentColor;overflow-wrap:anywhere;margin-top:20px}
.registration-steps{list-style:none;padding:0;margin:0;display:grid;gap:25px}
.registration-steps li{display:flex;gap:18px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.registration-steps li>span{color:#087cb9;font-family:var(--display);font-weight:800;font-size:2.1rem;line-height:1.1}
.registration-steps h3{font-size:1.2rem;margin-bottom:7px;line-height:1.3}
.registration-steps p{color:var(--muted)}
.registration-groups{background:var(--paper)}
.registration-section-heading{max-width:790px;margin-bottom:30px}
.registration-section-heading>p:not(.eyebrow){margin-top:20px}
.registration-categories{list-style:none;padding:0;margin:0 0 27px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.registration-categories a{display:block;height:100%;background:#fff;border:1px solid var(--line);border-left:4px solid var(--blue);padding:24px;transition:border-color .2s}
.registration-categories a:hover{border-color:var(--blue)}
.registration-categories strong{display:block;font-family:var(--display);font-size:1.8rem;font-weight:700;line-height:1.2}
.registration-categories span{display:block;font-size:.9375rem;color:var(--muted);margin-top:8px}
.registration-training{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.registration-training article{padding:28px;background:var(--paper);border-top:4px solid var(--lime)}
.registration-training article>p{font-size:.875rem;font-weight:700;letter-spacing:.04em;color:var(--muted)}
.registration-training strong{display:block;color:var(--navy);font-family:var(--display);font-weight:800;font-size:clamp(2.5rem,4vw,3.7rem);line-height:1.2;margin:12px 0}
.registration-training h3{font-size:1.125rem;font-weight:600;line-height:1.5}
.registration-note{font-size:.9375rem;color:var(--muted);margin:18px 0}
.registration-place{color:#fff;background:var(--navy)}
.registration-place h2 span{color:var(--lime)}
.registration-place h3{font-size:1.35rem;margin:24px 0 6px}
.registration-place .button{margin-top:25px}
.registration-place-copy p{color:#d7e7ef;margin-bottom:22px}
.registration-place-copy small{display:block;font-size:.875rem;color:#bdced9}
.registration-final{background:var(--lime);padding:50px 0;text-align:center}
.registration-final h2{font-size:clamp(2.1rem,3.7vw,3.8rem);line-height:1.1}
.registration-final p{margin:14px 0 22px}
@media(max-width:900px){.registration-intro-grid{gap:26px}.registration-start,.registration-faq,.registration-place-grid{gap:32px}.registration-categories{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.registration-intro{padding:32px 0}.registration-intro-grid,.registration-start,.registration-faq,.registration-place-grid,.registration-training{grid-template-columns:minmax(0,1fr);gap:28px}.registration-intro h1{font-size:clamp(2.65rem,11vw,3.6rem)}.registration-intro figure img{aspect-ratio:16/10}.registration-intro-copy>p:not(.eyebrow){font-size:1rem;margin-top:16px}.registration-actions{gap:18px;margin-top:22px}.registration-actions .button{width:100%}.registration-section{padding:44px 0}.registration-section h2{font-size:clamp(2.1rem,8.5vw,2.8rem)}.registration-categories{grid-template-columns:minmax(0,1fr);gap:12px}.registration-categories a{padding:18px}.registration-categories strong{font-size:1.6rem}.registration-email{font-size:1rem}.registration-training article{padding:22px}.registration-final{padding:36px 0}.registration-final .button{width:100%}}
