.learning-nav nav .active { color: var(--blue); border-color: var(--blue); }
.learning-hero { display: grid; grid-template-columns: 1.15fr .55fr; gap: clamp(70px,10vw,170px); align-items: end; padding: 105px clamp(20px,7vw,112px) 95px; border-bottom: 1px solid var(--line); background: var(--paper-bright); }
.learning-hero h1 { max-width: 940px; margin: 28px 0 0; font: 400 clamp(58px,7vw,105px)/.95 Georgia,serif; letter-spacing: -.055em; }
.learning-hero h1 em { color: var(--blue); font-weight: 400; }
.learning-hero-copy > p { margin: 0 0 28px; color: var(--ink-soft); font-size: 16px; line-height: 1.75; }
.learning-hero-copy > span { display: block; padding-top: 18px; border-top: 1px solid var(--line); color: var(--blue); font: 700 10px "Courier New",monospace; letter-spacing: .1em; }
.library { padding: 120px clamp(20px,7vw,112px); }
.library-toolbar { display: grid; grid-template-columns: 1fr minmax(320px,.55fr); gap: 70px; align-items: end; }
.library-toolbar h2 { margin: 36px 0 0; font: 400 clamp(44px,5vw,72px)/1 Georgia,serif; letter-spacing: -.04em; }
.search-box { position: relative; display: grid; gap: 10px; }
.search-box > span { color: var(--blue); font: 700 9px "Courier New",monospace; letter-spacing: .14em; }
.search-box input { width: 100%; height: 54px; padding: 0 48px 0 0; border: 0; border-bottom: 1px solid var(--ink); outline: none; color: var(--ink); background: transparent; font: 17px Georgia,serif; }
.search-box input:focus { border-color: var(--blue); }
.search-box i { position: absolute; right: 3px; bottom: 13px; color: var(--blue); font: 22px Georgia,serif; }
.topic-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin-top: 70px; border: 1px solid var(--line); background: var(--line); }
.topic-card { min-height: 455px; display: flex; flex-direction: column; padding: 30px; background: var(--paper-bright); transition: background .2s ease,color .2s ease; }
.topic-card[hidden] { display: none; }
.topic-card:hover { color: white; background: var(--navy); }
.topic-number { color: var(--blue); font: 400 52px/1 Georgia,serif; }
.topic-card:hover .topic-number { color: #8eb9f4; }
.topic-card > p { margin: 72px 0 14px; color: var(--blue); font: 700 9px "Courier New",monospace; letter-spacing: .12em; }
.topic-card:hover > p { color: #8eb9f4; }
.topic-card h3 { margin: 0 0 17px; font: 400 31px/1.08 Georgia,serif; letter-spacing: -.025em; }
.topic-description { color: #566579; font-size: 13px; line-height: 1.65; }
.topic-card:hover .topic-description { color: #afbdd0; }
.topic-actions { display: grid; margin-top: auto; border-top: 1px solid var(--line); }
.topic-card:hover .topic-actions { border-color: var(--line-dark); }
.topic-actions button { display: flex; justify-content: space-between; padding: 12px 0; border: 0; border-bottom: 1px solid var(--line); color: inherit; background: transparent; cursor: pointer; text-align: left; font-size: 11px; }
.topic-actions button:after { content: "↗"; color: var(--blue); }
.topic-card:hover .topic-actions button { border-color: var(--line-dark); }
.topic-card:hover .topic-actions button:after { color: #8eb9f4; }
.result-note { display: flex; justify-content: space-between; gap: 30px; padding: 22px 0; border-bottom: 1px solid var(--line); color: #687587; font: 700 9px "Courier New",monospace; letter-spacing: .1em; text-transform: uppercase; }
.empty-state { margin: 55px 0 0; padding: 40px; border: 1px solid var(--line); text-align: center; }
.reader { padding: 110px clamp(20px,7vw,112px); color: white; background: var(--navy); }
.reader-label { display: flex; align-items: center; gap: 16px; color: #89b3ed; font: 700 10px "Courier New",monospace; letter-spacing: .14em; }
.reader-label span { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid currentColor; border-radius: 50%; letter-spacing: 0; }
.reader-shell { display: grid; grid-template-columns: .65fr 1.35fr; gap: clamp(70px,10vw,170px); margin-top: 55px; }
.reader-shell aside > p { margin: 0 0 18px; color: #8eb9f4; font: 700 9px "Courier New",monospace; letter-spacing: .13em; }
.reader-shell aside h2 { margin: 0; font: 400 clamp(39px,4.5vw,64px)/1 Georgia,serif; letter-spacing: -.04em; }
.reader-tabs { display: grid; margin-top: 50px; border-top: 1px solid var(--line-dark); }
.reader-tabs button { display: flex; justify-content: space-between; padding: 16px 0; border: 0; border-bottom: 1px solid var(--line-dark); color: #9fb0c5; background: transparent; cursor: pointer; text-align: left; font-size: 12px; }
.reader-tabs button[aria-selected="true"] { color: white; }
.reader-tabs button[aria-selected="true"]:after { content: "→"; color: #8eb9f4; }
.reader-content { min-height: 420px; padding-top: 4px; }
.reader-kicker { margin: 0 0 25px; color: #89b3ed; font: 700 9px "Courier New",monospace; letter-spacing: .14em; }
.reader-content h3 { max-width: 760px; margin: 0 0 28px; font: 400 clamp(36px,4vw,57px)/1.05 Georgia,serif; letter-spacing: -.035em; }
.reader-content > p { max-width: 790px; margin: 0 0 22px; color: #b7c4d4; font-size: 15px; line-height: 1.8; }
.reader-content h4 { max-width: 780px; margin: 48px 0 18px; color: white; font: 400 26px/1.2 Georgia,serif; }
.reader-callout { display: grid; grid-template-columns: 150px 1fr; gap: 35px; max-width: 800px; margin-top: 45px; padding: 25px 0; border-top: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); }
.reader-callout strong { color: #89b3ed; font: 700 9px "Courier New",monospace; letter-spacing: .12em; text-transform: uppercase; }
.reader-callout span { color: white; font: 400 21px/1.45 Georgia,serif; }
.key-points { max-width: 800px; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line-dark); }
.key-points li { position: relative; padding: 16px 0 16px 30px; border-bottom: 1px solid var(--line-dark); color: #b7c4d4; font-size: 13px; line-height: 1.6; }
.key-points li:before { content: "→"; position: absolute; left: 0; color: #8eb9f4; }
.reader-caveat { margin-top: 34px!important; padding: 16px 18px; border-left: 2px solid #8eb9f4; color: #98abc2!important; background: rgba(255,255,255,.04); font-size: 11px!important; }
.glossary-list { max-width: 820px; margin: 0; border-top: 1px solid var(--line-dark); }
.glossary-list div { display: grid; grid-template-columns: 180px 1fr; gap: 35px; padding: 22px 0; border-bottom: 1px solid var(--line-dark); }
.glossary-list dt { color: white; font: 400 18px Georgia,serif; }
.glossary-list dd { margin: 0; color: #aebdd0; font-size: 13px; line-height: 1.7; }
.reading-list { max-width: 820px; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line-dark); }
.reading-list li { display: grid; grid-template-columns: 44px 1fr auto; gap: 22px; align-items: center; padding: 24px 0; border-bottom: 1px solid var(--line-dark); }
.reading-list li > span { color: #8eb9f4; font: 700 9px "Courier New",monospace; }
.reading-list h4 { margin: 0 0 8px; font: 400 21px Georgia,serif; }
.reading-list p { margin: 0; color: #9fafc2; font-size: 12px; line-height: 1.6; }
.reading-list a { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--line-dark); color: #8eb9f4; }
.reading-list a:hover { color: var(--navy); background: #8eb9f4; }
.learning-disclosure { display: grid; grid-template-columns: 230px 1fr; gap: 60px; padding: 45px clamp(20px,7vw,112px); border-bottom: 1px solid var(--line); }
.learning-disclosure strong { font-size: 12px; }
.learning-disclosure p { margin: 0; color: #5b6878; font-size: 11px; line-height: 1.75; }
@media(max-width:1050px){.learning-hero,.library-toolbar,.reader-shell{grid-template-columns:1fr}.topic-grid{grid-template-columns:repeat(2,1fr)}.learning-hero-copy{max-width:650px}.reader-shell aside{display:grid;grid-template-columns:1fr 1fr;gap:40px}.reader-tabs{margin-top:0}}
@media(max-width:720px){.learning-hero{padding:75px 20px 70px}.learning-hero h1{font-size:clamp(50px,15vw,69px)}.library{padding:90px 20px}.topic-grid{grid-template-columns:1fr}.topic-card{min-height:430px}.reader{padding:90px 20px}.reader-shell aside{grid-template-columns:1fr}.reader-tabs{margin-top:35px}.reader-callout,.learning-disclosure{grid-template-columns:1fr;gap:22px}.glossary-list div{grid-template-columns:1fr;gap:9px}.reading-list li{grid-template-columns:30px 1fr auto;gap:12px}.result-note{flex-direction:column}}
