*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#000;color:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;letter-spacing:-.02em}h1{font-size:3.5rem;font-weight:700}h2{font-size:2rem;font-weight:600}p{line-height:1.7}.container{max-width:800px;margin:0 auto;padding:0 2rem}#navbar{position:fixed;top:0;left:0;right:0;background-color:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #333;z-index:1000}.nav-container{max-width:1200px;margin:0 auto;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-brand{font-size:1.25rem;font-weight:600;letter-spacing:-.01em}.nav-links{display:flex;gap:2rem;list-style:none}.nav-links a{color:#888;text-decoration:none;font-size:.95rem;font-weight:500;transition:color .2s ease}.nav-links a:hover,.nav-links a.active{color:#fff}.nav-links a.nav-login{color:#fff;border:1px solid #444;padding:.5rem 1rem;border-radius:4px;transition:all .2s ease}.nav-links a.nav-login:hover{background-color:#fff;color:#000;border-color:#fff}.section{padding:8rem 0;border-bottom:1px solid #1a1a1a}.section:last-of-type{border-bottom:none}.hero-section{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding-top:6rem}.hero-subtitle{font-size:1.25rem;color:#888;margin-top:1.5rem;font-weight:400}.section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}.section-icon{font-size:1.5rem}.section-lead{font-size:1.25rem;font-weight:500;margin-bottom:1rem;color:#fff}.section-tagline{font-size:1.125rem;color:#888;font-weight:400}.section-description{font-size:1rem;color:#aaa;margin-bottom:1.5rem;line-height:1.7}.service-block{margin-bottom:4rem;padding-bottom:4rem;border-bottom:1px solid #1a1a1a}.service-block:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.feature-list{list-style:none;margin-top:1.5rem}.feature-list li{padding:.75rem 0 .75rem 1.5rem;position:relative;color:#aaa;font-size:1rem}.feature-list li:before{content:"→";position:absolute;left:0;color:#666}.testimonials-grid{display:grid;gap:3rem;margin-top:3rem}.testimonial{border-left:2px solid #333;padding:2rem 0 2rem 2rem}.testimonial-text{font-size:1.125rem;line-height:1.7;margin-bottom:1rem;color:#ddd}.testimonial-author{font-size:.95rem;color:#888;font-weight:500}.cta-button{display:inline-block;margin-top:2rem;padding:1rem 2.5rem;background-color:#fff;color:#000;text-decoration:none;font-weight:600;font-size:1rem;border-radius:6px;transition:all .2s ease;border:2px solid #ffffff}.cta-button:hover{background-color:transparent;color:#fff}.footer{background-color:#000;padding:4rem 0 2rem;border-top:1px solid #1a1a1a}.footer-content{display:grid;gap:3rem}.footer-info h3{font-size:1.25rem;margin-bottom:.5rem}.footer-tagline{color:#888;margin-bottom:1rem;font-size:1rem}.footer-contact{color:#aaa;font-size:.95rem}.footer-contact a{color:#aaa;text-decoration:none;transition:color .2s ease}.footer-login{margin-top:1.5rem}.footer-login a{color:#888;text-decoration:none;font-size:.9rem;transition:color .2s ease}.footer-login a:hover,.footer-contact a:hover{color:#fff}.footer-map{margin-top:2rem;border-radius:8px;overflow:hidden;border:1px solid #1a1a1a}.footer-map iframe{display:block;width:100%;filter:grayscale(100%) invert(92%) contrast(90%)}@media (max-width: 768px){h1{font-size:2.5rem}h2{font-size:1.75rem}.container{padding:0 1.5rem}.nav-container{padding:1.25rem 1.5rem}.nav-links{gap:1.25rem}.nav-links a{font-size:.9rem}.section{padding:5rem 0}.hero-section{padding-top:5rem}.hero-subtitle,.section-lead{font-size:1.125rem}.testimonials-grid{gap:2rem}}@media (max-width: 480px){h1{font-size:2rem}h2{font-size:1.5rem}.nav-brand{font-size:1.125rem}.nav-links{gap:1rem}.nav-links a{font-size:.85rem}.cta-button{padding:.875rem 2rem;font-size:.95rem}}.portal-login{min-height:100vh;background:linear-gradient(135deg,#0a0a0a,#1a1a1a);display:flex;align-items:center;justify-content:center;padding:2rem}.login-container{width:100%;max-width:420px;display:flex;flex-direction:column;gap:1.5rem}.login-card{background:#111;border:1px solid #222;border-radius:12px;overflow:hidden}.login-header{padding:2rem 2rem 1rem;text-align:center}.login-logo{font-size:1.25rem;font-weight:700;color:#fff;letter-spacing:-.02em;margin-bottom:.75rem}.login-title{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:.5rem}.login-description{font-size:.9rem;color:#888;line-height:1.5}.login-form{display:flex;flex-direction:column;gap:1.25rem;padding:1rem 2rem 2rem}.input-with-icon{position:relative}.input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#666;pointer-events:none}.input-with-icon input{padding-left:40px;background:#0a0a0a;border:1px solid #333;color:#fff;transition:border-color .2s ease}.input-with-icon input:focus{border-color:#fff;outline:none}.login-button{width:100%;padding:.75rem 1.5rem;background:#fff;color:#000;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.login-button:hover:not(:disabled){background:#eee}.login-button:disabled{opacity:.7;cursor:not-allowed}.demo-credentials{margin-top:1rem;padding:1rem;background:#0a0a0a;border-radius:8px;text-align:center}.demo-title{font-size:.8rem;font-weight:600;color:#666;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.demo-info{font-size:.85rem;color:#888;font-family:SF Mono,Monaco,monospace}.back-link{display:block;text-align:center;color:#888;font-size:.9rem;text-decoration:none;transition:color .2s ease}.back-link:hover{color:#fff}.portal-dashboard,.portal-updates{min-height:100vh;background:#0a0a0a}.dashboard-header{position:sticky;top:0;background:#0a0a0af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #222;z-index:100}.header-content{max-width:1400px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.header-brand{display:flex;align-items:center;gap:.75rem}.brand-logo{font-size:1.125rem;font-weight:700;color:#fff}.brand-divider{color:#444}.brand-portal{font-size:.9rem;color:#888}.header-actions{display:flex;align-items:center;gap:1.5rem}.welcome-text{font-size:.9rem;color:#888}.logout-btn{display:flex;align-items:center;gap:.5rem;color:#888;transition:color .2s ease}.logout-btn:hover{color:#fff}.mobile-menu-btn{display:none}.mobile-menu{display:none;padding:1rem 2rem;border-top:1px solid #222;background:#111}.mobile-menu a,.mobile-menu button{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;color:#888;text-decoration:none;font-size:.9rem;background:none;border:none;width:100%;cursor:pointer;transition:color .2s ease}.mobile-menu a:hover,.mobile-menu button:hover{color:#fff}.mobile-logout{border-top:1px solid #222!important;margin-top:.5rem;padding-top:1rem!important}.dashboard-main{max-width:1400px;margin:0 auto;padding:2rem}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.dashboard-section{min-height:300px}.dashboard-card{background:#111;border:1px solid #222;border-radius:12px;height:100%;overflow:hidden}.card-header{padding:1.25rem 1.5rem;border-bottom:1px solid #222}.card-title{display:flex;align-items:center;gap:.75rem;font-size:1rem;font-weight:600;color:#fff}.card-title svg{color:#888}.project-card{padding:1.5rem}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem}.project-name{font-size:1.125rem;font-weight:600;color:#fff}.project-date{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#666}.progress-section{margin-bottom:1.5rem}.progress-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.progress-label{font-size:.85rem;color:#888}.progress-value{font-size:.85rem;font-weight:600;color:#fff}.project-progress{height:8px;background:#222;border-radius:4px;overflow:hidden}.project-progress>div{background:linear-gradient(90deg,#fff,#888);transition:width .5s ease}.phases-timeline{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.phase-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#0a0a0a;border-radius:8px;border:1px solid #222;opacity:.5;transition:all .3s ease}.phase-item.active{opacity:1;border-color:#fff;background:linear-gradient(135deg,#1a1a1a,#2a2a2a);box-shadow:0 0 20px #ffffff26,inset 0 1px #ffffff1a;transform:scale(1.02)}.phase-item.complete{opacity:.7}.phase-indicator{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:1rem}.phase-check{color:#4ade80}.phase-label{font-size:.85rem;color:#888}.phase-item.active .phase-label{color:#fff;font-weight:500}.deliverables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;padding:1.5rem}.deliverable-card{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#0a0a0a;border:1px solid #222;border-radius:8px;cursor:pointer;transition:all .2s ease}.deliverable-card:hover{border-color:#444;transform:translateY(-2px)}.deliverable-thumbnail{width:80px;height:60px;border-radius:4px;overflow:hidden;margin-bottom:.75rem}.deliverable-thumbnail img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.deliverable-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:#666;margin-bottom:.75rem}.deliverable-name{font-size:.75rem;color:#888;text-align:center;word-break:break-word;line-height:1.3}.deliverable-modal{background:#111;border:1px solid #222;max-width:90vw}.image-preview{max-height:60vh;overflow:auto}.image-preview img{width:100%;height:auto}.file-preview{padding:2rem;text-align:center}.file-preview svg{color:#666;margin-bottom:1rem}.file-preview h3{color:#fff;font-size:1rem}.download-link{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background:#222;color:#fff;text-decoration:none;border-radius:6px;font-size:.9rem;margin-top:1rem;transition:background .2s ease}.download-link:hover{background:#333}.billing-content{padding:1.5rem}.billing-overview{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:1.25rem;border-bottom:1px solid #222;margin-bottom:1.25rem}.plan-label{font-size:.8rem;color:#666;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:.25rem}.plan-name{font-size:1.125rem;font-weight:600;color:#fff}.rate-amount{font-size:1.5rem;font-weight:700;color:#fff}.rate-period{font-size:.9rem;color:#666}.billing-status{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.next-billing{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#888}.billing-countdown{color:#666;font-size:.85rem}.payment-history{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #222}.history-title{font-size:.9rem;font-weight:600;color:#fff;margin-bottom:1rem}.history-list{display:flex;flex-direction:column;gap:.75rem}.history-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#0a0a0a;border-radius:6px}.payment-date{font-size:.85rem;color:#888}.payment-amount{font-size:.9rem;font-weight:600;color:#fff}.payment-badge{font-size:.75rem}.update-payment-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.25rem;font-size:.85rem;color:#888;text-decoration:none;transition:color .2s ease}.update-payment-link:hover{color:#fff}.updates-list{max-height:350px;padding:1rem 1.5rem}.update-item{padding:1rem 0;border-bottom:1px solid #222}.update-item:last-child{border-bottom:none}.update-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.update-type{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.update-date{font-size:.8rem;color:#666}.update-text{font-size:.9rem;color:#aaa;line-height:1.5}.update-trigger{cursor:pointer;padding:.5rem 0;transition:all .2s ease}.update-trigger:hover{opacity:.8}.update-chevron{color:#666;margin-left:auto;transition:transform .2s ease}.update-chevron.rotated{transform:rotate(180deg)}.update-title{font-size:.9rem;color:#fff;font-weight:500;margin:0}.update-item.expanded{background:#0a0a0a;margin:.5rem -1rem;padding:1rem;border-radius:8px}.update-content{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #333}.update-full-date{display:block;font-size:.75rem;color:#555;margin-top:.5rem;font-style:italic}.view-all-link{display:block;padding:1rem 1.5rem;text-align:center;color:#888;text-decoration:none;font-size:.9rem;border-top:1px solid #222;transition:color .2s ease}.view-all-link:hover{color:#fff}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#666;text-align:center}.empty-state svg{margin-bottom:1rem}.empty-state p{font-size:.9rem}.skeleton-project,.skeleton-billing{padding:1.5rem}.skeleton-title{height:24px;width:60%;margin-bottom:1rem;background:#222;border-radius:4px}.skeleton-progress{height:8px;width:100%;margin-bottom:1.5rem;background:#222;border-radius:4px}.skeleton-phases{height:200px;width:100%;background:#222;border-radius:8px}.skeleton-amount{height:32px;width:40%;margin-bottom:1rem;background:#222;border-radius:4px}.skeleton-history{height:120px;width:100%;background:#222;border-radius:8px}.skeleton-deliverables{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1.5rem}.skeleton-file{height:100px;background:#222;border-radius:8px}.skeleton-updates{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.skeleton-update{height:60px;background:#222;border-radius:8px}.skeleton-update-full{height:80px;background:#222;border-radius:8px}.portal-error{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:#0a0a0a}.error-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:3rem}.error-content svg{color:#f87171;margin-bottom:1rem}.error-content h2{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:.5rem}.error-content p{color:#888;margin-bottom:1.5rem}.updates-main{max-width:800px;margin:0 auto;padding:2rem}.updates-container{display:flex;flex-direction:column;gap:1.5rem}.back-button{display:inline-flex;align-items:center;gap:.5rem;color:#888;width:-moz-fit-content;width:fit-content}.back-button:hover{color:#fff}.updates-card{background:#111;border:1px solid #222;border-radius:12px}.all-updates-list{padding:1.5rem}.update-item-full{display:flex;gap:1.25rem;padding:1.25rem 0;border-bottom:1px solid #222}.update-item-full:last-child{border-bottom:none}.update-timeline-dot{width:12px;height:12px;background:#333;border:2px solid #555;border-radius:50%;flex-shrink:0;margin-top:4px}.update-content{flex:1}.update-item-full .update-header{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem}.update-full-date{font-size:.8rem;color:#555}.mobile-only{display:none!important}.desktop-only{display:flex!important}@media (max-width: 1024px){.dashboard-grid{grid-template-columns:1fr}}@media (max-width: 768px){.mobile-only{display:flex!important}.desktop-only{display:none!important}.mobile-menu{display:block}.header-content{padding:1rem 1.5rem}.brand-portal,.welcome-text{display:none}.dashboard-main{padding:1rem}.dashboard-grid{gap:1rem}.phases-timeline{gap:.5rem}.phase-item{padding:.5rem .75rem}.phase-label{font-size:.75rem}.deliverables-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem;padding:1rem}.billing-overview{flex-direction:column;gap:1rem}.billing-status{flex-direction:column;gap:.75rem;align-items:flex-start}.history-item{flex-direction:column;align-items:flex-start;gap:.5rem}.updates-main{padding:1rem}}@media (max-width: 480px){.login-container{padding:0}.login-form{padding:1rem 1.5rem 1.5rem}.header-content{padding:.75rem 1rem}.brand-logo{font-size:1rem}.phase-indicator{width:24px;height:24px;font-size:.9rem}.deliverable-card{padding:.75rem}.deliverable-icon{width:32px;height:32px}.deliverable-name{font-size:.7rem}}
