
/* Courses page only. Shared styles and other pages untouched. */
.course-new-hero{background:linear-gradient(110deg,#f9fcff 0%,#edf5ff 70%,#e2efff 100%);overflow:hidden}
.course-hero-grid{display:grid;grid-template-columns:48% 52%;align-items:center;min-height:460px;gap:28px;padding-top:45px;padding-bottom:45px}
.course-hero-intro h1{font-size:clamp(36px,4.4vw,58px);line-height:1.18;color:#172e55;letter-spacing:-.05em;margin:15px 0}
.course-hero-intro h1 span{color:#4165af}.course-hero-intro h2{font-size:23px;color:#4165af;margin:12px 0}
.course-hero-intro p{color:#647b9d;line-height:1.9;max-width:520px}
.course-hero-points{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.course-hero-points span{background:white;border:1px solid #dbe8f9;border-radius:20px;padding:7px 14px;color:#5579ad;font-size:13px}
.course-hero-photo{position:relative;overflow:hidden;border-radius:22px;box-shadow:0 18px 44px #4165af20;aspect-ratio:1.65}
.course-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 43%;display:block}
.course-photo-note{position:absolute;top:20px;right:20px;color:#4165af;background:#fffffff0;padding:10px 15px;border-radius:12px;font-size:13px;font-weight:700}
.course-programs-new{background:#f8fbff}.course-program-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.course-program-card{border:1px solid #e2eafa;border-radius:23px;background:#fff;overflow:hidden;box-shadow:0 14px 36px #4165af0b;display:flex;flex-direction:column}
.course-program-top{padding:29px 30px 24px;min-height:218px}.course-program-ai .course-program-top{background:radial-gradient(circle at 90% 20%,#3b4e64,transparent 45%),linear-gradient(120deg,#101f30,#26394b);color:white}
.course-program-social .course-program-top{background:radial-gradient(circle at 90% 10%,#91d9ff,transparent 45%),linear-gradient(110deg,#4165af,#67b9e8);color:white}
.course-course-index{font-size:11px;letter-spacing:1.5px;color:#ffd45c;font-weight:800}.course-program-top h3{font-size:clamp(25px,2.5vw,35px);line-height:1.3;color:white;margin:13px 0 7px}
.course-program-top p{color:#e5efff;font-size:14px}.course-course-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.course-course-tags span{border:1px solid #ffffff55;border-radius:18px;padding:6px 10px;font-size:12px;color:#fff}
.course-teacher-strip{display:flex;align-items:center;gap:23px;padding:22px 28px;min-height:215px;background:#f5f8fd}
.course-teacher-strip img{width:150px;height:165px;object-fit:cover;object-position:center 18%;border-radius:15px}
.course-teacher-strip div{display:flex;flex-direction:column;gap:7px}.course-teacher-strip small,.course-two-teachers small{color:#7084a1;font-size:12px}.course-teacher-strip strong{color:#1e3d70;font-size:27px}.course-teacher-strip span{font-size:13px;color:#6b80a0}
.course-two-teachers{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px 25px;background:#f3f8ff;min-height:215px}
.course-two-teachers>div{display:grid;grid-template-columns:100px 1fr;column-gap:12px;align-content:center;align-items:center}
.course-two-teachers img{grid-row:span 2;width:100px;height:150px;object-fit:cover;object-position:top;border-radius:12px;background:#d9ebff}
.course-two-teachers strong{font-size:16px;color:#1f4279;align-self:end}.course-two-teachers small{align-self:start;line-height:1.5}
.course-card-bottom{padding:26px 30px 30px;flex:1}.course-card-bottom h4{font-size:19px;color:#213e70;margin:0 0 15px}
.course-card-features{display:grid;grid-template-columns:1fr 1fr;gap:10px}.course-card-features span{border:1px solid #e4edfc;border-radius:12px;padding:13px 10px;background:#f7faff;color:#5874a0;text-align:center;font-size:13px}
.course-card-bottom a{display:block;margin-top:20px;text-align:center;padding:13px;border-radius:12px;background:#4165af;color:white;font-weight:700;text-decoration:none}
.course-program-ai .course-card-bottom a{background:#ffcb4d;color:#203b69}
@media(max-width:950px){.course-hero-grid{grid-template-columns:1fr}.course-program-grid{grid-template-columns:1fr}.course-hero-photo{max-width:760px}.course-two-teachers>div{grid-template-columns:110px 1fr}}
@media(max-width:550px){.course-hero-grid{padding:35px 0}.course-hero-intro h1{font-size:38px}.course-program-top{padding:23px}.course-two-teachers{padding:14px;gap:10px}.course-two-teachers>div{display:flex;flex-direction:column;text-align:center}.course-two-teachers img{width:100%;height:150px;max-width:125px}.course-two-teachers strong{align-self:center}.course-two-teachers small{align-self:center}.course-teacher-strip{padding:18px}.course-teacher-strip img{width:120px;height:150px}.course-card-bottom{padding:22px}}

/* V9.7: original instructor photographs are shown directly; never synthesize faces. */
.course-teacher-strip img{object-fit:cover;object-position:center top}
.course-two-teachers img{object-fit:cover;object-position:center top}
.course-program-card{box-shadow:0 18px 50px rgba(65,101,175,.10)}
.course-program-card:hover{transform:translateY(-3px);transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 22px 54px rgba(65,101,175,.14)}
.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gallery figure{border-radius:18px;overflow:hidden;background:white;box-shadow:0 9px 25px rgba(65,101,175,.08)}
.gallery figure img{width:100%;height:220px;object-fit:cover;display:block}
@media(max-width:800px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.gallery{grid-template-columns:1fr}.gallery figure img{height:240px}}

/* Monthly course posters — only courses page */
.course-poster-section{background:linear-gradient(180deg,#f6f9ff 0%,#fff 100%)}
.course-poster-frame{max-width:1240px;margin:30px auto 0;padding:14px;background:white;border:1px solid #e5ecfa;border-radius:24px;box-shadow:0 18px 50px rgba(65,101,175,.08)}
.course-poster-frame img{display:block;width:100%;height:auto;border-radius:14px}
@media(max-width:720px){.course-poster-frame{padding:6px;border-radius:14px}.course-poster-frame img{border-radius:9px}}
