:root{--color-parchment: #F4EFE6;--color-near-black: #1B1714;--color-forest: #2C3C33;--color-stone: #8A7C6E;--color-brass: #A8824A;--color-terracotta: #8C4A3C;--color-stone-light: #C4B8A8;--color-border: #E4DDD2;--color-terracotta-hover: #9E5548;--color-terracotta-active: #7A3D32;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "DM Sans", system-ui, sans-serif;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 40px;--space-6: 48px;--space-8: 64px;--space-10: 80px;--space-12: 96px;--max-width: 1200px;--body-col-max: 680px;--section-pad-v: var(--space-12);--transition-fast: .15s ease;--transition-base: .2s ease;--radius-sm: 2px;--radius-md: 4px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:100%;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background-color:var(--color-parchment);color:var(--color-near-black);font-family:var(--font-body);font-size:17px;font-weight:300;line-height:1.7}img,video{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{font:inherit;cursor:pointer;border:none;background:transparent}h1,.h1{font-family:var(--font-display);font-size:clamp(40px,6vw,72px);font-weight:500;line-height:1.1;color:var(--color-near-black);letter-spacing:-.01em}h2,.h2{font-family:var(--font-display);font-size:clamp(32px,4.5vw,52px);font-weight:500;line-height:1.15;color:var(--color-near-black)}h3,.h3{font-family:var(--font-display);font-size:clamp(26px,3.2vw,36px);font-weight:500;line-height:1.2;color:var(--color-near-black)}h4,.h4{font-family:var(--font-display);font-size:24px;font-weight:600;line-height:1.3;color:var(--color-near-black)}.pull-quote{font-family:var(--font-display);font-size:clamp(24px,2.8vw,32px);font-weight:400;font-style:italic;line-height:1.4;color:var(--color-near-black)}.module-label{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--color-stone)}p{font-family:var(--font-body);font-size:17px;font-weight:300;line-height:1.7;color:var(--color-near-black);max-width:var(--body-col-max)}.lead{font-size:clamp(18px,1.8vw,20px);font-weight:300;line-height:1.65}.ui-label{font-family:var(--font-body);font-size:14px;font-weight:400;letter-spacing:.04em}.meta,figcaption{font-family:var(--font-body);font-size:13px;font-weight:400;color:var(--color-stone);line-height:1.5}p+p{margin-top:1.25em}.prose a,a.link{color:var(--color-forest);text-decoration:none;transition:text-decoration-color var(--transition-fast)}.prose a:hover,a.link:hover{text-decoration:underline;text-decoration-color:var(--color-brass);text-decoration-thickness:1px;text-underline-offset:3px}.prose a:active,a.link:active{text-decoration-thickness:2px}.btn-primary{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-terracotta);color:var(--color-parchment);font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:14px 32px;border-radius:var(--radius-sm);text-decoration:none;transition:background-color var(--transition-base)}.btn-primary:hover{background-color:var(--color-terracotta-hover)}.btn-primary:active{background-color:var(--color-terracotta-active)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;background-color:transparent;color:var(--color-forest);border:1px solid var(--color-forest);font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:13px 31px;border-radius:var(--radius-sm);text-decoration:none;transition:background-color var(--transition-base)}.btn-secondary:hover{background-color:#2c3c3314}.nav-link{font-family:var(--font-body);font-size:14px;font-weight:400;letter-spacing:.04em;color:var(--color-near-black);text-decoration:none;padding-bottom:2px;border-bottom:1px solid transparent;transition:border-color var(--transition-fast)}.nav-link:hover,.nav-link.active{border-bottom-color:var(--color-brass)}.nav-dark .nav-link{color:var(--color-parchment)}.logo-wordmark{display:inline-flex;align-items:baseline;gap:.4em;text-decoration:none;line-height:1}.logo-upmarket{font-family:var(--font-display);font-size:20px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-forest);line-height:1}.logo-pro{font-family:var(--font-body);font-size:11px;font-weight:300;letter-spacing:.12em;text-transform:uppercase;color:var(--color-stone);line-height:1}.logo-wordmark--reversed .logo-upmarket{color:var(--color-parchment)}.logo-wordmark--reversed .logo-pro{color:var(--color-stone-light)}@media(max-width:480px){.logo-wordmark--responsive .logo-pro{display:none}}.site-header{position:sticky;top:0;z-index:100;width:100%;background-color:var(--color-parchment);border-bottom:1px solid var(--color-border);transition:background-color var(--transition-base),border-color var(--transition-base)}.site-header.is-transparent{background-color:transparent;border-bottom-color:transparent}.site-header.is-transparent .logo-upmarket{color:var(--color-parchment)}.site-header.is-transparent .logo-pro{color:var(--color-stone-light)}.site-header.is-transparent .nav-link{color:var(--color-parchment)}.site-header.is-scrolled{background-color:var(--color-parchment);border-bottom-color:var(--color-border)}.site-header.is-scrolled .logo-upmarket{color:var(--color-forest)}.site-header.is-scrolled .logo-pro{color:var(--color-stone)}.site-header.is-scrolled .nav-link{color:var(--color-near-black)}.header-inner{display:flex;align-items:center;justify-content:space-between;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-4);height:64px}.header-logo{display:flex;align-items:center;text-decoration:none}.nav-primary ul{display:flex;align-items:center;gap:var(--space-5)}.nav-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:24px;height:24px;padding:0;cursor:pointer}.nav-hamburger span{display:block;width:100%;height:1.5px;background-color:var(--color-near-black);transition:transform var(--transition-base),opacity var(--transition-base)}@media(max-width:768px){.nav-hamburger{display:flex}.nav-primary{display:none;position:absolute;top:64px;left:0;right:0;background-color:var(--color-parchment);border-bottom:1px solid var(--color-border);padding:var(--space-4)}.nav-primary.is-open{display:block}.nav-primary ul{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.nav-primary .nav-link{font-size:16px}}.nav-hamburger[aria-expanded=true] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-hamburger[aria-expanded=true] span:nth-child(2){opacity:0}.nav-hamburger[aria-expanded=true] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.site-footer{background-color:var(--color-forest);color:var(--color-parchment);padding:var(--space-10) 0 var(--space-6)}.footer-inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-4)}.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid rgba(196,184,168,.2);flex-wrap:wrap}.footer-nav{display:flex;gap:var(--space-8);flex-wrap:wrap}.footer-nav-group{display:flex;flex-direction:column;gap:var(--space-2)}.footer-nav-label{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--color-stone-light);margin-bottom:var(--space-1)}.footer-nav a{font-family:var(--font-body);font-size:14px;font-weight:300;color:var(--color-parchment);text-decoration:none;transition:color var(--transition-fast)}.footer-nav a:hover{color:var(--color-stone-light)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-4);gap:var(--space-4);flex-wrap:wrap}.footer-copyright{font-family:var(--font-body);font-size:13px;font-weight:400;color:var(--color-stone-light);max-width:none}.divider{width:100%;height:1px;background-color:#8a7c6e4d;border:none}.brass-rule{display:block;height:1px;background-color:var(--color-brass);border:none}.card{background-color:var(--color-parchment);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:box-shadow var(--transition-base)}.card:hover{box-shadow:0 4px 16px #1b171414}.card--module{border-left:3px solid var(--color-forest)}.section-dark{background-color:var(--color-forest);color:var(--color-parchment)}.section-dark h1,.section-dark h2,.section-dark h3,.section-dark h4,.section-dark .h1,.section-dark .h2,.section-dark .h3,.section-dark .h4,.section-dark p{color:var(--color-parchment)}.section-dark .meta,.section-dark .module-label{color:var(--color-stone-light)}.section-dark .brass-rule{background-color:var(--color-brass)}.section-dark--grain{position:relative}.section-dark--grain:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");opacity:.06;pointer-events:none}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-4)}.section{padding:var(--section-pad-v) 0}@media(max-width:768px){.section{padding:var(--space-6) 0}}.prose{max-width:var(--body-col-max)}.prose p{max-width:none}.prose h2,.prose h3,.prose h4{margin-top:2em;margin-bottom:.6em}.prose p+p{margin-top:1.25em}.lesson-module-label{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--color-stone);display:inline-block}.lesson-number{font-family:var(--font-body);font-size:13px;font-weight:400;color:var(--color-stone)}:focus-visible{outline:2px solid var(--color-brass);outline-offset:3px;border-radius:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:768px){body,p{font-size:16px}.header-inner{padding:0 var(--space-3)}.footer-top{flex-direction:column}.footer-nav{flex-direction:column;gap:var(--space-4)}}.skip-link[data-astro-cid-37fxchfa]:focus{position:fixed;top:var(--space-2);left:var(--space-2);z-index:9999;background-color:var(--color-parchment);color:var(--color-forest);padding:var(--space-1) var(--space-2);border:1px solid var(--color-forest);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:14px;font-weight:500;text-decoration:none;outline:none}
