/* Learn with Q: quiet surfaces, clear hierarchy and subject-led path identities. */
:root{--ink:#302c28;--paper:#fafbf8;--card:#fff;--muted:#68615b;--line:#e2dcd5;--accent:#29483f;--teal:#29483f;--teal-dark:#213b34;--lime:#e9e1d7;--coral:#a07854;--wrong:#8a443c;--shadow:none;color-scheme:light}
body,.study-app{background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
a,.study-app a{color:var(--accent)}
.wrap,.study-app .shell{max-width:1184px;padding-left:32px;padding-right:32px}
.site-header{padding-top:28px;padding-bottom:28px;border-bottom:1px solid var(--line);gap:22px}
.study-app .site-header{padding-top:4px}.site-header .brand{font-size:16px;font-weight:650;letter-spacing:-.035em}.site-header .brand small,.site-header .brand .muted{font-size:12px;color:var(--muted);line-height:1.5}
.site-header nav{font-size:13px;gap:14px 22px}.site-header nav a,.site-header nav button{color:var(--muted);text-decoration:none;transition:color .16s}
.site-header nav a:hover,.site-header nav button:hover{color:var(--ink);text-decoration:underline;text-underline-offset:6px}
.site-footer{border-color:var(--line)}.site-footer a{color:var(--muted);font-size:13px;text-decoration:none}.site-footer a:hover{text-decoration:underline}
h1,.study-app h1{font-size:clamp(2.65rem,6vw,4.7rem);font-weight:550;line-height:1.04;letter-spacing:-.055em;max-width:920px;margin:.4em 0 .3em;overflow-wrap:normal}
h2,.study-app h2{font-size:clamp(1.55rem,3vw,2rem);font-weight:550;line-height:1.2;letter-spacing:-.035em}
h3,.study-app h3{font-weight:600;letter-spacing:-.025em;line-height:1.3}
.eyebrow,.study-app .eyebrow{font-size:11px;font-weight:600;letter-spacing:.13em;color:var(--accent)}
.hero,.study-app .hero{padding-top:64px;padding-bottom:44px;background:transparent;color:var(--ink)}
.hero p,.study-app .hero p{color:var(--muted);font-size:18px;line-height:1.65;max-width:700px}.hero .intro{font-size:20px}
.panel,.study-app .panel{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:none;padding:30px;margin:24px 0}
.grid{gap:20px}.panel>h2:first-child,.panel>h3:first-child{margin-top:0}
.button,.study-app .btn{border-radius:12px;font-size:14px;font-weight:550;min-height:46px;padding:12px 20px;text-decoration:none;line-height:1.5;transition:background .16s,transform .16s}
.button,.study-app .btn-primary{background:var(--accent);color:#fff;border:1px solid var(--accent)}
.button:hover,.study-app .btn-primary:hover{background:#3c574d;color:#fff}
.button.secondary,.study-app .btn-secondary,.study-app .btn-quiet{background:transparent;color:var(--ink);border:1px solid var(--line)}
.button.secondary:hover,.study-app .btn-secondary:hover,.study-app .btn-quiet:hover{background:#f3efea;color:var(--ink)}
:where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid #a07854;outline-offset:4px}
.status,.pill{background:#eee9e2;color:#51404b;border:0;font-size:12px;font-weight:550}
.grid.path-grid,.study-app .path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.path-card,.study-app .path-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:25px;transition:border-color .18s,transform .18s,box-shadow .18s}
.path-card:hover{border-color:#b5a798;transform:translateY(-3px);box-shadow:0 12px 30px -24px #213b34}
.path-card-heading{display:flex;align-items:center;gap:16px;margin-bottom:20px}.path-card-heading svg{flex:0 0 64px;width:64px;height:64px}
.path-card h3,.study-app .path-card h2{font-size:19px;line-height:1.3;letter-spacing:-.03em;margin:0;font-weight:600}.path-card h3 a,.path-card h2 a{color:var(--ink);text-decoration:none}
.path-card>p{font-size:14px;color:var(--muted);line-height:1.65;margin:0 0 24px}.path-card-footer{margin-top:auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;border-top:1px solid #eee9e3}
.path-availability{font-size:12px;color:var(--muted);letter-spacing:.01em}.path-explore{font-size:12px;font-weight:600;text-decoration:none;color:var(--ink);white-space:nowrap}.path-explore span{font-size:16px;margin-left:4px}
.browse-paths .panel{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:28px 0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 24px}.browse-paths h3{font-size:17px;margin:0}.browse-paths h3 a{text-decoration:none}.browse-paths p{margin:0;font-size:14px;color:var(--muted)}
.path-title{display:flex;align-items:center;gap:28px}.path-title svg{flex:0 0 112px;width:112px;height:112px}.path-title h1{font-size:clamp(2.4rem,5vw,4.1rem);max-width:790px}
.path-credential-callout{display:grid;grid-template-columns:80px 1fr;gap:0 24px}.path-credential-callout>img{grid-row:1/5}.path-credential-callout h2{font-size:23px;margin:0 0 12px}.path-credential-callout p{font-size:14px;color:var(--muted)}.path-credential-callout .button{justify-self:start;margin:2px 0}
.release-note{background:#f3efea;border-color:#e2dcd5;margin-bottom:64px;padding:26px 30px}.release-note h2{font-size:25px;margin:10px 0}.release-note p{font-size:15px;max-width:760px}.release-note .button{margin-bottom:0}
.course-card h3,.study-app .course-card h3{font-size:22px;font-weight:550;line-height:1.25;letter-spacing:-.035em}.course-card p{font-size:15px;color:var(--muted)}.course-link{font-size:13px;font-weight:600;text-decoration:none;color:var(--accent)}
.breadcrumbs{font-size:12px;color:var(--muted);gap:8px}.breadcrumbs a{color:var(--muted);text-decoration:none}
.reading{max-width:780px}.reading,.study-app .reading{font-size:17px;line-height:1.8}.reading h2,.study-app .reading h2{font-size:25px;line-height:1.3;margin:1.8em 0 .8em;font-weight:600}.reading h3{font-size:20px}.reading p{margin-bottom:1.1em}.reading li{margin:.45em 0}.reading strong{font-weight:650}
.takeaway{border-color:#a07854;background:#f3efea;border-radius:0 12px 12px 0;color:var(--ink)}
.reading-table{border:1px solid var(--line);border-radius:12px;margin:24px 0}table{font-size:14px;line-height:1.65}th{background:#f3efea;font-weight:600}th,td{padding:13px 15px;border-color:var(--line)}
.learning-check{background:#f6f3ef;border-color:#d9cec2;border-left-color:#29483f;border-radius:12px}
.learning-shell{margin-top:30px}.study-app .learning-shell .lesson-card h1{font-size:clamp(2.2rem,4vw,3rem)}.lesson-sidebar{background:#f3efea;border-color:var(--line);border-radius:16px}.lesson-link[aria-current]{background:#e9e1d7;border-left-color:#29483f}.lesson-link{font-size:14px}.study-tabs [aria-selected=true]{border-bottom-color:#29483f}.study-tabs button{font-size:14px}
.dashboard-metrics strong{font-weight:550}.study-app .course-card{border-color:var(--line);border-radius:16px;background:var(--card)}
.path-badge-card{border-color:var(--line);background:#fff;border-radius:16px;padding:22px;gap:18px}.path-badge-card svg{flex:0 0 76px;width:76px;height:76px}.path-badge-card h3{font-size:18px;font-weight:600}.path-badge-card p{font-size:14px;line-height:1.65}.path-badge-card .field{font-size:13px}
.verified-certificate{border:1px solid var(--line)!important;border-radius:24px!important}.verified-certificate h2{font-family:inherit;font-weight:500;letter-spacing:-.04em}.verified-certificate img{width:96px;height:96px}
@media(max-width:1000px){.grid.path-grid,.study-app .path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header nav{gap:12px 18px}.site-header{align-items:flex-start}}
@media(max-width:640px){.wrap,.study-app .shell{padding-left:22px;padding-right:22px}.site-header{padding-top:22px;padding-bottom:22px;gap:20px}.site-header nav{font-size:12px;gap:10px 16px}.hero,.study-app .hero{padding-top:40px;padding-bottom:30px}h1,.study-app h1{font-size:42px;line-height:1.06}.hero p,.study-app .hero p{font-size:17px}.grid.path-grid,.study-app .path-grid{grid-template-columns:1fr;gap:14px}.path-card,.study-app .path-card{padding:22px}.path-card-heading{gap:18px}.path-card h3,.study-app .path-card h2{font-size:21px}.path-card-footer{padding-top:18px}.path-availability,.path-explore{font-size:12px}.path-title{align-items:flex-start;gap:18px}.path-title svg{width:76px;height:76px;flex-basis:76px}.path-title h1{font-size:33px;margin-top:0}.path-credential-callout{grid-template-columns:60px 1fr;gap:0 18px}.path-credential-callout img{width:60px;height:60px}.path-credential-callout h2{font-size:21px}.panel,.study-app .panel{padding:22px}.release-note{margin-bottom:44px}.release-note .button{display:inline-block}.reading h2,.study-app .reading h2{font-size:23px}.path-badge-card{padding:18px}.path-badge-card svg{flex-basis:60px;width:60px;height:60px}.path-badge-card h3{font-size:17px}.study-app .learning-shell .lesson-card h1{font-size:33px}.verified-certificate{padding:24px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}.path-card:hover{transform:none}}
@media print{body{background:#fff}.path-card{break-inside:avoid}.site-header,.site-footer{display:none}}

/* The homepage landscape gives each part of the curriculum a place. */
.ecosystem-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.16fr);align-items:center;gap:0;min-height:600px;padding-top:38px;padding-bottom:34px;position:relative}
.ecosystem-hero-copy{position:relative;z-index:1;padding:20px 0}.ecosystem-hero h1{font-size:clamp(3.2rem,5.3vw,4.25rem);line-height:1.04;letter-spacing:-.06em;margin:22px 0 24px}.ecosystem-hero .intro{font-size:19px;max-width:425px;line-height:1.65;margin:0 0 26px}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px}.hero-actions .button{margin:0;white-space:nowrap}.hero-actions .button span{margin-left:13px}.hero-path-link{font-size:13px;font-weight:550;text-decoration:none;padding:10px 0;white-space:nowrap}.hero-path-link:hover{text-decoration:underline}.hero-path-link span{margin-left:8px}
.ecosystem-hero .hero-availability{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:11px;letter-spacing:.01em;line-height:1.7;margin:27px 0 0;color:#68615b}.availability-dot{width:6px;height:6px;border-radius:50%;background:#a07854;flex:none}
.ecosystem-hero-visual{width:calc(100% + 48px);margin:0 -24px 0 -24px;position:relative;align-self:center}.ecosystem-hero-visual img{display:block;width:100%;height:auto}.ecosystem-hero-visual figcaption{font-size:11px;letter-spacing:.03em;color:var(--muted);text-align:center;margin-top:-38px;padding-bottom:24px}
@media(min-width:1200px){.ecosystem-hero{min-height:620px}.ecosystem-hero-visual{width:calc(100% + 82px);margin-left:-30px;margin-right:-52px}}
@media(max-width:900px){.ecosystem-hero{grid-template-columns:1fr;min-height:0;padding-top:45px;gap:0}.ecosystem-hero-copy{max-width:650px}.ecosystem-hero h1 br{display:none}.ecosystem-hero h1{max-width:620px}.ecosystem-hero .intro{max-width:570px}.ecosystem-hero-visual{max-width:650px;width:100%;margin:-30px auto -15px}.ecosystem-hero-visual figcaption{margin-top:-45px}.ecosystem-hero .hero-availability{font-size:12px}}
@media(max-width:640px){.ecosystem-hero{padding-top:20px;padding-bottom:30px}.ecosystem-hero-copy{padding:12px 0}.ecosystem-hero .eyebrow{font-size:10px}.ecosystem-hero h1{font-size:46px;max-width:360px;line-height:1.03;margin:18px 0 22px}.ecosystem-hero .intro{font-size:17px;margin-bottom:23px}.hero-actions{gap:8px 20px}.hero-actions .button{display:inline-block;font-size:13px}.hero-path-link{font-size:12px}.ecosystem-hero .hero-availability{font-size:10px;gap:6px;margin-top:22px}.ecosystem-hero-visual{width:calc(100% + 32px);margin:-15px -16px -10px}.ecosystem-hero-visual figcaption{margin-top:-25px;font-size:10px;padding-bottom:14px}}
