/* Course: same quiet language as About; the book's Bangla titles use Hind Siliguri. */
html:has(.cr) { scroll-behavior: smooth; }
.cr-hero { border-bottom: 1px solid var(--hair); }
.cr-hero .ab-hero-in { grid-template-columns: 1fr minmax(280px, 38%); align-items: center; }
.cr-hero .ab-hero-copy { padding-bottom: 0; align-self: center; }
.cr-lead { max-width: 480px; margin-top: 20px; font-size: clamp(18px, 1.6vw, 21px); line-height: 1.45; color: #333; }
.cr-cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }

.cr-btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 46px; padding: 0 22px; font-family: var(--font-mono); font-size: 14px; font-weight: 500; color: #fff; text-decoration: none; background: #000; border: 1px solid #000; border-radius: 100px; cursor: pointer; transition: background var(--dur) var(--ease), color var(--dur) var(--ease); }
.cr-btn svg { width: 11px; height: 11px; }
.cr-btn:hover { color: #000; background: #fff; }
.cr-btn-line { color: #000; background: none; }
.cr-btn-line:hover { color: #fff; background: #000; }
.cr-btn-white { flex: none; color: #000; background: #fff; border-color: #fff; }
.cr-btn-white:hover { color: #fff; background: none; }
.cr-btn:disabled { opacity: 0.6; cursor: wait; }

.cr-book { position: relative; justify-self: center; width: min(100%, 370px); padding-block: 32px 44px; }
.cr-book img { position: relative; z-index: 1; width: 100%; height: auto; animation: cr-float 5.5s ease-in-out infinite; }
@keyframes cr-float { 50% { transform: translateY(-14px) rotate(1deg); } }

.cr-bn { margin-top: 14px; font-family: "Hind Siliguri", var(--font-sans); font-size: clamp(36px, 5vw, 68px); font-weight: 500; line-height: 1.25; letter-spacing: -0.01em; }
.cr-intro { max-width: 680px; margin-top: 16px; font-size: clamp(17px, 1.5vw, 20px); line-height: 1.5; color: #333; }
.cr-pages { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: clamp(32px, 4vw, 52px); }
.cr-pages .ab-fig { aspect-ratio: 396 / 612; box-shadow: inset 0 0 0 1px #e8e8e8; }

.cr-inside { margin-top: clamp(48px, 6vw, 80px); }
.cr-chapters { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; margin-top: 16px; padding-top: 22px; border-top: 1px solid #000; }
.cr-chapters span { font-family: var(--font-mono); font-size: 13px; color: var(--ink-soft); }
.cr-chapters h4 { margin: 8px 0 0; font-family: "Hind Siliguri", var(--font-sans); font-size: 22px; font-weight: 500; line-height: 1.3; }
.cr-chapters p { margin-top: 10px; font-size: 15px; line-height: 1.5; color: #444; }

.cr-get { margin-top: clamp(80px, 11vw, 150px); padding-block: clamp(60px, 8vw, 100px); color: #fff; background: #0b0b0b; scroll-margin-top: 0; }
.cr-get .ab-label { color: #a8a8a8; }
.cr-get-in { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 6vw, 80px); align-items: center; }
.cr-note { margin-top: 14px; font-size: 17px; line-height: 1.5; color: #bdbdbd; }
.cr-form > label { display: block; margin-bottom: 10px; font-family: var(--font-mono); font-size: 13px; color: #bdbdbd; }
.cr-row { display: flex; gap: 8px; }
.cr-row input { flex: 1; min-width: 0; height: 46px; padding: 0 20px; font: inherit; color: #fff; background: #1b1b1b; border: 1px solid #3a3a3a; border-radius: 100px; }
.cr-row input::placeholder { color: #7d7d7d; }
.cr-row input:focus { outline: 0; border-color: #fff; }
.cr-hp { position: absolute; left: -9999px; }
.cr-msg { min-height: 22px; margin-top: 12px; font-size: 15px; line-height: 1.45; color: #fff; }
.cr-msg.is-bad { color: #ffb4a8; }
.cr-msg a { color: inherit; }
.cr-consent { margin-top: 6px; font-size: 13px; line-height: 1.5; color: #8d8d8d; }

.cr-course { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(36px, 4.5vw, 60px) clamp(32px, 6vw, 80px); }
.cr-thumb { display: block; align-self: start; overflow: hidden; color: #fff; text-decoration: none; background: #000; border-radius: 10px; }
.cr-thumb img { display: block; width: 100%; height: auto; }
.cr-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; height: 46px; padding: 0 16px; font-family: var(--font-mono); font-size: 13px; font-weight: 500; }
.cr-play { display: inline-flex; align-items: center; gap: 9px; }
.cr-play svg { width: 11px; height: 11px; transition: transform var(--dur) var(--ease); }
.cr-thumb:hover .cr-play svg { transform: scale(1.3); }
.cr-len { color: #bdbdbd; white-space: nowrap; }
.cr-course .cr-btn { margin-top: 26px; }
.cr-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; align-self: start; margin: 0; padding: 24px 0 0; list-style: none; border-top: 1px solid #000; }
.cr-facts b { display: block; font-size: clamp(26px, 2.7vw, 38px); font-weight: 300; line-height: 1.1; letter-spacing: -0.03em; }
.cr-facts span { display: block; margin-top: 6px; font-size: 13px; line-height: 1.35; color: var(--ink-soft); }
.cr-learn { margin: 0; padding: 0; list-style: none; border-top: 1px solid #000; }
.cr-learn li { padding-block: 12px; font-size: 16px; line-height: 1.4; border-bottom: 1px solid var(--hair); }

.cr .ab-close h2 { max-width: none; }

@media (max-width: 960px) {
  .cr-hero .ab-hero-in, .cr-get-in, .cr-course { grid-template-columns: 1fr; }
  .cr-chapters { grid-template-columns: 1fr 1fr; }
  .cr-book { width: min(70%, 300px); margin-top: 20px; }
}

@media (max-width: 767px) {
  .cr-pages { grid-template-columns: 1fr 1fr; }
  .cr-chapters { grid-template-columns: 1fr; }
  .cr-bar { padding: 0 14px; font-size: 12px; }
  .cr-row { flex-direction: column; }
  .cr-row input { flex: none; width: 100%; }
  .cr-row .cr-btn { width: 100%; }
  .cr-cta .cr-btn, .ab-close-cta .cr-btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  html:has(.cr) { scroll-behavior: auto; }
  .cr-book img { animation: none; }
}
