@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit Fallback;src:local("Arial");ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.00%;size-adjust:99.82%}.__className_a80a2d{font-family:Outfit,Outfit Fallback;font-style:normal}.__variable_a80a2d{--font-outfit:"Outfit","Outfit Fallback"}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_231f96{font-family:DM Sans,DM Sans Fallback;font-style:normal}.__variable_231f96{--font-dm-sans:"DM Sans","DM Sans Fallback"}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 900;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 900;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 900;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 900;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display Fallback;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_86297e{font-family:Playfair Display,Playfair Display Fallback}.__variable_86297e{--font-playfair:"Playfair Display","Playfair Display Fallback"}:root{--brand-primary:#1f2a1b;--brand-secondary:#2c3a28;--brand-accent:#d8be88;--surface-background:#f9f9f5;--surface-card:#ffffff;--surface-sidebar:#1f2a1b;--surface-header:#1f2a1b;--text-primary:#1a2217;--text-muted:#5d655a;--border-color:#e6e2d6;--radius-card:20px;--state-success:#2f6b47;--state-warning:#8a5a12;--state-danger:#b3261e;--state-info:#2d5b8a;--font-display:var(--font-outfit),"Outfit",system-ui,sans-serif;--font-body:var(--font-dm-sans),"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--font-serif:var(--font-playfair),"Playfair Display",Georgia,serif;--font-mono:ui-monospace,"SF Mono","Cascadia Mono",Menlo,Consolas,monospace}.tenant-scope,:root{--on-primary:#ffffff;--tint-primary:color-mix(in srgb,var(--brand-primary) 8%,var(--surface-card));--tint-accent:color-mix(in srgb,var(--brand-accent) 18%,var(--surface-card));--accent-text:color-mix(in srgb,var(--brand-accent) 45%,var(--text-primary));--line-strong:color-mix(in srgb,var(--text-primary) 22%,var(--border-color));--shadow-card:0 1px 2px color-mix(in srgb,var(--text-primary) 5%,transparent),0 18px 40px -28px color-mix(in srgb,var(--brand-primary) 38%,transparent);--focus-ring:0 0 0 2px var(--surface-card),0 0 0 4px var(--brand-accent),0 0 0 5px color-mix(in srgb,var(--text-primary) 55%,transparent);--ease:cubic-bezier(.2,.7,.2,1)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body,html{width:100%}body{margin:0;min-height:100dvh;background:var(--surface-background);color:var(--text-primary);font-family:var(--font-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;line-height:1.15;letter-spacing:-.01em}p{margin:0}a{color:inherit}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:4px}::selection{background:color-mix(in srgb,var(--brand-accent) 28%,transparent)}.tenant-scope{width:100%;min-height:100dvh;background:var(--surface-background);color:var(--text-primary)}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:var(--brand-primary);color:var(--on-primary);padding:10px 16px;border-radius:6px;text-decoration:none;font-weight:600}.skip-link:focus{top:12px}.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}.display{font-family:var(--font-display);letter-spacing:-.015em}.eyebrow{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:650;color:var(--brand-accent)}.muted{color:var(--text-muted)}.mono{font-family:var(--font-mono);font-size:.86em}.lead{font-size:1.12rem;color:var(--text-muted);max-width:60ch}.h-page{font-family:var(--font-display);font-weight:500;font-size:clamp(1.9rem,3.4vw,2.75rem)}.h-section{font-size:1.05rem;font-weight:650;letter-spacing:0}.rule{height:1px;background:var(--border-color);border:0;margin:0}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}@media (min-width:768px){.container{padding:0 32px}}.stack{flex-direction:column}.row,.stack{display:flex}.row{align-items:center}.wrap{flex-wrap:wrap}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.gap-8{gap:32px}.between{justify-content:space-between}.grow{flex:1 1 auto;min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border-radius:8px;border:1px solid transparent;font-size:.94rem;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--brand-primary);color:var(--on-primary)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--brand-primary) 86%,black)}.btn-secondary{background:var(--surface-card);color:var(--text-primary);border-color:var(--line-strong)}.btn-secondary:hover:not(:disabled){border-color:var(--brand-primary);color:var(--brand-primary)}.btn-ghost{background:transparent;color:var(--text-primary)}.btn-ghost:hover:not(:disabled){background:var(--tint-primary)}.btn-danger{background:var(--surface-card);color:var(--state-danger);border-color:color-mix(in srgb,var(--state-danger) 45%,var(--border-color))}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--state-danger) 8%,var(--surface-card))}.btn-sm{min-height:34px;padding:0 12px;font-size:.86rem;border-radius:6px}.btn-block{width:100%}.link{color:var(--brand-primary);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--brand-primary) 35%,transparent);transition:text-decoration-color .16s}.link:hover{text-decoration-color:currentColor}.card{background:var(--surface-card);border:1px solid var(--border-color);box-shadow:var(--shadow-card)}.card-pad{padding:20px}@media (min-width:768px){.card-pad{padding:28px}}.card-link{display:block;text-decoration:none;transition:border-color .16s var(--ease)}.card-link:hover{border-color:color-mix(in srgb,var(--brand-primary) 55%,var(--border-color))}.monogram{--size:44px;width:var(--size);height:var(--size);flex:none;display:grid;place-items:center;border-radius:calc(var(--size) * .24);background:var(--brand-primary);color:var(--on-primary);font-family:var(--font-display);font-weight:600;font-size:calc(var(--size) * .4);letter-spacing:.02em;position:relative}.monogram:after{content:"";position:absolute;right:calc(var(--size) * .14);bottom:calc(var(--size) * .14);width:calc(var(--size) * .14);height:calc(var(--size) * .14);border-radius:50%;background:var(--brand-accent)}.monogram-lg{--size:72px}.monogram-sm{--size:34px}.badge{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;min-height:24px;border-radius:999px;font-size:.76rem;font-weight:650;letter-spacing:.01em;border:1px solid var(--border-color);background:var(--surface-card);color:var(--text-muted)}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge-plain:before{display:none}.badge-success{color:var(--state-success);border-color:color-mix(in srgb,var(--state-success) 35%,var(--border-color));background:color-mix(in srgb,var(--state-success) 7%,var(--surface-card))}.badge-warning{color:var(--state-warning);border-color:color-mix(in srgb,var(--state-warning) 35%,var(--border-color));background:color-mix(in srgb,var(--state-warning) 8%,var(--surface-card))}.badge-danger{color:var(--state-danger);border-color:color-mix(in srgb,var(--state-danger) 35%,var(--border-color));background:color-mix(in srgb,var(--state-danger) 7%,var(--surface-card))}.badge-brand{color:var(--brand-primary);border-color:color-mix(in srgb,var(--brand-primary) 30%,var(--border-color));background:var(--tint-primary)}.badge-accent{color:color-mix(in srgb,var(--brand-accent) 80%,var(--text-primary));border-color:color-mix(in srgb,var(--brand-accent) 40%,var(--border-color));background:var(--tint-accent)}.field{display:flex;flex-direction:column;gap:6px}.label{font-size:.86rem;font-weight:650}.hint{font-size:.82rem;color:var(--text-muted)}.input,.select{min-height:44px;padding:0 12px;border-radius:8px;width:100%;border:1px solid var(--line-strong);transition:border-color .16s var(--ease)}.input:hover,.select:hover{border-color:color-mix(in srgb,var(--brand-primary) 50%,var(--border-color))}.input:focus-visible,.select:focus-visible{border-color:var(--brand-primary);border-radius:8px}.input[aria-invalid=true]{border-color:var(--state-danger)}.field-error{font-size:.82rem;color:var(--state-danger);font-weight:600}.skeleton{background:color-mix(in srgb,var(--text-primary) 7%,var(--surface-card));border-radius:6px}.state{display:grid;gap:14px;justify-items:start;padding:28px;max-width:640px}.state-mark{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:var(--tint-primary);color:var(--brand-primary);border:1px solid var(--border-color)}.state-danger .state-mark{background:color-mix(in srgb,var(--state-danger) 8%,var(--surface-card));color:var(--state-danger)}.state-warning .state-mark{background:color-mix(in srgb,var(--state-warning) 9%,var(--surface-card));color:var(--state-warning)}.state h2{font-family:var(--font-display);font-weight:500;font-size:1.5rem}.notice{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:8px;border:1px solid var(--border-color);background:var(--tint-accent);font-size:.92rem}.notice svg{flex:none;margin-top:2px;color:var(--brand-accent)}.topbar{background:var(--surface-header);border-bottom:1px solid var(--border-color)}.topbar-inner{justify-content:space-between;gap:16px;min-height:68px}.topbar-inner,.wordmark{display:flex;align-items:center}.wordmark{gap:12px;text-decoration:none}.wordmark-name{font-family:var(--font-display);font-size:1.2rem;font-weight:600;letter-spacing:.08em}.wordmark-sub{font-size:.72rem;color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase}.hero{padding:56px 0 40px;border-bottom:1px solid var(--border-color)}@media (min-width:900px){.hero{padding:96px 0 72px}}.hero-grid{display:grid;gap:40px}@media (min-width:900px){.hero-grid{grid-template-columns:1.35fr 1fr;align-items:end;gap:64px}}.hero-title{font-weight:500;font-size:clamp(2.4rem,6vw,4.4rem);letter-spacing:-.025em}.hero-title em{font-style:italic;color:var(--brand-accent)}.principles{display:grid;gap:0;border-top:1px solid var(--line-strong)}.principle{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--border-color)}.principle-num{font-family:var(--font-mono);font-size:.8rem;color:var(--brand-accent);padding-top:3px}.principle h3{font-size:.98rem;margin-bottom:4px}.principle p{font-size:.9rem;color:var(--text-muted)}.section{padding:48px 0}@media (min-width:900px){.section{padding:72px 0}}.section-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px;margin-bottom:28px}.directory{display:grid;gap:16px}@media (min-width:768px){.directory{grid-template-columns:repeat(2,1fr)}}@media (min-width:1100px){.directory{grid-template-columns:repeat(3,1fr)}}.portal-card{display:flex;flex-direction:column;gap:18px;padding:24px;position:relative;overflow:hidden}.portal-card .swatches{display:flex;gap:4px}.portal-card .swatch{width:18px;border-radius:2px}.portal-card-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid var(--border-color);font-size:.88rem;font-weight:600;color:var(--brand-primary)}.portal-card-foot svg{transition:transform .16s var(--ease)}.card-link:hover .portal-card-foot svg{transform:translateX(3px)}.footer{border-top:1px solid var(--border-color);padding:28px 0 40px;font-size:.86rem;color:var(--text-muted)}.auth-layout{min-height:100dvh;display:grid}@media (min-width:960px){.auth-layout{grid-template-columns:minmax(380px,1fr) 1.1fr}}.auth-aside{background:var(--brand-primary);color:var(--on-primary);padding:32px 24px;display:flex;flex-direction:column;justify-content:space-between;gap:32px}@media (min-width:960px){.auth-aside{padding:48px}}.auth-aside .eyebrow{color:color-mix(in srgb,var(--on-primary) 72%,var(--brand-accent))}.auth-aside-title{font-family:var(--font-display);font-weight:500;font-size:clamp(1.8rem,3.2vw,2.7rem);line-height:1.08}.auth-aside p{color:color-mix(in srgb,var(--on-primary) 78%,transparent);max-width:44ch}.auth-aside a{color:var(--on-primary)}.auth-main{display:grid;place-items:center;padding:32px 16px 48px}.auth-panel{width:100%;max-width:440px;display:grid;gap:20px}.auth-aside .hide-sm{display:none}@media (min-width:960px){.auth-aside .hide-sm{display:block}}.shell{width:100%;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr}@media (min-width:1024px){.shell{grid-template-columns:264px 1fr;grid-template-rows:1fr}}.sidebar{background:var(--surface-sidebar);border-bottom:1px solid var(--border-color);color:var(--sidebar-text,var(--text-primary));display:flex;flex-direction:column;gap:12px}@media (min-width:1024px){.sidebar{border-bottom:0;border-right:1px solid var(--border-color);padding:24px 18px;position:sticky;top:0;height:100dvh;gap:28px}}.sidebar-brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}.sidebar-brand-text{min-width:0}.sidebar-brand-name{font-size:1.05rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-brand-org{font-size:.76rem;color:var(--sidebar-muted,var(--text-muted))}.nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;margin:0 -4px;padding:2px 4px}.nav::-webkit-scrollbar{display:none}@media (min-width:1024px){.nav{flex-direction:column;overflow:visible}}.nav-label{display:none}@media (min-width:1024px){.nav-label{display:block;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-weight:650;padding:0 12px;margin:10px 0 6px}}.nav-link{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;white-space:nowrap;text-decoration:none;font-weight:550;font-size:.93rem;color:var(--text-primary);transition:background-color .16s var(--ease),color .16s var(--ease)}.nav-link svg{color:var(--text-muted);transition:color .16s var(--ease)}.nav-link:hover{background:color-mix(in srgb,var(--brand-primary) 7%,transparent)}.nav-link[aria-current=page]{background:var(--surface-card);color:var(--brand-primary);box-shadow:inset 3px 0 0 var(--brand-accent),0 0 0 1px var(--border-color)}.sidebar .nav-label{color:var(--sidebar-muted,var(--text-muted))}.sidebar .btn-ghost,.sidebar .nav-link:not([aria-current=page]){color:var(--sidebar-text,var(--text-primary))}.sidebar .nav-link:not([aria-current=page]) svg{color:var(--sidebar-muted,var(--text-muted))}.sidebar .nav-link:not([aria-current=page]):hover{background:color-mix(in srgb,var(--sidebar-text,var(--text-primary)) 12%,transparent)}.sidebar-foot{display:none}@media (min-width:1024px){.sidebar-foot{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:16px;border-top:1px solid var(--border-color)}}.sidebar-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebar-mobile-actions{display:flex;gap:6px}@media (min-width:1024px){.sidebar-mobile-actions{display:none}}.main{min-width:0;padding:24px 0 64px}@media (min-width:1024px){.main{padding:40px 0 80px}}.main .container{max-width:1120px}.page-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px;padding-bottom:24px;margin-bottom:28px;border-bottom:1px solid var(--border-color)}.user-chip{display:flex;align-items:center;gap:10px;min-width:0}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--tint-accent);color:var(--text-primary);font-size:.78rem;font-weight:700}.avatar,.stats{border:1px solid var(--border-color)}.stats{display:grid;grid-template-columns:repeat(2,1fr);background:var(--surface-card);overflow:hidden}@media (min-width:900px){.stats{grid-template-columns:repeat(4,1fr)}}.stat{padding:18px 20px;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.stat-label{font-size:.78rem;color:var(--text-muted);font-weight:600}.stat-value{font-family:var(--font-display);font-size:2rem;line-height:1.1;margin-top:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-value small{font-family:var(--font-body);font-size:.85rem;color:var(--text-muted);margin-left:4px}.course-grid{display:grid;gap:16px}@media (min-width:720px){.course-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1180px){.course-grid.three{grid-template-columns:repeat(3,1fr)}}.course-card{display:flex;flex-direction:column;height:100%;padding:0;overflow:hidden}.course-band{height:6px;background:linear-gradient(90deg,var(--brand-primary) 0 70%,var(--brand-secondary) 70% 90%,var(--brand-accent) 90%)}.course-body{padding:20px 22px;display:flex;flex-direction:column;gap:10px;flex:1 1}.course-title{font-family:var(--font-display);font-size:1.32rem;line-height:1.18}.course-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.82rem;color:var(--text-muted)}.course-meta span{display:inline-flex;align-items:center;gap:5px}.course-foot{padding:14px 22px;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.86rem}.progress{height:6px;border-radius:999px;background:color-mix(in srgb,var(--text-primary) 8%,var(--surface-card));overflow:hidden}.progress>span{display:block;height:100%;background:var(--brand-primary);border-radius:inherit}.toolbar{display:grid;gap:12px;margin-bottom:24px}@media (min-width:768px){.toolbar{grid-template-columns:1fr 220px 200px}}.search{position:relative}.search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search .input{padding-left:38px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.chip{min-height:34px;padding:0 14px;border-radius:999px;border:1px solid var(--border-color);background:var(--surface-card);font-size:.86rem;font-weight:600;cursor:pointer;transition:border-color .16s,background-color .16s,color .16s}.chip:hover,.chip[aria-pressed=true]{border-color:var(--brand-primary)}.chip[aria-pressed=true]{background:var(--brand-primary);color:var(--on-primary)}.course-detail{display:grid;gap:28px}@media (min-width:1000px){.course-detail{grid-template-columns:minmax(0,1fr) 320px;align-items:start}}.lesson{font-family:var(--font-display);font-size:1.12rem;line-height:1.75;max-width:66ch}.lesson p+p{margin-top:1.05em}.lesson p:first-of-type:first-letter{font-size:3.1em;float:left;line-height:.9;padding:6px 10px 0 0;color:var(--brand-primary)}.aside-sticky{position:sticky;top:24px;display:grid;gap:16px}.file-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--border-color)}.file-row:first-child{border-top:0}.file-icon{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;background:var(--tint-primary);color:var(--brand-primary);flex:none}.dl{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;font-size:.9rem}.dl dt{color:var(--text-muted)}.dl dd{margin:0;font-weight:600;text-align:right}.table-wrap{overflow-x:auto;border:1px solid var(--border-color);border-radius:var(--radius-card);background:var(--surface-card)}.table{width:100%;border-collapse:collapse;font-size:.9rem}.table th{text-align:left;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-weight:650;padding:12px 16px;border-bottom:1px solid var(--line-strong);background:color-mix(in srgb,var(--text-primary) 2%,var(--surface-card));white-space:nowrap}.table td{padding:14px 16px;border-bottom:1px solid var(--border-color);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background-color .16s}.table tbody tr:hover{background:color-mix(in srgb,var(--brand-primary) 3%,var(--surface-card))}.context-band{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;font-size:.86rem;font-weight:600;border:1px dashed color-mix(in srgb,var(--brand-secondary) 60%,var(--border-color));background:color-mix(in srgb,var(--brand-secondary) 7%,var(--surface-card));color:var(--brand-secondary)}.console{--console-ink:#0f1a2c;min-height:100dvh;background:var(--surface-background)}.console-bar{background:var(--console-ink);color:#e9ecf2}.console-bar .container{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px}.console-bar .tag{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;padding:3px 8px;border:1px solid #3a4a66;border-radius:4px;color:#c9d3e4}.console-bar a,.console-bar button{color:#e9ecf2}.console-bar .btn-ghost:hover{background:#1e2b42}.console-layout{display:grid;gap:24px}@media (min-width:1100px){.console-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start}}.timeline{display:grid}.timeline-item{display:grid;grid-template-columns:12px 1fr;gap:14px;padding:12px 0;border-top:1px solid var(--border-color)}.timeline-item:first-child{border-top:0}.timeline-dot{width:8px;height:8px;border-radius:50%;background:var(--brand-accent);margin-top:7px}.two-col{display:grid;gap:24px}@media (min-width:1000px){.two-col{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}}.welcome-band{padding:28px;border-radius:var(--radius-card);background:var(--brand-primary);color:var(--on-primary);display:grid;gap:16px;position:relative;overflow:hidden}@media (min-width:768px){.welcome-band{padding:36px 40px}}.welcome-band:after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;border:28px solid color-mix(in srgb,var(--brand-accent) 55%,transparent);opacity:.5;pointer-events:none}.welcome-band p{color:color-mix(in srgb,var(--on-primary) 80%,transparent);max-width:58ch}.welcome-band .btn-secondary{border-color:transparent}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em}.eyebrow{color:var(--accent-text);letter-spacing:.18em;font-weight:600;display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:22px;height:1px;background:currentColor;opacity:.7}.h-page{font-weight:600;letter-spacing:-.03em}.display{font-weight:500}.notice svg{color:var(--accent-text)}.auth-aside-title em,.hero-title em,.serif-accent{font-family:var(--font-serif);font-style:italic;font-weight:500;letter-spacing:-.01em}.btn{min-height:46px;padding:0 24px;font-weight:600;letter-spacing:.005em}.btn,.btn-sm{border-radius:999px}.btn-sm{min-height:36px;padding:0 16px}.btn-primary{box-shadow:0 10px 24px -14px color-mix(in srgb,var(--brand-primary) 75%,transparent)}.btn-secondary{border-color:var(--border-color)}.btn-gold{background:#d8be88;color:#1f2a1b}.btn-gold:hover:not(:disabled){background:#e3cd9e}.link{text-decoration-thickness:1px}.card{border-color:var(--border-color);border-radius:var(--radius-card)}.card-link:hover{border-color:color-mix(in srgb,var(--brand-accent) 70%,var(--border-color));transform:translateY(-2px);box-shadow:0 24px 44px -28px color-mix(in srgb,var(--brand-primary) 45%,transparent)}.card-link{transition:border-color .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease)}.monogram{border-radius:50%}.monogram:after{right:0;bottom:calc(var(--size) * .04);width:calc(var(--size) * .24);height:calc(var(--size) * .24);border:2px solid var(--brand-primary)}.badge{background:color-mix(in srgb,var(--brand-primary) 4%,var(--surface-card))}.input,.select{border-radius:14px;min-height:48px;border-color:var(--border-color);background:var(--surface-card)}.brand-segment,.chip{border-radius:999px}.state-mark{background:var(--tint-accent);color:var(--accent-text)}.notice,.state-mark{border-radius:16px}.context-band{border-radius:14px}.stats{border-radius:var(--radius-card)}.course-band{height:4px;background:linear-gradient(90deg,var(--brand-accent),color-mix(in srgb,var(--brand-accent) 20%,transparent))}.course-title{font-weight:500;letter-spacing:-.02em}.lesson{font-family:var(--font-serif);font-size:1.1rem}.lesson p:first-of-type:first-letter{font-style:italic;color:var(--accent-text)}.progress>span{background:linear-gradient(90deg,var(--brand-primary),var(--brand-accent))}.topbar{position:sticky;top:12px;z-index:40;margin:12px clamp(10px,1.4vw,16px) 0;border:0;border-radius:22px;background:var(--brand-primary);color:#f9f9f5;box-shadow:0 18px 40px -26px rgba(15,22,13,.8)}.topbar-inner{min-height:72px;max-width:none;padding:0 20px}@media (min-width:768px){.topbar-inner{padding:0 28px}}.topbar .wordmark-sub{color:#cfc9b4}.topbar .wordmark-name{letter-spacing:.14em}.topbar .monogram{background:#d8be88;color:#1f2a1b}.topbar .monogram:after{border-color:#1f2a1b;background:#f9f9f5}.topbar .btn-ghost{color:#f9f9f5}.topbar .btn-ghost:hover:not(:disabled){background:rgba(249,249,245,.1)}.topbar .btn-primary{background:#d8be88;color:#1f2a1b;box-shadow:none}.topbar .btn-primary:hover:not(:disabled){background:#e3cd9e}.topbar .btn-secondary{background:transparent;color:#f9f9f5;border-color:rgba(249,249,245,.35)}.topbar .btn-secondary:hover:not(:disabled){background:rgba(249,249,245,.1);color:#f9f9f5;border-color:#d8be88}.topbar:not(.topbar-landing) .topbar-inner{flex-wrap:wrap;padding-block:12px}.topbar:not(.topbar-landing) nav[aria-label=Conta]{flex-wrap:wrap;max-width:100%}.topnav{display:none;gap:4px}@media (min-width:900px){.topnav{display:flex}}.topnav a{color:#f9f9f5;text-decoration:none;font-size:.94rem;font-weight:500;padding:8px 14px;border-radius:999px;transition:color .16s,background-color .16s}.topnav a:hover{color:#d8be88;background:rgba(249,249,245,.06)}.hero{padding:12px clamp(10px,1.4vw,16px) 0;border-bottom:0}.hero-panel{position:relative;overflow:hidden;border-radius:28px;background:radial-gradient(120% 90% at 85% 10%,#33452e 0,#1f2a1b 55%,#161f14 100%);color:#f9f9f5;padding:56px 0 48px;isolation:isolate}@media (min-width:900px){.hero-panel{padding:104px 0 88px}}.hero-panel:before{right:-140px;top:-140px;width:560px;height:560px;border-radius:50%;border:1px solid rgba(216,190,136,.35);box-shadow:0 0 0 60px rgba(216,190,136,.05),0 0 0 130px rgba(216,190,136,.035)}.hero-panel:after,.hero-panel:before{content:"";position:absolute;z-index:-1}.hero-panel:after{left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(216,190,136,.6),transparent)}.hero-panel .eyebrow{color:#d8be88}.hero-panel .lead{color:#d9dccf}.hero-title{font-family:var(--font-display);font-weight:600;font-size:clamp(2.5rem,6.4vw,4.9rem);line-height:1.02;letter-spacing:-.035em}.hero-title em{color:#d8be88;font-weight:500;padding-right:.06em}.hero-panel .btn-primary{background:#d8be88;color:#1f2a1b;box-shadow:none}.hero-panel .btn-primary:hover:not(:disabled){background:#e8d4a6}.hero-panel .btn-secondary{background:transparent;color:#f9f9f5;border-color:rgba(249,249,245,.4)}.hero-panel .btn-secondary:hover:not(:disabled){color:#d8be88;border-color:#d8be88;background:transparent}.principles{border-top:0;gap:12px}.principle{background:rgba(249,249,245,.06);border:1px solid rgba(249,249,245,.12);border-radius:20px;padding:18px 20px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.principle-num{color:#d8be88;font-family:var(--font-serif);font-style:italic;font-size:1.25rem;padding-top:0}.principle h2,.principle h3{color:#f9f9f5}.principle p{color:#cfd3c4}.directory-wave{display:block;width:100%;height:36px;margin:0 0 28px}.portal-card{padding:28px}.portal-card .swatches{gap:6px}.portal-card .swatch{width:28px;height:6px;border-radius:999px}.portal-card-foot{color:var(--text-primary)}.footer{background:var(--brand-primary);color:#cfd3c4;border:0;border-radius:28px;margin:40px clamp(10px,1.4vw,16px) 16px;padding:32px 0}.auth-layout{padding:12px;gap:12px;background:var(--surface-background)}.auth-aside{border-radius:28px;background:radial-gradient(120% 90% at 85% 5%,color-mix(in srgb,var(--brand-secondary) 100%,white 6%) 0,var(--brand-primary) 60%)}.auth-aside .monogram{background:var(--on-primary);color:var(--brand-primary)}.auth-aside .eyebrow{color:color-mix(in srgb,var(--on-primary) 75%,var(--brand-accent))}.auth-aside-title{font-weight:600;letter-spacing:-.03em}.auth-aside-title em{color:color-mix(in srgb,var(--on-primary) 70%,var(--brand-accent))}.shell{background:var(--surface-background)}.sidebar{border:0;border-radius:24px;margin:12px clamp(10px,1.4vw,16px) 0;padding:14px 16px;box-shadow:0 18px 40px -28px rgba(15,22,13,.75)}@media (min-width:1024px){.shell{grid-template-columns:288px 1fr}.sidebar{margin:16px 0 16px 16px;height:calc(100dvh - 32px);padding:24px 18px;border-right:0}}.sidebar-brand-name{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}.nav-link{border-radius:999px;padding:11px 16px;font-weight:500}.nav-link[aria-current=page],.sidebar .nav-link[aria-current=page]{background:var(--surface-card);color:var(--brand-primary);box-shadow:inset 4px 0 0 var(--brand-accent)}.nav-link[aria-current=page] svg{color:var(--brand-primary)}.sidebar-foot{border-top-color:rgba(255,255,255,.16)}.sidebar .user-chip strong{color:var(--sidebar-text,inherit)}.avatar,.sidebar .badge{background:var(--surface-card)}.avatar{color:var(--brand-primary);border:0}.main{padding-top:28px}@media (min-width:1024px){.main{padding-top:48px}}.page-head{border-bottom:0;padding-bottom:8px;margin-bottom:24px}.page-head h1{font-size:clamp(2rem,3.6vw,3rem);font-weight:600;letter-spacing:-.035em}.welcome-band{border-radius:28px;background:radial-gradient(120% 120% at 90% 0,color-mix(in srgb,var(--brand-secondary) 100%,white 8%) 0,var(--brand-primary) 62%);padding:32px 28px}@media (min-width:768px){.welcome-band{padding:48px}}.welcome-band:after{border-color:color-mix(in srgb,var(--brand-accent) 55%,transparent);border-width:1px;box-shadow:0 0 0 36px color-mix(in srgb,var(--brand-accent) 8%,transparent);opacity:.9}.welcome-band .btn-secondary{background:var(--on-primary);color:var(--brand-primary)}.welcome-band h1,.welcome-band h2{font-weight:600;letter-spacing:-.03em}.console{--console-ink:#1f2a1b}.console-bar{border-radius:22px;margin:12px clamp(10px,1.4vw,16px) 0}.console-bar .btn-ghost:hover{background:rgba(249,249,245,.1)}.console-bar .tag{border-color:rgba(216,190,136,.5);color:#d8be88}.navigation-status{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:1000;pointer-events:none;max-width:calc(100vw - 32px)}.navigation-status-pill{display:inline-flex;align-items:center;gap:12px;padding:14px 20px;border:1px solid rgba(216,190,136,.5);border-radius:999px;background:#142019;color:#f5efe1;font-size:.95rem;line-height:1.4;box-shadow:0 8px 30px rgba(0,0,0,.28)}.navigation-spinner{flex:none;width:22px;height:22px;border-color:#d8be88 #d8be88 rgba(216,190,136,.25) rgba(216,190,136,.25);border-style:solid;border-width:2px;border-radius:50%;animation:navigation-spin .8s linear infinite}.page-loading{min-height:60svh;display:grid;place-items:center;padding:24px}@keyframes navigation-spin{to{transform:rotate(1turn)}}@media (max-width:480px){.navigation-status{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.navigation-status-pill{font-size:.875rem;padding:12px 16px}}@media (prefers-reduced-motion:reduce){.navigation-spinner{animation:none}}