:root{--nc-navy:#0a1628;--nc-navy-soft:#112338;--nc-gold:#c9a84c;--nc-gold-light:#e2c677;--nc-cream:#f7f3ea;--nc-paper:#fbf9f4;--nc-ink:#1a1f2c;--nc-muted:#5a6478;--nc-line:#e5dfd2}*{box-sizing:border-box;margin:0;padding:0}body,html{font-family:DM Sans,system-ui,sans-serif;color:var(--nc-ink);background:var(--nc-paper);line-height:1.6}h1,h2,h3,h4{font-family:Playfair Display,Georgia,serif;font-weight:600;letter-spacing:-.01em}a,h1,h2,h3,h4{color:var(--nc-navy)}a{text-decoration:none}a:hover{color:var(--nc-gold)}.nav{background:var(--nc-navy);color:var(--nc-cream);padding:18px 0;border-bottom:2px solid var(--nc-gold)}.nav-inner{max-width:1180px;margin:0 auto;padding:0 32px;display:flex;justify-content:space-between;align-items:center}.wordmark{font-family:Playfair Display,serif;font-size:22px;letter-spacing:.06em;color:var(--nc-cream)}.wordmark span{color:var(--nc-gold)}.nav-links{display:flex;gap:28px;font-size:14px}.nav-links a{color:var(--nc-cream)}.nav-links a:hover{color:var(--nc-gold)}.hero{background:linear-gradient(180deg,var(--nc-navy) 0,var(--nc-navy-soft) 100%);color:var(--nc-cream);padding:88px 32px 72px;border-bottom:4px solid var(--nc-gold)}.hero-inner{max-width:1180px;margin:0 auto}.eyebrow{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--nc-gold);margin-bottom:16px}.hero h1{font-size:clamp(40px,5vw,64px);color:var(--nc-cream);max-width:880px;line-height:1.1;margin-bottom:24px}.hero p{font-size:19px;max-width:720px;color:hsla(42,45%,94%,.86)}.hero .accent{color:var(--nc-gold)}.container{max-width:1180px;margin:0 auto;padding:72px 32px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px;flex-wrap:wrap;gap:16px}.section-head h2{font-size:38px}.section-head p{color:var(--nc-muted);max-width:480px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));grid-gap:24px;gap:24px}.card{background:#fff;border-radius:4px;padding:28px 26px;transition:all .18s ease;position:relative;border:1px solid var(--nc-line);border-top:3px solid var(--nc-gold)}.card:hover{transform:translateY(-2px);box-shadow:0 18px 38px -22px rgba(10,22,40,.32)}.card-num{font-family:Playfair Display,serif;font-size:13px;color:var(--nc-gold);letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}.card h3{font-size:22px;line-height:1.25;margin-bottom:8px}.card .subtitle{color:var(--nc-muted);font-size:14px;margin-bottom:16px;font-style:italic}.card p{color:var(--nc-ink);font-size:15px;line-height:1.65}.card-meta{margin-top:18px;padding-top:16px;border-top:1px solid var(--nc-line);display:flex;justify-content:space-between;font-size:13px;color:var(--nc-muted)}.detail-hero{background:var(--nc-navy);color:var(--nc-cream);padding:72px 32px;border-bottom:4px solid var(--nc-gold)}.detail-hero-inner{max-width:920px;margin:0 auto}.detail-hero h1{font-size:clamp(34px,4.4vw,50px);color:var(--nc-cream);margin-bottom:14px}.detail-hero .subtitle{font-size:19px;color:var(--nc-gold);font-style:italic;margin-bottom:20px}.detail-hero .meta{display:flex;gap:24px;font-size:14px;color:hsla(42,45%,94%,.7)}.back-link{display:inline-block;font-size:13px;color:var(--nc-gold);letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px}.back-link:hover{color:var(--nc-cream)}.detail-body{max-width:920px;margin:0 auto;padding:56px 32px 96px}.intro{border-left:3px solid var(--nc-gold);padding:26px 30px;font-size:17px;line-height:1.7;color:var(--nc-ink);margin-bottom:48px}.intro,.lesson{background:#fff}.lesson{border:1px solid var(--nc-line);border-radius:4px;padding:36px 38px;margin-bottom:22px}.lesson-head{margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--nc-line)}.lesson-num{font-family:Playfair Display,serif;font-size:13px;color:var(--nc-gold);letter-spacing:.18em;text-transform:uppercase}.lesson h3{font-size:26px;line-height:1.22;margin-top:6px;color:var(--nc-navy)}.lesson-body p{margin-bottom:16px;font-size:16px;line-height:1.75;color:var(--nc-ink)}.lesson-body p:last-child{margin-bottom:0}.footer{background:var(--nc-navy);color:hsla(42,45%,94%,.6);padding:36px 32px;text-align:center;font-size:13px;border-top:2px solid var(--nc-gold)}.footer span{color:var(--nc-gold)}@media (max-width:640px){.container{padding:48px 20px}.hero{padding:64px 20px 48px}.detail-body{padding:36px 20px 64px}.lesson{padding:26px 22px}.nav-links{display:none}}