

:root { --blue:#0b479f; --blue-dark:#072d68; --sky:#0c99d5; --yellow:#ffc62f; --coral:#ef4a3b; --cream:#f7f5ee; --ink:#12213a; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:132px; max-width:1280px; margin:auto; padding:0 42px; display:flex; align-items:center; justify-content:space-between; background:#fff; }
.brand img { width:280px; height:124px; object-fit:contain; object-position:left center; image-rendering:auto; }
nav { display:flex; gap:34px; align-items:center; font-size:14px; font-weight:700; }
.nav-cta { padding:13px 20px; background:var(--blue); color:white; border-radius:99px; }
.hero { position:relative; min-height:680px; background:var(--cream); overflow:hidden; display:grid; grid-template-columns:53% 47%; }
.hero-photo { background:url('/school-building.jpg') center/cover no-repeat; min-height:680px; clip-path:ellipse(85% 93% at 15% 46%); }
.hero-copy { align-self:center; padding:74px 8vw 64px 3vw; position:relative; z-index:2; }
.eyebrow,.section-kicker { display:inline-flex; color:var(--blue); font-size:12px; letter-spacing:.12em; text-transform:uppercase; font-weight:800; }
.eyebrow:before,.section-kicker:before { content:""; width:28px; height:3px; background:var(--yellow); margin:6px 10px 0 0; }
h1 { font-size:clamp(46px,5.4vw,80px); line-height:.98; letter-spacing:-.055em; margin:26px 0; color:var(--blue-dark); max-width:650px; }
h1 em { color:var(--coral); font-style:normal; display:block; }
.hero-copy>p { font-size:19px; line-height:1.65; color:#536075; max-width:550px; }
.hero-actions { display:flex; gap:25px; align-items:center; margin:34px 0 38px; flex-wrap:wrap; }
.primary-btn { background:var(--blue); color:white; padding:17px 25px; border-radius:6px; font-weight:800; box-shadow:0 12px 28px rgba(11,71,159,.2); }
.primary-btn span,.registration-form button span { margin-left:15px; }
.text-link { font-weight:800; color:var(--blue); border-bottom:2px solid var(--yellow); padding-bottom:4px; }
.trust-row { display:flex; gap:34px; font-size:13px; color:#667185; }
.trust-row span { border-left:3px solid var(--yellow); padding-left:10px; }
.trust-row strong { color:var(--blue-dark); display:block; font-size:15px; }
.intro { max-width:1200px; margin:auto; padding:110px 42px 58px; display:grid; grid-template-columns:1.2fr .8fr; gap:80px; align-items:end; }
.intro h2,.registration h2 { font-size:clamp(38px,4vw,60px); line-height:1.07; letter-spacing:-.045em; color:var(--blue-dark); margin:18px 0 0; }
.intro>p { line-height:1.85; color:#5d687a; font-size:17px; margin:0; border-left:1px solid #dce2ea; padding-left:35px; }
.strengths { max-width:1200px; margin:auto; padding:10px 42px 110px; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.strengths article { position:relative; padding:38px 32px 36px; min-height:330px; border:1px solid #e3e8ef; border-radius:10px; background:#fff; transition:.25s; }
.strengths article:hover { transform:translateY(-6px); box-shadow:0 20px 50px rgba(13,48,101,.09); }
.number { position:absolute; right:25px; top:25px; font-size:12px; color:#9aa5b6; font-weight:800; letter-spacing:.1em; }
.card-icon { width:55px; height:55px; background:var(--sky); color:white; border-radius:50%; display:grid; place-items:center; font-size:27px; margin-bottom:50px; }
.card-icon.yellow { background:var(--yellow); color:var(--blue-dark); }
.card-icon.coral { background:var(--coral); }
.strengths h3 { color:var(--blue-dark); font-size:23px; margin:0 0 15px; }
.strengths p { color:#657084; line-height:1.65; margin:0; }
.registration { background:var(--blue); color:white; padding:100px max(42px,calc((100vw - 1120px)/2)); display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; align-items:center; }
.section-kicker.light { color:#a9d7ff; }
.registration h2 { color:white; }
.registration-copy>p { line-height:1.75; color:#d0def2; font-size:17px; }
.contact-card { margin-top:35px; border-left:3px solid var(--yellow); padding-left:18px; display:flex; flex-direction:column; gap:5px; color:#c8d8ef; font-size:13px; }
.contact-card a { color:white; font-size:18px; font-weight:800; }
.registration-form { background:white; color:var(--ink); padding:34px; border-radius:12px; box-shadow:0 25px 70px rgba(0,0,0,.18); }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
label { display:flex; flex-direction:column; gap:8px; font-size:13px; font-weight:800; margin-bottom:17px; }
label small { font-weight:400; color:#7d8797; }
input,select,textarea { border:1px solid #dbe1e9; border-radius:6px; padding:13px 14px; font:inherit; font-weight:400; color:var(--ink); background:#fafbfc; outline:none; }
input:focus,select:focus,textarea:focus { border-color:var(--sky); box-shadow:0 0 0 3px rgba(12,153,213,.12); }
textarea { resize:vertical; }
.consent { flex-direction:row; align-items:flex-start; font-weight:400; color:#657084; line-height:1.45; }
.consent input { width:17px; height:17px; margin:2px 2px 0 0; }
.registration-form button { border:0; width:100%; padding:16px; background:var(--coral); color:white; border-radius:6px; font:inherit; font-weight:800; cursor:pointer; }
.form-note { text-align:center; color:#7c8797; font-size:12px; margin:13px 0 0; }
.form-success { display:flex; gap:18px; align-items:center; background:white; color:var(--ink); padding:45px 35px; border-radius:12px; }
.form-success>span { width:50px; height:50px; border-radius:50%; display:grid; place-items:center; color:white; background:#2caf66; font-size:24px; }
.form-success strong { color:var(--blue-dark); font-size:20px; }
.form-success p { margin:6px 0 0; color:#657084; }
footer { max-width:1200px; margin:auto; padding:60px 42px 28px; display:grid; grid-template-columns:2fr 1fr 1fr; gap:35px; color:#657084; font-size:14px; line-height:1.6; }
.footer-brand img { width:225px; height:112px; object-fit:contain; object-position:left center; image-rendering:auto; }
footer strong { color:var(--blue-dark); }
.copyright { grid-column:1/-1; border-top:1px solid #e5e8ed; padding-top:20px; font-size:12px; }
.whatsapp-float { position:fixed; right:22px; bottom:22px; width:58px; height:58px; border-radius:50%; display:grid; place-items:center; background:#25d366; color:white; font-size:26px; box-shadow:0 10px 28px rgba(0,0,0,.2); z-index:10; }
@media (max-width:900px) {
  .site-header { height:112px; padding:0 20px; } .brand img { width:215px; height:104px; } nav a:not(.nav-cta) { display:none; }
  .hero { grid-template-columns:1fr; } .hero-photo { min-height:380px; clip-path:ellipse(90% 82% at 50% 15%); } .hero-copy { padding:30px 25px 65px; }
  .intro { grid-template-columns:1fr; gap:25px; padding:75px 25px 40px; } .intro>p { padding-left:20px; }
  .strengths { grid-template-columns:1fr; padding:10px 25px 75px; } .strengths article { min-height:0; }
  .registration { grid-template-columns:1fr; padding:75px 25px; gap:40px; } footer { grid-template-columns:1fr 1fr; padding:45px 25px 25px; } .footer-brand { grid-column:1/-1; }
}
@media (max-width:560px) {
  .site-header { padding:0 14px; } .brand img { width:190px; height:98px; } .nav-cta { padding:12px 16px; }
  h1 { font-size:48px; } .hero-photo { min-height:315px; } .hero-actions { align-items:flex-start; flex-direction:column; }
  .trust-row { flex-direction:column; gap:16px; } .field-row { grid-template-columns:1fr; gap:0; } .registration-form { padding:24px 20px; }
  footer { grid-template-columns:1fr; } .footer-brand { grid-column:auto; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .strengths article { transition:none; } }
