@font-face{font-family:Manrope;src:url("/vendor/fonts/files/manrope-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url("/vendor/fonts/files/manrope-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:SourceSerif;src:url("/vendor/fonts/files/source-serif-4-latin-500-normal.woff2") format("woff2");font-weight:500;font-display:swap}

:root{--forest:#082b1f;--green:#0c6041;--mint:#e5efe8;--cream:#f6f2e8;--paper:#fffdf8;--ink:#14231c;--muted:#647169;--line:#cfd8d2;--gold:#d6aa50;--sans:Manrope,Arial,sans-serif;--serif:SourceSerif,Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit}
h1,h2,h3,p,figure,blockquote{margin-top:0}
h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.04em}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.skip-link{position:fixed;left:16px;top:10px;z-index:100;transform:translateY(-160%);padding:9px 13px;background:#fff;border:1px solid var(--forest);font-weight:600}
.skip-link:focus{transform:none}

.concept-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:44px;width:min(1180px,calc(100% - 80px));min-height:82px;margin:0 auto}
.concept-brand img{width:88px;height:47px;object-fit:contain}
.concept-header nav{display:flex;justify-content:flex-end;gap:32px}
.concept-header nav a,.academy-link,.signin{color:var(--muted);font-size:.875rem;text-decoration:none}
.header-actions{display:flex;align-items:center;gap:22px}
.academy-link{text-decoration:underline;text-underline-offset:5px}
.signin{padding:10px 17px;border:1px solid var(--forest);border-radius:3px;color:var(--forest)}

.hero,.page-section,.start{width:min(1180px,calc(100% - 80px));margin:0 auto}
.eyebrow{margin:0 0 16px;color:var(--green);font-size:.75rem;font-weight:600;letter-spacing:.16em}
.hero{display:grid;grid-template-columns:minmax(0,.8fr) minmax(560px,1.2fr);gap:64px;align-items:center;min-height:610px;padding:42px 0 58px}
.hero h1{max-width:570px;margin-bottom:24px;font-size:clamp(3.45rem,4.75vw,4.5rem);line-height:.93}
.hero-text{max-width:525px;margin-bottom:27px;color:var(--muted);font-size:1.04rem}
.hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:12px 20px;border:1px solid transparent;border-radius:3px;font-size:.875rem;font-weight:600;text-decoration:none;cursor:pointer}
.button-primary{background:var(--forest);color:#fff}
.button-secondary{border-color:var(--forest);background:var(--paper);color:var(--forest)}
.text-link{color:var(--forest);font-size:.875rem;font-weight:600;text-underline-offset:5px}
.hero-meta{margin:15px 0 0;color:var(--muted);font-size:.8rem;line-height:1.7}
.product-frame{margin:0;border:1px solid #aebdb4;border-radius:5px;background:var(--paper);overflow:hidden}
.screen-bar{display:flex;min-height:42px;align-items:center;justify-content:space-between;padding:0 15px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.75rem;letter-spacing:.09em}
.product-frame figcaption{display:flex;justify-content:space-between;gap:20px;padding:12px 15px;border-top:1px solid var(--line);color:var(--muted);font-size:.75rem}
.product-frame figcaption strong{color:var(--ink);font-weight:600}
.current-screen{position:relative;aspect-ratio:16/9;overflow:hidden;contain:paint;background:#f5f6f6}
.current-screen img{position:absolute;max-width:none}
.current-screen-ssat-rule img{width:139%;left:0;top:0;transform:translate(-20%,-38.5%)}
.hero-product .current-screen-ssat-rule img{width:165%;transform:translate(-31.2%,-38.5%)}

.page-section{padding:88px 0;border-bottom:1px solid var(--line)}
.section-heading{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,.72fr);gap:70px;align-items:end;margin-bottom:42px}
.section-heading h2,.start h2{margin-bottom:0;font-size:clamp(2.8rem,4.25vw,4rem);line-height:.98}
.section-heading p{margin:0;color:var(--muted);font-size:.98rem}
.principle-list{border-top:1px solid var(--forest)}
.principle-list article{display:grid;grid-template-columns:70px minmax(0,1fr);gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}
.principle-number{padding-top:3px;color:var(--green);font-size:.78rem;font-weight:600;letter-spacing:.12em}
.principle-list h3{margin:0 0 6px;font-family:var(--serif);font-size:1.55rem;font-weight:500;line-height:1.15}
.principle-list p{max-width:780px;margin:0;color:var(--muted);font-size:.94rem}
.result-statement{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(360px,1fr);gap:70px;margin:28px 0 0;padding-left:90px;color:var(--muted);font-size:.9rem}
.result-statement strong{color:var(--forest);font-family:var(--serif);font-size:1.25rem;font-weight:500;line-height:1.3}
.test-tabs{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--forest);border-bottom:1px solid var(--line)}
.test-tab{display:grid;gap:5px;min-height:104px;padding:19px 24px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;cursor:pointer}
.test-tab:last-child{border-right:0}
.test-tab strong{align-self:end;font-family:var(--serif);font-size:1.55rem;font-weight:500}
.test-tab span{color:var(--muted);font-size:.875rem}
.test-tab.is-active{background:var(--paper);box-shadow:inset 0 3px var(--green)}
.test-tab.is-active strong{color:var(--green)}
.selection-prompt{margin:0;padding:17px 24px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.875rem}
.test-panel{padding-top:44px}
.test-panel[hidden]{display:none}
.test-panel-heading{max-width:780px;margin-bottom:30px}
.test-panel-heading .eyebrow{margin-bottom:10px}
.test-panel-heading h3{margin:0 0 11px;font-family:var(--serif);font-size:2.35rem;font-weight:500;line-height:1.08;letter-spacing:-.025em}
.test-panel-heading>p:last-child{margin:0;color:var(--muted);font-size:1rem}
.exam-points{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--forest);border-bottom:1px solid var(--line)}
.exam-points-two{grid-template-columns:repeat(2,1fr)}
.exam-points article{padding:22px 22px 24px;border-right:1px solid var(--line)}
.exam-points article:last-child{border-right:0}
.exam-points article>span{color:var(--green);font-size:.75rem;font-weight:600;letter-spacing:.12em}
.exam-points h3{margin:9px 0 8px;font-family:var(--serif);font-size:1.35rem;font-weight:500;line-height:1.17}
.exam-points p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}
.evidence-visuals{display:grid;gap:15px;margin-top:28px;align-items:start}
.evidence-visuals-sat,.evidence-visuals-ssat{grid-template-columns:minmax(0,1fr)}
.evidence-visuals-current{max-width:920px}
.evidence-visuals-current .product-frame+.product-frame{margin-top:4px}
.evidence-visuals-current .current-screen{aspect-ratio:2.15/1}
.evidence-visuals-current .current-screen-sat-rw-review{aspect-ratio:1.72/1}
.evidence-visuals-current .current-screen-sat-math-desmos{aspect-ratio:1275/561}
.current-screen-sat-rw-review img{width:100%;left:0;top:0;transform:translateY(-31.5%)}
.current-screen-sat-math-desmos img{width:100%;left:0;top:0;transform:none}
.current-screen-ssat-vocab img{width:135%;left:0;top:0;transform:translate(-18%,-40%)}
.current-screen-ssat-reading img{width:135%;left:0;top:0;transform:translate(-19.5%,-39%)}
.diagnostic-outcome{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(260px,.8fr) auto;gap:34px;align-items:center;margin-top:28px;padding:28px 0;border-top:1px solid var(--forest);border-bottom:1px solid var(--line)}
.diagnostic-outcome .eyebrow{margin-bottom:8px}
.diagnostic-outcome h3{margin:0;font-family:var(--serif);font-size:1.55rem;font-weight:500;line-height:1.16}
.diagnostic-outcome ul{margin:0;padding-left:20px;color:var(--muted);font-size:.875rem}
.diagnostic-outcome li+li{margin-top:4px}
.diagnostic-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.books-heading{margin-bottom:34px}
.book-groups{display:grid;grid-template-columns:.82fr 1.18fr .82fr .82fr;gap:20px}
.book-groups-sat{grid-template-columns:minmax(280px,420px)}
.book-groups-ssat{grid-template-columns:repeat(3,minmax(0,1fr))}
.book-groups>section{padding-top:15px;border-top:1px solid var(--forest)}
.book-groups h3{margin-bottom:16px;font-family:var(--serif);font-size:1.05rem;font-weight:500}
.book-row{display:flex;gap:10px;align-items:flex-start}
.book{display:grid;grid-template-rows:auto minmax(1.5em,auto);flex:1;min-width:0;padding:0;border:0;background:transparent;color:var(--muted);cursor:pointer;text-align:center}
.book img{width:min(100%,185px);height:auto;aspect-ratio:auto;margin:0 auto;object-fit:contain;filter:drop-shadow(0 5px 4px rgba(0,0,0,.13))}
.book span{display:flex;min-height:1.5em;align-items:flex-start;justify-content:center;margin-top:8px;font-size:.875rem}
.book:hover span,.book:focus-visible span{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.book-note{margin:22px 0 0;color:var(--muted);font-size:.8rem}

.start{display:flex;align-items:center;justify-content:space-between;gap:55px;padding:64px 0}
.start h2{font-size:3rem}
.start p{margin:10px 0 0;color:var(--muted)}
.site-footer{padding:50px 0 24px;background:var(--forest);color:#c1d0c7}
.footer-inner,.footer-bottom{width:min(1180px,calc(100% - 80px));margin:0 auto}
.footer-inner{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:50px;padding-bottom:36px}
.footer-brand img{width:82px;margin-bottom:15px}
.footer-brand p{max-width:290px;font-size:.875rem}
.footer-inner nav strong{display:block;margin-bottom:12px;color:#fff;font-size:.8rem}
.footer-inner nav a{display:block;margin:8px 0;font-size:.8rem;text-decoration:none}
.footer-inner nav a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-bottom{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid rgba(255,255,255,.18);font-size:.75rem;color:#91a79a}
.mobile-diagnostic{display:none}
body:has(.book-dialog[open]) .mobile-diagnostic{display:none!important}

.book-dialog{width:min(1040px,calc(100% - 40px));max-height:88vh;padding:0;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink)}
.book-dialog::backdrop{background:rgba(8,43,31,.62)}
.dialog-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--line);background:var(--paper)}
.dialog-head h2{margin:0;font-size:1.8rem}
.dialog-head button{min-height:40px;padding:7px 13px;border:1px solid var(--forest);border-radius:3px;background:transparent;color:var(--forest);cursor:pointer}
.preview-pages{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:18px}
.preview-pages img{width:100%;border:1px solid var(--line);background:#fff}

@media(min-width:981px) and (max-height:700px){
  .concept-header{min-height:68px}
  .hero{min-height:0;padding:22px 0 26px}
  .hero h1{margin-bottom:17px;font-size:3.45rem;line-height:.94}
  .hero-text{margin-bottom:18px;font-size:.94rem;line-height:1.48}
  .hero-meta{margin-top:10px;line-height:1.5}
  .hero-product .current-screen{aspect-ratio:16/7.6}
}

@media(max-width:980px){
  .concept-header nav{display:none}
  .hero{grid-template-columns:1fr;min-height:0;padding-top:52px}
  .hero-copy{max-width:690px}
  .diagnostic-outcome{grid-template-columns:1fr 1fr}
  .diagnostic-outcome>.button,.diagnostic-outcome>.diagnostic-actions{grid-column:1/-1;justify-self:start}
  .book-groups-ssat{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:820px){
  .section-heading{display:block}
  .section-heading p{margin-top:12px}
  .result-statement{grid-template-columns:minmax(180px,.45fr) minmax(0,1fr);gap:30px;padding-left:0}
}

@media(max-width:640px){
  html{scroll-padding-top:72px}
  body{font-size:16px}
  .concept-header{width:100%;min-height:72px;padding:0 18px;grid-template-columns:auto 1fr auto;gap:12px}
  .concept-brand img{width:68px;height:auto}
  .header-actions{justify-self:end;gap:12px}
  .academy-link{font-size:.75rem}
  .academy-link,.text-link{display:inline-flex;min-height:24px;align-items:center}
  .signin{min-height:44px;padding:10px 12px}
  .hero,.page-section,.start{width:calc(100% - 36px)}
  .hero{display:block;padding:24px 0 26px}
  .hero h1{margin-bottom:18px;font-size:2.42rem;line-height:.96}
  .hero-text{margin-bottom:18px;font-size:.94rem;line-height:1.5}
  .hero-actions{display:block}
  .hero-actions .button{width:100%;min-height:48px}
  .hero-actions .text-link{display:inline-block;margin-top:14px}
  .hero-meta{margin-top:10px;font-size:.78rem;line-height:1.55}
  .hero-product{margin-top:20px}
  .screen-bar{min-height:36px;font-size:.7rem}
  .current-screen{height:210px;aspect-ratio:auto}
  .current-screen-ssat-rule img,.hero-product .current-screen-ssat-rule img{width:170%;transform:translate(-31%,-38.5%)}
  .page-section{padding:32px 0}
  .section-heading{display:block;margin-bottom:20px}
  .section-heading h2,.start h2{font-size:2.18rem}
  .section-heading p{margin-top:11px;font-size:.9rem;line-height:1.5}
  .principle-list article{grid-template-columns:38px 1fr;gap:10px;padding:18px 0}
  .principle-list h3{font-size:1.35rem}
  .principle-list p{font-size:.9rem}
  .result-statement{display:block;margin-top:22px;padding-left:48px;font-size:.9rem}
  .result-statement strong{display:block;margin-bottom:8px;font-size:1.2rem}
  .test-tabs{grid-template-columns:1fr}
  .test-tab{min-height:76px;padding:12px 15px;border-right:0;border-bottom:1px solid var(--line)}
  .test-tab:last-child{border-bottom:0}
  .test-tab strong{font-size:1.3rem}
  .test-tab span{font-size:.8rem}
  .selection-prompt{padding:13px 15px;font-size:.8rem}
  .test-panel{padding-top:24px}
  .test-panel-heading{margin-bottom:20px}
  .test-panel-heading h3{font-size:1.72rem}
  .test-panel-heading>p:last-child{font-size:.9rem;line-height:1.5}
  .exam-points{grid-template-columns:1fr}
  .exam-points article{padding:17px 0;border-right:0;border-bottom:1px solid var(--line)}
  .exam-points article:last-child{border-bottom:0}
  .exam-points h3{font-size:1.28rem}
  .exam-points p{font-size:.9rem}
  .evidence-visuals{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:92%;gap:12px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;scrollbar-width:thin}
  .evidence-visuals .product-frame{scroll-snap-align:start}
  .evidence-visuals-current .current-screen{aspect-ratio:16/9}
  .evidence-visuals-current .current-screen-sat-rw-review{height:260px;aspect-ratio:auto}
  .evidence-visuals-current .current-screen-sat-math-desmos{height:auto;aspect-ratio:1275/561}
  .current-screen-sat-rw-review img{width:100%;transform:translateY(-31%)}
  .current-screen-sat-math-desmos img{width:100%;transform:none}
  .current-screen-ssat-vocab img{width:155%;transform:translate(-23%,-39%)}
  .current-screen-ssat-reading img{width:155%;transform:translate(-23%,-38%)}
  .product-frame figcaption{display:block}
  .product-frame figcaption span{display:block;margin-top:3px}
  .diagnostic-outcome{grid-template-columns:1fr;gap:16px;margin-top:20px;padding:22px 0}
  .diagnostic-outcome>.button,.diagnostic-outcome>.diagnostic-actions{grid-column:auto;justify-self:stretch}
  .diagnostic-outcome h3{font-size:1.4rem}
  .diagnostic-outcome ul{font-size:.9rem}
  .diagnostic-actions{display:grid;grid-template-columns:1fr;width:100%}
  .diagnostic-actions .button{width:100%}
  .books-heading{margin-bottom:22px}
  .book-groups-sat{grid-template-columns:1fr}
  .book-groups-ssat{grid-template-columns:1fr 1fr;gap:16px 14px}
  .book-groups-ssat>section:first-child{grid-column:1/-1}
  .book-groups>section{padding-top:10px}
  .book-groups h3{margin-bottom:11px;font-size:.98rem}
  .book-row{max-width:none;gap:6px}
  .book img{width:auto;height:110px;max-width:100%;margin:0 auto}
  .book span{font-size:.8rem}
  .book-note{margin-top:16px;font-size:12px}
  .start{display:block;padding:30px 0 34px}
  .start>.button,.start>.diagnostic-actions{width:100%;margin-top:19px}
  .start p{font-size:.9rem}
  .site-footer{padding-top:22px;padding-bottom:8px}
  .footer-inner,.footer-bottom{width:calc(100% - 36px)}
  .footer-inner{grid-template-columns:1fr 1fr;gap:18px 24px;padding-bottom:22px}
  .footer-brand{grid-column:1/-1}
  .footer-brand img{width:68px;margin-bottom:10px}
  .footer-brand p{margin-bottom:0}
  .footer-bottom{display:block}
  .footer-bottom span{display:block;margin-top:4px}
  .mobile-diagnostic.is-visible{position:fixed;z-index:50;left:12px;right:12px;bottom:12px;display:flex;min-height:48px;align-items:center;justify-content:center;border-radius:3px;background:var(--forest);color:#fff;font-size:.8rem;font-weight:600;text-decoration:none;box-shadow:0 7px 22px rgba(8,43,31,.25)}
  .preview-pages{grid-template-columns:1fr;padding:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
