:root{--color-primary:#0052cc;--color-primary-light:#e0e7ff;--color-primary-dark:#003d99;--color-primary-50:#f3f4ff;--color-secondary:#1e3a8a;--color-secondary-hover:#1e40af;--color-accent:#f97316;--color-accent-light:#ffedd5;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-text-tertiary:#78716c;--color-text-muted:#a1a1aa;--color-border:#e2e8f0;--color-border-dark:#cbd5e1;--color-bg-50:#f8fafc;--color-bg-100:#f1f5f9;--color-bg-white:#fff;--color-success:#10b981;--color-success-bg:#dcfce7;--color-error:#991b1b;--color-error-bg:#ffebee;--color-warning:#eab308;--color-warning-bg:#fef08a;--color-info:#3b82f6;--color-info-bg:#dbeafe;--font-family-display:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-family-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-family-mono:"SF Mono",Monaco,"Cascadia Code","Roboto Mono",Consolas,"Courier New",monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--spacing-0:0;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--radius-none:0;--radius-xs:0.25rem;--radius-sm:0.375rem;--radius-base:0.5rem;--radius-md:0.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-2xl:2rem;--radius-full:9999px;--shadow-xs:0 1px 2px 0 rgba(15,23,42,.03),0 1px 0 0 rgba(15,23,42,.02);--shadow-sm:0 1px 2px 0 rgba(15,23,42,.05);--shadow-base:0 1px 3px 0 rgba(15,23,42,.1),0 1px 2px -1px rgba(15,23,42,.1);--shadow-md:0 4px 6px -1px rgba(15,23,42,.1),0 2px 4px -2px rgba(15,23,42,.1);--shadow-lg:0 10px 15px -3px rgba(15,23,42,.1),0 4px 6px -4px rgba(15,23,42,.1);--shadow-xl:0 20px 25px -5px rgba(15,23,42,.1),0 10px 10px -5px rgba(15,23,42,.04);--shadow-2xl:0 25px 50px -12px rgba(15,23,42,.15);--transition-fast:100ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-slow:300ms cubic-bezier(0.4,0,0.2,1);--transition-slower:500ms cubic-bezier(0.4,0,0.2,1);--z-hide:-1;--z-base:0;--z-dropdown:100;--z-sticky:200;--z-modal-backdrop:300;--z-modal:400;--z-toast:500;--z-tooltip:600}.dinm-app{background:var(--color-bg-50);display:flex;flex-direction:column;min-height:100%}.app-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(72px + env(safe-area-inset-bottom, 0))}.container{max-width:540px}.site-header{background-color:#fff;box-shadow:var(--shadow-base,0 1px 3px 0 rgba(15,23,42,.1));flex-shrink:0;padding:12px 16px;position:relative;width:100%;z-index:1000}.header-inner{align-items:center;display:flex;gap:12px;margin:0 auto;max-width:1200px}.header-logo{flex-shrink:0;height:40px;object-fit:contain;width:auto}.header-title{color:#0f172a;font-size:1.25rem;font-weight:700;line-height:1.2;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:480px){.site-header{padding:8px 12px}.header-logo{height:32px}.header-title{font-size:1.125rem}}.view{animation:fadeIn var(--transition-base);display:none;opacity:0}.view.active{align-items:stretch;animation:fadeIn var(--transition-slower);display:flex;justify-content:flex-start;min-height:auto;opacity:1;padding:var(--spacing-4) var(--spacing-2)}.site-footer{background-color:#1f3b73;color:#fff;flex-shrink:0;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom, 0));z-index:1000}.footer-nav{justify-content:space-between;margin:0 auto;max-width:28rem;width:100%}.footer-btn,.footer-nav{align-items:center;display:flex}.footer-btn{background:none;border:none;color:#d1d5db;cursor:pointer;flex-direction:column;font-family:inherit;font-size:.75rem;padding:.5rem}.footer-btn.active{color:#fff;font-weight:700}.footer-btn:hover{color:#fb923c}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes subtlePulse{0%,to{box-shadow:0 0 0 0 rgba(0,82,204,.3)}50%{box-shadow:0 0 0 8px rgba(0,82,204,0)}}@keyframes successBounce{0%{opacity:0;transform:scale(.9) translateY(10px)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.btn-primary:hover,.btn-secondary:hover{transform:none!important}.trust-badge,.trust-notice{animation:none!important}}@media (prefers-contrast:more){.error-card,.form-card,.form-group input,.form-group select,.form-group textarea,.success-card{border-width:2px}.btn-primary,.btn-secondary{border:2px solid}.instructor-card,.progress-badge,.trust-badge,.trust-notice{border-width:2px}}.form-group input:invalid:focus,.form-group input:invalid:not(:placeholder-shown){border-color:var(--color-error);box-shadow:0 0 0 3px rgba(220,38,38,.1),0 0 0 1.5px var(--color-error)}.form-group input:valid:not(:placeholder-shown){border-color:var(--color-success)}.btn:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.form-actions{display:flex;flex-direction:column;gap:var(--spacing-3);margin-bottom:var(--spacing-4)}.form-actions .btn{width:100%}.form-actions .btn-outline{background-color:var(--color-bg-100);border:1.5px solid var(--color-border);color:var(--color-text-primary)}.form-actions .btn-outline:hover:not(:disabled){background-color:var(--color-bg-white);border-color:var(--color-text-secondary)}.btn-icon{flex-shrink:0;font-size:1.2em;height:auto;line-height:1;width:auto}.btn-primary{align-items:center;background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:inline-flex;font-size:var(--font-size-base);gap:var(--spacing-2);justify-content:center;min-height:48px;padding:var(--spacing-4) var(--spacing-6);text-decoration:none;transition:all var(--transition-base);white-space:nowrap}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:0 4px 12px rgba(0,82,204,.2);transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{align-items:center;background:var(--color-bg-100);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;display:inline-flex;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);gap:var(--spacing-2);justify-content:center;min-height:48px;padding:var(--spacing-4) var(--spacing-6);text-decoration:none;transition:all var(--transition-base);white-space:nowrap}.btn-secondary:hover:not(:disabled){background:var(--color-bg-white);border-color:var(--color-text-secondary);transform:translateY(-2px)}.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn-large{font-size:var(--font-size-base)!important;height:auto;min-height:48px;padding:var(--spacing-4) var(--spacing-6)!important}.btn-text-link{background:none;border:none;color:var(--color-primary);cursor:pointer;display:inline-block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:0;padding:var(--spacing-2) 0;text-align:center;text-decoration:underline;transition:all var(--transition-base);width:100%}.btn-text-link:hover{color:var(--color-primary-dark);text-decoration-thickness:2px;text-underline-offset:3px}.btn-text-link:active{opacity:.85}.btn:disabled,button:disabled{background:#d1d5db;border-color:#d1d5db;box-shadow:none;color:#6b7280;opacity:1;pointer-events:none}.btn:hover:disabled,button:hover:disabled{background:#d1d5db;transform:none}button[type=submit]:disabled:after{content:""}@media (max-width:480px){.form-actions{gap:var(--spacing-3)}}.error-card,.success-card{animation:slideUp var(--transition-slower);background:var(--color-bg-white);border:2px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);max-width:500px;padding:var(--spacing-8);text-align:center}.error-card{background:linear-gradient(135deg,#fffbfb,#fffdfd);border-color:#fed7d7}.success-card{border-color:var(--color-success-bg)}.error-icon,.success-icon{align-items:center;border-radius:50%;display:flex;height:88px;justify-content:center;margin:0 auto var(--spacing-6);width:88px}.error-icon{background:#fee2e2;border:2px solid #fed7d7;color:var(--color-error)}.success-icon{animation:successBounce var(--transition-slower);background:var(--color-success-bg);color:var(--color-success)}.error-icon svg,.success-icon svg{height:48px;width:48px}.error-card h2,.success-card h2{color:var(--color-secondary);font-size:var(--font-size-2xl);margin-bottom:var(--spacing-3)}.error-card p,.success-card p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-6)}.success-actions{display:grid;gap:var(--spacing-4);grid-template-columns:1fr 1fr;margin-bottom:var(--spacing-4)}@media (max-width:480px){.success-actions{grid-template-columns:1fr}}.instructor-grid{display:grid;gap:var(--spacing-6);grid-template-columns:1fr;margin-bottom:var(--spacing-8)}.instructor-card{align-items:center;background:var(--color-bg-white);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);display:grid;gap:var(--spacing-5);grid-template-columns:auto 1fr auto;padding:var(--spacing-6);transition:all var(--transition-base)}.instructor-card:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-md)}.instructor-card:before{display:none}.instructor-card.recommended{background:var(--color-bg-white);border:2px solid var(--color-primary);position:relative}.instructor-card.recommended:after{background:var(--color-primary);border-radius:var(--radius-sm);color:#fff;content:"✨ TOP RATED";font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);left:var(--spacing-4);letter-spacing:.5px;padding:var(--spacing-1) var(--spacing-3);position:absolute;top:var(--spacing-4);z-index:10}.instructor-avatar{border:3px solid var(--color-primary-50);border-radius:50%;box-shadow:var(--shadow-md);flex-shrink:0;height:72px;object-fit:cover;width:72px}.instructor-info{flex:1}.instructor-info h3{color:var(--color-secondary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-2) 0}.instructor-meta{color:var(--color-text-secondary);display:flex;flex-direction:column;font-size:var(--font-size-sm);gap:var(--spacing-2)}.instructor-rating{gap:var(--spacing-2)}.instructor-distance,.instructor-rating{align-items:center;display:flex;font-weight:var(--font-weight-semibold)}.instructor-distance{color:var(--color-accent);gap:var(--spacing-1)}.instructor-cta{align-items:center;background:var(--color-primary);border:none;border-radius:var(--radius-sm);box-shadow:none;color:#fff;cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-2);justify-content:center;min-height:44px;min-width:130px;text-decoration:none;transition:all var(--transition-base);white-space:nowrap}.instructor-cta:hover{background:var(--color-primary-dark);box-shadow:none}.instructor-cta:active{box-shadow:none;opacity:.95}.form-group-checkbox{align-items:flex-start;display:flex;gap:var(--spacing-3);margin-bottom:var(--spacing-6)}.checkbox-wrapper{align-items:center;display:flex;flex-shrink:0;gap:var(--spacing-3);position:relative}.checkbox-wrapper input[type=checkbox]{cursor:pointer;height:24px;left:0;margin:0;opacity:0;position:absolute;top:0;width:24px;z-index:1}.checkbox-wrapper input[type=checkbox]+.checkbox-box{align-items:center;background:var(--color-bg-white);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;min-width:24px;position:relative;transition:all var(--transition-base);width:24px}.checkbox-wrapper input[type=checkbox]+.checkbox-box:after{color:#fff;content:"✓";font-size:16px;font-weight:700;opacity:0;transform:scale(0);transition:all var(--transition-base)}.checkbox-wrapper input[type=checkbox]:checked+.checkbox-box{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-50)}.checkbox-wrapper input[type=checkbox]:checked+.checkbox-box:after{opacity:1;transform:scale(1)}.checkbox-wrapper input[type=checkbox]:focus-visible+.checkbox-box{box-shadow:0 0 0 3px var(--color-primary-50);outline:2px solid var(--color-primary);outline-offset:2px}.checkbox-wrapper input[type=checkbox]:not(:checked)+.checkbox-box:hover{background:var(--color-primary-50);border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary-50)}.checkbox-wrapper input[type=checkbox]:checked+.checkbox-box:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:0 0 0 3px rgba(0,82,204,.15)}.checkbox-wrapper input[type=checkbox]:disabled+.checkbox-box{cursor:not-allowed;opacity:.5}.checkbox-label{color:var(--color-text-primary);cursor:pointer;flex:1;font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0;padding-top:var(--spacing-1)}.checkbox-label .required{margin-left:var(--spacing-1)}.form-group{display:flex;flex-direction:column;margin-bottom:var(--spacing-6)}.form-group:last-of-type{margin-bottom:var(--spacing-4)}.form-group label{color:var(--color-text-primary);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.3px;margin-bottom:var(--spacing-2);text-transform:none}.required{color:var(--color-error);font-weight:var(--font-weight-bold);margin-left:var(--spacing-1)}.form-group input,.form-group select,.form-group textarea{-webkit-appearance:none;appearance:none;background:var(--color-bg-white);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-base);padding:var(--spacing-3) var(--spacing-4);transition:all var(--transition-base);width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:var(--color-primary-50);border-color:var(--color-primary);border-width:2px;box-shadow:0 0 0 3px rgba(0,82,204,.1);outline:none}.form-group input::placeholder{color:var(--color-text-muted);font-weight:400}.form-group-label-with-info{align-items:center;display:flex;gap:var(--spacing-2)}.form-label-info{align-items:center;background:var(--color-primary-50);border-radius:50%;color:var(--color-primary);cursor:help;display:inline-flex;font-size:12px;font-weight:700;height:16px;justify-content:center;transition:all var(--transition-base);width:16px}.form-label-info:hover{background:var(--color-primary);color:#fff;transform:scale(1.1)}.form-help{display:none}.form-error{color:var(--color-error);display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);margin-top:var(--spacing-2);min-height:1.25rem}.form-group select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%230F172A' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right var(--spacing-3) center;background-repeat:no-repeat;cursor:pointer;padding-right:var(--spacing-10)}.form-group select:focus{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%2310B981' d='M6 9 1 4h10z'/%3E%3C/svg%3E");border-width:2px}.form-card{animation:slideUp var(--transition-slower);background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);padding:var(--spacing-6)}.form-header{margin-bottom:var(--spacing-5);text-align:center}.step-indicator{color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.5px;margin-bottom:var(--spacing-2);text-transform:uppercase}.form-header h1{color:var(--color-secondary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-extrabold);letter-spacing:-.5px;line-height:1.3;margin-bottom:0}.form-header .subtitle{color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.form-footer-text,.form-header .subtitle{line-height:var(--line-height-relaxed);margin:0}.form-footer-text{color:var(--color-text-tertiary);font-size:var(--font-size-xs);margin-top:var(--spacing-4);text-align:center}select{background-position:right 1rem center!important;background-repeat:no-repeat!important}.instructor-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.card-header{height:80px;margin-bottom:40px;position:relative}.profile-wrapper{background:#fff;border:4px solid #fff;border-radius:50%;bottom:-30px;box-shadow:0 2px 4px rgba(0,0,0,.1);height:80px;left:20px;overflow:hidden;position:absolute;width:80px}.profile-svg{height:100%;object-fit:cover;width:100%}.card-body{flex:1;padding:0 20px 20px}.header-content{margin-bottom:16px}.instructor-name{color:#111827;font-size:1.25rem;font-weight:700;margin:0 0 4px}.instructor-role{color:#6b7280;display:block;font-size:.875rem;margin-bottom:8px}.rating-container{align-items:center;display:flex;gap:8px}.stars{color:#fbbf24;display:flex}.star-icon{fill:currentColor;height:16px;width:16px}.rating-text{color:#374151;font-size:.875rem;font-weight:600}.bio-text{color:#4b5563;display:-webkit-box;font-size:.95rem;-webkit-line-clamp:3;line-height:1.5;margin-bottom:20px;-webkit-box-orient:vertical;line-clamp:3;overflow:hidden}.info-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.info-item{align-items:center;background:#f9fafb;border-radius:8px;display:flex;gap:12px;padding:8px}.info-icon{color:#6b7280;fill:currentColor;height:20px;width:20px}.info-content{color:#374151;display:flex;flex-direction:column;font-size:.875rem}.info-content strong{color:#9ca3af;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.card-actions{border-top:1px solid #e5e7eb;padding:20px}.btn-message{align-items:center;background:#25d366;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;justify-content:center;padding:12px;transition:background .2s;width:100%}.btn-message:hover{background:#128c7e}.btn-message svg{fill:currentColor;height:20px;width:20px}.intro-section{margin-bottom:40px;padding:20px 0}.intro-content{background:linear-gradient(135deg,#f5f7fa,#f0f4f8);border-left:4px solid #25d366;border-radius:12px;padding:30px}.intro-content h1{color:#111827;font-size:2rem;font-weight:700;line-height:1.3;margin:0 0 20px}.intro-content p{color:#4b5563;font-size:1rem;line-height:1.7;margin:0 0 16px}.intro-content p:last-child{margin-bottom:0}@media (max-width:768px){.intro-content{padding:20px}.intro-content h1{font-size:1.5rem}.intro-content p{font-size:.95rem}}.info-section{border-top:1px solid #e5e7eb;margin-top:40px;padding:30px 0}.info-section h3{color:#111827;font-size:1.25rem;font-weight:600;margin:0 0 20px}.links-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.info-link{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#0b5394;display:inline-block;font-size:.95rem;font-weight:500;padding:10px 16px;text-decoration:none;transition:all .3s ease}.info-link:hover{background:#0b5394;border-color:#0b5394;color:#fff}@media (max-width:768px){.links-grid{grid-template-columns:repeat(2,1fr)}}.visually-hidden{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.loading-skeleton{max-width:540px;padding:var(--spacing-8) var(--spacing-4);width:100%}.skeleton-titlebar{margin-bottom:var(--spacing-8)}.skeleton-form-group,.skeleton-titlebar{animation:loading 1.5s infinite;background:linear-gradient(90deg,var(--color-border) 25%,var(--color-bg-100) 50%,var(--color-border) 75%);background-size:200% 100%;border-radius:var(--radius-md);height:48px}.skeleton-form-group{margin-bottom:var(--spacing-6)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{background-color:var(--color-bg-50);color:var(--color-text-primary);display:flex;flex-direction:column;font-family:var(--font-family-body);font-size:var(--font-size-base);height:100vh;line-height:var(--line-height-normal);margin:0;overflow:hidden;overflow-x:hidden;padding:0}h1,h2,h3,h4,h5,h6{color:var(--color-secondary);font-weight:var(--font-weight-bold);letter-spacing:-.5px;line-height:var(--line-height-snug);margin-bottom:var(--spacing-4)}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold)}h1,h2{margin-bottom:var(--spacing-6)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h3,h4{margin-bottom:var(--spacing-4)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h5,h6{margin-bottom:var(--spacing-3)}h6{font-size:var(--font-size-base)}p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-4)}a{border-radius:2px;color:var(--color-primary);text-decoration:none;transition:all var(--transition-fast)}a:hover{color:var(--color-primary-dark);text-decoration:underline}a:focus-visible{border-radius:2px}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}small{color:var(--color-text-tertiary);display:block;font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}main{margin:0}.container,main{display:flex;flex-direction:column}.container{margin:0 auto;max-width:600px;padding:var(--spacing-4);width:100%}@media (max-width:480px){.container{padding:var(--spacing-3)}}@media (max-width:360px){.container{padding:var(--spacing-2)}}label{color:var(--color-text-primary);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.3px;margin-bottom:var(--spacing-2)}button,input,select,textarea{font-family:inherit}input,select,textarea{appearance:none;background-color:var(--color-bg-white);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);display:block;font-size:var(--font-size-base);padding:var(--spacing-3) var(--spacing-4);transition:all var(--transition-base);width:100%}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23475569' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right var(--spacing-3) center;background-repeat:no-repeat;cursor:pointer;padding-right:var(--spacing-10)}input:focus,select:focus,textarea:focus{background-color:var(--color-bg-white);border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-50),0 0 0 1.5px var(--color-primary);outline:none}input:disabled,select:disabled{background-color:var(--color-bg-100);color:var(--color-text-muted);cursor:not-allowed;opacity:.7}input::placeholder{color:var(--color-text-muted)}textarea{min-height:120px;resize:vertical}.btn,button,textarea{font-size:var(--font-size-base)}.btn,button{align-items:center;border:none;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:inherit;font-weight:var(--font-weight-semibold);gap:var(--spacing-2);justify-content:center;min-height:48px;overflow:hidden;padding:var(--spacing-3) var(--spacing-6);position:relative;touch-action:manipulation;transition:all var(--transition-base);user-select:none}.btn:focus-visible,button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn:disabled,button:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background-color:var(--color-primary);box-shadow:none;color:var(--color-bg-white);font-weight:var(--font-weight-semibold);width:100%}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark);box-shadow:none}.btn-primary:active:not(:disabled){box-shadow:none;opacity:.95}.btn-secondary{background-color:var(--color-secondary);box-shadow:var(--shadow-base);color:var(--color-bg-white);width:100%}.btn-secondary:hover:not(:disabled){background-color:var(--color-secondary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-outline{background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary);width:100%}.btn-outline:hover:not(:disabled){background-color:var(--color-primary-50);border-color:var(--color-primary-dark);color:var(--color-primary-dark)}.hidden{display:none!important}.invisible{visibility:hidden}@media (max-width:480px){h1{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-4)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}.btn,button{padding:var(--spacing-3) var(--spacing-5)}}@media (max-width:360px){h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-3)}h2{font-size:var(--font-size-xl)}label{font-size:var(--font-size-xs)}input,select,textarea{font-size:16px;padding:var(--spacing-2) var(--spacing-3)}.btn,button{min-height:44px;padding:var(--spacing-2) var(--spacing-4)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast:more){.btn,button{border:2px solid}input,select,textarea{border-width:2px}}.option-grid{display:grid;gap:var(--spacing-4);grid-template-columns:repeat(2,1fr);margin-bottom:var(--spacing-2);margin-top:var(--spacing-2);width:100%}.option-card{align-items:center!important;background:var(--color-bg-white);border:2px solid var(--color-border);border-radius:var(--radius-base);cursor:pointer;display:flex!important;flex-direction:column!important;justify-content:center!important;padding:var(--spacing-6);position:relative;transition:border-color var(--transition-base),background-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.option-card input[type=radio]{height:0;opacity:0;position:absolute;width:0}.option-card:hover:not(:has(input[type=radio]:checked)){background:var(--color-bg-50);border-color:var(--color-border-dark)}.option-card:has(input[type=radio]:checked),.option-card[data-checked=true]{background:var(--color-primary-50);border:2px solid var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);transform:translateY(-1px)}.option-card:has(input[type=radio]:checked):hover,.option-card[data-checked=true]:hover{border-color:var(--color-primary-dark)}.option-icon{align-items:center;display:flex;font-size:2rem;justify-content:center;margin-bottom:var(--spacing-2);transition:transform var(--transition-base)}.option-card:has(input[type=radio]:checked) .option-icon,.option-card[data-checked=true] .option-icon{transform:scale(1.04)}.option-text{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:center}.option-card:has(input[type=radio]:focus-visible),.option-card[data-focused=true]{outline:2px solid var(--color-primary);outline-offset:2px}@media (max-width:600px){.option-grid{gap:var(--spacing-3);grid-template-columns:repeat(2,1fr)}.option-card{padding:var(--spacing-4)}.option-icon{font-size:1.8rem}.option-text{font-size:var(--font-size-xs)}}@media (max-width:480px){.option-grid{gap:var(--spacing-3);grid-template-columns:repeat(2,1fr)}.option-card{padding:var(--spacing-3)}.option-icon{font-size:1.6rem}.option-text{font-size:var(--font-size-xs)}}.progress-indicator{align-items:center;display:flex;gap:var(--spacing-3);justify-content:center;margin-bottom:var(--spacing-8)}.progress-step{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-2)}.progress-step .step-number{align-items:center;background:var(--color-bg-100);border:2px solid var(--color-border);border-radius:50%;color:var(--color-text-secondary);display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);height:40px;justify-content:center;transition:all var(--transition-base);width:40px}.progress-step.completed .step-number{background:var(--color-success);border-color:var(--color-success);color:#fff}.progress-step.active .step-number{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(0,82,204,.15);color:#fff;scale:1.1}.progress-step .step-label{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);text-align:center;width:70px}.progress-line{background:var(--color-border);flex-shrink:0;height:2px;width:40px}.progress-step.completed~.progress-line{background:var(--color-success)}.trust-badge{align-items:center;animation:subtlePulse 3s cubic-bezier(.4,0,.6,1) 1;background:var(--color-primary-50);border:1.5px solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-text-primary);display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-2);justify-content:center;margin-bottom:var(--spacing-6);padding:var(--spacing-4)}.trust-badge .badge-icon{flex-shrink:0;font-size:1.3em;height:auto;line-height:1;width:auto}@media (max-width:600px){.form-card{border-radius:var(--radius-sm);padding:var(--spacing-6) var(--spacing-4)}.form-header h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-2)}.form-header .subtitle{font-size:var(--font-size-sm)}.instructor-card{gap:var(--spacing-4);grid-template-columns:auto 1fr;padding:var(--spacing-5)}.instructor-cta{grid-column:1/-1;min-width:unset;width:100%}.error-card,.success-card{padding:var(--spacing-6) var(--spacing-4)}}@media (max-width:480px){.container{padding:var(--spacing-3)}.form-card{border-radius:var(--radius-sm);padding:var(--spacing-4) var(--spacing-4)}.form-header{margin-bottom:var(--spacing-3)}.form-header h1{font-size:var(--font-size-lg);line-height:1.25;margin-bottom:0}.form-header .subtitle{line-height:1.4;margin-top:var(--spacing-1)}.step-indicator{font-size:10px}.progress-badge{font-size:var(--font-size-xs);height:22px;width:160px}.form-group{margin-bottom:var(--spacing-4)}.form-group input,.form-group select,.form-group textarea{font-size:16px;min-height:52px;padding:var(--spacing-4) var(--spacing-4)}.progress-indicator{gap:var(--spacing-1);margin-bottom:var(--spacing-6)}.progress-step .step-number{font-size:11px;height:32px;width:32px}.progress-step .step-label{font-size:9px;width:45px}.progress-line{width:20px}.instructor-card{gap:var(--spacing-3);padding:var(--spacing-4)}.instructor-avatar{height:60px;width:60px}.instructor-info h3{font-size:var(--font-size-base)}.instructor-meta{font-size:var(--font-size-xs);gap:var(--spacing-1)}.form-actions{gap:var(--spacing-2);margin-top:var(--spacing-3)}.trust-notice{padding:var(--spacing-4) var(--spacing-3)}.form-assurance-box{padding:var(--spacing-3) var(--spacing-2)}.form-assurance-box .form-footer-text{font-size:var(--font-size-xs)}}@media (max-width:360px){.form-card{padding:var(--spacing-4) var(--spacing-3)}.form-header h1{font-size:var(--font-size-lg);margin-bottom:var(--spacing-2)}.form-header .subtitle{font-size:var(--font-size-xs)}.progress-badge{font-size:10px;height:20px;width:140px}.form-group label{font-size:var(--font-size-xs)}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:var(--spacing-2) var(--spacing-3)}.form-help,.trust-badge{font-size:var(--font-size-xs)}.trust-badge{gap:var(--spacing-1);padding:var(--spacing-3)}.trust-badge .badge-icon{height:14px;width:14px}.progress-indicator{gap:var(--spacing-1);margin-bottom:var(--spacing-5)}.progress-step .step-number{font-size:var(--font-size-xs);height:32px;width:32px}.progress-step .step-label{font-size:var(--font-size-xs);width:50px}.progress-line{width:15px}.instructor-card{gap:var(--spacing-2);padding:var(--spacing-3)}.instructor-avatar{height:52px;width:52px}.instructor-info h3{font-size:var(--font-size-sm);margin-bottom:var(--spacing-1)}.instructor-meta{gap:0}.instructor-cta{font-size:var(--font-size-xs);gap:var(--spacing-1);min-height:40px;min-width:100px;padding:var(--spacing-2) var(--spacing-3)}.btn-icon{height:14px;width:14px}.option-grid{gap:var(--spacing-2);margin-bottom:var(--spacing-5)}.option-card{padding:var(--spacing-2) var(--spacing-1)}.option-icon{font-size:2em;height:32px;width:32px}.option-text{font-size:var(--font-size-xs)}.option-text small{font-size:8px;margin-top:0}}@media (max-width:320px){.container{max-width:100%;padding:var(--spacing-2)}.form-card{border-radius:var(--radius-sm);padding:var(--spacing-3) var(--spacing-2)}.form-header{margin-bottom:var(--spacing-3)}.form-header h1{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);line-height:1.3;margin-bottom:0}.step-indicator{font-size:9px;margin-bottom:var(--spacing-1)}.progress-badge{font-size:9px;height:18px;margin-bottom:var(--spacing-3);padding:var(--spacing-1) var(--spacing-2);width:120px}.progress-badge-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-group{margin-bottom:var(--spacing-3)}.security-footer{gap:var(--spacing-1);margin:var(--spacing-3) 0 var(--spacing-3) 0;padding:var(--spacing-2) var(--spacing-1)}.security-footer small{font-size:9px;line-height:1.2}.btn{font-size:11px}.btn-large{font-size:11px!important;padding:var(--spacing-2) var(--spacing-3)!important}.btn-text-link{margin-top:var(--spacing-2)}.form-group label{font-size:11px;font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-1)}.form-group input,.form-group select,.form-group textarea{border-radius:var(--radius-md);font-size:16px;padding:var(--spacing-2) var(--spacing-2)}.form-help{font-size:10px;line-height:1.3;margin-top:var(--spacing-1)}.form-error{font-size:10px;min-height:1rem}.form-group-label-with-info{gap:var(--spacing-1)}.form-label-info{font-size:10px;height:14px;width:14px}.checkbox-wrapper{gap:var(--spacing-2)}.checkbox-wrapper input[type=checkbox]{height:20px;width:20px}.checkbox-wrapper input[type=checkbox]+.checkbox-box{height:20px;min-width:20px;width:20px}.checkbox-wrapper input[type=checkbox]+.checkbox-box:after{font-size:14px}.checkbox-label{font-size:11px;margin-top:var(--spacing-1);padding-top:0}.checkbox-label .required{margin-left:var(--spacing-1)}.progress-indicator{flex-wrap:wrap;margin-bottom:var(--spacing-4)}.progress-indicator,.progress-step{gap:var(--spacing-1)}.progress-step .step-number{font-size:10px;height:28px;width:28px}.progress-step .step-label{font-size:8px;width:45px}.progress-line{height:1px;margin:0 var(--spacing-1);width:12px}.trust-notice{margin-bottom:var(--spacing-4);padding:var(--spacing-3) var(--spacing-2)}.trust-notice-row{gap:var(--spacing-2);margin-bottom:var(--spacing-1)}.trust-icon{height:14px;width:14px}.recaptcha-notice,.trust-notice>small{font-size:9px;line-height:1.3}.recaptcha-notice{padding:var(--spacing-2)}.form-assurance-box{margin-bottom:var(--spacing-3);padding:var(--spacing-2) var(--spacing-1)}.form-assurance-box .form-footer-text{font-size:10px;line-height:1.3}.form-actions{gap:var(--spacing-2);margin-bottom:var(--spacing-3)}.btn{font-size:12px;min-height:40px;padding:var(--spacing-2) var(--spacing-3)}.btn-large{font-size:12px!important;min-height:40px;padding:var(--spacing-3) var(--spacing-4)!important}.btn-text-link{font-size:10px;padding:var(--spacing-1) 0}.btn-icon{height:12px;width:12px}.form-footer-text{font-size:9px;line-height:1.3;margin-top:var(--spacing-2)}.option-grid{gap:var(--spacing-2);grid-template-columns:1fr 1fr;margin-bottom:var(--spacing-4)}.option-card{padding:var(--spacing-2) var(--spacing-1)}.option-icon{font-size:1.6em;height:40px;width:40px}.option-text{font-size:var(--font-size-xs);line-height:1.2}.option-text small{font-size:7px;margin-top:0}}#results-view .container{background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);gap:var(--spacing-6);max-width:720px;padding:var(--spacing-6)}.results-header{margin-bottom:var(--spacing-8);padding:var(--spacing-2) var(--spacing-2) 0;text-align:center}.results-header h1{color:var(--color-secondary);font-size:var(--font-size-2xl);margin-bottom:var(--spacing-2)}.results-header #results-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.results-meta{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-3);justify-content:center;margin-top:var(--spacing-3)}.results-counter{align-items:center;background:var(--color-bg-100);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);display:inline-flex;font-weight:var(--font-weight-semibold);gap:var(--spacing-2);letter-spacing:.4px;text-transform:uppercase}.results-counter,.results-meta .btn.btn-text{font-size:var(--font-size-xs);padding:var(--spacing-1) var(--spacing-3)}.results-meta .btn.btn-text{min-height:auto}#location-name{color:var(--color-primary);font-weight:var(--font-weight-bold)}#results-view .instructor-grid.tinder-deck{display:grid;gap:0;grid-template-columns:1fr;min-height:420px;padding:var(--spacing-2) 0 var(--spacing-4);position:relative}#results-view .instructor-grid.tinder-deck:after,#results-view .instructor-grid.tinder-deck:before{bottom:0;content:"";pointer-events:none;position:absolute;top:0;width:18px;z-index:4}#results-view .instructor-grid.tinder-deck:before{background:linear-gradient(90deg,rgba(0,82,204,.12),rgba(0,82,204,0));left:-6px}#results-view .instructor-grid.tinder-deck:after{background:linear-gradient(270deg,rgba(249,115,22,.12),rgba(249,115,22,0));right:-6px}#results-view .instructor-grid.tinder-deck .instructor-card.is-active:before{background:var(--color-bg-100);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);content:"Swipe";font-size:var(--font-size-xs);letter-spacing:.6px;padding:var(--spacing-1) var(--spacing-3);position:absolute;right:var(--spacing-4);text-transform:uppercase;top:var(--spacing-4);z-index:5}#results-view .instructor-grid.tinder-deck .instructor-card{box-shadow:var(--shadow-lg);inset:0;opacity:0;pointer-events:none;position:absolute;transform-origin:center center;transition:transform var(--transition-base),opacity var(--transition-base)}#results-view .instructor-grid.tinder-deck .instructor-card.is-active{cursor:grab;opacity:1;pointer-events:auto;position:relative}#results-view .instructor-grid.tinder-deck .instructor-card.is-active:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}#results-view .instructor-grid.tinder-deck .instructor-card.is-dragging{cursor:grabbing;transition:none}#results-view .instructor-grid.tinder-deck .instructor-card.is-swiped-left{opacity:0;transform:translateX(-140%) rotate(-12deg)}#results-view .instructor-grid.tinder-deck .instructor-card.is-swiped-right{opacity:0;transform:translateX(140%) rotate(12deg)}#results-view .instructor-grid.tinder-deck .instructor-card.is-hidden{opacity:0;pointer-events:none}.results-empty{background:var(--color-bg-100);border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);display:none;margin:var(--spacing-4) 0;padding:var(--spacing-6) var(--spacing-4);text-align:center}.results-empty.is-visible{display:grid;gap:var(--spacing-2)}.results-empty-icon{font-size:var(--font-size-2xl)}.results-empty h3{color:var(--color-secondary);font-size:var(--font-size-lg);margin:0}.results-empty p{font-size:var(--font-size-sm);margin:0}.results-actions{display:grid;gap:var(--spacing-3);grid-template-columns:1fr 1fr;margin-top:var(--spacing-4)}.results-actions .btn{font-size:var(--font-size-sm);min-height:52px}.results-footer{border-top:1px solid var(--color-border);margin-top:var(--spacing-6);padding:var(--spacing-6) var(--spacing-2);text-align:center}.results-footer .btn{max-width:400px}@media (max-width:600px){#results-view .container{padding:var(--spacing-5) var(--spacing-4)}.results-header{margin-bottom:var(--spacing-6)}#results-view .instructor-grid.tinder-deck{min-height:360px}.results-actions{grid-template-columns:1fr}}.trust-notice{animation:subtlePulse 3s ease-in-out infinite;background:linear-gradient(135deg,var(--color-success-bg) 0,var(--color-primary-50) 100%);border:1.5px solid var(--color-success);border-radius:var(--radius-sm);margin-bottom:var(--spacing-5);padding:var(--spacing-5) var(--spacing-5)}.trust-notice-row{align-items:center;display:flex;gap:var(--spacing-3);margin-bottom:var(--spacing-2)}.trust-icon{color:var(--color-success);flex-shrink:0;height:18px;width:18px}.trust-notice>small{color:var(--color-text-secondary);display:block}.recaptcha-notice,.trust-notice>small{font-size:var(--font-size-xs);line-height:var(--line-height-relaxed)}.recaptcha-notice{color:var(--color-text-tertiary);margin-bottom:0;padding:var(--spacing-3);text-align:center}.recaptcha-notice a{color:var(--color-primary);font-weight:var(--font-weight-semibold);text-decoration:underline}.form-assurance-box{background:var(--color-bg-100);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);margin-bottom:var(--spacing-6);padding:var(--spacing-4) var(--spacing-3);text-align:center}.form-assurance-box .form-footer-text{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin:0}.security-footer{align-items:center;border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--spacing-2);margin:var(--spacing-5) 0 var(--spacing-4) 0;padding:var(--spacing-4);text-align:center}.security-footer small{color:var(--color-text-secondary);font-size:var(--font-size-xs);line-height:1.4}.security-footer .recaptcha-notice{border-top:none;font-size:var(--font-size-xs);margin-bottom:0;padding:0}