/* File: modern.css | Version: v1.1 | Shared StatsCove design system and home page. */
@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/dm-sans-latin-variable.woff2") format("woff2")}
@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/instrument-serif-latin-regular.woff2") format("woff2")}
@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/instrument-serif-latin-italic.woff2") format("woff2")}
:root{--ink:#17332f;--muted:#65746b;--paper:#f7f8f5;--line:#dce3da;--accent:#28796a;--accent-soft:#e6efe8;--white:#fff;--radius:12px;--font:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--serif:"Instrument Serif",Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:98px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button,a,input,summary{touch-action:manipulation}button{color:inherit}img,svg{display:block;max-width:100%}h1,h2,h3,h4,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #80ae9b;outline-offset:5px}::selection{background:#c9dfd3}button:disabled{cursor:default}.shell{width:min(1160px,calc(100% - 80px));margin-inline:auto}.skip-link{position:fixed;z-index:100;top:12px;left:12px;transform:translateY(-160%);background:var(--ink);color:#fff;padding:10px 20px;border-radius:6px}.skip-link:focus{transform:translateY(0)}
.site-header{height:88px;border-bottom:1px solid var(--line);background:rgba(247,248,245,.97)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:40px}.brand{display:flex;align-items:center;gap:10px;font-weight:650;font-size:25px;letter-spacing:-1.25px;line-height:1}.brand-mark{width:32px;height:30px;color:var(--accent)}.header-nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:500}.header-nav>a:not(.header-cta){color:#58685e;transition:color .2s}.header-nav>a:hover{color:var(--accent)}.header-cta{padding:10px 17px;border:1px solid #bdcfc2;border-radius:6px;display:flex;align-items:center;gap:24px}.header-cta span{font-size:19px}.menu-toggle{display:none;border:0;background:transparent;padding:8px}.menu-toggle svg{width:24px;height:24px}
.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.65px;text-transform:uppercase;line-height:1.4}.small-rule{width:22px;height:1px;background:var(--accent);display:inline-block;margin-right:9px;vertical-align:middle}.tiny-dot{display:inline-block;width:5px;height:5px;background:#658e70;border-radius:50%;flex-shrink:0}.hero{display:grid;grid-template-columns:1fr 1fr;gap:78px;align-items:center;padding-top:86px;padding-bottom:75px}.hero-copy>.eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:23px;white-space:nowrap;color:#5f7869}.hero h1{font-weight:450;letter-spacing:-3.7px;font-size:76px;line-height:1.04}.hero h1 em{font-family:var(--serif);font-weight:400;font-size:88px;letter-spacing:-2.8px;color:var(--accent)}.hero-description{font-size:17px;line-height:1.75;color:var(--muted);margin-top:25px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.button{background:var(--ink);color:#fff;display:inline-flex;justify-content:center;align-items:center;gap:28px;font-weight:500;font-size:14px;border:1px solid var(--ink);border-radius:6px;padding:13px 20px;transition:background .2s,transform .2s;line-height:1.4}.button:hover{background:#28574a}.button span{font-size:21px;line-height:1}.button-secondary{background:transparent;color:var(--ink);border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;padding:10px 16px;font-size:14px}.button-secondary:hover{background:var(--accent-soft)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:500;line-height:1.4}.text-link:hover{color:var(--accent)}.text-link span{font-size:17px}.hero-footnote{display:flex;align-items:center;gap:8px;margin-top:26px;font-size:11px;color:#758276}
.hero-demo{background:#fff;border:1px solid #dfe6dd;border-radius:12px;box-shadow:0 14px 40px -22px rgba(30,61,41,.18);padding:26px 28px 0;position:relative;transform:rotate(-.35deg)}.demo-heading{display:flex;align-items:center;justify-content:space-between}.demo-heading .eyebrow{color:#8b978b;font-size:9px;letter-spacing:1.4px;margin-bottom:6px}.demo-heading h2{font-size:16px;font-weight:500;letter-spacing:-.3px}.demo-chip{font-size:11px;font-family:ui-monospace,SFMono-Regular,monospace;color:#6f8275;border:1px solid #e1e8df;border-radius:4px;padding:4px 8px}.hero-plot{margin-top:4px}.hero-plot svg{width:100%;height:auto}.curve-grid path{stroke:#edf0ea;stroke-width:1}.curve-labels{font-size:11px;fill:#859083;font-family:var(--font)}.demo-readout{display:flex;align-items:center;justify-content:space-between;margin-top:-5px;border-bottom:1px solid #e7ece4;padding-bottom:17px}.demo-readout>span{font-size:12px;color:#708071}.demo-readout strong{font-size:30px;font-weight:450;letter-spacing:-1px;color:var(--accent);font-variant-numeric:tabular-nums;line-height:1}.demo-readout strong span{font-size:15px;margin-left:2px}.demo-slider{padding:17px 0 14px}.slider-label{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-bottom:8px}.slider-label output{font-family:ui-monospace,SFMono-Regular,monospace;font-size:10px;background:#f1f5ef;padding:2px 7px;border-radius:3px;color:#54715f}input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:4px;display:block;border-radius:8px;background:#e0e8de;accent-color:var(--accent);cursor:pointer;min-width:0;margin:15px 0}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);width:15px;height:15px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--accent)}input[type=range]::-moz-range-thumb{background:var(--accent);width:10px;height:10px;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--accent)}.demo-slider p{font-size:10px;color:#8b9589;margin-top:8px}.demo-bottom{margin:0 -28px;background:#f6f8f3;border-radius:0 0 12px 12px;display:flex;align-items:center;gap:7px;padding:13px 24px;font-size:10px;color:#768372;border-top:1px solid #e7ece4}.demo-bottom .tiny-dot{width:4px;height:4px}.demo-bottom a{font-size:18px;margin-left:auto;line-height:1}
.learning-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;display:flex;align-items:center;justify-content:space-between;gap:28px}.learning-strip>p{font-size:13px;line-height:1.6;color:var(--muted)}.learning-strip strong{font-weight:500;color:var(--ink)}.learning-strip>div{display:flex;align-items:center;gap:13px;font-size:13px}.learning-strip>div>span{font-family:var(--serif);font-size:25px;color:#8b9b87}.featured{padding-block:78px 88px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:29px}.section-heading .eyebrow{color:#75836d;margin-bottom:13px}.section-heading h2{font-size:35px;font-weight:450;letter-spacing:-1.2px;line-height:1.18}.section-heading>p{font-size:13px;color:var(--muted);line-height:1.7;padding-bottom:2px}.lesson-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.lesson-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;transition:transform .2s,box-shadow .2s,border-color .2s}.lesson-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -18px rgba(20,50,35,.4);border-color:#b7cbb9}.card-visual{height:185px;position:relative;padding:10px 20px 28px}.card-visual>svg{height:136px;width:100%}.card-visual svg text{font-family:var(--serif);font-style:italic;font-size:14px;fill:#658174}.mini-axis{stroke:#c7d5c7;stroke-width:1}.visual-normal{background:#edf4ed}.visual-z{background:#f0f4f5}.visual-z .mini-axis{stroke:#ccd9dc}.visual-z svg text{font-family:var(--font);font-style:normal;font-size:11px;fill:#65838d}.visual-t{background:#f7f1e9}.visual-t svg text{fill:#b36a42;font-size:21px}.visual-label{position:absolute;bottom:17px;left:0;right:0;text-align:center;font-family:ui-monospace,SFMono-Regular,monospace;font-size:8px;letter-spacing:1.3px;color:#738777}.visual-z .visual-label{color:#7c8e96}.visual-t .visual-label{color:#a38a75}.card-copy{padding:24px}.card-kicker{text-transform:uppercase;color:#889083;font-size:8px;letter-spacing:1.25px;font-weight:600}.card-copy h3{font-size:20px;font-weight:500;letter-spacing:-.6px;margin-top:8px}.card-copy>p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:9px;min-height:44px}.card-link{border-top:1px solid #e9ede5;margin-top:21px;padding-top:16px;font-size:11px;font-weight:500;display:flex;justify-content:space-between}.card-link span{font-size:17px;line-height:1}
.catalog-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:64px 0;background:#f0f3ed}.catalog-section .section-heading{margin-bottom:38px}.catalog-intro>p{font-size:13px;color:var(--muted);line-height:1.7}.filter-control{display:flex;gap:3px;padding:3px;border:1px solid #d6dfd2;border-radius:6px;margin-top:18px;width:max-content;background:#eaf0e6}.filter-control button{border:0;padding:6px 10px;background:transparent;font-size:10px;color:#71806a;border-radius:3px}.filter-control button span{font-size:9px;margin-left:6px;opacity:.7}.filter-control button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(15,40,20,.06)}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.module-group h3{font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:#7f8e77;margin-bottom:14px}.module-group h3 span{opacity:.6;margin-left:5px}.module-row{border-top:1px solid #d9e2d4}.module-row:last-child{border-bottom:1px solid #d9e2d4}.module-row summary{list-style:none;display:flex;align-items:center;gap:12px;padding:16px 0;cursor:pointer;font-size:12px;min-height:58px}.module-row summary::-webkit-details-marker{display:none}.module-number{font-family:ui-monospace,SFMono-Regular,monospace;color:#8c9a83;font-size:10px}.module-title{font-weight:450;line-height:1.4}.module-symbol{margin-left:auto;font-size:16px;line-height:1;color:#8b9c82;flex-shrink:0}.module-ready .module-title{color:var(--accent);font-weight:600}.module-ready .module-number{color:var(--accent)}.module-ready .module-symbol{color:var(--accent)}.module-row[open] .module-symbol{transform:rotate(45deg)}.module-content{padding:0 0 17px 27px}.module-content p{font-size:11px;color:#71816b;line-height:1.65}.module-content .module-status{display:inline-block;margin-bottom:6px;font-size:8px;font-weight:600;letter-spacing:.7px;text-transform:uppercase;color:#829276}.module-links{display:grid;gap:8px;margin-top:10px}.module-links a{font-size:11px;color:var(--accent);font-weight:500}.module-links a:hover{text-decoration:underline}.catalog-note{display:flex;gap:8px;align-items:center;font-size:10px;color:#7b8973;margin-top:28px;line-height:1.6}.module-grid[data-filter=ready] .module-group{grid-column:span 1}.module-grid[data-filter=ready] .module-row:not(.module-ready){display:none}.module-grid[data-filter=ready] .module-group:not(:has(.module-ready)){display:none}
.approach{padding-block:84px;display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:start}.approach .eyebrow{color:#79866e;margin-bottom:20px}.approach h2{font-size:37px;font-weight:450;letter-spacing:-1.3px;line-height:1.2}.approach h2 em{font-family:var(--serif);font-size:48px;letter-spacing:-.6px;font-weight:400;color:var(--accent)}.approach-copy{padding-top:10px}.approach-copy p{font-size:14px;line-height:1.85;color:var(--muted);margin-bottom:17px}.approach-copy .text-link{margin-top:3px}.site-footer{border-top:1px solid var(--line);padding:28px 0;background:#f3f5f0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-brand{display:flex;align-items:center;gap:20px}.footer-brand .brand{font-size:21px}.footer-brand .brand-mark{width:26px;height:25px}.footer-brand p{font-size:11px;color:#87917e;border-left:1px solid #d5dece;padding-left:20px}.footer-links{display:flex;gap:22px;font-size:11px;color:#74846a}.footer-links a:hover{color:var(--accent)}
@media(min-width:1500px){.hero{padding-top:100px;padding-bottom:90px}}
@media(max-width:1100px){.shell{width:calc(100% - 56px)}.hero{gap:38px;padding-top:65px;padding-bottom:60px}.hero h1{font-size:65px}.hero h1 em{font-size:77px}.hero-description{font-size:15px}.hero-actions{gap:18px}.hero-actions .text-link{font-size:11px}.hero-demo{padding:22px 23px 0}.demo-bottom{margin-inline:-23px;padding-inline:20px;font-size:9px}.card-copy{padding:20px}.card-copy h3{font-size:18px}.module-grid{gap:25px}.approach{gap:65px}}
@media(max-width:850px){.header-nav{gap:22px}.hero{grid-template-columns:1fr 1fr;gap:28px}.hero h1{font-size:53px;letter-spacing:-2.6px}.hero h1 em{font-size:63px}.hero-copy>.eyebrow{font-size:8px;letter-spacing:.8px}.hero-description{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.hero-footnote{font-size:10px}.demo-heading h2{font-size:13px}.demo-chip{font-size:9px;padding:3px 5px}.demo-readout>span{font-size:10px}.demo-readout strong{font-size:25px}.learning-strip{gap:18px}.learning-strip>div{font-size:11px;gap:9px}.learning-strip>p{font-size:11px}.section-heading h2{font-size:30px}.lesson-cards{gap:15px}.card-visual{height:155px;padding:6px 10px 25px}.card-visual>svg{height:110px}.card-copy{padding:17px}.card-copy h3{font-size:16px}.card-copy>p{font-size:11px;min-height:57px}.card-kicker{font-size:7px;letter-spacing:.8px}.module-grid{gap:18px}.module-row summary{font-size:10px;gap:8px}.module-number{font-size:9px}.module-group h3{font-size:9px}.catalog-intro>p{font-size:12px}.approach{gap:45px}.approach h2{font-size:30px}.approach h2 em{font-size:42px}.approach-copy p{font-size:12px}.footer-brand p{display:none}}
@media(max-width:650px){html{scroll-padding-top:24px}.shell{width:calc(100% - 40px)}.site-header{height:72px}.brand{font-size:24px}.brand-mark{width:29px}.header-inner{position:relative}.menu-toggle{display:block}.header-nav{display:none;position:absolute;top:71px;left:-20px;right:-20px;padding:20px;background:var(--paper);border-bottom:1px solid var(--line);z-index:20;gap:18px}.header-nav.is-open{display:flex;align-items:stretch;flex-direction:column}.header-cta{justify-content:space-between}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:49px;padding-bottom:42px;gap:36px}.hero-copy>.eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:20px}.hero h1{font-size:64px;letter-spacing:-3.6px}.hero h1 em{font-size:76px;letter-spacing:-2.2px}.hero-description{font-size:15px;margin-top:20px}.hero-actions{flex-direction:row;align-items:center;gap:24px;margin-top:25px}.hero-actions .button{font-size:12px;padding:12px 16px;gap:22px}.hero-actions .text-link{font-size:11px;gap:9px}.hero-footnote{margin-top:20px}.hero-demo{transform:none;padding:23px 25px 0;max-width:480px;width:100%;align-self:center}.demo-heading h2{font-size:15px}.demo-chip{font-size:10px}.demo-readout>span{font-size:11px}.demo-readout strong{font-size:29px}.demo-bottom{margin-inline:-25px;font-size:9px}.learning-strip{display:grid;grid-template-columns:1fr;gap:11px;padding:23px 0}.learning-strip>p{font-size:12px;grid-column:auto;line-height:1.4;margin-bottom:4px}.learning-strip>p br{display:none}.learning-strip>p strong{margin-left:4px}.learning-strip>div{font-size:12px;gap:12px}.learning-strip>div>span{font-size:20px}.featured{padding-block:46px 50px}.section-heading{gap:20px;align-items:start;margin-bottom:24px}.section-heading h2{font-size:29px;letter-spacing:-1px}.section-heading>p{font-size:10px;max-width:120px;padding-top:23px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.1px;margin-bottom:10px}.lesson-cards{grid-template-columns:1fr;gap:18px}.lesson-card{display:grid;grid-template-columns:118px 1fr}.card-visual{height:100%;min-height:192px;padding:28px 7px;display:flex;align-items:center}.card-visual>svg{height:auto}.visual-label{font-size:6px;letter-spacing:.5px;bottom:20px}.card-copy{padding:22px 18px}.card-kicker{font-size:7px}.card-copy h3{font-size:18px;line-height:1.25;margin-top:6px}.card-copy>p{font-size:11px;min-height:0;margin-top:8px}.card-link{font-size:10px;margin-top:15px;padding-top:12px}.catalog-section{padding:43px 0}.catalog-section .section-heading{flex-direction:column;gap:17px;margin-bottom:29px}.catalog-intro>p br{display:none}.filter-control{margin-top:15px}.module-grid{grid-template-columns:1fr;gap:26px}.module-group h3{font-size:9px;margin-bottom:10px}.module-row summary{font-size:13px;padding:15px 0;gap:14px;min-height:56px}.module-number{font-size:10px}.module-content{padding-left:31px}.module-content p{font-size:12px}.module-links a{font-size:12px}.catalog-note{align-items:flex-start;font-size:10px;line-height:1.7;margin-top:24px}.catalog-note .tiny-dot{margin-top:6px}.approach{grid-template-columns:1fr;gap:18px;padding-block:45px}.approach .eyebrow{font-size:9px;margin-bottom:15px}.approach h2{font-size:32px}.approach h2 em{font-size:43px}.approach-copy{padding-top:0}.approach-copy p{font-size:13px}.footer-inner{align-items:flex-start;gap:20px}.footer-links{font-size:10px;gap:14px;flex-wrap:wrap;justify-content:flex-end;max-width:150px}.site-footer{padding-block:25px}}
@media(max-width:360px){.hero h1{font-size:56px}.hero h1 em{font-size:65px}.hero-actions{gap:15px}.hero-actions .button{gap:15px;padding:12px}.hero-demo{padding-inline:18px}.demo-bottom{margin-inline:-18px;padding-inline:16px}.lesson-card{grid-template-columns:95px 1fr}.card-copy{padding:18px 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.lesson-card:hover{transform:none}}

/* Retain existing home fragments used by the sampling lesson. */
.anchor-alias{display:block;height:0;scroll-margin-top:98px}
.reading-discovery{margin-top:22px;font-size:12px;color:var(--muted)}
.reading-discovery a{color:var(--accent);font-weight:500;text-decoration:underline;text-underline-offset:3px;margin-left:4px}
.catalog-intro .course-availability{display:flex;align-items:center;gap:8px;margin-top:16px;font-size:11px;color:var(--accent)}
