/* TASK D1 — catalogue only; shared tokens, artwork and commerce remain unchanged. */
.course-catalogue .page-hero{padding:32px 0 28px}
.course-catalogue .catalogue-eyebrow{font:600 .77rem/1.7 'Space Grotesk',sans-serif;letter-spacing:.12em;color:var(--teal-deep);margin:14px 0 12px}
.course-catalogue .page-hero h1{max-width:24em;line-height:1.5;font-size:clamp(1.7rem,3.3vw,2.5rem)}
.course-catalogue .page-hero p.lede{color:var(--ink);max-width:54em;line-height:1.85}
.course-catalogue .catalogue-invitation{font-size:1.08rem;color:var(--ink);margin:0 0 22px;line-height:1.8}
.course-catalogue .catalogue-grid{margin-top:0;gap:16px 20px}
.course-catalogue .catalogue-card{display:grid;grid-template-rows:subgrid;grid-row:span 8;row-gap:14px;padding:0 18px 22px;background:#fff;border-color:#d4e4e9;border-radius:24px;box-shadow:0 5px 0 #e0eef0,0 14px 28px -24px #173e5055;min-width:0}
.course-catalogue .catalogue-card:hover{transform:none;box-shadow:0 5px 0 #d6e9ec,0 18px 32px -24px #173e5070}
.course-catalogue .catalogue-card .book-family-visual{height:188px;margin:0 -18px;padding:6px 18px;border-radius:23px 23px 0 0}
.course-catalogue .catalogue-card h2{font-size:1.16rem;line-height:1.65;margin:0;padding-top:4px;overflow-wrap:break-word}
.course-catalogue .catalogue-position{color:var(--teal-deep);font-size:.96rem;line-height:1.8;margin:0}
.course-catalogue .catalogue-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;font-size:.96rem;line-height:1.8;color:var(--ink)}
.course-catalogue .catalogue-points li{position:relative;padding-left:23px}
.course-catalogue .catalogue-points li::before{content:'✓';position:absolute;left:0;top:0;color:var(--teal-deep);font-weight:700}
.course-catalogue .catalogue-solution{background:var(--cream);border-radius:12px;padding:12px;font-size:.93rem;line-height:1.85;color:var(--ink)}
.course-catalogue .catalogue-solution p{margin:0}
.course-catalogue .catalogue-solution small{display:block;font-size:.82rem;line-height:1.75;margin-top:7px;color:#506674}
.course-catalogue .catalogue-card .price{margin:0;padding-top:2px;display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 8px}
.course-catalogue .price del{color:#586b76;margin:0}
.course-catalogue .price strong{font-size:1.6rem}
.course-catalogue .price .save{margin-left:0}
.course-catalogue .catalogue-cta{margin:0;padding:12px 8px;min-height:52px;text-align:center;display:flex;align-items:center;justify-content:center;gap:6px;color:#123c4b;font-size:.95rem;font-weight:700;line-height:1.7;background:linear-gradient(180deg,#b2f3e9 0%,#6cddd9 18%,#43cbd0 62%,#2dbac6 100%);border:1px solid #2aadb8;border-top-color:#b8f6ef;border-radius:14px;box-shadow:inset 0 2px 1px #ffffffa6,inset 0 -2px 1px #1599ab33,0 4px 0 #239caa,0 8px 15px -7px #1d829b70;transition:transform .18s ease,box-shadow .18s ease}
@media(hover:hover){.course-catalogue .catalogue-cta:hover{transform:translateY(-2px);box-shadow:inset 0 2px 1px #ffffffb3,inset 0 -2px 1px #1599ab33,0 5px 0 #239caa,0 12px 20px -7px #1d829b70}}
.course-catalogue .catalogue-cta:active{transform:translateY(2px);box-shadow:inset 0 2px 4px #218a9b26,0 1px 0 #239caa,0 4px 8px -5px #1d829b50}
.course-catalogue .catalogue-cta:focus-visible{outline:3px solid #145eaa;outline-offset:5px}
@media(max-width:1000px){.course-catalogue .catalogue-card .book-family-visual{height:180px}.course-catalogue .catalogue-grid{row-gap:18px}}
@media(max-width:560px){.course-catalogue .page-hero{padding:24px 0}.course-catalogue .catalogue-grid{gap:24px}.course-catalogue .catalogue-card{grid-template-rows:auto;grid-row:auto;gap:13px;padding:0 20px 22px}.course-catalogue .catalogue-card .book-family-visual{height:170px;margin:0 -20px}.course-catalogue .catalogue-card h2{font-size:1.22rem}.course-catalogue .catalogue-position,.course-catalogue .catalogue-points{font-size:1rem}.course-catalogue .catalogue-solution{font-size:.96rem}.course-catalogue .catalogue-invitation{font-size:1rem}.course-catalogue .line-float{display:none}}
@media(prefers-reduced-motion:reduce){.course-catalogue .catalogue-card,.course-catalogue .catalogue-cta{transition:none}.course-catalogue .catalogue-cta:hover,.course-catalogue .catalogue-cta:active{transform:none}}
@media(max-width:1000px){.course-catalogue .line-float{display:none}}

/* C1: existing catalogue, with shared verified playback/study figures. */
.course-catalogue .page-hero{background:radial-gradient(ellipse at 80% 60%,#d9f0fb80,transparent 60%),var(--cream)}
.course-catalogue .catalogue-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:center}
.course-catalogue .catalogue-hero-copy{min-width:0}
.course-catalogue .page-hero h1{max-width:19em}
.course-catalogue .catalogue-portrait{margin:0;position:relative;text-align:center}
.course-catalogue .catalogue-portrait img{width:100%;height:330px;object-fit:contain;border-radius:120px 120px 24px 24px;background:#eff5f4}
.course-catalogue .catalogue-portrait figcaption{font-size:14px;line-height:1.7;color:var(--teal-deep);margin-top:8px}
.course-catalogue .catalogue-collection-title{text-align:center;font-size:clamp(24px,3vw,32px);margin:30px 0 12px}
.course-catalogue .catalogue-invitation{text-align:center}
.course-catalogue .catalogue-payment{display:grid;grid-template-columns:64px minmax(0,1fr) 230px;gap:20px;align-items:center;padding:24px;margin:36px 0 0;border:1px solid #e9d6aa;border-radius:24px;background:linear-gradient(120deg,#fff9ec,#fffdf8,#f0f9fe);box-shadow:inset 0 2px 0 #fff,0 12px 26px -22px #805a1e66}
.course-catalogue .catalogue-payment h2{font:600 21px/1.7 'IBM Plex Sans Thai',sans-serif;margin:0 0 8px}
.course-catalogue .catalogue-payment p{font-size:16px;line-height:1.85;margin:0}
.course-catalogue .catalogue-payment .catalogue-cta{font-size:15px;min-height:52px;white-space:normal}
.course-catalogue .catalogue-card[data-course-id="crs_fundamental"]{background:#f0fbf8;border-color:#b8e3db}
.course-catalogue .catalogue-card[data-course-id="crs_intensive"]{background:#f0f9fe;border-color:#b8deed}
.course-catalogue .catalogue-card[data-course-id="crs_government"]{background:#fff9ec;border-color:#e9d6aa}
.course-catalogue .catalogue-card[data-course-id="crs_ebook"]{background:#f8f4ff;border-color:#ddd2ed}
.course-catalogue .catalogue-learning{border-block:1px solid #128fb22e;padding:14px 0;color:var(--ink);font:400 14px/1.7 'IBM Plex Sans Thai',sans-serif}
.course-catalogue .course-video-label{display:block;font-weight:600;margin-bottom:12px;font-size:15px}
.course-catalogue .course-video-label>span{white-space:nowrap}
.course-catalogue .course-video-label small{display:block;font-size:13px;font-weight:400}
.course-catalogue .course-week-intro{display:none}
.course-catalogue .catalogue-pdf strong{display:block;font-size:17px}
.course-catalogue .catalogue-pdf p{margin:12px 0}
.course-catalogue .catalogue-pdf a{color:var(--teal-deep);text-decoration:underline}
.course-catalogue .catalogue-duration-note{text-align:center;font-size:14px;line-height:1.8;margin:28px auto 0;max-width:50em}
.course-catalogue .catalogue-review-link{display:block;width:fit-content;margin:24px auto 0;color:var(--teal-deep);text-decoration:underline}
@media(max-width:900px){.course-catalogue .catalogue-payment{grid-template-columns:54px minmax(0,1fr)}.course-catalogue .catalogue-payment .catalogue-cta{grid-column:2;justify-self:start}.course-catalogue .catalogue-hero-grid{grid-template-columns:minmax(0,1fr) 240px;gap:24px}}
@media(max-width:700px){.course-catalogue .catalogue-hero-grid{grid-template-columns:1fr;gap:22px}.course-catalogue .catalogue-portrait{max-width:240px;justify-self:center}.course-catalogue .catalogue-portrait img{height:280px}.course-catalogue .catalogue-payment{padding:20px;gap:14px;grid-template-columns:44px minmax(0,1fr)}.course-catalogue .catalogue-payment>svg{width:44px;height:44px}.course-catalogue .catalogue-payment h2{font-size:19px}.course-catalogue .catalogue-payment p{grid-column:1/-1}.course-catalogue .catalogue-payment .catalogue-cta{grid-column:1/-1;width:100%}}

.course-catalogue .course-week-plans { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.course-catalogue .course-week-plan { display:flex; flex-direction:column; align-items:center; gap:10px; padding:10px 4px 12px; border:1px solid #128fb22e; border-radius:14px; background:linear-gradient(145deg, #fffdf8, #ffffffd9); box-shadow:inset 0 1px 0 #fff, 0 5px 12px -10px #0f6f8c66; }
.course-catalogue .course-week-daily { display:block; line-height:1.5; }
.course-catalogue .course-week-daily b { display:block; font-weight:600; white-space:nowrap; }
.course-catalogue .course-week-calendar { position:relative; display:flex; flex-direction:column; align-items:center; width:62px; padding:0 0 4px; border:1px solid #128fb266; border-radius:9px; background:linear-gradient(135deg, #fff, #e8f7fc); box-shadow:inset 0 1px 0 #fff, 1px 3px 0 #b8deed, 0 7px 11px -6px #0f6f8c55; }
.course-catalogue .course-week-calendar::before { content:""; position:absolute; top:-5px; left:14px; width:4px; height:10px; border-radius:3px; background:linear-gradient(90deg, #0f6f8c, #fff, #128fb2); box-shadow:28px 0 0 #128fb2; }
.course-catalogue .course-week-approx { align-self:stretch; padding:3px 0 2px; border-bottom:1px solid #128fb22e; border-radius:8px 8px 0 0; background:linear-gradient(135deg, #d9f0fb, #4fd0ee); font-size:12px; line-height:1.7; color:#0f2a38; }
.course-catalogue .course-week-calendar strong { font:700 28px/1.25 'IBM Plex Sans Thai',sans-serif; color:var(--teal-deep, #0f6f8c); }
.course-catalogue .course-week-unit { font-size:13px; line-height:1.5; color:var(--ink, #0f2a38); }

.course-catalogue .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

.course-catalogue .catalogue-payment .catalogue-payment-terms{font-size:14px;margin-top:8px;color:#506674}

/* C1.1: crisp primary trial actions, quieter course-detail actions, catalogue only. */
.course-catalogue .catalogue-trial,.course-catalogue .site-nav .nav-trial{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:12px 24px;border:1px solid var(--teal-deep);border-radius:14px;background:var(--teal-deep);color:#fff;font-weight:700;line-height:1.6;text-decoration:none;opacity:1;filter:none;box-shadow:0 4px 10px -4px #0f6f8c66;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.course-catalogue .catalogue-card .catalogue-cta{background:#fff;color:var(--teal-deep);border:1.5px solid var(--teal-deep);box-shadow:0 3px 9px -7px #0f6f8c80;filter:none;opacity:1}
@media(hover:hover){.course-catalogue .catalogue-trial:hover,.course-catalogue .site-nav .nav-trial:hover{background:#0d607a;color:#fff;filter:none;transform:translateY(-2px);box-shadow:0 7px 14px -6px #0f6f8c80}.course-catalogue .catalogue-card .catalogue-cta:hover{background:#f0f9fe;filter:none;box-shadow:0 5px 12px -7px #0f6f8c80}}
.course-catalogue .catalogue-trial:active,.course-catalogue .site-nav .nav-trial:active,.course-catalogue .catalogue-card .catalogue-cta:active{transform:translateY(1px);box-shadow:inset 0 2px 4px #0f2a3826}
.course-catalogue .catalogue-trial:focus-visible,.course-catalogue .site-nav .nav-trial:focus-visible{outline:3px solid #145eaa;outline-offset:4px}
@media(max-width:560px){.course-catalogue .catalogue-trial{width:100%}}
@media(prefers-reduced-motion:reduce){.course-catalogue .catalogue-trial,.course-catalogue .site-nav .nav-trial{transition:none}.course-catalogue .catalogue-trial:hover,.course-catalogue .catalogue-trial:active,.course-catalogue .site-nav .nav-trial:hover,.course-catalogue .site-nav .nav-trial:active{transform:none}}
