/* Rubric product identity: quiet paper, deep teal, precise learning diagrams.
   Shared company chrome/theme controller stays owned by site.css/site.js. */
html:has(.rubric-product){--canvas:#f6f5ef;--raised:#fffef9;--soft:#e8ede8;--ink:#182e2a;--ink-soft:#3d5550;--muted:#5e726c;--line:#d5dfd8;--line-strong:#829b90;--accent:#245c50;--accent-strong:#174a40;--accent-soft:#dce9e1;--focus:#245c50;--rubric-board:#174f46;--rubric-board-ink:#faf8ee;--rubric-sand:#e7d5b6;--rubric-board-line:#83ab99;--rubric-detail:#b9d2c1;--sans:ui-sans-serif,system-ui,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;--serif:Georgia,"Times New Roman",serif}
html[data-theme="dark"]:has(.rubric-product){--canvas:#101b1a;--raised:#182825;--soft:#1f3530;--ink:#edf3ec;--ink-soft:#c5d3ca;--muted:#a4b7aa;--line:#344d43;--line-strong:#8baf9b;--accent:#a8d2ba;--accent-strong:#c8e4d1;--accent-soft:#253f34;--focus:#b9dbc7;--rubric-board:#214d40;--rubric-board-ink:#f4f8ec;--rubric-sand:#e7d5b6;--rubric-board-line:#8bb39a;--rubric-detail:#c0d8c7}
.rubric-product{font-family:var(--sans)}
.rubric-product h1,.rubric-product h2,.rubric-product h3{font-family:var(--sans);letter-spacing:-.045em;font-weight:620;line-height:1.3;text-wrap:balance}
.rubric-product:lang(en) h1,.rubric-product:lang(en) h2{font-family:var(--serif);font-weight:400;letter-spacing:-.048em;line-height:1.08}
.rubric-product p{word-break:keep-all;overflow-wrap:anywhere}
.rubric-product .button{border-radius:6px;min-height:50px;font-size:.9rem}
.rubric-product .site-header{backdrop-filter:none;background:var(--canvas)}
.rubric-nav{border-bottom:1px solid var(--line);background:var(--canvas)}
.rubric-nav>.wrap{display:flex;align-items:center;min-height:80px;gap:40px}
.rubric-brand{display:flex;align-items:center;gap:10px;font-size:1.4rem;font-weight:650;letter-spacing:-.04em}
.rubric-links{display:flex;gap:28px;margin-left:auto;align-items:center}
.rubric-links a{padding:12px 0;font-size:.9rem;color:var(--muted);border-bottom:2px solid transparent}
.rubric-links a:hover,.rubric-links a[aria-current="page"]{color:var(--ink);border-color:var(--accent)}
.rubric-languages{display:flex;gap:2px;padding:3px;border:1px solid var(--line);border-radius:6px;flex-shrink:0}
.rubric-languages a{display:grid;place-items:center;min-width:46px;min-height:44px;padding:0 8px;color:var(--muted);font-size:.78rem}
.rubric-languages a[aria-current="true"]{background:var(--soft);color:var(--ink);border-radius:3px;font-weight:700}
.rubric-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:68px;align-items:center;padding-block:88px 92px}
.rubric-eyebrow{font-size:.74rem!important;letter-spacing:.06em;color:var(--muted);margin-bottom:22px;display:flex;align-items:center;gap:9px}
.rubric-eyebrow:before{content:"";width:6px;height:6px;background:var(--accent);border-radius:50%;flex-shrink:0}
.rubric-product h1{font-size:clamp(2.35rem,4vw,3.7rem);line-height:1.25;margin:0}
.rubric-product:lang(en) h1{font-size:clamp(2.8rem,5.3vw,5rem)}
.rubric-product h1 em{font-style:normal;color:var(--accent)}
.rubric-lead{font-size:1.05rem;line-height:1.85;color:var(--ink-soft);max-width:50ch;margin-top:28px}
.rubric-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:34px}
.rubric-text-link{display:inline-flex;align-items:center;gap:12px;color:var(--accent);font-weight:620;font-size:.9rem;min-height:44px}
.rubric-text-link:hover{text-decoration:underline;text-underline-offset:5px}
.rubric-note{font-size:.78rem!important;color:var(--muted);margin-top:25px;line-height:1.8;max-width:58ch}
.rubric-board{margin:0;position:relative;min-height:438px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:var(--rubric-board);color:var(--rubric-board-ink);padding:38px 32px;border-radius:3px}
.rubric-board:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--rubric-board-line) 1px,transparent 1px),linear-gradient(90deg,var(--rubric-board-line) 1px,transparent 1px);background-size:38px 38px;opacity:.1;pointer-events:none}
.board-top{position:relative;display:flex;justify-content:space-between;align-items:center;font-size:.76rem;color:var(--rubric-detail);margin-bottom:26px}
.board-top>span:last-child{font-size:1.7rem}
.board-equation{font-family:var(--serif);font-size:clamp(2rem,3vw,2.9rem);letter-spacing:-.04em;padding-block:25px;text-align:center;border-block:1px solid var(--rubric-board-line);position:relative;color:var(--rubric-board-ink)}
.board-question{margin:30px 0 18px;position:relative;font-size:.83rem;color:var(--rubric-detail)}
.board-path{display:flex;align-items:center;gap:8px;position:relative;z-index:1}
.board-path div{flex:1;border:1px solid var(--rubric-board-line);padding:13px 7px;text-align:center;font-size:.72rem;background:var(--rubric-board);word-break:keep-all}
.board-path div:last-child{background:var(--rubric-sand);color:#19382e;border-color:var(--rubric-sand)}
.rubric-board figcaption{position:relative;color:var(--rubric-detail);margin-top:30px;font-size:.69rem;z-index:1}
.board-orbit{position:absolute;bottom:8px;right:-15px;width:180px;height:75px;color:var(--rubric-detail);opacity:.4}
.rubric-section{padding-block:70px;border-top:1px solid var(--line)}
.rubric-section-heading{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:start;margin-bottom:44px}
.rubric-product h2{font-size:clamp(1.8rem,2.8vw,2.7rem)}
.rubric-section p{color:var(--ink-soft);line-height:1.85;font-size:.95rem}
.rubric-axes{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.rubric-axes article{border-left:1px solid var(--line);padding-left:20px}
.rubric-axes article>span{font-family:var(--serif);font-size:1.05rem;color:var(--accent)}
.rubric-axes h3{font-size:1.1rem;margin:18px 0 10px}
.rubric-axes p{font-size:.84rem}
.rubric-approach{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.rubric-approach p{margin-top:20px}
.rubric-concept-path{display:grid;justify-items:center;gap:0;border:1px solid var(--line);padding:35px;background:var(--raised)}
.rubric-concept-path span{font-size:.84rem;padding:16px 23px;border:1px solid var(--line-strong);color:var(--ink-soft);position:relative}
.rubric-concept-path span+span{margin-top:28px}
.rubric-concept-path span+span:before{content:"";height:28px;width:1px;position:absolute;bottom:100%;left:50%;background:var(--line-strong)}
.rubric-concept-path .concept-goal{background:var(--accent);color:var(--canvas);border-color:var(--accent);min-width:72%;text-align:center}
.rubric-scope{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.rubric-scope h2+p{margin-top:22px}
.rubric-pathway{padding:22px 0;border-block:1px solid var(--line);font-family:var(--serif);color:var(--accent)!important;font-size:1.15rem!important;margin-bottom:30px}
.rubric-scope h3{font-size:.9rem;margin-bottom:12px}
.rubric-page-intro{padding-block:76px 58px}
.rubric-page-intro .rubric-lead{max-width:65ch}
.rubric-flow{padding-top:0}
.rubric-flow article{display:grid;grid-template-columns:70px 1fr 70px;gap:25px;padding:34px 0;border-bottom:1px solid var(--line);align-items:start}
.rubric-flow article:last-child{border-bottom:0}
.flow-number{font-family:var(--serif);font-size:2rem;color:var(--accent)}
.rubric-flow h2{font-size:1.35rem;font-family:var(--sans)!important;font-weight:620!important;letter-spacing:-.02em!important;margin-bottom:10px}
.rubric-flow p{max-width:75ch}
.flow-arrow{font-size:2rem;color:var(--line-strong);justify-self:end}
.rubric-example{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.rubric-example h2+p{margin-top:20px}
.example-questions{padding:30px;background:var(--soft);border:1px solid var(--line)}
.example-equation{font-family:var(--serif);font-size:2rem;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line-strong)}
.example-questions p{padding:8px 0;font-size:.9rem}
.example-questions p span{color:var(--accent);margin-right:10px}
.example-questions strong{display:block;margin-top:23px;padding-top:20px;border-top:1px solid var(--line-strong);font-size:.83rem;color:var(--accent);font-weight:600}
.rubric-features{display:grid;grid-template-columns:1fr 1fr;gap:50px 70px}
.rubric-features article{border-top:1px solid var(--line);padding-top:25px}
.feature-number{font-family:var(--serif);font-size:1rem;color:var(--accent)}
.rubric-features article h2{font-family:var(--sans)!important;font-weight:620!important;font-size:1.3rem;letter-spacing:-.03em;margin:16px 0 12px}
.rubric-feature-belief{grid-column:1/-1;padding:45px;background:var(--soft);display:grid;grid-template-columns:1fr 1fr;gap:60px}
.rubric-ending{border-block:1px solid var(--line);padding:45px 0;display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:70px}
.rubric-ending p{color:var(--muted);font-size:.88rem;margin-bottom:12px}
.rubric-product .site-footer{border-top:0;padding-top:10px}
.rubric-product-card{margin-top:28px;background:#edf2eb!important;color:#182e2a!important}
.rubric-product-card .button{color:#174f46!important;border-color:#829b90!important}
.rubric-product-card p{color:#415b50!important}
.rubric-product-card .eyebrow{color:#385c4b!important}
html[data-theme="dark"] .rubric-product-card{background:#182d27!important;color:#edf3ec!important;}
html[data-theme="dark"] .rubric-product-card .button{color:#b7dbc5!important;border-color:#729b80!important}
html[data-theme="dark"] .rubric-product-card p{color:#c4d4c9!important}
html[data-theme="dark"] .rubric-product-card .eyebrow{color:#b7cdbc!important}
.portfolio-split>.rubric-product-card{margin-top:0}
@media(max-width:900px){.rubric-hero{gap:35px;padding-block:55px}.rubric-board{padding:30px 22px}.rubric-axes{grid-template-columns:repeat(2,1fr);gap:28px}.rubric-nav>.wrap{gap:20px}.rubric-links{gap:18px}.rubric-section-heading,.rubric-approach,.rubric-scope,.rubric-example{gap:35px}.rubric-feature-belief{gap:30px;padding:30px}}
@media(max-width:640px){.rubric-nav>.wrap{flex-wrap:wrap;justify-content:space-between;gap:0;min-height:112px;padding-top:15px;padding-bottom:8px}.rubric-brand{font-size:1.2rem}.rubric-links{order:3;width:100%;justify-content:space-between;margin:8px 0 0}.rubric-links a{font-size:.83rem;padding:10px 4px}.rubric-languages a{min-height:44px}.rubric-hero{grid-template-columns:1fr;padding-block:42px;gap:35px}.rubric-board{min-height:340px;padding:28px 24px}.rubric-product h1{font-size:2.3rem}.rubric-product:lang(en) h1{font-size:3rem}.rubric-lead{font-size:.98rem;margin-top:22px}.rubric-actions{margin-top:25px;gap:14px}.rubric-section{padding-block:42px}.rubric-section-heading,.rubric-approach,.rubric-scope,.rubric-example,.rubric-ending,.rubric-feature-belief{grid-template-columns:1fr;gap:26px}.rubric-section-heading{margin-bottom:30px}.rubric-axes{gap:25px 18px}.rubric-axes article{padding-left:12px}.rubric-axes h3{font-size:1rem}.rubric-product h2{font-size:1.8rem}.rubric-flow article{grid-template-columns:35px 1fr;gap:17px;padding:25px 0}.flow-number{font-size:1.6rem}.flow-arrow{display:none}.rubric-flow h2{font-size:1.2rem}.rubric-features{grid-template-columns:1fr;gap:30px}.rubric-page-intro{padding-block:40px}.rubric-ending{padding-block:32px;margin-bottom:40px}.rubric-feature-belief{padding:25px}.board-path{gap:6px}.board-path div{font-size:.68rem}}
@media(prefers-reduced-motion:reduce){.rubric-product *{scroll-behavior:auto!important;transition:none!important}}
