*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--clr-bg: #f0f4f8;--clr-bg-secondary: #e2e8f0;--clr-surface: rgba(255, 255, 255, .7);--clr-surface-solid: #ffffff;--clr-primary: #5b5bd6;--clr-primary-hover: #4c4cbf;--clr-primary-glow: rgba(91, 91, 214, .2);--clr-accent: #0ea5e9;--clr-accent-glow: rgba(14, 165, 233, .15);--clr-text: #1e293b;--clr-text-muted: #64748b;--clr-border: rgba(148, 163, 184, .3);--clr-tag-bg: rgba(91, 91, 214, .08);--clr-tag-text: #5b5bd6;--clr-danger: #ef4444;--radius: 14px;--radius-lg: 20px;--shadow: 0 1px 3px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .04);--shadow-lg: 0 10px 40px rgba(15, 23, 42, .1);--shadow-glow: 0 0 24px var(--clr-primary-glow);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;font-size:16px;color:var(--clr-text);background-color:var(--clr-bg)}body{min-height:100vh;overflow-x:hidden}a{color:var(--clr-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--clr-accent);text-decoration:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--clr-bg)}::-webkit-scrollbar-thumb{background:#5b5bd640;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#5b5bd666}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px) scaleY(.95)}to{opacity:1;transform:translateY(0) scaleY(1)}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(3deg)}}@keyframes pulse-glow{0%,to{opacity:.4}50%{opacity:.8}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes expand{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:300px;padding-top:0;padding-bottom:1rem}}.app{min-height:100vh;position:relative}.bg-effects{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.bg-orb{position:absolute;border-radius:50%;filter:blur(80px);animation:float 8s ease-in-out infinite}.bg-orb--1{width:400px;height:400px;background:#5b5bd61a;top:-10%;left:-5%;animation-delay:0s}.bg-orb--2{width:350px;height:350px;background:#0ea5e914;top:20%;right:-10%;animation-delay:-3s;animation-duration:10s}.bg-orb--3{width:300px;height:300px;background:#5b5bd612;bottom:-5%;left:30%;animation-delay:-5s;animation-duration:12s}.bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(148,163,184,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.08) 1px,transparent 1px);background-size:60px 60px}.landing{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:2rem;position:relative;z-index:1}.app-logo{width:70px;height:70px;background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent));border-radius:20px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;box-shadow:0 8px 32px var(--clr-primary-glow);animation:fadeInUp .6s ease-out}.app-logo svg{width:36px;height:36px;color:#fff}.app-title{font-family:Poppins,sans-serif;font-size:3rem;font-weight:800;margin-bottom:.5rem;background:linear-gradient(135deg,#1e293b 0%,#5b5bd6 50%,var(--clr-accent) 100%);background-size:200% 200%;animation:gradient-shift 6s ease infinite,fadeInUp .6s ease-out .1s both;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;line-height:1.15}.app-subtitle{font-size:1.15rem;color:var(--clr-text-muted);margin-bottom:2.5rem;text-align:center;animation:fadeInUp .6s ease-out .2s both}.search-wrapper{position:relative;width:100%;max-width:560px;animation:fadeInUp .6s ease-out .3s both}.search-input-container{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:1.15rem;width:20px;height:20px;color:var(--clr-text-muted);pointer-events:none;transition:color .2s}.search-input-container:focus-within .search-icon{color:var(--clr-primary)}.search-input{width:100%;padding:1.1rem 1.25rem 1.1rem 3.2rem;font-size:1.05rem;font-family:inherit;border:1.5px solid var(--clr-border);border-radius:var(--radius);background:var(--clr-surface);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow);outline:none;color:var(--clr-text);transition:border-color .3s,box-shadow .3s,background .3s}.search-input::placeholder{color:var(--clr-text-muted)}.search-input:focus{border-color:var(--clr-primary);box-shadow:var(--shadow-glow),var(--shadow-lg);background:#fffffff2}.search-dropdown{margin-top:.5rem;list-style:none;background:var(--clr-surface-solid);border:1.5px solid var(--clr-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:360px;overflow-y:auto;z-index:100;animation:slideDown .25s ease-out;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.search-dropdown-item{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;cursor:pointer;transition:all .2s ease;border-left:3px solid transparent}.search-dropdown-item:hover,.search-dropdown-item.active{background-color:var(--clr-tag-bg);border-left-color:var(--clr-primary)}.dropdown-name{font-weight:500;color:var(--clr-text)}.dropdown-phone{font-size:.82rem;color:var(--clr-accent);font-weight:500;font-variant-numeric:tabular-nums}.search-no-results{padding:1.5rem 1.25rem;text-align:center;color:var(--clr-text-muted);font-size:.95rem}.search-hint{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;color:var(--clr-text-muted);font-size:.82rem;animation:fadeInUp .6s ease-out .5s both}.search-hint kbd{display:inline-flex;align-items:center;justify-content:center;padding:.15rem .45rem;border:1px solid var(--clr-border);border-radius:6px;background:var(--clr-surface);font-size:.75rem;font-family:inherit;color:var(--clr-text-muted)}.company-detail{max-width:760px;margin:0 auto;padding:2rem 1.5rem 3rem;position:relative;z-index:1;animation:fadeIn .4s ease-out}.back-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;margin-bottom:2rem;color:var(--clr-text-muted);padding:.5rem 1rem;border-radius:10px;transition:all .2s;background:var(--clr-surface);border:1px solid var(--clr-border)}.back-link:hover{color:var(--clr-primary);background:var(--clr-tag-bg);border-color:#5b5bd633;transform:translate(-4px)}.company-hero{background:linear-gradient(135deg,#5b5bd60f,#0ea5e90d);border:1px solid var(--clr-border);border-radius:var(--radius-lg);padding:2rem 2rem 1.75rem;margin-bottom:2rem;position:relative;overflow:hidden;animation:fadeInUp .5s ease-out}.company-hero:before{content:"";position:absolute;top:-40%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,var(--clr-primary-glow),transparent 70%);pointer-events:none}.company-name{font-family:Poppins,sans-serif;font-size:2.2rem;font-weight:700;margin-bottom:.75rem;color:var(--clr-text);position:relative}.company-meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.meta-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .85rem;font-size:.82rem;font-weight:500;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:999px;color:var(--clr-text-muted)}.meta-pill svg{width:14px;height:14px}.phone-card{display:flex;flex-direction:column;gap:0;padding:1.25rem 1.5rem;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);margin-bottom:2rem;transition:all .3s;animation:fadeInUp .5s ease-out .1s both}.phone-card-top{display:flex;align-items:center;gap:1rem}.phone-card:hover{border-color:#0ea5e94d;box-shadow:0 0 24px var(--clr-accent-glow)}.phone-icon-circle{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--clr-accent),#0284c7);display:flex;align-items:center;justify-content:center;flex-shrink:0}.phone-icon-circle svg{width:22px;height:22px;color:#fff}.phone-info{display:flex;flex-direction:column}.phone-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--clr-text-muted);margin-bottom:.2rem}.phone-link{font-size:1.4rem;font-weight:700;color:var(--clr-accent);transition:color .2s;font-variant-numeric:tabular-nums}.phone-link:hover{color:#0284c7}.muted{color:var(--clr-text-muted)}.phone-card-tags{padding-top:.6rem;border-top:1px solid var(--clr-border);margin-top:.75rem}.tags-inline{font-size:.82rem;color:var(--clr-text-muted);line-height:1.55;margin:0 0 .3rem}.see-main-inline{display:inline-block;font-size:.8rem;font-weight:500;color:var(--clr-primary);text-decoration:underline;transition:color .2s}.see-main-inline:hover{color:var(--clr-primary-hover, #4a4ac7)}.detail-section{margin-bottom:2rem;animation:fadeInUp .5s ease-out both}.detail-section:nth-child(3){animation-delay:.15s}.detail-section:nth-child(4){animation-delay:.2s}.detail-section:nth-child(5){animation-delay:.25s}.section-header{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem}.section-header h2{font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--clr-text-muted)}.section-header svg{width:18px;height:18px;color:var(--clr-primary)}.tags-container{display:flex;flex-wrap:wrap;gap:.5rem}.tag-chip{display:inline;font-size:.82rem;font-weight:500;color:var(--clr-text-muted);cursor:default}.tag-dot{color:var(--clr-text-muted);opacity:.5}.subdivision-heading{font-size:1.05rem;font-weight:700;color:var(--clr-text);margin:0 0 1rem}.subdivision-list{display:flex;flex-direction:column}.subdivision-item{padding:1rem 0;border-bottom:1px solid var(--clr-border)}.subdivision-item:last-child{border-bottom:none}.subdivision-name{font-size:.95rem;font-weight:650;color:var(--clr-text);margin:0 0 .25rem}.subdivision-phone{display:inline-block;font-size:1rem;font-weight:700;color:var(--clr-primary);text-decoration:none;margin-bottom:.3rem;transition:color .2s}.subdivision-phone:hover{color:var(--clr-primary-hover, #4a4ac7)}.subdivision-tags-text{font-size:.82rem;color:var(--clr-text-muted);line-height:1.55;margin:0 0 .35rem}.subdivision-tags-inline{font-size:.82rem;color:var(--clr-text-muted);line-height:1.55;margin:.15rem 0 .35rem}.subdivision-detail-page .subdivision-breadcrumb-text{font-size:.85rem;color:var(--clr-text-muted);margin:-.3rem 0 0}.breadcrumb-company-link{color:var(--clr-primary);text-decoration:none;font-weight:500}.breadcrumb-company-link:hover{text-decoration:underline}.subdivision-more-link{font-size:.82rem;font-weight:500;color:var(--clr-primary);text-decoration:underline;transition:color .2s}.subdivision-more-link:hover{color:var(--clr-primary-hover, #4a4ac7)}.faq-question-static{padding:1.1rem 1.25rem .4rem;font-size:.95rem;font-weight:600;color:var(--clr-text)}.faq-list{border:1px solid var(--clr-border);border-radius:var(--radius);overflow:hidden;background:var(--clr-surface)}.faq-item{border-bottom:1px solid var(--clr-border);transition:background-color .2s}.faq-item:last-child{border-bottom:none}.faq-item.open{background:#5b5bd60a}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.25rem;background:transparent;border:none;cursor:pointer;font-size:.95rem;font-weight:500;text-align:left;color:var(--clr-text);font-family:inherit;transition:all .2s}.faq-question:hover{color:var(--clr-primary)}.faq-toggle{flex-shrink:0;width:28px;height:28px;border-radius:8px;background:var(--clr-tag-bg);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:600;color:var(--clr-primary);transition:all .3s}.faq-item.open .faq-toggle{background:var(--clr-primary);color:#fff;transform:rotate(45deg)}.faq-answer{padding:0 1.25rem 1.15rem;color:var(--clr-text-muted);line-height:1.7;font-size:.92rem;animation:expand .3s ease-out;overflow:hidden}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem}.loading-spinner{width:40px;height:40px;border:3px solid var(--clr-border);border-top-color:var(--clr-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:1rem;color:var(--clr-text-muted)}.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:.75rem;font-size:1.05rem;color:var(--clr-danger)}.error-icon{width:48px;height:48px;border-radius:50%;background:#ef444414;display:flex;align-items:center;justify-content:center;font-size:1.5rem}@media(max-width:640px){.app-title{font-size:2rem}.company-name{font-size:1.6rem}.company-hero{padding:1.5rem}.phone-card{flex-direction:column;text-align:center}.phone-info{align-items:center}.bg-orb{filter:blur(60px)}.bg-orb--1{width:250px;height:250px}.bg-orb--2{width:200px;height:200px}.bg-orb--3{width:180px;height:180px}}.layout-with-sidebar{display:flex;min-height:100vh;position:relative;z-index:1}.sidebar{width:240px;min-height:100vh;position:sticky;top:0;display:flex;flex-direction:column;background:#fffc;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-right:1px solid var(--clr-border);padding:1.5rem 0;flex-shrink:0;z-index:10}.sidebar-brand{display:flex;align-items:center;gap:.75rem;padding:0 1.25rem 1.5rem;border-bottom:1px solid var(--clr-border);margin-bottom:1rem}.sidebar-logo{width:36px;height:36px;background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent));border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-logo svg{width:18px;height:18px;color:#fff}.sidebar-brand-text{font-family:Poppins,sans-serif;font-weight:700;font-size:1.1rem;background:linear-gradient(135deg,#1e293b,var(--clr-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sidebar-nav{display:flex;flex-direction:column;gap:.25rem;padding:0 .75rem;flex:1}.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.7rem .75rem;border-radius:10px;font-size:.92rem;font-weight:500;color:var(--clr-text-muted);transition:all .2s;text-decoration:none}.sidebar-link svg{width:19px;height:19px;flex-shrink:0}.sidebar-link:hover{color:var(--clr-text);background:#5b5bd60f;text-decoration:none}.sidebar-link.active{color:var(--clr-primary);background:var(--clr-tag-bg)}.sidebar-link.active svg{color:var(--clr-primary)}.sidebar-footer{padding:1rem 1.25rem 0;border-top:1px solid var(--clr-border);margin-top:auto}.sidebar-footer-text{font-size:.72rem;color:var(--clr-text-muted);opacity:.6}.main-content{flex:1;min-width:0;padding:2rem 2.5rem 3rem;overflow-x:hidden}.all-companies{max-width:900px;animation:fadeIn .4s ease-out}.ac-header{margin-bottom:1.5rem;animation:fadeInUp .5s ease-out}.ac-title{font-family:Poppins,sans-serif;font-size:1.6rem;font-weight:700;color:var(--clr-text);line-height:1.3}.ac-letter-bar{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:1.5rem;padding:1rem;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);animation:fadeInUp .5s ease-out .05s both}.ac-letter-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:.85rem;font-weight:600;font-family:inherit;color:var(--clr-text-muted);background:transparent;border:1.5px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s}.ac-letter-btn:hover{color:var(--clr-text);background:#5b5bd60f;border-color:var(--clr-border)}.ac-letter-btn.active{color:#fff;background:var(--clr-primary);border-color:var(--clr-primary);box-shadow:0 0 12px var(--clr-primary-glow)}.ac-letter-btn--wide{width:auto;padding:0 .75rem;font-size:.78rem}.ac-summary{font-size:.88rem;color:var(--clr-text-muted);margin-bottom:1rem;padding:.6rem 1rem;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:10px;animation:fadeInUp .5s ease-out .1s both}.ac-summary strong{color:var(--clr-text)}.ac-list{display:flex;flex-direction:column;gap:.35rem;animation:fadeInUp .5s ease-out .15s both}.ac-company-card{display:flex;align-items:center;gap:1rem;padding:.9rem 1.2rem;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);cursor:pointer;transition:all .2s;text-decoration:none;color:inherit}.ac-company-card:hover{background:#ffffffe6;border-color:#5b5bd640;transform:translate(4px);text-decoration:none}.ac-company-info{flex:1;display:flex;flex-direction:column;gap:.15rem;min-width:0}.ac-company-name{font-weight:600;font-size:.95rem;color:var(--clr-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ac-company-desc{font-size:.78rem;color:var(--clr-text-muted)}.ac-company-phone{font-size:.85rem;font-weight:500;color:var(--clr-accent);white-space:nowrap;font-variant-numeric:tabular-nums}.ac-company-arrow{width:18px;height:18px;color:var(--clr-text-muted);flex-shrink:0;transition:transform .2s}.ac-company-card:hover .ac-company-arrow{color:var(--clr-primary);transform:translate(3px)}.ac-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 0;gap:1rem}.ac-error{padding:1.5rem;text-align:center;color:var(--clr-danger);font-size:.95rem}.ac-pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:2rem;flex-wrap:wrap;animation:fadeInUp .5s ease-out .2s both}.ac-page-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.85rem;font-weight:500;font-family:inherit;color:var(--clr-text-muted);background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:10px;cursor:pointer;transition:all .2s}.ac-page-btn svg{width:16px;height:16px}.ac-page-btn:hover:not(:disabled){color:var(--clr-text);background:#5b5bd60f;border-color:var(--clr-primary)}.ac-page-btn:disabled{opacity:.3;cursor:not-allowed}.ac-page-numbers{display:flex;align-items:center;gap:.25rem}.ac-page-num{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:500;font-family:inherit;color:var(--clr-text-muted);background:transparent;border:1.5px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s}.ac-page-num:hover{color:var(--clr-text);border-color:var(--clr-border);background:#5b5bd60f}.ac-page-num.active{color:#fff;background:var(--clr-primary);border-color:var(--clr-primary);box-shadow:0 0 12px var(--clr-primary-glow)}.ac-page-ellipsis{width:28px;text-align:center;color:var(--clr-text-muted);font-size:.9rem}@media(max-width:768px){.sidebar{width:60px;padding:1rem 0}.sidebar-brand-text,.sidebar-link span,.sidebar-footer-text{display:none}.sidebar-brand{justify-content:center;padding:0 0 1rem}.sidebar-link{justify-content:center;padding:.75rem}.main-content{padding:1.5rem 1rem 2rem}.ac-title{font-size:1.2rem}.ac-letter-btn{width:30px;height:30px;font-size:.75rem}.ac-company-phone{display:none}}
