:root{--color-primary-50: #E8F4FD;--color-primary-100: #C5E4F9;--color-primary-200: #8DC9F3;--color-primary-300: #55ADEC;--color-primary-400: #2E96E0;--color-primary-500: #1A73C7;--color-primary-600: #145DA1;--color-primary-700: #0F477B;--color-primary-800: #0A3155;--color-primary-900: #051B2F;--color-secondary-50: #E6F7F2;--color-secondary-100: #C0EBE0;--color-secondary-200: #80D7C0;--color-secondary-300: #40C3A1;--color-secondary-400: #1AAF88;--color-secondary-500: #0B6E4F;--color-secondary-600: #095E43;--color-secondary-700: #074D37;--color-secondary-800: #053D2B;--color-secondary-900: #032C1F;--color-accent-50: #FFF8E6;--color-accent-100: #FFEDB3;--color-accent-200: #FFDD66;--color-accent-300: #FFCD1A;--color-accent-400: #E6B800;--color-accent-500: #CC9F00;--color-accent-600: #B38A00;--color-success-50: #ECFDF5;--color-success-500: #10B981;--color-success-600: #059669;--color-warning-50: #FFFBEB;--color-warning-500: #F59E0B;--color-warning-600: #D97706;--color-error-50: #FEF2F2;--color-error-500: #EF4444;--color-error-600: #DC2626;--color-neutral-0: #FFFFFF;--color-neutral-50: #F9FAFB;--color-neutral-100: #F3F4F6;--color-neutral-200: #E5E7EB;--color-neutral-300: #D1D5DB;--color-neutral-400: #9CA3AF;--color-neutral-500: #6B7280;--color-neutral-600: #4B5563;--color-neutral-700: #374151;--color-neutral-800: #1F2937;--color-neutral-900: #111827;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.625;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .07), 0 4px 6px -4px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .07), 0 8px 10px -6px rgba(0, 0, 0, .04);--max-width: 1200px;--header-height: 72px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{font-family:var(--font-family);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-neutral-800);background-color:var(--color-neutral-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}h1,h2,h3,h4,h5,h6{line-height:var(--leading-tight);color:var(--color-neutral-900)}ul,ol{list-style:none}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-weight:600;font-size:var(--text-base);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);transition:all var(--transition-base);white-space:nowrap}.btn-primary{background-color:var(--color-secondary-500);color:var(--color-neutral-0);box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--color-secondary-600);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-outline{border:1.5px solid var(--color-neutral-300);color:var(--color-neutral-700);background-color:var(--color-neutral-0)}.btn-outline:hover{border-color:var(--color-primary-500);color:var(--color-primary-600);background-color:var(--color-primary-50)}.btn-lg{font-size:var(--text-lg);padding:var(--space-4) var(--space-8);border-radius:var(--radius-lg)}.section{padding:var(--space-20) 0}.section-label{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-secondary-500);margin-bottom:var(--space-3)}.section-title{font-size:var(--text-3xl);font-weight:700;margin-bottom:var(--space-4)}.section-subtitle{font-size:var(--text-lg);color:var(--color-neutral-500);max-width:640px}@media(max-width:768px){.section{padding:var(--space-12) 0}.section-title{font-size:var(--text-2xl)}.section-subtitle{font-size:var(--text-base)}.btn-lg{font-size:var(--text-base);padding:var(--space-3) var(--space-6)}}.header{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--header-height);background-color:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:box-shadow var(--transition-base)}.header-scrolled{box-shadow:0 1px 0 var(--color-neutral-200)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%}.logo-link{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.logo-text{font-size:var(--text-lg);font-weight:700;color:var(--color-neutral-900)}.logo-text-lg{font-size:var(--text-xl);font-weight:700;color:var(--color-neutral-900)}.logo-accent{color:var(--color-secondary-500)}.header-nav{display:flex;align-items:center;gap:var(--space-8)}.header-link{font-size:var(--text-sm);font-weight:500;color:var(--color-neutral-600);transition:color var(--transition-fast);padding:var(--space-1) 0}.header-link:hover{color:var(--color-neutral-900)}.header-cta{font-size:var(--text-sm);padding:var(--space-2) var(--space-5)}.header-menu-btn{display:none;color:var(--color-neutral-700);padding:var(--space-1)}@media(max-width:768px){.header-menu-btn{display:flex;align-items:center;justify-content:center}.header-nav{display:none;position:absolute;top:var(--header-height);left:0;right:0;flex-direction:column;gap:0;background-color:var(--color-neutral-0);border-bottom:1px solid var(--color-neutral-200);box-shadow:var(--shadow-lg);padding:var(--space-4) var(--space-6)}.header-nav-open{display:flex}.header-link{font-size:var(--text-base);padding:var(--space-3) 0;width:100%}.header-cta{margin-top:var(--space-3);width:100%;text-align:center}}.footer{background-color:var(--color-neutral-900);color:var(--color-neutral-400);padding:var(--space-16) 0 var(--space-8)}.footer-top{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--space-16);padding-bottom:var(--space-12);border-bottom:1px solid rgba(255,255,255,.08)}.footer-brand{display:flex;flex-direction:column;gap:var(--space-4)}.footer-brand .logo-text,.footer-brand .logo-text-lg{color:var(--color-neutral-0)}.footer-brand .logo-accent{color:var(--color-secondary-400)}.footer-tagline{font-size:var(--text-sm);line-height:var(--leading-relaxed);max-width:320px}.footer-email{font-size:var(--text-sm);color:var(--color-primary-300);transition:color var(--transition-fast)}.footer-email:hover{color:var(--color-primary-200)}.footer-links-group{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8)}.footer-col-title{font-size:var(--text-sm);font-weight:600;color:var(--color-neutral-0);margin-bottom:var(--space-4)}.footer-nav{display:flex;flex-direction:column;gap:var(--space-3)}.footer-nav a{font-size:var(--text-sm);color:var(--color-neutral-400);transition:color var(--transition-fast)}.footer-nav a:hover{color:var(--color-neutral-0)}.footer-bottom{padding-top:var(--space-8);text-align:center;font-size:var(--text-sm)}@media(max-width:768px){.footer-top{grid-template-columns:1fr;gap:var(--space-10)}.footer-links-group{grid-template-columns:1fr 1fr}}@media(max-width:480px){.footer-links-group{grid-template-columns:1fr;gap:var(--space-8)}}.hero{padding-top:calc(var(--header-height) + var(--space-16));padding-bottom:var(--space-20);background:linear-gradient(180deg,var(--color-neutral-50) 0%,var(--color-neutral-0) 100%)}.hero-inner{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;gap:0 var(--space-16);align-items:center}.hero-headline{grid-column:1;grid-row:1;padding-bottom:var(--space-4)}.hero-details{grid-column:1;grid-row:2;align-self:start}.hero-visual{grid-column:2;grid-row:1 / -1;position:relative;align-self:center}.hero-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:500;color:var(--color-secondary-600);background-color:var(--color-secondary-50);padding:var(--space-1) var(--space-3);border-radius:999px;margin-bottom:var(--space-6)}.hero-title{font-size:var(--text-5xl);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--space-4);color:var(--color-neutral-900)}.hero-subtitle{font-size:var(--text-xl);color:var(--color-neutral-600);margin-bottom:var(--space-4);line-height:var(--leading-relaxed)}.hero-description{font-size:var(--text-base);color:var(--color-neutral-500);margin-bottom:var(--space-8);line-height:var(--leading-relaxed);max-width:520px}.hero-price{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-6)}.hero-price-amount{font-size:var(--text-4xl);font-weight:700;color:var(--color-neutral-900)}.hero-price-label{font-size:var(--text-base);color:var(--color-neutral-500)}.hero-actions{margin-bottom:var(--space-6)}.hero-reassurance{display:flex;gap:var(--space-6)}.hero-reassurance-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-neutral-500)}.hero-reassurance-item svg{color:var(--color-secondary-500)}.hero-image-wrapper{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl);aspect-ratio:4 / 3}.hero-image{width:100%;height:100%;object-fit:cover}.hero-grid-overlay{position:absolute;inset:0;pointer-events:none}.hero-grid-line{position:absolute;background-color:#ffffff26}.hero-grid-h1{left:0;right:0;top:33%;height:1px}.hero-grid-h2{left:0;right:0;top:66%;height:1px}.hero-grid-v1{top:0;bottom:0;left:33%;width:1px}.hero-grid-v2{top:0;bottom:0;left:66%;width:1px}@media(max-width:768px){.hero{padding-top:calc(var(--header-height) + var(--space-10));padding-bottom:var(--space-12)}.hero-inner{grid-template-columns:1fr;grid-template-rows:auto;gap:var(--space-8)}.hero-headline{grid-column:1;grid-row:auto;padding-bottom:0}.hero-visual,.hero-details{grid-column:1;grid-row:auto}.hero-title{font-size:var(--text-3xl)}.hero-subtitle{font-size:var(--text-lg)}.hero-reassurance{flex-direction:column;gap:var(--space-3)}}.overview-header{text-align:center;margin-bottom:var(--space-12)}.overview-header .section-subtitle{margin-left:auto;margin-right:auto}.overview-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-6)}.overview-card{text-align:center;padding:var(--space-8) var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200);background:var(--color-neutral-0);transition:all var(--transition-base)}.overview-card:hover{border-color:var(--color-secondary-200);box-shadow:var(--shadow-md);transform:translateY(-2px)}.overview-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-lg);background-color:var(--color-secondary-50);color:var(--color-secondary-500);margin-bottom:var(--space-4)}.overview-card-title{font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-2)}.overview-card-desc{font-size:var(--text-sm);color:var(--color-neutral-500);line-height:var(--leading-relaxed)}@media(max-width:1024px){.overview-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.overview-grid{grid-template-columns:1fr 1fr;gap:var(--space-4)}.overview-card{padding:var(--space-6) var(--space-3)}}.curriculum{background-color:var(--color-neutral-50)}.curriculum-header{text-align:center;margin-bottom:var(--space-12)}.curriculum-header .section-subtitle{margin-left:auto;margin-right:auto}.curriculum-list{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-4)}.curriculum-item{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-6);background:var(--color-neutral-0);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200);transition:all var(--transition-base)}.curriculum-item:hover{border-color:var(--color-primary-200);box-shadow:var(--shadow-md)}.curriculum-number{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background-color:var(--color-primary-500);color:var(--color-neutral-0);font-size:var(--text-sm);font-weight:600}.curriculum-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);background-color:var(--color-secondary-50);color:var(--color-secondary-500)}.curriculum-content{flex:1}.curriculum-title{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-1)}.curriculum-desc{font-size:var(--text-sm);color:var(--color-neutral-500);line-height:var(--leading-relaxed)}@media(max-width:640px){.curriculum-item{flex-wrap:wrap;gap:var(--space-3);padding:var(--space-4)}.curriculum-content{flex-basis:100%}}.learn-inner{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16);align-items:center}.learn-list{display:flex;flex-direction:column;gap:var(--space-4)}.learn-item{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-lg);color:var(--color-neutral-700);padding:var(--space-4) var(--space-5);background:var(--color-neutral-50);border-radius:var(--radius-md);border:1px solid var(--color-neutral-100);transition:all var(--transition-base)}.learn-item:hover{border-color:var(--color-secondary-200);background:var(--color-secondary-50)}.learn-check{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background-color:var(--color-secondary-500);color:var(--color-neutral-0)}@media(max-width:768px){.learn-inner{grid-template-columns:1fr;gap:var(--space-8)}.learn-item{font-size:var(--text-base);padding:var(--space-3) var(--space-4)}}.pricing{background-color:var(--color-neutral-50)}.pricing-header{text-align:center;margin-bottom:var(--space-12)}.pricing-header .section-subtitle{margin-left:auto;margin-right:auto}.pricing-card{max-width:480px;margin:0 auto;background:var(--color-neutral-0);border:2px solid var(--color-secondary-200);border-radius:var(--radius-xl);padding:var(--space-10);box-shadow:var(--shadow-lg)}.pricing-card-header{text-align:center;margin-bottom:var(--space-8);padding-bottom:var(--space-8);border-bottom:1px solid var(--color-neutral-200)}.pricing-card-name{font-size:var(--text-xl);font-weight:600;margin-bottom:var(--space-4);color:var(--color-neutral-900)}.pricing-amount{display:flex;align-items:baseline;justify-content:center;gap:var(--space-2)}.pricing-dollar{font-size:var(--text-5xl);font-weight:700;color:var(--color-neutral-900);letter-spacing:-.02em}.pricing-period{font-size:var(--text-base);color:var(--color-neutral-500)}.pricing-features{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-8)}.pricing-feature{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-base);color:var(--color-neutral-700)}.pricing-check{flex-shrink:0;color:var(--color-secondary-500)}.pricing-cta{width:100%;text-align:center}@media(max-width:640px){.pricing-card{padding:var(--space-6)}.pricing-dollar{font-size:var(--text-4xl)}}.faq-header{text-align:center;margin-bottom:var(--space-12)}.faq-header .section-subtitle{margin-left:auto;margin-right:auto}.faq-email{color:var(--color-primary-500);text-decoration:underline;text-underline-offset:2px}.faq-email:hover{color:var(--color-primary-600)}.faq-list{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-3)}.faq-item{border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition-base)}.faq-item:hover{border-color:var(--color-neutral-300)}.faq-item-open{border-color:var(--color-primary-200)}.faq-question{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-5) var(--space-6);font-size:var(--text-base);font-weight:600;color:var(--color-neutral-800);text-align:left;background:none;border:none;cursor:pointer;gap:var(--space-4)}.faq-chevron{flex-shrink:0;color:var(--color-neutral-400);transition:transform var(--transition-base)}.faq-item-open .faq-chevron{transform:rotate(180deg);color:var(--color-primary-500)}.faq-answer-wrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--transition-slow)}.faq-item-open .faq-answer-wrapper{grid-template-rows:1fr}.faq-answer{overflow:hidden;padding:0 var(--space-6);font-size:var(--text-sm);color:var(--color-neutral-600);line-height:var(--leading-relaxed)}.faq-item-open .faq-answer{padding-bottom:var(--space-5)}@media(max-width:640px){.faq-question{padding:var(--space-4);font-size:var(--text-sm)}.faq-answer{padding:0 var(--space-4)}.faq-item-open .faq-answer{padding-bottom:var(--space-4)}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-6);padding-top:calc(var(--header-height) + var(--space-8));background-color:var(--color-neutral-50)}.auth-container{width:100%;max-width:440px;background:var(--color-neutral-0);border:1px solid var(--color-neutral-200);border-radius:var(--radius-xl);padding:var(--space-10);box-shadow:var(--shadow-lg)}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-success-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background-color:var(--color-secondary-50);color:var(--color-secondary-500);margin-bottom:var(--space-4)}.auth-title{font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-2)}.auth-subtitle{font-size:var(--text-sm);color:var(--color-neutral-500)}.auth-error{background-color:var(--color-error-50);color:var(--color-error-600);font-size:var(--text-sm);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-6);border:1px solid rgba(239,68,68,.15)}.auth-form{display:flex;flex-direction:column;gap:var(--space-5)}.auth-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.auth-field{display:flex;flex-direction:column;gap:var(--space-2)}.auth-field label{font-size:var(--text-sm);font-weight:500;color:var(--color-neutral-700)}.auth-field input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--text-base);font-family:var(--font-family);color:var(--color-neutral-800);background:var(--color-neutral-0);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.auth-field input:focus{border-color:var(--color-primary-400);box-shadow:0 0 0 3px #1a73c71a}.auth-field input::placeholder{color:var(--color-neutral-400)}.auth-password-wrapper{position:relative}.auth-password-wrapper input{padding-right:var(--space-10)}.auth-password-toggle{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);color:var(--color-neutral-400);padding:var(--space-1);display:flex;align-items:center;justify-content:center}.auth-password-toggle:hover{color:var(--color-neutral-600)}.auth-submit{width:100%;margin-top:var(--space-2)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-footer-text{text-align:center;font-size:var(--text-sm);color:var(--color-neutral-500);margin-top:var(--space-6)}.auth-link{color:var(--color-primary-500);font-weight:500;text-decoration:underline;text-underline-offset:2px}.auth-link:hover{color:var(--color-primary-600)}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh}.loading-spinner{width:36px;height:36px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-secondary-500);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:480px){.auth-container{padding:var(--space-6)}.auth-row{grid-template-columns:1fr}}.dashboard{padding-top:calc(var(--header-height) + var(--space-10));padding-bottom:var(--space-20);min-height:100vh;background-color:var(--color-neutral-50)}.dash-welcome{margin-bottom:var(--space-8)}.dash-welcome h1{font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-1)}.dash-welcome p{font-size:var(--text-sm);color:var(--color-neutral-500)}.dash-progress-card{background:var(--color-neutral-0);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-8)}.dash-progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.dash-progress-label{font-size:var(--text-sm);font-weight:600;color:var(--color-neutral-700)}.dash-progress-value{font-size:var(--text-sm);font-weight:600;color:var(--color-secondary-500)}.dash-progress-bar{width:100%;height:10px;background-color:var(--color-neutral-100);border-radius:999px;overflow:hidden}.dash-progress-fill{height:100%;background-color:var(--color-secondary-500);border-radius:999px;transition:width .5s ease}.dash-progress-stats{display:flex;gap:var(--space-6);margin-top:var(--space-4)}.dash-progress-stat{font-size:var(--text-sm);color:var(--color-neutral-500)}.dash-progress-stat strong{color:var(--color-neutral-800)}.dash-cert-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);background:linear-gradient(135deg,var(--color-secondary-500),var(--color-primary-500));color:var(--color-neutral-0);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-8)}.dash-cert-info{display:flex;align-items:center;gap:var(--space-4)}.dash-cert-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#fff3}.dash-cert-text h3{font-size:var(--text-lg);font-weight:600;color:var(--color-neutral-0);margin-bottom:var(--space-1)}.dash-cert-text p{font-size:var(--text-sm);opacity:.85}.dash-cert-btn{background:var(--color-neutral-0);color:var(--color-secondary-600);font-weight:600;font-size:var(--text-sm);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);white-space:nowrap;transition:all var(--transition-fast);flex-shrink:0}.dash-cert-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.dash-modules-title{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-4)}.dash-module-list{display:flex;flex-direction:column;gap:var(--space-4)}.dash-module-card{background:var(--color-neutral-0);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.dash-module-card:hover{border-color:var(--color-neutral-300);box-shadow:var(--shadow-sm)}.dash-module-card-complete{border-color:var(--color-secondary-200)}.dash-module-header{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6)}.dash-module-num{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;font-size:var(--text-sm);font-weight:600}.dash-module-num-pending{background-color:var(--color-neutral-100);color:var(--color-neutral-600)}.dash-module-num-complete{background-color:var(--color-secondary-500);color:var(--color-neutral-0)}.dash-module-info{flex:1;min-width:0}.dash-module-name{font-size:var(--text-base);font-weight:600;color:var(--color-neutral-800);margin-bottom:2px}.dash-module-status{font-size:var(--text-sm);color:var(--color-neutral-500)}.dash-module-status-done{color:var(--color-secondary-500)}.dash-module-actions{flex-shrink:0}.dash-module-btn{font-size:var(--text-sm);padding:var(--space-2) var(--space-4)}.dash-lessons{border-top:1px solid var(--color-neutral-100);padding:var(--space-2) var(--space-6) var(--space-4)}.dash-lesson-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0}.dash-lesson-row+.dash-lesson-row{border-top:1px solid var(--color-neutral-100)}.dash-lesson-check{flex-shrink:0;width:20px;height:20px;border-radius:50%;border:2px solid var(--color-neutral-300);display:flex;align-items:center;justify-content:center}.dash-lesson-check-done{border-color:var(--color-secondary-500);background-color:var(--color-secondary-500);color:var(--color-neutral-0)}.dash-lesson-name{flex:1;font-size:var(--text-sm);color:var(--color-neutral-700)}.dash-lesson-name-done{color:var(--color-neutral-400);text-decoration:line-through}.dash-lesson-link{font-size:var(--text-sm);font-weight:500;color:var(--color-primary-500);transition:color var(--transition-fast)}.dash-lesson-link:hover{color:var(--color-primary-600)}@media(max-width:640px){.dash-cert-banner{flex-direction:column;text-align:center}.dash-cert-info{flex-direction:column}.dash-module-header{flex-wrap:wrap;padding:var(--space-4)}.dash-module-actions{width:100%;margin-top:var(--space-2)}.dash-module-btn{width:100%;text-align:center}.dash-progress-stats{flex-direction:column;gap:var(--space-2)}}.lesson-page{padding-top:calc(var(--header-height) + var(--space-8));padding-bottom:var(--space-20);min-height:100vh;background-color:var(--color-neutral-0)}.lesson-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-neutral-500);margin-bottom:var(--space-6)}.lesson-breadcrumb a{color:var(--color-primary-500);transition:color var(--transition-fast)}.lesson-breadcrumb a:hover{color:var(--color-primary-600)}.lesson-wrapper{max-width:720px;margin:0 auto}.lesson-meta{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6)}.lesson-module-badge{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary-600);background-color:var(--color-primary-50);padding:var(--space-1) var(--space-3);border-radius:999px}.lesson-number-badge{font-size:var(--text-xs);font-weight:500;color:var(--color-neutral-500)}.lesson-title{font-size:var(--text-3xl);font-weight:700;margin-bottom:var(--space-8)}.lesson-content{font-size:var(--text-base);line-height:1.75;color:var(--color-neutral-700)}.lesson-content h1{font-size:var(--text-2xl);font-weight:700;margin-top:var(--space-10);margin-bottom:var(--space-4)}.lesson-content h2{font-size:var(--text-xl);font-weight:600;margin-top:var(--space-8);margin-bottom:var(--space-3);color:var(--color-neutral-800)}.lesson-content h3{font-size:var(--text-lg);font-weight:600;margin-top:var(--space-6);margin-bottom:var(--space-2)}.lesson-content p{margin-bottom:var(--space-4)}.lesson-content ul,.lesson-content ol{margin-bottom:var(--space-4);padding-left:var(--space-6)}.lesson-content ul{list-style:disc}.lesson-content ol{list-style:decimal}.lesson-content li{margin-bottom:var(--space-2)}.lesson-content strong{font-weight:600;color:var(--color-neutral-800)}.lesson-content code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.9em;background-color:var(--color-neutral-100);padding:2px 6px;border-radius:var(--radius-sm);color:var(--color-primary-700)}.lesson-content pre{background-color:var(--color-neutral-900);color:var(--color-neutral-100);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);overflow-x:auto;margin-bottom:var(--space-4);font-size:var(--text-sm);line-height:1.6}.lesson-content pre code{background:none;padding:0;color:inherit;font-size:inherit}.lesson-content table{width:100%;border-collapse:collapse;margin-bottom:var(--space-4);font-size:var(--text-sm)}.lesson-content th,.lesson-content td{border:1px solid var(--color-neutral-200);padding:var(--space-2) var(--space-3);text-align:left}.lesson-content th{background-color:var(--color-neutral-50);font-weight:600}.lesson-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-12);padding-top:var(--space-8);border-top:1px solid var(--color-neutral-200)}.lesson-complete-btn{display:inline-flex;align-items:center;gap:var(--space-2)}.lesson-complete-btn-done{background-color:var(--color-secondary-50);color:var(--color-secondary-600);border:1px solid var(--color-secondary-200);cursor:default}.lesson-complete-btn-done:hover{transform:none;box-shadow:none}.lesson-nav-btn{font-size:var(--text-sm)}@media(max-width:640px){.lesson-title{font-size:var(--text-2xl)}.lesson-footer{flex-direction:column;align-items:stretch}.lesson-footer .btn{width:100%;justify-content:center}}.legal-page{padding-top:calc(var(--header-height) + var(--space-12));padding-bottom:var(--space-20)}.legal-content{max-width:720px;margin:0 auto}.legal-content h1{font-size:var(--text-3xl);font-weight:700;margin-bottom:var(--space-2)}.legal-content .legal-updated{font-size:var(--text-sm);color:var(--color-neutral-500);margin-bottom:var(--space-10)}.legal-content h2{font-size:var(--text-xl);font-weight:600;margin-top:var(--space-10);margin-bottom:var(--space-4)}.legal-content h3{font-size:var(--text-lg);font-weight:600;margin-top:var(--space-6);margin-bottom:var(--space-3)}.legal-content p{font-size:var(--text-base);color:var(--color-neutral-600);line-height:var(--leading-relaxed);margin-bottom:var(--space-4)}.legal-content a{color:var(--color-primary-500);text-decoration:underline;text-underline-offset:2px}.legal-content a:hover{color:var(--color-primary-600)}.legal-content ul,.legal-content ol{margin-bottom:var(--space-4);padding-left:var(--space-6)}.legal-content ul{list-style:disc}.legal-content ol{list-style:decimal}.legal-content li{font-size:var(--text-base);color:var(--color-neutral-600);line-height:var(--leading-relaxed);margin-bottom:var(--space-2)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-top:var(--space-8)}.contact-card{padding:var(--space-6);background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg)}.contact-card h3{margin-top:0;font-size:var(--text-base)}@media(max-width:640px){.legal-page{padding-top:calc(var(--header-height) + var(--space-8))}.legal-content h1{font-size:var(--text-2xl)}.contact-grid{grid-template-columns:1fr}}
