.c2-page { background: radial-gradient(circle at 94% 4%, rgba(245,189,66,.18), transparent 18rem), radial-gradient(circle at 5% 16%, rgba(0,127,128,.11), transparent 23rem), var(--surface-soft); }
.c2-hero,.c2-section { padding:86px 0; }.c2-hero { padding-top:76px; }.c2-hero-grid { display:grid; grid-template-columns:1.12fr .88fr; gap:52px; align-items:center; }.c2-meta { display:flex; flex-wrap:wrap; gap:8px; margin:27px 0 20px; }.c2-meta span,.c2-kicker { color:var(--teal-dark); font-size:.7rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.c2-meta span { padding:8px 11px; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.8); }.c2-hero h1 { max-width:780px; margin:0; color:var(--ink); font-size:clamp(3.2rem,7vw,6rem); line-height:.91; letter-spacing:-.08em; }.c2-hero h1 em { color:var(--teal); font-family:Georgia,"Times New Roman",serif; font-weight:500; }.c2-lead { max-width:680px; margin:27px 0; color:var(--muted); font-size:1.1rem; line-height:1.7; }.c2-actions { display:flex; flex-wrap:wrap; gap:12px; }.c2-actions .button-secondary { color:var(--teal-dark); }
.c2-launch-card { overflow:hidden; border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:var(--shadow); }.c2-launch-top { padding:22px 24px; color:#fff; background:var(--ink); }.c2-launch-top span { color:var(--yellow); font-size:.72rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.c2-launch-top strong { display:block; margin-top:8px; font-size:1.55rem; letter-spacing:-.045em; }.c2-launch-body { padding:23px 24px; }.c2-launch-body p { margin:0 0 20px; color:var(--muted); line-height:1.55; }.c2-launch-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }.c2-launch-stats div { padding:14px; border-radius:14px; background:var(--teal-soft); }.c2-launch-stats strong { display:block; color:var(--teal-dark); font-size:1.55rem; letter-spacing:-.05em; }.c2-launch-stats span { display:block; margin-top:3px; color:var(--muted); font-size:.75rem; line-height:1.35; }
.c2-section-white { background:rgba(255,255,255,.78); }.c2-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,.7fr); gap:42px; align-items:end; margin-bottom:37px; }.c2-heading h2 { max-width:720px; margin:8px 0 0; color:var(--ink); font-size:clamp(2.3rem,5vw,4.5rem); line-height:.97; letter-spacing:-.07em; }.c2-heading > p { margin:0 0 5px; color:var(--muted); line-height:1.65; }
.c2-problem-grid,.c2-module-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.c2-card { padding:25px; border-top:4px solid var(--orange); border-radius:18px; background:#fff; box-shadow:0 8px 22px rgba(18,54,67,.05); }.c2-card h3 { margin:0 0 10px; color:var(--ink); font-size:1.08rem; }.c2-card p { margin:0; color:var(--muted); line-height:1.55; }
.c2-course-path { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }.c2-course-path article { min-height:165px; padding:20px 17px; border:1px solid var(--line); border-radius:17px; background:#fff; }.c2-course-path span { color:var(--orange); font-size:.72rem; font-weight:900; }.c2-course-path h3 { margin:20px 0 8px; color:var(--ink); font-size:1rem; }.c2-course-path p { margin:0; color:var(--muted); font-size:.88rem; line-height:1.45; }
.c2-calendar { overflow:hidden; border:1px solid var(--line); border-radius:21px; background:#fff; }.c2-calendar-head { display:grid; grid-template-columns:150px 1fr; padding:17px 23px; color:#fff; background:var(--ink); font-size:.75rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }.c2-calendar-row { display:grid; grid-template-columns:150px 1fr; padding:20px 23px; border-top:1px solid var(--line); }.c2-calendar-row time { color:var(--teal-dark); font-weight:900; }.c2-calendar-row strong { color:var(--ink); }.c2-calendar-row span { display:block; margin-top:4px; color:var(--muted); font-size:.9rem; }.c2-calendar-note { margin:16px 0 0; color:var(--muted); line-height:1.6; }
.c2-practice { display:grid; grid-template-columns:.85fr 1.15fr; gap:48px; align-items:center; }.c2-practice h2 { margin:8px 0 0; color:var(--ink); font-size:clamp(2.35rem,4.5vw,4.3rem); line-height:.97; letter-spacing:-.07em; }.c2-practice-copy { color:var(--muted); font-size:1.03rem; line-height:1.7; }.c2-loop { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:25px; }.c2-loop div { position:relative; min-height:106px; padding:15px; border:1px solid var(--line); background:#fff; }.c2-loop div:first-child { border-radius:15px 0 0 15px; }.c2-loop div:last-child { border-radius:0 15px 15px 0; }.c2-loop strong { display:block; color:var(--ink); font-size:.87rem; }.c2-loop span { display:block; margin-top:7px; color:var(--muted); font-size:.76rem; line-height:1.4; }
.c2-status { display:grid; grid-template-columns:1fr 1fr; gap:17px; }.c2-status article { padding:25px; border-radius:18px; background:#fff; border:1px solid var(--line); }.c2-status article:first-child { background:var(--teal-soft); border-color:#b9e4dc; }.c2-status h3 { margin:0 0 11px; color:var(--ink); font-size:1.08rem; }.c2-status p { margin:0; color:var(--muted); line-height:1.55; }
.c2-timeline { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.c2-timeline article { padding:22px; border-radius:17px; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.08); }.c2-timeline span { color:var(--yellow); font-size:.78rem; font-weight:900; }.c2-timeline h3 { margin:12px 0 8px; color:#fff; font-size:1.08rem; }.c2-timeline p { margin:0; color:#d9eff0; font-size:.88rem; line-height:1.5; }.c2-horizon { padding:43px; border-radius:25px; color:#fff; background:var(--teal); }.c2-horizon h2 { max-width:720px; margin:8px 0 16px; font-size:clamp(2.4rem,5vw,4.7rem); line-height:.95; letter-spacing:-.075em; }.c2-horizon > p { max-width:740px; color:#dff4f0; line-height:1.65; }.c2-horizon .c2-kicker { color:var(--yellow); }
.c2-method { display:grid; grid-template-columns:.82fr 1.18fr; gap:35px; padding:28px; border:1px solid var(--line); border-radius:20px; background:#fff; }.c2-method h2 { margin:8px 0 0; color:var(--ink); font-size:1.8rem; line-height:1.05; letter-spacing:-.045em; }.c2-method p { margin:0; color:var(--muted); line-height:1.65; }.c2-method a { color:var(--teal-dark); font-weight:850; }.c2-method-links { display:flex; flex-wrap:wrap; gap:13px; margin-top:18px; }
@media (max-width:980px){.c2-hero-grid,.c2-heading,.c2-practice,.c2-method{grid-template-columns:1fr}.c2-problem-grid,.c2-module-grid{grid-template-columns:1fr}.c2-course-path{grid-template-columns:repeat(2,1fr)}.c2-section,.c2-hero{padding:64px 0}}@media (max-width:640px){.c2-course-path,.c2-timeline,.c2-status{grid-template-columns:1fr}.c2-loop{grid-template-columns:1fr;gap:8px}.c2-loop div{border-radius:14px!important}.c2-calendar-head,.c2-calendar-row{grid-template-columns:1fr;gap:5px}.c2-launch-stats{grid-template-columns:1fr}.c2-hero h1{font-size:clamp(3rem,14vw,4.7rem)}.c2-section{padding:53px 0}}
