*{box-sizing:border-box}*,body,html{margin:0;padding:0}body,html{width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:#333;background-color:#fff}.page-container{display:flex;flex-direction:column;min-height:100vh;width:100%}.home-main{flex-grow:1;width:100%}.navbar{position:-webkit-sticky;position:sticky;top:0;z-index:50;padding:1rem;background:#1f2937;color:#e5e7eb;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);width:100%}.nav-links{display:flex;gap:1rem;font-weight:700;padding-right:2rem}.nav-link{color:#e5e7eb;text-decoration:none;padding:.5rem .75rem;border-radius:.375rem;transition:all .2s ease-in-out}.nav-link:hover{color:#818cf8;background:rgba(255,255,255,.1)}.nav-link.active{color:#818cf8;font-weight:800;background:rgba(129,140,248,.1)}.footer{background:#1f2937;color:#d1d5db;font-size:.875rem;width:100%}.footer-container{max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem;display:grid;grid-gap:2rem;gap:2rem}.footer-section{text-align:center}.footer-heading{font-size:1.125rem;font-weight:600;color:white;margin-bottom:.5rem}.footer-link{color:#d1d5db;text-decoration:none;transition:color .2s ease-in-out}.footer-link:hover{color:white}.footer-copyright{display:flex;align-items:center;justify-content:center}.footer-copyright-text{color:#9ca3af}.logo{font-size:1.5rem;font-weight:800;letter-spacing:-.025em;color:white;text-decoration:none;transition:color .2s ease-in-out}.logo:hover{color:#d1d5db}.logo-part-1{color:#818cf8}.logo-part-2{color:#e5e7eb}.logo:hover .logo-part-1{color:#a5b4fc}.logo:hover .logo-part-2{color:#d1d5db}.hero-section{position:relative;background:#6b7280;color:white;padding:5rem 0;width:100%}.hero-content{max-width:1200px;margin:0 auto;padding:0 1.5rem;text-align:center}.hero-title{font-size:2.25rem;font-weight:700;margin-bottom:1rem}.hero-description{font-size:1.125rem;margin-bottom:2rem;max-width:32rem;margin-left:auto;margin-right:auto;line-height:1.6}.hero-buttons{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.hero-button{display:inline-block;padding:.75rem 1.5rem;background:#818cf8;color:white;border-radius:.375rem;font-weight:600;text-decoration:none;transition:all .2s ease-in-out;border:2px solid #818cf8;text-align:center;min-width:140px}.hero-button:hover{background:#6366f1;border-color:#6366f1;transform:translateY(-2px);box-shadow:0 4px 8px rgba(99,102,241,.3)}.features-section{padding:4rem 0;background:#f9fafb;width:100%}.features-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.features-title{font-size:1.875rem;font-weight:700;text-align:center;margin-bottom:3rem;color:#1f2937}.features-grid{display:grid;grid-template-columns:repeat(1,1fr);grid-gap:2rem;gap:2rem}.feature-card{padding:1.5rem;background:#f3f4f6;border-radius:.75rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);transition:box-shadow .2s ease-in-out;text-align:center}.feature-card:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.feature-heading{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:#1f2937}.feature-description{color:#4b5563;line-height:1.5}.cta-section{background:#f3f4f6;color:#111827;padding:3rem 0;text-align:center;width:100%}.cta-title{font-size:1.5rem;font-weight:700;line-height:1.4}.cta-buttons{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem;flex-wrap:wrap}.cta-button{padding:.75rem 2rem;border-radius:.5rem;text-decoration:none;font-weight:600;transition:all .2s}.cta-button.primary{background:#818cf8;color:white}.cta-button.primary:hover{background:#6366f1;transform:translateY(-2px)}.cta-button.secondary{background:white;color:#818cf8;border:2px solid #818cf8}.cta-button.secondary:hover{background:#818cf8;color:white}.company-card,.job-card{border:1px solid #d1d5db;padding:1rem;background:#f3f4f6;border-radius:.5rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);transition:box-shadow .2s ease-in-out}.company-card:hover,.job-card:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.company-card-title,.job-card-title{font-size:1.25rem;font-weight:700;margin:0 0 .5rem;color:#1f2937}.company-card-meta,.job-card-meta{color:#4b5563;margin:0 0 .5rem}.company-card-description,.job-card-description{margin:.5rem 0 0;font-size:.875rem;color:#6b7280;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.company-card-link,.job-card-link{color:#3b82f6;text-decoration:none;margin-top:1rem;display:inline-block;transition:color .2s ease-in-out}.company-card-link:hover,.job-card-link:hover{text-decoration:underline;color:#2563eb}.page-main{flex-grow:1;padding:2rem 2rem 5rem;width:100%;max-width:1200px;margin:0 auto}.page-title{font-size:1.875rem;font-weight:700;margin-bottom:1.5rem;color:#1f2937}.empty-text,.loading-text{text-align:center;color:#6b7280;font-size:1.125rem;margin:2rem 0}.items-count{text-align:center;color:#6b7280;margin-bottom:1.5rem;font-size:1rem}.companies-grid,.jobs-grid,.results-grid{display:grid;grid-template-columns:repeat(1,1fr);grid-gap:1.5rem;gap:1.5rem}.job-detail{padding:2rem;max-width:800px;margin:0 auto}.job-detail-title{font-size:1.875rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.job-detail-meta{color:#4b5563;font-size:1.125rem;margin-bottom:1.5rem}.job-detail-description{color:#374151;line-height:1.6;font-size:1.1rem}.loading,.loading-state{padding:2rem}.empty-state,.loading,.loading-state{text-align:center;font-size:1.125rem;color:#6b7280}.empty-state{padding:3rem}.empty-state p{margin-bottom:1.5rem}.form-page-main{flex-grow:1;padding:3rem 1rem;width:100%}.form-page-title{font-size:1.875rem;font-weight:700;text-align:center;margin-bottom:1.5rem;color:#1f2937}.login-form,.narrow-form,.registration-form{margin:0 auto;background:#f3f4f6;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);border-radius:.5rem;padding:2rem}.narrow-form,.registration-form{max-width:500px}.login-form{max-width:350px}.form-section-heading{font-size:1.25rem;font-weight:600;margin:1.5rem 0 1rem;color:#374151}.form-section-heading:first-of-type{margin-top:0}.form-input,.form-select,.form-textarea{width:100%;border:1px solid #d1d5db;border-radius:.375rem;padding:.75rem;font-size:1rem;margin-bottom:1rem;transition:border-color .2s ease-in-out}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.form-textarea{min-height:100px;resize:vertical}.form-button{width:100%;padding:.75rem 1rem;border-radius:.375rem;border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease-in-out}.form-button-primary{background:#2563eb;color:white}.form-button-primary:hover{background:#1d4ed8}.form-button-disabled{background:#9ca3af;color:white;cursor:not-allowed}.form-message{margin-top:1rem;text-align:center;font-size:.875rem;color:#dc2626;white-space:pre-wrap;background:#fef2f2;padding:1rem;border-radius:.375rem;border:1px solid #fecaca}.form-footer{text-align:center;margin-top:2rem;color:#6b7280}.text-link{background:none;border:none;color:#818cf8;text-decoration:underline;cursor:pointer;font-size:inherit}.text-link:hover{color:#6366f1}.search-container{max-width:600px;margin:0 auto 2rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap;justify-content:center}.search-box{display:flex;background:white;border-radius:.5rem;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1);flex:1 1;min-width:300px}.search-input{flex:1 1;outline:none;font-size:1rem}.search-button,.search-input{padding:.75rem 1rem;border:none}.search-button{background:#818cf8;color:white;cursor:pointer;transition:background-color .2s}.search-button:hover{background:#6366f1}.location-filter{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:1rem;min-width:200px}.clear-filters{padding:.5rem 1rem;background:#6b7280;color:white;border:none;border-radius:.375rem;cursor:pointer;font-size:.875rem;transition:background-color .2s}.clear-filters:hover{background:#4b5563}.results-section{padding:3rem 0;background:#f8fafc}.results-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.view-more-container{text-align:center;margin-top:2rem}.view-more-button{display:inline-block;padding:.75rem 2rem;background:#818cf8;color:white;text-decoration:none;border-radius:.5rem;font-weight:600;transition:all .2s}.view-more-button:hover{background:#6366f1;transform:translateY(-2px)}.tab-navigation,.tabs-container{display:flex;justify-content:center;margin-bottom:2rem;border-bottom:2px solid #e5e7eb}.tab-button{padding:1rem 2rem;background:none;font-size:1.125rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;border:none;border-bottom:3px solid transparent;margin:0 .5rem}.tab-button.active{color:#818cf8;border-bottom-color:#818cf8}.tab-button:hover{color:#818cf8}.pagination-container{display:flex;justify-content:center;align-items:center;margin-top:3rem;gap:1rem;flex-wrap:wrap}.pagination-button{padding:.75rem 1.5rem;background:#f3f4f6;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;font-weight:600;cursor:pointer;transition:all .2s ease-in-out}.pagination-button:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.pagination-button:disabled{background:#f9fafb;color:#d1d5db;cursor:not-allowed;opacity:.6}.pagination-numbers{display:flex;gap:.5rem}.pagination-number{padding:.75rem 1rem;min-width:3rem;background:#f3f4f6;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;font-weight:600;cursor:pointer;transition:all .2s ease-in-out}.pagination-number:hover{background:#e5e7eb;border-color:#9ca3af}.pagination-number.active{background:#818cf8;border-color:#818cf8;color:white}.pagination-ellipsis{padding:.75rem .5rem;color:#6b7280;font-weight:600}.pagination-info{text-align:center;color:#6b7280;margin-top:1rem;font-size:.875rem}@media (max-width:768px){.navbar{flex-direction:column;gap:1rem}.nav-links{padding-right:0;flex-wrap:wrap;justify-content:center}.hero-section{padding:3rem 0}.hero-title{font-size:1.875rem}.cta-buttons,.hero-buttons{flex-direction:column;align-items:center;gap:1rem}.cta-button,.hero-button{width:200px;text-align:center}.features-section{padding:3rem 0}.feature-card{padding:1rem}.page-main{padding:1rem 1rem 4rem}.page-title{font-size:1.5rem;margin-bottom:1rem}.job-detail{padding:1rem}.job-detail-title{font-size:1.5rem}.job-detail-meta{font-size:1rem}.form-page-main{padding:1.5rem 1rem}.login-form,.narrow-form,.registration-form{padding:1.5rem;max-width:100%;margin:0 1rem}.search-container{flex-direction:column;align-items:stretch}.location-filter,.search-box{min-width:auto}.tab-navigation,.tabs-container{flex-direction:column}.tab-button{margin:.25rem 0;text-align:center}.companies-grid,.jobs-grid,.results-grid{grid-template-columns:1fr}.pagination-container{flex-direction:column;gap:1rem}.pagination-numbers{order:-1;flex-wrap:wrap;justify-content:center}.pagination-button{width:100%;max-width:200px}}@media (min-width:768px){.hero-title{font-size:3rem}.features-grid{grid-template-columns:repeat(3,1fr)}.companies-grid,.jobs-grid,.results-grid{grid-template-columns:repeat(2,1fr)}.footer-container{grid-template-columns:repeat(3,1fr)}.footer-section{text-align:left}.footer-copyright{justify-content:flex-end;align-items:flex-end}.cta-title{font-size:1.875rem}}@media (min-width:1024px){.companies-grid,.jobs-grid,.results-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:480px){.pagination-number{padding:.5rem .75rem;min-width:2.5rem;font-size:.875rem}.pagination-button{padding:.6rem 1.2rem;font-size:.875rem}.login-form,.narrow-form,.registration-form{padding:1rem;margin:0 .5rem}}