@charset "UTF-8";
:root{--paper:#f6f3eb;--white:#fffdf8;--ink:#183c32;--dark:#142f29;--muted:#6c746d;--line:#d9dcd0;--gold:#ad8d55;--pale:#e9ece3;--serif:"Noto Serif KR",Georgia,serif;--sans:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:15px;line-height:1.8;word-break:keep-all;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{border:0;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{background:none}img{max-width:100%;height:auto;display:block}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9f813f;outline-offset:5px}::selection{background:#d1dac7;color:#142f29}em{font-style:normal;color:#77865e}.wrap{width:min(1180px,calc(100% - 96px));margin-inline:auto}.section{padding-block:112px}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:500;color:#78816a;margin-bottom:22px;line-height:1.6}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:46px}.section-head .eyebrow{margin-bottom:18px}h2{font-size:40px;font-weight:500;letter-spacing:-1.7px;line-height:1.55;font-family:var(--serif)}.section-note{font-size:13px;color:var(--muted);line-height:1.9}.section-intro{max-width:720px;font-size:14px;color:var(--muted);margin:-20px 0 38px;line-height:1.95}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:12px;font-weight:500;padding-block:12px;background:none}.text-link:hover{color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:54px;padding:16px 23px;font-size:12px;font-weight:500;border:1px solid transparent;transition:background .2s,color .2s}.button span{font-size:19px}.primary{background:var(--ink);color:var(--white)}.primary:hover{background:#2e5445}.light{background:var(--paper);color:var(--ink)}.light:hover{background:#e0dfc8}.small-line{display:inline-block;width:27px;height:1px;background:var(--gold);vertical-align:middle;margin-right:12px}.skip{position:fixed;left:20px;top:-100px;background:var(--ink);color:#fff;padding:15px;z-index:100}.skip:focus{top:10px}
/* Brand and navigation */
.header{height:90px;position:sticky;top:0;z-index:20;background:#f6f3ebf2;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{width:min(1340px,calc(100% - 80px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:13px;font-size:15px;line-height:1.35;font-weight:600;white-space:nowrap;letter-spacing:-.4px}.brand-mark{font:48px/.9 Georgia,serif;letter-spacing:-6px;width:45px;font-weight:400}.brand-mark>span{font-size:35px;margin-left:3px;letter-spacing:0;color:var(--gold)}.brand small{display:block;font-size:7px;letter-spacing:1.9px;margin-top:7px;font-weight:400}.header nav{display:flex;align-items:center;gap:27px;font-size:12px}.header nav>a{color:#57655a;position:relative}.header nav>a:after{content:"";position:absolute;bottom:-6px;left:0;right:100%;height:1px;background:var(--gold);transition:right .2s}.header nav>a:hover:after,.header nav>a.current:after{right:0}.nav-contact{font-size:12px;padding:12px 18px;border:1px solid #9ba994;margin-left:8px}.nav-contact span{margin-left:21px}.nav-contact:hover{background:var(--ink);color:var(--paper)}.mobile-sections{display:none}
/* First impression */
.hero{overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.02fr 1fr;align-items:center;min-height:650px;gap:35px}.hero-copy{padding-block:52px}.hero-copy .eyebrow{margin-bottom:41px;font-size:9px}.hero-subject{font-size:12px;letter-spacing:.3px;margin-bottom:15px;color:#6c7869}.hero h1{font-family:var(--serif);font-weight:500;font-size:57px;line-height:1.43;letter-spacing:-3px}.hero h1 em{color:var(--ink);position:relative}.hero h1 em:after{content:"";position:absolute;left:0;bottom:0;right:0;height:1px;background:var(--gold)}.hero-desc{font-size:16px;line-height:1.95;margin-top:28px;color:#5e6a60}.hero-byline{font-size:11px;color:#87907e;margin-top:18px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.hero-visual{position:relative;isolation:isolate;background:var(--dark);color:#e1d9bc;height:570px;align-self:center;padding:29px 30px;overflow:hidden;border-radius:180px 0 0 0}.hero-visual:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 80% 20%,#59735b40,transparent 65%);z-index:-1}.visual-topline{display:flex;justify-content:space-between;font:8px var(--sans);letter-spacing:1.7px;padding-left:65px;color:#b2baa2}.visual-topline span:last-child{letter-spacing:1px}.hero-graphic{position:absolute;inset:74px -7px 70px -12px;transform:rotate(-8deg)}.hero-graphic svg{width:100%;height:100%;overflow:visible}.axis{fill:none;stroke:currentColor;stroke-width:.8;opacity:.35}.parabola{fill:none;stroke:currentColor;stroke-width:2}.crossline{fill:none;stroke:#b89961;stroke-width:1.2}.symmetry{fill:none;stroke:#b5c4aa;stroke-width:1;stroke-dasharray:5 7}.guide-line{fill:none;stroke:currentColor;stroke-width:.65;stroke-dasharray:3 6;opacity:.3}.pair-line{fill:none;stroke:#b89961;stroke-width:1;opacity:.75}.hero-graphic circle{fill:#d8be85}.hero-graphic text{font:italic 25px Georgia,serif;fill:#d8be85}.hero-graphic .small-label{font-size:15px;fill:#bbc9af}.hero-graphic .formula-label{font-size:22px;fill:#f1edda}.hero-graphic .mid-dot{fill:#7a9876}.visual-caption{position:absolute;bottom:79px;left:34px;right:30px;display:flex;align-items:end;justify-content:space-between;gap:20px}.visual-caption p{font-family:var(--serif);font-size:23px;line-height:1.7;color:#ede9db;font-weight:400}.visual-caption strong{font-weight:500}.visual-caption>span{font-size:10px;line-height:1.8;color:#a6b59b}.visual-word{position:absolute;bottom:-20px;right:-11px;font:italic 93px/1.3 Georgia,serif;color:#b5c3a512;white-space:nowrap}.hero-bottom{display:flex;align-items:center;justify-content:space-between;padding:19px 0 23px;border-top:1px solid var(--line);font-size:10px;color:#798373;letter-spacing:.3px}.hero-bottom a{color:var(--ink)}.hero-bottom a>span{margin-left:28px;font-size:17px}.proof-strip{display:grid;grid-template-columns:.75fr .65fr 1.2fr 1.1fr;padding-block:33px;border-bottom:1px solid var(--line)}.proof-strip>div{padding:0 28px;border-right:1px solid var(--line)}.proof-strip>div:first-child{padding-left:0}.proof-strip>div:last-child{padding-right:0;border:0}.proof-strip strong{font:40px/1.2 Georgia,serif;display:block}.proof-strip strong>span{font:14px var(--sans);margin-left:5px}.proof-strip p{font-size:10px;color:#7d8478;margin-top:12px}.proof-strip .proof-word{font:500 19px/1.5 var(--sans);padding-top:11px;letter-spacing:-.7px}
/* Philosophy */
.philosophy{display:grid;grid-template-columns:1fr 1.05fr;gap:95px}.philosophy h2{font-size:35px;line-height:1.65;letter-spacing:-1.5px}.location-note{display:flex;align-items:center;gap:17px;flex-wrap:wrap;max-width:285px;margin-top:56px;font:10px Georgia,serif;letter-spacing:2px;color:#7d8873}.location-line{height:1px;flex:1;background:#c8d0bd;position:relative}.location-line:before,.location-line:after{content:"";position:absolute;width:4px;height:4px;border:1px solid #899877;border-radius:50%;top:-2px;background:var(--paper)}.location-line:after{right:0}.location-note small{flex-basis:100%;font:10px var(--sans);letter-spacing:.5px;color:#919687;margin-top:1px}.philosophy-copy p{font-size:14px;line-height:2;color:#677362;margin-bottom:21px}.philosophy-copy .large-copy{font-size:22px;font-weight:500;color:var(--ink);line-height:1.7;margin-bottom:28px;letter-spacing:-.5px}.philosophy-copy blockquote{font-size:16px;line-height:2;margin:33px 0;padding:20px 0 20px 25px;border-left:2px solid var(--gold);color:#657457}.philosophy-copy blockquote strong{font-weight:500;color:var(--ink)}.philosophy-copy p:last-child{margin-bottom:0}
/* Instructor */
.teacher-section{background:#e9ece3;border-block:1px solid #dce1d4}.teacher-layout{display:grid;grid-template-columns:.9fr 1.15fr;gap:75px;align-items:start}.teacher-identity{background:var(--dark);color:#f0ead8;position:relative;padding:35px 39px 32px;overflow:hidden;isolation:isolate;min-height:530px}.identity-overline{font-size:8px;letter-spacing:2px;color:#a2b095}.identity-monogram{font:180px/1.2 Georgia,serif;letter-spacing:-28px;text-align:center;margin:22px 0 16px;color:#d7cfb3}.identity-monogram span{font-style:italic;color:#799275;font-size:140px;margin-left:-12px}.teacher-identity h3{font-family:var(--serif);font-size:27px;line-height:1.6;letter-spacing:-1px;font-weight:400}.teacher-identity>p{font-size:12px;line-height:1.95;margin-top:20px;color:#aebb9e}.identity-signature{font:17px Georgia,serif;letter-spacing:1.7px;margin-top:30px;padding-top:22px;border-top:1px solid #526448;display:flex;align-items:center;justify-content:space-between;gap:20px}.identity-signature span{font:9px var(--sans);letter-spacing:0;color:#a5b497}.record-intro{font-size:22px;font-weight:500;line-height:1.8;letter-spacing:-.7px;margin-bottom:24px}.credentials{margin:0}.credentials>div{display:grid;grid-template-columns:85px 1fr;gap:25px;padding:22px 0;border-bottom:1px solid #cdd6c5}.credentials dt{font-size:11px;color:#7c896f;padding-top:3px}.credentials dd{margin:0;font-size:13px;line-height:2;color:#445a40}.six-perspectives{display:grid;grid-template-columns:.8fr 1.5fr;gap:45px;border-top:1px solid #bdc9b3;margin-top:65px;padding-top:38px}.six-perspectives .eyebrow{font-size:9px;margin-bottom:14px;display:block}.six-perspectives h3{font-size:22px;font-weight:500;letter-spacing:-.7px;line-height:1.6}.six-perspectives p{font-size:12px;color:#77856a;margin-top:17px;line-height:1.9}.six-perspectives ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:27px 30px}.six-perspectives li{font-size:18px;font-weight:500}.six-perspectives li>span{font:italic 13px Georgia,serif;color:#9c956c;margin-right:10px}.six-perspectives li>small{display:block;font-size:10px;font-weight:400;color:#79866e;margin-top:8px;line-height:1.8}
/* Interactive sample lesson */
.lesson-demo{display:grid;grid-template-columns:1.05fr 1fr;border:1px solid var(--line);background:var(--white)}.demo-board{background:#e7ece3;position:relative;padding:25px 30px 19px;overflow:hidden}.board-label{display:flex;justify-content:space-between;font-size:9px;color:#89957c;border-bottom:1px solid #cad4c2;padding-bottom:16px}.demo-problem{font-size:16px;font-weight:500;line-height:1.8;margin-top:24px;letter-spacing:-.3px}.demo-graph{width:100%;height:320px;margin-top:15px;overflow:visible;color:#244e3b}.demo-graph .parabola{stroke-width:2.5}.demo-graph .symmetry{stroke:#788a60}.demo-graph .axis{opacity:.35}.demo-graph text{font:italic 24px Georgia,serif;fill:var(--ink)}.demo-graph .small-label{font:14px var(--sans);fill:#7e8b6d}.demo-graph .root-label{font:18px Georgia,serif;fill:var(--ink);opacity:0;transition:opacity .25s}.demo-graph circle{fill:#ac884c;stroke:#e7ece3;stroke-width:2}.demo-symmetry{opacity:1;transition:opacity .25s}.lesson-demo[data-mode="algebra"] .demo-symmetry{opacity:.12}.lesson-demo[data-mode="algebra"] .root-label{opacity:1}.board-caption{font-size:10px;color:#8a947c;text-align:center}.demo-content{padding:28px 36px;display:flex;flex-direction:column}.approach-tabs{display:flex;border-bottom:1px solid var(--line);gap:25px}.approach-tabs button{flex:1;padding:9px 0 17px;font-size:12px;color:#8e9785;border-bottom:2px solid transparent}.approach-tabs button[aria-selected=true]{border-color:var(--ink);color:var(--ink);font-weight:600}.demo-content [role=tabpanel]{padding-top:30px}.demo-content .eyebrow{font-size:10px;letter-spacing:.6px;margin-bottom:15px}.demo-content h3{font-size:25px;font-weight:500;line-height:1.55;letter-spacing:-.8px;margin-bottom:18px}.demo-content [role=tabpanel]>p:not(.eyebrow){font-size:13px;line-height:1.95;color:#6c7865}.demo-equation{font:21px/1.7 Georgia,serif;padding:20px 0;margin-top:7px;color:var(--ink)}.demo-equation span{font-size:14px;color:#a6ae9a;margin:0 9px}.demo-content .demo-takeaway{border-left:2px solid #b69b68;padding:8px 0 8px 16px;font-size:12px!important;color:#586e4c!important}.demo-next{margin-top:auto;padding-top:21px;border-top:1px solid var(--line)}.demo-next>span{font-size:10px;color:#9b875a}.demo-next p{font-size:12px;line-height:1.9;margin-top:7px;color:#536747}.method-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.method-principles article{position:relative;padding-left:34px}.method-principles article>span{position:absolute;left:0;top:3px;font:italic 15px Georgia,serif;color:#a6986e}.method-principles h3{font-size:17px;font-weight:500;margin-bottom:11px}.method-principles p{font-size:12px;color:#7a8571;line-height:1.85}
/* Curriculum */
.curriculum-section{background:var(--dark);color:#eff0df}.curriculum-section h2,.curriculum-summary h3,.course-steps h4{color:inherit}.curriculum-section .eyebrow{color:#a3b194}.curriculum-section .section-note,.curriculum-section .section-intro{color:#aab79f}.curriculum-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #4d6147;margin-top:40px}.curriculum-tabs button{text-align:left;padding:20px 23px;border-bottom:2px solid transparent;color:#8ea180;font:italic 18px Georgia,serif}.curriculum-tabs button>span{font:14px var(--sans);margin-left:20px}.curriculum-tabs button[aria-selected=true]{background:#263e32;border-color:#c8b77e;color:#eae7cf}.curriculum-panel{display:grid;grid-template-columns:.95fr 1.15fr;gap:90px;padding:44px 23px 0}.tag{display:inline-block;font-size:10px;color:#c4cba9;background:#314b39;padding:5px 10px}.curriculum-summary h3{font-size:29px;font-weight:400;letter-spacing:-1px;line-height:1.55;margin:22px 0;font-family:var(--serif)}.curriculum-summary>p{font-size:13px;color:#a9b79a;line-height:1.95;max-width:395px}.curriculum-books{margin-top:25px;padding-top:20px;border-top:1px solid #4a5f42}.curriculum-books>span{font-size:10px;color:#839a76}.curriculum-books>p{font-size:12px;color:#d2d9be;line-height:1.9;margin-top:7px}.course-steps>div{display:flex;gap:24px;padding:20px 0;border-bottom:1px solid #435c3d}.course-steps>div:first-child{padding-top:0}.course-steps>div>span{font:italic 15px Georgia,serif;color:#baab78;margin-top:5px}.course-steps h4{font-size:17px;font-weight:500;margin-bottom:9px}.course-steps p{font-size:12px;color:#a9b79a;line-height:1.85}.checkpoint{margin-top:21px;background:#273f30;padding:18px 22px}.checkpoint>span{font-size:10px;color:#b5bb8f}.checkpoint p{font-size:12px;color:#d5dcc4;line-height:1.8;margin-top:7px}.course-purpose{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:43px;padding:25px 23px 0;border-top:1px solid #435c3d}.course-purpose>div{display:grid;grid-template-columns:75px 1fr;gap:16px}.course-purpose span{font-size:12px;color:#dadcc1}.course-purpose p{font-size:12px;color:#8ea780;line-height:1.8}.curriculum-footnote{font-size:10px;color:#849578;margin:27px 23px 0}
/* Materials */
.book-explanation{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-bottom:42px}.book-explanation>div>span{font-size:10px;color:#9b8658}.book-explanation h3{font-size:17px;font-weight:500;margin:9px 0 12px;letter-spacing:-.5px}.book-explanation p{font-size:12px;color:#79836f;line-height:1.9}.material-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.material{background:#ece9e0;overflow:hidden;display:grid;grid-template-columns:1fr;position:relative}.material-image{position:relative;padding:0;width:100%;height:370px;overflow:hidden;background:#e1e5da;display:flex;justify-content:center;align-items:start;padding-top:30px}.material:nth-child(2) .material-image{background:#e8e2d6}.material-image img{width:300px;max-width:72%;height:auto;box-shadow:4px 10px 30px #24352321;transform:rotate(-4deg);transition:transform .4s;object-fit:cover;object-position:top}.material:nth-child(2) .material-image img{transform:rotate(4deg)}.material-image:hover img{transform:translateY(-8px) rotate(0)}.expand-label{position:absolute;bottom:18px;right:20px;background:#f8f6edf0;color:#405a39;padding:6px 13px;font-size:10px;backdrop-filter:blur(8px)}.material-body{background:#f0eee6;border:1px solid #e0dfd3;border-top:0;padding:27px 31px}.material-kind{font-size:10px;color:#928465;letter-spacing:.3px}.material-body h3{font-size:22px;font-weight:500;letter-spacing:-.8px;margin:10px 0 13px}.material-body p{font-size:13px;color:#737e68;line-height:1.9;max-width:440px}.material-body .text-link{margin-top:14px;font-size:11px}.material-note{font-size:11px;color:#87907d;line-height:1.9;margin-top:22px}
/* Comparison */
.difference-section{background:#e9ece3;border-block:1px solid #dce2d3}.difference-intro{font-size:14px;line-height:1.9;max-width:780px;color:#6e7c63;margin-top:-15px;margin-bottom:35px}.difference-list{border-top:1px solid #aab99c}.difference-list article{display:grid;grid-template-columns:45px .75fr 1.5fr;gap:30px;padding:29px 0;border-bottom:1px solid #c6d1bc}.difference-number{font:italic 20px Georgia,serif;color:#9b936b;padding-top:4px}.difference-list h3{font-size:21px;line-height:1.6;font-weight:500;letter-spacing:-.6px}.difference-list article>div>p{font-size:13px;line-height:1.95;color:#5a7050}.difference-example{font-size:10px;color:#8a957e;display:block;margin-top:13px;line-height:1.9}
/* Student voices */
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.review-card{padding:25px 0 5px;border-top:2px solid #a29e7a;display:flex;flex-direction:column;position:relative}.review-card:before{content:'“';font:70px/1 Georgia,serif;color:#c3cbb5;margin:15px 0 -25px}.review-topic{font-size:10px;color:#8a927b;order:-1;letter-spacing:.3px}.review-card blockquote{font-family:var(--serif);font-size:18px;line-height:1.95;margin:20px 0 28px;letter-spacing:-.3px}.review-meta{margin-top:auto;border-top:1px solid var(--line);padding-top:17px}.review-meta p{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#7a866d}.review-meta p>span{font:12px Georgia,serif}.review-meta .text-link{font-size:10px}.review-note{font-size:10px;color:#97a08a;margin-top:18px}.student-story{margin-top:43px;background:#eceadf;display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;padding:35px 38px}.story-label{font-size:10px;color:#a38a55;margin-bottom:15px}.student-story h3{font-family:var(--serif);font-size:23px;line-height:1.65;font-weight:500;letter-spacing:-.8px}.story-caption{font-size:9px;color:#98a08c;margin-top:15px;line-height:1.8}.story-body p{font-size:12px;line-height:1.95;color:#75816a;margin-bottom:16px}.story-body .story-takeaway{color:#4d6842;font-size:12px;padding-top:17px;border-top:1px solid #cfd7c2;margin-bottom:0}
/* Class guide and FAQ */
.guide-section{background:#edf0e8;border-block:1px solid #dde3d6}.lesson-flow{list-style:none;margin:0 0 45px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.lesson-flow li{border-top:1px solid #abbc9d;padding-top:21px}.lesson-flow li>span{font-size:10px;color:#8d9a80}.lesson-flow h3{font-size:17px;font-weight:500;margin:14px 0 12px;letter-spacing:-.5px}.lesson-flow p{font-size:12px;line-height:1.95;color:#7b8970}.course-facts{padding:7px 28px;background:#f8faf2;margin:0}.course-facts>div{display:grid;grid-template-columns:150px 1fr;gap:25px;padding:18px 0;border-bottom:1px solid #d9e1d0}.course-facts>div:last-child{border:0}.course-facts dt{font-size:11px;color:#899a7a}.course-facts dd{margin:0;font-size:13px;color:#5b724e}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.faq h2{font-size:32px}.faq .eyebrow{font-size:10px}.faq-list{border-top:1px solid #b2bea6}.faq details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;font-size:13px;line-height:1.8}summary::-webkit-details-marker{display:none}.faq-question{display:flex;gap:15px;align-items:baseline}.faq-question b{font:italic 16px Georgia,serif;color:#9d956c}.faq-toggle{font-size:22px;color:#849176;font-weight:300;transition:transform .2s}details[open] .faq-toggle{transform:rotate(45deg)}.faq details>p{font-size:12px;color:#718265;line-height:1.95;padding:0 23px 24px 32px;position:relative}.answer-label{font:italic 15px Georgia,serif;position:absolute;left:0;top:1px;color:#9d956c}.contact-section{background:var(--dark);color:var(--paper);overflow:hidden}.contact-inner{position:relative;padding-block:74px;display:flex;align-items:center;justify-content:space-between;gap:45px;isolation:isolate}.contact-section .eyebrow{color:#9eae8f;font-size:9px}.contact-section h2{font-size:38px;color:#edead7;line-height:1.6}.contact-section p:not(.eyebrow){font-size:12px;color:#a9b69b;line-height:1.95;margin-top:22px}.contact-section .button{min-width:210px;white-space:nowrap}.contact-watermark{position:absolute;right:-8px;bottom:-70px;font:230px Georgia,serif;letter-spacing:-10px;color:#b1c19f0b;z-index:-1}.footer{padding-block:38px;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer .brand{font-size:12px}.footer .brand-mark{font-size:39px;width:36px}.footer .brand-mark>span{font-size:29px}.footer .brand small{font-size:6px}.footer>p{font-size:10px;color:#8c9580}.footer>small{font:10px Georgia,serif;color:#929c87}
/* Dialogs */
.dialog{border:1px solid #ced7bf;padding:36px;background:var(--paper);color:var(--ink);width:min(540px,calc(100% - 32px));max-height:90dvh;box-shadow:0 25px 80px #12291d33;overscroll-behavior:contain}.dialog::backdrop{background:#0e261e99;backdrop-filter:blur(5px)}body:has(dialog[open]){overflow:hidden}.close-dialog{position:absolute;right:13px;top:11px;width:40px;height:40px;font-size:29px;font-weight:300;color:#79876c}.dialog .eyebrow{font-size:9px;margin:5px 0 14px}.dialog h2{font-family:var(--sans);font-size:26px;letter-spacing:-.8px;font-weight:500}.dialog-description{font-size:12px;line-height:1.85;color:#78846b;margin-top:12px}.book-dialog,.review-dialog{width:min(820px,calc(100% - 32px))}.sample-controls{display:flex;align-items:center;gap:14px;margin:22px 0 18px;padding-bottom:16px;border-bottom:1px solid var(--line)}.sample-controls button{width:38px;height:38px;border:1px solid #cbd5bf;font-size:18px}.sample-controls button:disabled{opacity:.3;cursor:default}.sample-controls p{font:14px Georgia,serif;min-width:32px;text-align:center}.sample-controls a{font-size:11px;margin-left:auto;border-bottom:1px solid #8e9c7b}.actual-sample{background:#fff}.actual-sample img,.review-dialog>img{width:100%;height:auto}.review-dialog>img{margin-top:23px}.preview-notice{background:#e7ecdf;color:#748468;font-size:11px;line-height:1.9;padding:13px 15px;margin-top:20px}.dialog label{display:block;font-size:12px;margin:17px 0 8px}.optional{font-size:10px;color:#929f86;margin-left:7px}.dialog select,.dialog textarea{background:var(--white);border:1px solid #cfd9c4;width:100%;padding:11px 13px;font-size:14px;line-height:1.6}.dialog textarea{resize:vertical;min-height:100px}.dialog textarea::placeholder{color:#a0aa95}.copy-button{margin-top:22px;width:100%}#copy-status{font-size:11px;margin-top:12px;color:#72835e;line-height:1.9}#copy-status textarea{margin-top:10px}
/* Responsive composition */
@media(min-width:1500px){.hero-inner{min-height:700px}.hero h1{font-size:63px}.hero-visual{height:600px}}
@media(max-width:1120px){.wrap{width:calc(100% - 70px)}.header-inner{width:calc(100% - 60px)}.header nav{gap:18px}.header nav>a{font-size:11px}.brand{font-size:13px}.brand small{font-size:6px}.hero-inner{gap:25px;min-height:590px}.hero h1{font-size:48px}.hero-desc{font-size:14px}.hero-visual{height:510px;border-radius:150px 0 0 0}.visual-topline{padding-left:42px;font-size:7px}.visual-topline span:last-child{display:none}.hero-graphic{inset:60px -15px 70px -15px}.visual-caption p{font-size:21px}.visual-caption>span{font-size:9px}.visual-word{font-size:84px}.hero-actions{gap:20px}.button{padding:15px 19px;font-size:11px;gap:25px}.proof-strip>div{padding-inline:20px}.proof-strip .proof-word{font-size:16px}.proof-strip p{font-size:9px}.philosophy{gap:55px}.philosophy h2{font-size:30px}.philosophy-copy .large-copy{font-size:21px}.teacher-layout{gap:45px}.teacher-identity{padding:30px;min-height:520px}.teacher-identity h3{font-size:24px}.teacher-identity>p{font-size:11px}.identity-signature{font-size:15px}.identity-signature span{font-size:8px}.record-intro{font-size:20px}.credentials>div{gap:16px;grid-template-columns:70px 1fr}.credentials dd{font-size:12px}.six-perspectives{gap:30px}.six-perspectives ol{gap:26px 18px}.demo-content{padding:25px 28px}.demo-content h3{font-size:23px}.demo-problem{font-size:14px}.demo-graph{height:310px}.demo-equation{font-size:18px}.curriculum-panel{gap:55px}.review-card blockquote{font-size:16px}.contact-section h2{font-size:34px}}
@media(max-width:850px){.header nav>a{display:none}.header{height:78px}.mobile-sections{display:flex;position:sticky;top:78px;z-index:19;background:#f6f3ebf5;border-bottom:1px solid var(--line);justify-content:space-around;padding-inline:24px;backdrop-filter:blur(14px)}.mobile-sections a{font-size:11px;padding:12px 6px;white-space:nowrap}.wrap{width:calc(100% - 48px)}html{scroll-padding-top:141px}.hero-inner{min-height:550px;gap:20px}.hero h1{font-size:40px;letter-spacing:-2px}.hero-copy .eyebrow{font-size:8px;margin-bottom:30px;letter-spacing:1.5px}.hero-subject{font-size:10px}.hero-desc{font-size:12px}.hero-byline{font-size:10px}.hero-actions{gap:17px;flex-wrap:wrap}.hero-actions .text-link{font-size:10px}.hero-visual{height:465px;border-radius:130px 0 0 0;padding:24px}.hero-graphic{inset:70px -28px 80px -28px}.visual-caption{left:24px;right:24px;bottom:65px}.visual-caption p{font-size:19px}.visual-caption>span{display:none}.visual-word{font-size:70px;bottom:-10px}.proof-strip{grid-template-columns:.65fr .6fr 1.2fr 1fr}.proof-strip>div{padding-inline:13px}.proof-strip strong{font-size:32px}.proof-strip .proof-word{font-size:13px;padding-top:6px;line-height:1.7}.proof-strip p{font-size:8px;margin-top:10px}.section{padding-block:80px}h2{font-size:34px}.section-head{gap:25px;margin-bottom:35px}.section-note{font-size:11px}.philosophy{gap:40px}.philosophy h2{font-size:26px}.philosophy-copy p{font-size:12px}.philosophy-copy .large-copy{font-size:18px}.philosophy-copy blockquote{font-size:13px;padding-left:18px;margin:25px 0}.location-note{max-width:240px;font-size:9px}.teacher-layout{gap:30px;grid-template-columns:.9fr 1fr}.teacher-identity{padding:26px;min-height:510px}.identity-overline{font-size:6px;letter-spacing:1.3px}.identity-monogram{font-size:150px;letter-spacing:-23px;margin-block:20px}.identity-monogram span{font-size:115px}.teacher-identity h3{font-size:22px}.record-intro{font-size:18px}.credentials>div{grid-template-columns:59px 1fr;gap:10px;padding-block:18px}.credentials dt{font-size:10px}.credentials dd{font-size:11px}.identity-signature{display:block;line-height:1.8}.identity-signature span{display:block;margin-top:5px}.six-perspectives{grid-template-columns:.8fr 1.3fr}.six-perspectives h3{font-size:20px}.six-perspectives p{font-size:11px}.six-perspectives ol{grid-template-columns:repeat(2,1fr);gap:20px}.six-perspectives li{font-size:16px}.six-perspectives li>small{font-size:9px}.lesson-demo{grid-template-columns:1fr 1fr}.demo-board{padding:20px}.demo-problem{font-size:13px}.board-label{font-size:8px}.demo-graph{height:300px}.demo-content{padding:20px}.approach-tabs{gap:15px}.approach-tabs button{font-size:10px}.demo-content h3{font-size:20px}.demo-content [role=tabpanel]>p:not(.eyebrow){font-size:12px}.demo-equation{font-size:16px;line-height:1.9}.demo-next{margin-top:22px}.demo-next p{font-size:10px}.demo-content .demo-takeaway{font-size:11px!important}.board-caption{font-size:9px}.method-principles{gap:23px}.method-principles h3{font-size:15px}.method-principles p{font-size:11px}.curriculum-panel{gap:40px;padding-inline:0}.curriculum-summary h3{font-size:25px}.curriculum-summary>p{font-size:12px}.curriculum-tabs button{padding-inline:15px}.course-purpose{gap:30px;padding-inline:0}.course-purpose>div{display:block}.course-purpose p{font-size:11px;margin-top:10px}.curriculum-footnote{margin-left:0}.book-explanation{gap:25px}.book-explanation h3{font-size:15px}.book-explanation p{font-size:11px}.material-grid{gap:25px}.material-image{height:300px}.material-body{padding:23px}.material-body h3{font-size:19px}.material-body p{font-size:12px}.difference-list article{grid-template-columns:25px .75fr 1.3fr;gap:20px}.difference-list h3{font-size:18px}.difference-list article>div>p{font-size:12px}.review-grid{gap:24px}.review-card blockquote{font-size:15px}.review-meta p{font-size:10px;flex-wrap:wrap}.student-story{padding:30px;gap:30px}.student-story h3{font-size:20px}.story-body p{font-size:11px}.lesson-flow{gap:22px}.lesson-flow h3{font-size:15px}.lesson-flow p{font-size:11px}.faq{gap:35px}.faq h2{font-size:27px}.faq summary{font-size:12px}.contact-section h2{font-size:29px}.contact-inner{gap:30px}.contact-section .button{min-width:185px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.header{height:72px}.header-inner{width:calc(100% - 36px);gap:10px}.brand{font-size:12px;gap:10px}.brand-mark{font-size:40px;width:37px}.brand-mark>span{font-size:30px}.brand small{font-size:6px;letter-spacing:1.3px;margin-top:5px}.nav-contact{font-size:10px;padding:10px 12px;margin:0}.nav-contact span{margin-left:12px}.mobile-sections{top:72px;padding-inline:11px}.mobile-sections a{font-size:10px;padding:11px 5px}html{scroll-padding-top:130px}.hero-inner{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding-top:40px;padding-bottom:28px}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:8px;margin-bottom:29px;letter-spacing:1.9px}.hero-subject{font-size:10px;margin-bottom:13px}.hero h1{font-size:clamp(36px,10vw,51px);letter-spacing:-2.5px;line-height:1.48}.hero-desc{font-size:13px;margin-top:23px;line-height:1.95}.hero-byline{font-size:10px;margin-top:15px}.hero-actions{gap:25px;margin-top:25px;flex-wrap:nowrap}.hero-actions .button{font-size:11px;min-height:50px;padding:13px 17px;gap:18px}.hero-actions .text-link{font-size:11px;gap:15px}.hero-visual{align-self:stretch;height:370px;border-radius:100px 0 0 0;padding:22px 23px;margin-top:12px}.visual-topline{font-size:7px;padding-left:35px;letter-spacing:2px}.visual-topline span:last-child{display:initial;font-size:6px;letter-spacing:.8px}.hero-graphic{inset:26px -22px 34px 12px;transform:rotate(-8deg)}.visual-caption{bottom:43px;left:25px;right:22px}.visual-caption p{font-size:18px}.visual-caption>span{display:block;font-size:8px}.visual-word{font-size:66px;bottom:-19px;right:-5px}.hero-bottom{font-size:9px;padding-block:17px}.hero-bottom a>span{margin-left:10px;font-size:14px}.proof-strip{grid-template-columns:1fr 1fr;padding-block:0 25px;gap:0}.proof-strip>div{border:0;padding:24px 0 0}.proof-strip>div:nth-child(even){padding-left:25px}.proof-strip strong{font-size:36px}.proof-strip .proof-word{font-size:14px;padding:0;line-height:1.65;letter-spacing:-.6px}.proof-strip p{font-size:9px;margin-top:8px}.proof-strip>div:nth-child(n+3){margin-top:23px;border-top:1px solid var(--line);padding-top:20px}.section{padding-block:65px}h2{font-size:28px;line-height:1.65;letter-spacing:-1.3px}.section-head{display:block;margin-bottom:28px}.section-head .eyebrow,.section-heading>.eyebrow{font-size:9px;margin-bottom:17px;letter-spacing:1.7px}.section-note{font-size:11px;margin-top:20px;line-height:1.9}.section-intro{font-size:12px;line-height:1.95;margin:-5px 0 28px}.philosophy{grid-template-columns:1fr;gap:35px}.philosophy h2{font-size:29px;line-height:1.65}.location-note{max-width:250px;margin-top:26px}.location-note small{font-size:9px}.philosophy-copy p{font-size:13px;line-height:2}.philosophy-copy .large-copy{font-size:20px;margin-bottom:23px}.philosophy-copy blockquote{font-size:13px;line-height:2;padding:16px 0 16px 18px;margin:27px 0}.teacher-layout{grid-template-columns:1fr;gap:35px}.teacher-section .section-head{display:flex;gap:15px;align-items:end}.teacher-section .section-note{font-size:9px;text-align:right;margin:0;white-space:nowrap}.teacher-identity{padding:27px;min-height:0}.identity-overline{font-size:7px}.identity-monogram{font-size:150px;letter-spacing:-22px;position:absolute;right:25px;top:65px;opacity:.24;margin:0;z-index:-1}.identity-monogram span{font-size:115px}.teacher-identity h3{font-size:27px;margin-top:42px}.teacher-identity>p{font-size:12px;max-width:320px;line-height:2;margin-top:20px}.identity-signature{display:flex;align-items:center;font-size:16px;margin-top:28px;padding-top:20px}.identity-signature span{font-size:8px;margin:0}.record-intro{font-size:20px;margin-bottom:17px}.credentials>div{grid-template-columns:65px 1fr;gap:16px;padding:18px 0}.credentials dt{font-size:10px}.credentials dd{font-size:12px;line-height:2}.six-perspectives{grid-template-columns:1fr;gap:27px;margin-top:38px;padding-top:28px}.six-perspectives h3{font-size:22px}.six-perspectives h3 br{display:none}.six-perspectives p{font-size:11px;margin-top:12px}.six-perspectives ol{grid-template-columns:repeat(2,1fr);gap:22px 20px}.six-perspectives li{font-size:17px}.six-perspectives li>small{font-size:10px}.lesson-demo{grid-template-columns:1fr}.demo-board{padding:22px 21px 16px}.board-label{font-size:9px}.demo-problem{font-size:14px;margin-top:19px}.demo-graph{height:255px;margin-top:0}.board-caption{font-size:9px}.demo-content{padding:21px}.approach-tabs{gap:23px}.approach-tabs button{font-size:11px}.demo-content [role=tabpanel]{padding-top:24px}.demo-content h3{font-size:23px;margin-bottom:16px}.demo-content [role=tabpanel]>p:not(.eyebrow){font-size:13px}.demo-equation{font-size:21px;padding:17px 0}.demo-content .demo-takeaway{font-size:12px!important}.demo-next{margin-top:24px;padding-top:18px}.demo-next p{font-size:11px}.method-principles{grid-template-columns:1fr;gap:20px;margin-top:28px}.method-principles article{padding-left:36px}.method-principles article>span{font-size:17px;top:2px}.method-principles h3{font-size:17px;margin-bottom:6px}.method-principles p{font-size:12px}.curriculum-section .section-note{display:none}.curriculum-tabs{margin-top:28px}.curriculum-tabs button{padding:16px 8px;font-size:15px}.curriculum-tabs button>span{font-size:11px;margin-left:8px}.curriculum-panel{grid-template-columns:1fr;gap:32px;padding-top:28px}.tag{font-size:9px}.curriculum-summary h3{font-size:27px;margin:20px 0 17px}.curriculum-summary>p{font-size:13px;max-width:none}.curriculum-books{margin-top:20px;padding-top:17px}.curriculum-books>p{font-size:12px}.course-steps h4{font-size:16px}.course-steps p{font-size:12px}.course-steps>div{gap:20px;padding:17px 0}.checkpoint{padding:17px 18px}.course-purpose{grid-template-columns:1fr;gap:20px;margin-top:28px;padding-top:24px}.course-purpose>div{display:grid;grid-template-columns:65px 1fr;gap:15px}.course-purpose p{font-size:11px;margin:0}.curriculum-footnote{font-size:9px;margin-top:25px}.book-explanation{grid-template-columns:1fr;gap:19px;margin-bottom:30px}.book-explanation>div{position:relative;padding-left:60px}.book-explanation>div>span{position:absolute;left:0;top:3px;font-size:9px;max-width:45px;line-height:1.8}.book-explanation h3{font-size:16px;margin:0 0 6px}.book-explanation p{font-size:12px}.material-grid{grid-template-columns:1fr;gap:27px}.material-image{height:310px;padding-top:25px}.material-image img{width:260px;max-width:72%}.material-body{padding:24px}.material-body h3{font-size:21px;margin-top:10px}.material-body p{font-size:12px}.material-body .text-link{font-size:11px;margin-top:13px}.material-note{font-size:10px}.difference-section .section-note{display:none}.difference-intro{font-size:13px;margin:0 0 25px}.difference-list article{grid-template-columns:28px 1fr;gap:13px 15px;padding-block:24px}.difference-list article>div{grid-column:2}.difference-list h3{font-size:20px}.difference-list h3 br{display:none}.difference-list article>div>p{font-size:13px}.difference-example{font-size:10px;margin-top:11px}.difference-number{font-size:19px}.review-grid{grid-template-columns:1fr;gap:28px}.review-card{padding-top:20px}.review-card:before{font-size:60px}.review-card blockquote{font-size:18px;margin-bottom:23px;line-height:1.9}.review-meta p{font-size:11px}.review-meta .text-link{font-size:11px}.review-note{font-size:9px}.student-story{grid-template-columns:1fr;gap:23px;padding:26px 24px;margin-top:30px}.student-story h3{font-size:23px}.story-label{margin-bottom:12px}.story-caption{font-size:9px;margin-top:11px}.story-body p{font-size:12px}.story-body .story-takeaway{font-size:12px}.lesson-flow{grid-template-columns:1fr 1fr;gap:25px 24px;margin-bottom:30px}.lesson-flow li{padding-top:16px}.lesson-flow h3{font-size:16px;margin:11px 0 9px}.lesson-flow p{font-size:12px}.lesson-flow li>span{font-size:9px}.course-facts{padding:0 21px}.course-facts>div{grid-template-columns:1fr;gap:6px;padding-block:18px}.course-facts dt{font-size:10px}.course-facts dd{font-size:12px}.faq{grid-template-columns:1fr;gap:27px}.faq h2{font-size:28px}.faq .eyebrow{font-size:9px;margin-bottom:15px}.faq summary{font-size:12px;padding:20px 0;gap:14px}.faq-question{gap:12px}.faq-question b{font-size:15px}.faq details>p{font-size:12px;padding:0 17px 21px 28px}.contact-inner{display:block;padding-block:55px 60px}.contact-section .eyebrow{font-size:8px;letter-spacing:1.6px}.contact-section h2{font-size:28px}.contact-section p:not(.eyebrow){font-size:12px;margin-top:20px}.contact-section .button{margin-top:28px;min-width:210px;min-height:53px}.contact-watermark{font-size:155px;bottom:-30px;right:-13px;letter-spacing:-8px}.footer{padding-block:29px 34px;flex-wrap:wrap;gap:25px 12px}.footer .brand{font-size:12px}.footer>p{font-size:9px;flex-basis:100%;order:3;margin-top:-12px;padding-left:47px}.footer>small{font-size:8px;max-width:105px;text-align:right}.dialog{padding:28px 21px;max-height:88dvh}.dialog h2{font-size:22px}.dialog-description{font-size:11px}.dialog .eyebrow{font-size:8px}.dialog select,.dialog textarea{font-size:16px}.sample-controls{gap:10px}.sample-controls a{font-size:10px}.sample-controls button{width:34px;height:36px}.sample-controls p{font-size:12px}.preview-notice{font-size:10px}}
@media(max-width:360px){.hero h1{font-size:34px;letter-spacing:-2px}.hero-actions{gap:17px}.hero-actions .button{padding:13px 14px;gap:13px;font-size:10px}.hero-actions .text-link{font-size:10px}.hero-visual{height:335px}.visual-topline span:last-child{display:none}.visual-caption>span{font-size:7px}.hero-bottom{font-size:8px}.proof-strip .proof-word{font-size:12px}.proof-strip p{font-size:8px}.philosophy h2{font-size:26px}.teacher-section .section-head{display:block}.teacher-section .section-note{text-align:left;margin-top:18px}.teacher-identity h3{font-size:24px}.identity-signature{font-size:14px}.identity-signature span{font-size:7px}.credentials>div{grid-template-columns:56px 1fr;gap:11px}.credentials dd{font-size:11px}.demo-problem{font-size:12px}.demo-equation{font-size:18px}.demo-graph{height:230px}.curriculum-tabs button>span{font-size:10px;margin-left:6px}.lesson-flow h3{font-size:14px}.lesson-flow p{font-size:11px}.contact-section h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Keep long-form text readable against the warm paper surfaces. */
:root{--muted:#626d60}
.book-explanation p,.material-body p,.method-principles p,.story-body p,.lesson-flow p,.faq details>p,.dialog-description{color:#596952}
/* The instructor's own teaching materials are part of the visual identity. */
.philosophy-pages{display:block;position:relative;width:100%;max-width:380px;height:255px;margin-top:34px;isolation:isolate;text-align:left;background:linear-gradient(135deg,#e8e9de00,#e8e9de99);overflow:hidden}
.philosophy-pages img{position:absolute;width:170px;box-shadow:5px 10px 24px #24332621;border:1px solid #dce1d7;transition:transform .35s}.philosophy-pages .page-behind{left:30px;top:15px;transform:rotate(-9deg)}.philosophy-pages .page-in-front{right:34px;top:29px;transform:rotate(7deg);width:190px}.philosophy-pages:hover .page-in-front{transform:rotate(2deg) translateY(-7px)}.philosophy-pages>span{position:absolute;bottom:0;left:0;right:0;padding:10px 13px;background:#f6f3ebf0;border-top:1px solid #d9dfd0;font-size:9px;color:#6a7b5c;backdrop-filter:blur(5px)}
.original-shelf{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding:35px 45px 31px;margin-bottom:47px;background:#e9e9df;border-bottom:1px solid #d1d7c7}.shelf-cover{display:block;width:100%;max-width:200px;margin:auto;position:relative;padding:0;perspective:900px}.shelf-cover img{width:100%;height:auto;box-shadow:8px 10px 18px #1c332328,2px 0 0 #d4d7cf;transform:rotateY(-8deg);transform-origin:left;transition:transform .3s,box-shadow .3s}.shelf-cover:hover img{transform:rotateY(0) translateY(-5px);box-shadow:9px 16px 23px #1c332330}.shelf-cover>span{position:absolute;bottom:12px;right:12px;background:#f6f3ebdd;color:#294d3a;font-size:14px;width:29px;height:29px;line-height:29px;border-radius:50%}.shelf-copy{max-width:235px;margin:25px auto 0}.shelf-copy>span{font-size:9px;color:#809075}.shelf-copy h3{font-size:16px;font-weight:500;line-height:1.6;margin:6px 0 10px;letter-spacing:-.4px}.shelf-copy p{font-size:11px;color:#66765b;line-height:1.85}.materials-subhead{display:flex;align-items:center;gap:0;margin-bottom:27px}.materials-subhead h3{font-size:18px;font-weight:500;letter-spacing:-.5px}.materials-subhead .small-line{margin-right:13px}
@media(max-width:850px){.philosophy-pages{height:225px}.philosophy-pages .page-behind{width:142px;left:10px}.philosophy-pages .page-in-front{width:155px;right:15px}.original-shelf{gap:28px;padding:30px}.shelf-copy h3{font-size:14px}.shelf-copy p{font-size:10px}.shelf-copy>span{font-size:8px}}
@media(max-width:600px){.philosophy-pages{height:232px;max-width:350px;margin-top:28px}.philosophy-pages .page-behind{width:154px;left:28px;top:13px}.philosophy-pages .page-in-front{width:174px;right:29px;top:22px}.philosophy-pages>span{font-size:9px;padding:10px 12px}.original-shelf{gap:16px;padding:25px 16px 23px;margin-bottom:32px}.shelf-cover img{box-shadow:5px 6px 12px #1c332328}.shelf-cover>span{width:23px;height:23px;line-height:23px;font-size:12px;right:6px;bottom:7px}.shelf-copy{margin-top:16px}.shelf-copy>span{font-size:7px;line-height:1.8;display:block}.shelf-copy h3{font-size:11px;line-height:1.7;letter-spacing:-.25px;margin:5px 0 0}.shelf-copy p{display:none}.materials-subhead{margin-bottom:23px}.materials-subhead h3{font-size:16px}}
@media(max-width:360px){.original-shelf{padding:20px 12px;gap:12px}.shelf-copy h3{font-size:10px}.shelf-copy>span{font-size:6px}.philosophy-pages .page-behind{left:15px}.philosophy-pages .page-in-front{right:15px}}
/* Personal study archive: original photographs, with full-size viewing. */
/* Actual teaching materials lead the homepage. */
.hero-editorial{height:570px;position:relative;isolation:isolate;padding:27px 29px 29px;background:linear-gradient(130deg,#eeeee6,#dbdfd4 70%,#e6e8de);border:1px solid #d7dcd0;overflow:hidden;align-self:center}.hero-editorial:before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,transparent 42%,#fefdf878 42.2%,#fefdf800 81%);z-index:-1}.editorial-topline{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#6f7b68;letter-spacing:1.8px;font-size:8px}.editorial-topline>span:last-child{letter-spacing:.5px;font-size:9px}.hero-books{position:absolute;inset:62px 13px 104px;perspective:1100px}.book-ground{position:absolute;bottom:14px;left:14%;width:78%;height:50px;border-radius:50%;background:#1f332837;filter:blur(19px);transform:rotate(-7deg)}.hero-book{position:absolute;padding:0;transform-style:preserve-3d;transition:transform .35s;isolation:isolate}.hero-book img{width:100%;height:auto;box-shadow:9px 17px 27px #20352b29,2px 2px 2px #ffffff80;position:relative;z-index:1}.hero-book-edge{position:absolute;inset:1px -5px -5px 4px;background:repeating-linear-gradient(0deg,#e2e2d9 0px,#e2e2d9 1px,#f8f8f3 1px,#f8f8f3 3px);box-shadow:3px 5px 7px #33402c26;transform:translateZ(-2px);border:1px solid #d0d4c8}.hero-book-back{width:43%;left:7%;top:2%;transform:rotate(-11deg) rotateY(6deg);z-index:1}.hero-book-front{width:48%;right:8%;top:13%;transform:rotate(8deg) rotateY(-8deg);z-index:2}.hero-book-back:hover{transform:rotate(-7deg) rotateY(0deg) translateY(-9px)}.hero-book-front:hover{transform:rotate(4deg) rotateY(-3deg) translateY(-9px)}.hero-book-open{position:absolute;right:14px;bottom:13px;width:29px;height:29px;border:1px solid #c6bc9280;border-radius:50%;color:#d6c393;font-size:15px;line-height:27px;z-index:3}.editorial-caption{position:absolute;bottom:26px;left:29px;right:29px;border-top:1px solid #aeb9a480;padding-top:19px;display:flex;align-items:end;justify-content:space-between;gap:20px}.editorial-caption p{font:400 19px/1.6 var(--serif);letter-spacing:-.6px}.editorial-caption strong{font-weight:500}.editorial-caption a{font-size:9px;color:#52654c;line-height:1.9;padding-bottom:3px}.editorial-caption a>span{margin-left:8px}
@media(max-width:1000px) and (min-width:601px){.hero-editorial{height:490px;padding-inline:20px}.editorial-topline{font-size:7px;letter-spacing:1px}.editorial-topline>span:last-child{font-size:8px}.hero-books{inset:83px 0 95px}.hero-book-back{width:46%;left:6%}.hero-book-front{width:51%;right:6%;top:17%}.editorial-caption{left:20px;right:20px;bottom:22px;gap:8px}.editorial-caption p{font-size:16px}.editorial-caption a{font-size:8px;max-width:90px}}
@media(max-width:600px){.hero-editorial{height:430px;align-self:stretch;margin-top:11px;padding:22px}.editorial-topline{font-size:7px;letter-spacing:1.4px}.editorial-topline>span:last-child{font-size:8px}.hero-books{inset:55px 8px 92px}.hero-book-back{width:42%;left:8%;top:1%}.hero-book-front{width:47%;right:8%;top:11%}.editorial-caption{left:22px;right:22px;bottom:20px;padding-top:15px;gap:15px}.editorial-caption p{font-size:17px}.editorial-caption a{font-size:8px;max-width:85px}.hero-book-open{width:24px;height:24px;line-height:22px;font-size:13px;right:10px;bottom:10px}.archive-reflection{font-size:17px}}
@media(max-width:400px){.hero-editorial{height:375px;padding:19px}.hero-books{inset:52px 4px 90px}.hero-book-back{width:44%;left:7%}.hero-book-front{width:49%;right:7%;top:10%}.editorial-caption{left:19px;right:19px;bottom:19px;padding-top:14px}.editorial-caption p{font-size:16px}.editorial-topline{font-size:6px;letter-spacing:1.1px}.editorial-topline>span:last-child{font-size:7px}}
.archive-reflection{font:400 19px/1.9 var(--serif);letter-spacing:-.5px;border-left:1px solid #b7a172;margin-top:26px;padding:3px 0 3px 22px;color:#607052}.archive-reflection strong{font-weight:500;color:var(--ink)}
.origin-heading{align-items:end;margin-bottom:40px}.origin-heading h2{font-size:38px}.origin-place{padding-bottom:7px;text-align:right}.origin-place>span{font-size:9px;letter-spacing:1.6px;color:#8c774e}.origin-place p{font-size:11px;color:#697461;margin-top:8px}
.origin-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:start}.origin-archive{min-width:0}.origin-main{background:var(--dark)}.origin-main>button{display:block;padding:0;width:100%;position:relative;overflow:hidden}.origin-main img{width:100%;height:auto}.photo-expand{position:absolute;right:15px;bottom:15px;width:31px;height:31px;display:grid;place-items:center;background:#f6f3ebdf;color:var(--ink);border-radius:50%;font-size:17px}.origin-main figcaption{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 19px;color:#c8d1be;font-size:10px}.origin-main figcaption>span:first-child{font-size:8px;color:#acb699;letter-spacing:1.4px}
.origin-thumbnails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:15px}.origin-thumbnails>button{display:block;padding:0;text-align:left;min-width:0}.origin-thumbnails img{width:100%;height:119px;object-fit:cover;object-position:center 54%;transition:opacity .2s}.origin-thumbnails>button:nth-child(2) img{object-position:center 42%}.origin-thumbnails>button:hover img,.origin-main>button:hover img{opacity:.88}.origin-thumbnails>button>span{display:flex;justify-content:space-between;gap:7px;font-size:9px;margin-top:9px;line-height:1.7;color:#596b57}.origin-thumbnails b{font-weight:400;font-size:12px}.archive-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:18px;border-top:1px solid var(--line);padding-top:8px}.archive-bottom p{font-size:9px;color:#74806c}.archive-bottom .text-link{font-size:10px;gap:14px;flex-shrink:0}
.origin-copy>p{font-size:13px;color:#596952;line-height:2.05;margin-top:19px}.origin-copy .origin-lead{font:500 25px/1.65 var(--serif);letter-spacing:-.8px;color:var(--ink);margin:0 0 24px}.origin-copy strong{font-weight:600;color:var(--ink)}.origin-bridge{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;margin-top:40px;padding-top:30px;border-top:1px solid #bdc5b2}.origin-bridge .eyebrow{font-size:9px;letter-spacing:.7px;color:#9b7e45;margin-bottom:14px}.origin-bridge h3{font:400 18px/1.9 var(--serif);letter-spacing:-.5px}.origin-bridge h3 strong{font-weight:600}.origin-bridge>div>p:not(.eyebrow){font-size:12px;line-height:1.95;color:#596952}.origin-bridge .text-link{font-size:11px;margin-top:8px;padding-bottom:0}
.archive-dialog{width:min(1100px,calc(100% - 40px));max-width:1100px;padding:32px 36px}.archive-dialog h2{font-size:26px}.archive-dialog .eyebrow{margin-bottom:12px}.archive-dialog .dialog-description{margin:12px 0 20px}.archive-viewer img{width:100%;height:54dvh;min-height:200px;object-fit:contain;background:#e7e8df}.archive-viewer figcaption{font-size:12px;color:#596952;padding:15px 0;line-height:1.8}.archive-controls{display:flex;align-items:center;gap:17px;border-top:1px solid var(--line);padding-top:14px}.archive-controls>button{width:42px;height:42px;border:1px solid #b6c0ad;font-size:19px}.archive-controls>button:hover{background:#e7eadd}.archive-controls>span{font-size:12px;min-width:32px;text-align:center}.archive-controls>a{font-size:11px;margin-left:auto}.archive-controls>a>span{margin-left:10px}
@media(max-width:1000px){.origin-layout,.origin-bridge{gap:35px;grid-template-columns:1.1fr 1fr}.origin-heading h2{font-size:32px}.origin-thumbnails img{height:95px}.origin-thumbnails>button>span{font-size:8px}.origin-copy .origin-lead{font-size:22px}.origin-copy>p{font-size:12px}.origin-bridge h3{font-size:16px}.origin-place{max-width:185px}.archive-bottom{display:block}.archive-bottom .text-link{padding-block:8px}.origin-main figcaption{padding:12px;font-size:9px}.origin-main figcaption>span:first-child{font-size:7px;letter-spacing:.5px}}
@media(max-width:700px){.origin-heading{display:block;margin-bottom:27px}.origin-heading h2{font-size:29px}.origin-place{text-align:left;max-width:none;margin-top:21px;padding:0}.origin-place>span{font-size:8px;letter-spacing:1.5px}.origin-place p{display:inline;font-size:9px;margin-left:12px}.origin-layout{grid-template-columns:1fr;gap:28px}.origin-main figcaption{padding:13px 14px;font-size:9px}.origin-main figcaption>span:first-child{font-size:7px;letter-spacing:1px}.origin-thumbnails{gap:10px;margin-top:12px}.origin-thumbnails img{height:105px}.origin-thumbnails>button>span{font-size:9px;margin-top:8px}.archive-bottom{display:flex;gap:10px;margin-top:15px;padding-top:7px}.archive-bottom p{font-size:8px}.archive-bottom .text-link{font-size:9px;gap:10px}.origin-copy .origin-lead{font-size:23px;line-height:1.75;margin-bottom:18px}.origin-copy>p{font-size:13px;line-height:2;margin-top:16px}.origin-bridge{grid-template-columns:1fr;gap:19px;margin-top:29px;padding-top:24px}.origin-bridge h3{font-size:16px;line-height:1.9}.origin-bridge .eyebrow{font-size:8px;margin-bottom:12px}.origin-bridge>div>p:not(.eyebrow){font-size:12px}.origin-bridge .text-link{font-size:11px;margin-top:3px}.archive-dialog{padding:26px 20px;width:calc(100% - 24px)}.archive-dialog h2{font-size:22px}.archive-dialog .dialog-description{font-size:11px;margin-block:10px 16px}.archive-viewer img{height:48dvh;min-height:160px}.archive-viewer figcaption{font-size:11px;padding:12px 0;min-height:62px}.archive-controls{gap:11px;padding-top:12px}.archive-controls>button{width:36px;height:40px}.archive-controls>span{font-size:11px}.archive-controls>a{font-size:10px}.archive-controls>a>span{margin-left:4px}}
@media(max-width:400px){.origin-heading h2{font-size:26px}.origin-thumbnails img{height:83px}.origin-thumbnails>button>span{font-size:8px;line-height:1.7;gap:4px}.origin-thumbnails b{font-size:10px}.origin-place p{display:block;margin:5px 0 0}.origin-bridge h3{font-size:14px}.archive-bottom p{max-width:130px}.origin-main figcaption>span:first-child{letter-spacing:.5px}.photo-expand{width:27px;height:27px;right:10px;bottom:10px}}
.hero-book-front{width:44%;right:9%;top:8%}
@media(max-width:1000px) and (min-width:601px){.hero-book-front{width:47%;right:7%;top:10%}}
@media(max-width:600px){.hero-book-front{width:44%;right:9%;top:7%}.archive-reflection{font-size:17px}}
@media(max-width:600px){.hero-editorial{height:auto;min-height:340px;aspect-ratio:1/1.1}.hero-books{inset:55px 8px 100px}.hero-book-front{top:4%}}
@media(max-width:360px){.origin-heading h2{font-size:22px;letter-spacing:-1.2px}}
/* A short, interactive check of the reason behind an inequality. */
[hidden]{display:none!important}
math{font-family:"Cambria Math","STIX Two Math","Times New Roman",serif}
.concept-challenge{display:grid;grid-template-columns:1.05fr 1fr;border:1px solid #ced5c5;scroll-margin-top:25px}
.challenge-board{background:var(--dark);color:#edf0df;padding:29px 38px 35px;position:relative;overflow:hidden;isolation:isolate;min-height:425px;display:flex;flex-direction:column}
.challenge-label{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.4px;color:#b8c4ac;padding-bottom:22px;border-bottom:1px solid #76866b5c}
.challenge-prompt{font-size:16px;line-height:2;margin-top:29px;color:#e3e8d8;position:relative;z-index:1}.challenge-prompt i{font:italic 20px Georgia,serif}
.challenge-expression{font-size:54px;margin:35px auto 36px;position:relative;z-index:1;color:#ece3c5}
.challenge-board-note{font-size:11px;line-height:1.9;color:#afbea2;margin-top:auto;position:relative;z-index:1}
.challenge-mark{font:italic 170px/.9 Georgia,serif;position:absolute;bottom:-25px;right:-3px;color:#8f9d7820;z-index:0}
.challenge-answer{padding:31px 38px;background:#efeee5;min-width:0}.challenge-answer>.eyebrow{font-size:9px;margin-bottom:12px}.challenge-answer fieldset{border:0;margin:0;padding:0;min-width:0}.challenge-answer legend{font:500 23px/1.6 var(--serif);letter-spacing:-.7px;padding:0;margin-bottom:21px}.challenge-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.challenge-options label{position:relative;cursor:pointer;min-width:0}.challenge-options input{position:absolute;opacity:0;width:1px;height:1px}.challenge-options label>span{display:flex;align-items:center;gap:18px;min-height:67px;padding:12px 18px;border:1px solid #bcc7b1;background:#f7f6ef;transition:background .2s,border-color .2s}.challenge-options small{font-size:11px;font-weight:400;color:#718065}.challenge-options b{font:400 25px Georgia,serif}.challenge-options .fraction-option{font-size:22px}.challenge-options .answer-unsure{font:400 11px/1.6 var(--sans)}.challenge-options input:checked+span{border-color:var(--ink);background:#dce4d4;box-shadow:inset 0 0 0 1px var(--ink)}.challenge-options input:focus-visible+span{outline:3px solid var(--gold);outline-offset:3px}.challenge-options label:hover>span{border-color:#5e7653}.challenge-answer-note{font-size:11px;line-height:1.9;color:#64765b;margin:18px 0 16px}.challenge-answer>.button{width:100%;font-size:12px}.challenge-hint{margin-top:18px;border-top:1px solid #c9d0bf;padding-top:14px}.challenge-hint summary{font-size:10px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;color:#617556}.challenge-hint summary::-webkit-details-marker{display:none}.challenge-hint summary>span{font-size:16px;line-height:1}.challenge-hint[open] summary>span{transform:rotate(45deg)}.challenge-hint p{font-size:11px;line-height:1.9;margin-top:12px;color:#52694b}
.challenge-solution{margin-top:28px;padding:31px 34px 26px;border:1px solid #c7d0bc;background:#eeeee4;scroll-margin-top:25px}.solution-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:25px;border-bottom:1px solid #bdc8b2}.solution-heading .eyebrow{font-size:9px;margin-bottom:12px}.solution-heading h3{font:500 23px/1.7 var(--serif);letter-spacing:-.7px;outline:none}.solution-heading p:not(.eyebrow){font-size:12px;line-height:1.9;margin-top:10px;color:#5b7050}.solution-answer{padding-left:27px;border-left:1px solid #bdc8b2;display:flex;gap:25px;align-items:center;flex-shrink:0}.solution-answer>span{font-size:10px;color:#607454;white-space:nowrap}.solution-answer math{font-size:36px;min-width:34px}.solution-steps{display:grid;grid-template-columns:1fr 1.14fr 1fr;gap:35px;margin-top:30px}.solution-step{font-size:9px;color:#927747}.solution-steps h4{font:500 18px/1.7 var(--serif);margin:12px 0 18px;letter-spacing:-.6px}.solution-steps p{font-size:12px;line-height:1.95;color:#56694e;margin-top:14px}.solution-steps p strong{font-weight:600;color:var(--ink)}.solution-equation{font-size:19px;display:block;margin:22px 0;color:var(--ink);max-width:100%}.solution-math .solution-equation{font-size:17px;margin:19px 0}.solution-warning{border-left:2px solid #ad8d55;padding-left:13px}.solution-key{font-size:12px;line-height:1.9;background:#dde5d3;border-left:2px solid #677e50;padding:14px;margin-top:20px}.challenge-lesson{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:29px;padding-top:20px;border-top:1px solid #bdc8b2}.challenge-lesson p{font-size:12px;color:#596e4e;line-height:1.95;max-width:720px}.challenge-lesson strong{font-weight:600;color:var(--ink)}.challenge-lesson .text-link{font-size:10px;white-space:nowrap;gap:13px;flex-shrink:0}
/* The genuine review is visible before the visitor opens it. */
.review-source{display:flex;align-items:center;gap:18px;width:100%;padding:0;margin-top:16px;text-align:left}.review-thumbnail{width:78px;height:100px;padding:5px;background:#fff;box-shadow:2px 3px 10px #183c3214;border:1px solid #d5dccd;position:relative;flex-shrink:0;transition:transform .2s,box-shadow .2s}.review-thumbnail>img{width:100%;height:100%;object-fit:contain;object-position:top}.review-thumbnail>span{position:absolute;right:-6px;bottom:-6px;width:22px;height:22px;line-height:20px;text-align:center;border:1px solid #c3cdb8;background:var(--paper);font-size:12px;border-radius:50%}.review-source-label{font-size:11px;font-weight:500}.review-source-label>span{margin-left:10px;font-size:13px}.review-source-label small{display:block;font-weight:400;font-size:9px;color:#738169;line-height:1.8;margin-top:6px}.review-source:hover .review-thumbnail{transform:translateY(-3px);box-shadow:3px 7px 14px #183c3225}.review-source:hover .review-source-label{color:#8e743f}
@media(max-width:1000px){.challenge-board,.challenge-answer{padding:25px}.challenge-prompt{font-size:14px}.challenge-options label>span{padding-inline:13px;gap:12px}.solution-steps{grid-template-columns:1fr;gap:25px}.solution-steps>article+article{border-top:1px solid #c7d0bc;padding-top:23px}.solution-steps h4 br{display:none}.solution-steps p{font-size:13px}.solution-equation,.solution-math .solution-equation{font-size:21px}.solution-steps h4{font-size:20px}.review-source{gap:12px}.review-thumbnail{width:64px;height:86px}.review-source-label{font-size:10px}.review-source-label small{font-size:8px}.review-source-label>span{margin-left:5px}}
@media(max-width:650px){.concept-challenge{grid-template-columns:1fr}.challenge-board{min-height:320px;padding:23px}.challenge-label{font-size:9px;padding-bottom:18px}.challenge-prompt{font-size:14px;margin-top:23px}.challenge-expression{font-size:44px;margin:27px auto 28px}.challenge-board-note{font-size:10px}.challenge-mark{font-size:145px;bottom:-19px}.challenge-answer{padding:25px 23px}.challenge-answer legend{font-size:22px;margin-bottom:20px}.challenge-answer>.eyebrow{font-size:8px}.challenge-options label>span{min-height:62px;gap:15px;padding:10px 15px}.challenge-options b{font-size:23px}.challenge-options .answer-unsure{font-size:11px}.challenge-options .fraction-option{font-size:21px}.challenge-answer-note{font-size:10px}.challenge-hint summary{font-size:10px}.challenge-hint p{font-size:11px}.challenge-solution{padding:24px 21px;margin-top:19px}.solution-heading{gap:20px;align-items:start;flex-wrap:wrap;padding-bottom:21px}.solution-heading h3{font-size:20px}.solution-heading p:not(.eyebrow){font-size:12px}.solution-heading .eyebrow{font-size:8px}.solution-answer{border:0;padding:0;gap:17px}.solution-answer math{font-size:30px}.solution-steps{gap:22px;margin-top:23px}.solution-step{font-size:9px}.solution-steps h4{font-size:18px;margin:10px 0 15px}.solution-steps p{font-size:12px}.solution-equation,.solution-math .solution-equation{font-size:19px;margin:20px 0}.solution-key{font-size:11px}.challenge-lesson{display:block;margin-top:25px;padding-top:18px}.challenge-lesson p{font-size:11px}.challenge-lesson .text-link{margin-top:12px;font-size:11px}.review-source{gap:20px}.review-thumbnail{width:82px;height:104px}.review-source-label{font-size:12px}.review-source-label small{font-size:10px}.review-source-label>span{margin-left:12px}}
@media(max-width:360px){.challenge-board,.challenge-answer{padding:21px 18px}.challenge-prompt{font-size:12px}.challenge-prompt i{font-size:17px}.challenge-expression{font-size:41px}.challenge-options label>span{padding:10px;gap:10px}.challenge-options .answer-unsure{font-size:10px}.solution-equation,.solution-math .solution-equation{font-size:17px}.solution-heading h3{font-size:18px}.challenge-solution{padding:22px 17px}}
.solution-equation,.solution-math .solution-equation{display:inline math;math-style:normal;margin:0}.solution-equation-wrap{margin:22px 0}.fraction-option math{math-style:normal;font-size:25px}.solution-answer math{math-style:normal}
#challenge-feedback:focus{outline:none}
.challenge-philosophy{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding:34px 0 31px;margin-top:34px;border-top:1px solid #b8c3ad;border-bottom:1px solid var(--line)}.challenge-philosophy .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:16px;color:#927747}.challenge-philosophy h3{font:500 25px/1.8 var(--serif);letter-spacing:-.9px}.challenge-philosophy-copy p{font-size:12px;color:#596e50;line-height:2;margin-top:13px}.challenge-philosophy-copy p:first-child{margin-top:0}.challenge-philosophy-copy strong{font-weight:600;color:var(--ink)}
@media(max-width:850px){.challenge-philosophy{gap:30px;grid-template-columns:.9fr 1.1fr}.challenge-philosophy h3{font-size:22px}.challenge-philosophy .eyebrow{font-size:7px;letter-spacing:1.1px}}
@media(max-width:650px){.challenge-philosophy{grid-template-columns:1fr;gap:22px;margin-top:27px;padding:27px 0}.challenge-philosophy h3{font-size:23px}.challenge-philosophy-copy p{font-size:12px;line-height:2}.challenge-philosophy .eyebrow{font-size:7px;margin-bottom:12px}}
/* Textbook mathematics, with generous reading size and one step per row. */
@font-face{font-family:HWRMath;src:url('assets/fonts/latinmodern-math.otf') format('opentype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:HWRRoman;src:url('assets/fonts/lmroman10-italic.otf') format('opentype');font-style:italic;font-weight:400;font-display:swap}
#learn math{font-family:HWRMath,"Cambria Math",serif;math-style:normal}
#learn i{font-family:HWRRoman,"Times New Roman",serif;font-weight:400;font-style:italic;font-size:1.12em}
.challenge-prompt{font-size:18px;line-height:2.1}.challenge-label{font-size:12px}.challenge-expression{font-size:52px}.challenge-board-note{font-size:13px;line-height:1.95}.challenge-answer-note{font-size:13px;color:#435a3f}.challenge-answer>.button{font-size:14px}.challenge-hint summary{font-size:12px}.challenge-hint p{font-size:14px;line-height:2;color:#354d31}.challenge-options .answer-unsure{font-size:13px}.challenge-options label>span{min-height:76px}
.challenge-solution{background:#f1f1e9;padding:35px 39px}.solution-heading h3{font-size:27px}.solution-heading p:not(.eyebrow){font-size:15px;line-height:2;color:#354d31;max-width:750px}.solution-heading .eyebrow{font-size:10px}.solution-answer>span{font-size:12px}.solution-steps{display:block;margin-top:0}.solution-steps>article{display:grid;grid-template-columns:.7fr 1.3fr;gap:48px;padding:32px 0}.solution-steps>article+article{border-top:1px solid #c5cfbb;padding-top:32px}.solution-step{font-size:11px;color:#80683e}.solution-steps h4{font:500 23px/1.7 var(--serif);letter-spacing:-.6px;margin:14px 0 0}.solution-steps h4 br{display:initial}.solution-step-content{min-width:0}.solution-steps p{font-size:16px;line-height:2;color:#304b2e;margin-top:18px}.solution-steps p:first-child{margin-top:0}.solution-equation,.solution-math .solution-equation{font-size:28px}.solution-equation-wrap{margin:24px 0}.solution-equation-wrap:first-child{margin-top:0}.solution-warning{padding:12px 0 12px 19px}.solution-key{font-size:15px;line-height:2;margin-top:23px;padding:17px 20px}.challenge-lesson{margin-top:0;padding-top:25px}.challenge-lesson p{font-size:15px;line-height:2;color:#354d31}.challenge-lesson .text-link{font-size:12px}.challenge-philosophy-copy p{font-size:15px;line-height:2;color:#354d31}.challenge-philosophy h3{font-size:27px}.challenge-philosophy .eyebrow{font-size:9px}
@media(max-width:900px){.solution-steps>article{grid-template-columns:1fr;gap:24px}.solution-steps h4 br{display:none}.solution-heading h3{font-size:25px}.solution-equation,.solution-math .solution-equation{font-size:27px}.challenge-lesson{display:block}.challenge-lesson .text-link{margin-top:14px}.challenge-philosophy{grid-template-columns:1fr;gap:24px}}
@media(max-width:650px){.challenge-board{padding:25px 23px;min-height:350px}.challenge-prompt{font-size:16px}.challenge-label{font-size:11px}.challenge-expression{font-size:46px}.challenge-board-note{font-size:12px}.challenge-answer{padding:27px 23px}.challenge-answer legend{font-size:24px}.challenge-answer-note{font-size:12px}.challenge-hint summary{font-size:12px}.challenge-hint p{font-size:14px}.challenge-solution{padding:27px 22px}.solution-heading h3{font-size:23px;line-height:1.8}.solution-heading p:not(.eyebrow){font-size:14px}.solution-steps>article{gap:21px;padding:26px 0}.solution-steps>article+article{padding-top:26px}.solution-steps h4{font-size:21px;line-height:1.8;margin-top:10px}.solution-steps p{font-size:15px;line-height:2}.solution-equation,.solution-math .solution-equation{font-size:25px}.solution-step{font-size:10px}.solution-key{font-size:14px;padding:15px}.challenge-lesson p{font-size:14px}.challenge-philosophy-copy p{font-size:15px}.challenge-philosophy h3{font-size:25px}.challenge-options .answer-unsure{font-size:12px}.challenge-philosophy .eyebrow{font-size:8px}}
@media(max-width:380px){.challenge-board,.challenge-answer{padding:23px 18px}.challenge-prompt{font-size:15px}.challenge-options .answer-unsure{font-size:11px}.challenge-hint summary{font-size:11px}.challenge-solution{padding:24px 17px}.solution-heading h3{font-size:21px}.solution-steps h4{font-size:19px}.solution-equation,.solution-math .solution-equation{font-size:22px}.solution-steps p{font-size:14px}.challenge-philosophy-copy p{font-size:14px}}
.equation-flex{display:flex;align-items:center;flex-wrap:wrap;gap:15px 8px}
.answer-entry-heading{font:500 25px/1.6 var(--serif);letter-spacing:-.7px}.answer-entry-intro{font-size:14px;line-height:2;color:#405b38;margin-top:17px}.answer-entry-label{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:500;margin-top:25px}.answer-entry-label>span{font-size:11px;color:#66755e;font-weight:400}#lesson-answer{width:100%;min-height:58px;padding:13px 16px;margin-top:10px;border:1px solid #aab99e;border-radius:0;background:#fffdf8;font:25px HWRMath,serif}#lesson-answer::placeholder{font:13px var(--sans);color:#76856b}#lesson-answer[aria-invalid=true]{border-color:#92633b}#answer-entry-error{font-size:12px;color:#85572e;line-height:1.8;margin-top:8px}#answer-entry-error:empty{display:none}.challenge-answer-note{margin-top:16px}
@media(max-width:650px){.answer-entry-heading{font-size:23px}.answer-entry-intro{font-size:14px}.answer-entry-label{font-size:12px}.answer-entry-label>span{font-size:10px}}

/* The instructor’s path from Beijing to CSAT teaching. */
.teacher-journey{margin-top:60px;border-top:1px solid #bdc9b3;padding-top:39px}.journey-heading{display:flex;align-items:start;justify-content:space-between;gap:25px;margin-bottom:31px}.journey-heading .eyebrow{font-size:10px;margin-top:9px}.journey-heading h3{font:500 27px/1.7 var(--serif);letter-spacing:-.8px}.journey-stages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.journey-stages li{border-top:2px solid #8b9c7e;padding-top:23px}.journey-period{font-size:11px;letter-spacing:.7px;color:#6b7e5e}.journey-stages h4{font-size:17px;line-height:1.8;font-weight:500;margin:16px 0 13px;letter-spacing:-.5px}.journey-stages p{font-size:14px;line-height:2;color:#40563a;word-break:keep-all;overflow-wrap:break-word}.solution-steps .solution-side-note{font-size:14px;line-height:1.9;color:#607454;margin-top:19px}.solution-steps>article{scroll-margin-top:110px}
@media(max-width:900px){.journey-stages{grid-template-columns:1fr;gap:25px}.journey-stages li{display:grid;grid-template-columns:1fr 1.8fr;gap:7px 28px}.journey-period{grid-column:1}.journey-stages h4{grid-column:1;margin:0}.journey-stages p{grid-column:2;grid-row:1 / 3}.journey-heading h3{font-size:24px}.solution-steps .solution-side-note br{display:none}.solution-steps .solution-side-note{margin-top:9px}}
@media(max-width:600px){.teacher-journey{margin-top:39px;padding-top:29px}.journey-heading{display:block;margin-bottom:25px}.journey-heading .eyebrow{font-size:9px;margin:0 0 17px}.journey-heading h3{font-size:24px}.journey-stages li{display:block;padding-top:20px}.journey-stages h4{font-size:17px;margin:13px 0 10px}.journey-stages p{font-size:14px}.journey-period{font-size:10px}}

/* Five books, with coordinated Math I jackets and real sample interiors. */
.hero-editorial.five-book-editorial{height:auto;min-height:0;aspect-ratio:auto;width:100%;padding:25px 27px 24px}.five-book-shelf{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 18px;margin:28px 0 25px;padding:0 9px}.hero-shelf-book{grid-column:span 2;min-width:0;padding:0;text-align:left;align-self:start;transition:transform .25s}.hero-shelf-book:nth-child(4){grid-column:2 / span 2}.hero-shelf-book:nth-child(5){grid-column:4 / span 2}.hero-shelf-book:hover{transform:translateY(-6px)}.hero-shelf-cover{display:block;position:relative;aspect-ratio:952 / 1348;box-shadow:5px 8px 13px #142b2b27,2px 1px 0 #dddcd3;border-right:3px solid #c8ccca;overflow:hidden}.hero-shelf-cover img{width:100%;height:100%;object-fit:contain;display:block}.hero-shelf-label{display:flex;justify-content:space-between;align-items:baseline;gap:4px;font-size:10px;line-height:1.8;color:#3b5144;margin-top:11px;word-break:keep-all}.hero-shelf-label b{font-size:12px;font-weight:400;flex-shrink:0}.five-book-editorial .editorial-caption{position:static;padding-top:19px;margin:0;gap:15px}.five-book-editorial .editorial-caption p{font-size:19px}.designed-cover{background:#122535;color:#f3f2ed;container-type:inline-size}.cover-imprint{position:absolute;top:6.6%;left:8.6%;font:1.45cqw var(--sans);letter-spacing:.27cqw;color:#c8bc92;white-space:nowrap}.cover-rule{position:absolute;top:10%;left:8.6%;right:8.6%;border-top:1px solid #a89b6d88}.cover-series{position:absolute;top:16.5%;left:8.6%;font-size:1.6cqw;letter-spacing:.24cqw;white-space:nowrap}.cover-title{position:absolute;top:21%;left:8.6%;font:500 8.7cqw/1.3 var(--sans);letter-spacing:-.5cqw}.cover-subtitle{position:absolute;top:30%;left:8.6%;font:400 6.1cqw var(--serif);color:#bcad7e}.cover-number{position:absolute;bottom:8.5%;right:8%;font:34cqw/1 Georgia,serif;color:#1b3a50;letter-spacing:-3cqw}.cover-orbit{position:absolute;width:47%;aspect-ratio:1;border:1px solid #8c9eaa55;border-radius:50%;right:9%;bottom:17%}.cover-orbit:after{content:"";position:absolute;inset:10%;border:1px solid #8c9eaa44;border-radius:50%}.cover-publisher{position:absolute;bottom:6.6%;left:8.6%;font:500 1.9cqw var(--sans);letter-spacing:.2cqw}.hero-shelf-book:nth-child(3) .cover-title{font-size:8cqw}
@media(min-width:1001px){.hero-inner{grid-template-columns:1fr 1.12fr;gap:45px;padding-block:45px}.hero h1{font-size:56px}}
@media(max-width:1000px) and (min-width:601px){.hero-editorial.five-book-editorial{padding:20px 17px}.five-book-shelf{gap:20px 12px;padding:0;margin:25px 0}.hero-shelf-label{font-size:9px}.five-book-editorial .editorial-caption p{font-size:16px}}
@media(max-width:600px){.hero-editorial.five-book-editorial{padding:22px 20px;min-height:0;margin-top:10px}.five-book-shelf{gap:23px 13px;padding:0;margin:26px 0 23px}.hero-shelf-label{font-size:10px;margin-top:9px}.five-book-editorial .editorial-caption p{font-size:17px}.five-book-editorial .editorial-caption a{max-width:94px;font-size:9px}.hero-shelf-cover{border-right-width:2px}.five-book-editorial .editorial-topline{font-size:7px}}
@media(max-width:380px){.hero-editorial.five-book-editorial{padding:20px 15px}.five-book-shelf{gap:20px 10px}.hero-shelf-label{font-size:9px}.five-book-editorial .editorial-caption p{font-size:15px}.five-book-editorial .editorial-caption a{font-size:8px}}

.review-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.review-total{font-size:13px;color:#617255}.review-total strong{font:24px Georgia,serif;margin-left:9px;color:var(--ink)}.review-carousel-controls>div{display:flex;align-items:center;gap:10px}#review-range{font-size:12px;font-variant-numeric:tabular-nums;color:#617255;margin-right:15px}.review-carousel-controls button{width:43px;height:43px;border:1px solid #aebba2;font-size:20px;transition:background .2s}.review-carousel-controls button:hover:not(:disabled){background:#e6eadd}.review-carousel-controls button:disabled{opacity:.3;cursor:default}.review-grid.review-track{display:flex;gap:34px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#80916e #e8ecdf;padding:10px 4px 29px;position:relative;touch-action:pan-x pan-y;max-width:100%}.review-track>.review-card{flex:0 0 calc((100% - 68px)/3);min-width:0;scroll-snap-align:start;display:flex;flex-direction:column;padding:25px 4px 0}.review-track .review-meta{margin-top:auto;padding-top:20px}.review-track blockquote{font-size:18px;line-height:1.95;margin-bottom:15px}.review-kind{display:block;font-size:10px;color:#7c886f;margin-top:5px}.review-track .review-source{margin-top:20px}.review-track .review-thumbnail{width:85px;height:110px}.review-track .review-source-label{font-size:12px}.review-track .review-source-label small{font-size:10px}.review-track .review-meta p{font-size:12px}.review-note{line-height:1.9}
@media(max-width:1000px){.review-grid.review-track{gap:25px}.review-track>.review-card{flex-basis:calc((100% - 25px)/2.1)}.review-track blockquote{font-size:17px}}
@media(max-width:600px){.review-grid.review-track{gap:22px}.review-track>.review-card{flex-basis:88%;padding-top:22px}.review-track blockquote{font-size:18px}.review-carousel-controls{margin-bottom:15px}.review-carousel-controls button{width:39px;height:39px}.review-track .review-source{gap:18px}#review-range{margin-right:7px;font-size:11px}.review-note{font-size:10px}.review-track .review-meta p{font-size:12px}}

.sample-redaction-note{font-size:12px;line-height:1.8;padding:10px 13px;background:#eceee5;color:#526447;margin:14px 0}.solution-nav{display:flex;gap:15px 28px;flex-wrap:wrap;padding:22px 0 4px}.solution-nav a{font-size:12px;border-bottom:1px solid #aebb9b;padding-bottom:7px;color:#455d38}.solution-nav a span{margin-left:16px}@media(max-width:650px){.solution-nav{display:grid;gap:12px}.solution-nav a{display:flex;justify-content:space-between;font-size:12px}}

.trial-invitation{display:grid;grid-template-columns:.85fr 1.25fr;gap:60px;background:#f7f7ef;border:1px solid #d2dac9;padding:35px 38px;margin:0 0 45px}.trial-invitation .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:20px}.trial-invitation h3{font:500 26px/1.75 var(--serif);letter-spacing:-.8px}.trial-invitation p:not(.eyebrow){font-size:14px;line-height:2;color:#40583b}.trial-invitation p+p{margin-top:15px}.trial-invitation .text-link{margin-top:19px;font-size:12px}.contact-section .contact-inner>div{max-width:760px}.contact-section p:not(.eyebrow){max-width:690px}.contact-section p strong{font-weight:500;color:#f0ead8}.contact-section .trial-closing{color:#d8d6bb!important;font-size:15px!important}.contact-inner>.button{flex-shrink:0;white-space:nowrap}@media(max-width:900px){.trial-invitation{gap:30px;padding:29px}.trial-invitation h3{font-size:23px}.contact-inner{display:block}.contact-inner>.button{margin-top:28px}}@media(max-width:600px){.trial-invitation{grid-template-columns:1fr;gap:23px;padding:26px 22px;margin-bottom:33px}.trial-invitation h3{font-size:24px}.trial-invitation p:not(.eyebrow){font-size:14px}.contact-section .trial-closing{font-size:14px!important}}
.book-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px}.book-carousel-controls>p{font-size:13px;color:#617255}.book-carousel-controls strong{color:var(--ink);font-weight:500;margin-left:5px}.book-carousel-controls p>span{display:inline-block;margin-left:15px;font-size:12px}.book-carousel-controls>div{display:flex;align-items:center;gap:8px}.book-carousel-controls button{width:44px;height:44px;border:1px solid #aebba2;font-size:20px;flex-shrink:0}.book-carousel-controls button:hover:not(:disabled){background:#e6eadd}.book-carousel-controls button:disabled{opacity:.3;cursor:default}#book-range{font-size:12px;font-variant-numeric:tabular-nums;color:#617255;white-space:nowrap;margin-right:8px}.original-shelf.book-track{display:flex;grid-template-columns:none;gap:32px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:30px;scrollbar-width:thin;scrollbar-color:#80916e #e0e3d7;padding:30px 30px 28px;max-width:100%;touch-action:pan-x pan-y}.book-track>article{flex:0 0 calc((100% - 64px)/3.2);min-width:0;scroll-snap-align:start}.book-track .shelf-cover{max-width:220px}.book-track .shelf-copy{max-width:220px}.book-track:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
@media(max-width:850px){.original-shelf.book-track{gap:25px;padding:28px 25px 25px;scroll-padding-inline:25px}.book-track>article{flex-basis:calc((100% - 25px)/2.3)}}
@media(max-width:600px){.book-carousel-controls{gap:8px;margin-bottom:16px;align-items:flex-end}.book-carousel-controls>p{font-size:12px;line-height:1.8}.book-carousel-controls p>span{display:block;margin-left:0;font-size:11px}.book-carousel-controls button{width:44px;height:44px}.book-carousel-controls>div{gap:6px}#book-range{font-size:11px;margin-right:3px}.original-shelf.book-track{gap:22px;padding:24px 20px 26px;scroll-padding-inline:20px;margin-bottom:32px}.book-track>article{flex-basis:64%}.book-track .shelf-cover{max-width:none}.book-track .shelf-copy{margin-top:20px;max-width:none}.book-track .shelf-copy>span{font-size:10px}.book-track .shelf-copy h3{font-size:16px;line-height:1.6;margin-top:6px}.book-track .shelf-copy p{display:block;font-size:11px;margin-top:8px}.book-track .shelf-cover>span{width:32px;height:32px;line-height:32px;font-size:16px;right:10px;bottom:10px}}
