@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;700&family=Archivo:wght@400;500;600;700;900&display=swap";:root{--black: #0A0A0A;--white: #FAFAFA;--gray-dark: #1A1A1A;--gray-mid: #888888;--gray-light: #CCCCCC;--accent: #FAFAFA;--accent-hover: #CCCCCC}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Space Grotesk,sans-serif;background:var(--black);color:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.noise{position:fixed;top:0;left:0;width:100%;height:100%;opacity:.03;pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}.container{position:relative;z-index:2;max-width:1400px;margin:0 auto;padding:80px 60px;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:Archivo,sans-serif;font-weight:700}.btn{padding:24px 48px;font-family:Archivo,sans-serif;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;border:1px solid var(--white);cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;background:var(--black);color:var(--white)}.btn:hover{background:var(--accent);color:var(--white);border-color:var(--accent)}a{color:var(--white);text-decoration:none;transition:opacity .3s ease}a:hover{color:var(--accent);opacity:1}[data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}[data-reveal].revealed{opacity:1;transform:translateY(0)}[data-reveal]:nth-child(1){transition-delay:0s}[data-reveal]:nth-child(2){transition-delay:.1s}[data-reveal]:nth-child(3){transition-delay:.2s}[data-reveal]:nth-child(4){transition-delay:.3s}.project-image-wrapper{overflow:hidden;border-radius:4px}.project-image{width:100%;height:auto;transition:transform .6s cubic-bezier(.16,1,.3,1)}.project-image:hover{transform:scale(1.03)}@media(max-width:968px){.container{padding:60px 40px}}@media(max-width:640px){.container{padding:40px 20px}.btn{width:100%;padding:20px 40px}}.header{border-bottom:1px solid var(--gray-dark);padding:40px 60px;position:relative;z-index:100}.header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo{font-family:Archivo,sans-serif;font-size:1.5rem;font-weight:900;text-transform:uppercase;letter-spacing:-.02em}.logo-image{height:40px;width:auto;transition:opacity .3s ease}.logo:hover .logo-image{opacity:.7}.logo-text{transition:opacity .3s ease}.logo:hover .logo-text{opacity:.7}.nav{display:flex;gap:40px}.nav-link{font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:var(--gray-mid);transition:color .3s ease}.nav-link:hover{color:var(--white);opacity:1}@media(max-width:768px){.header{padding:30px 20px}.header-content{flex-direction:column;gap:25px;align-items:flex-start}.nav{gap:20px;width:100%;justify-content:flex-start}.nav-link{font-size:.75rem}}.footer{padding:60px 60px 40px;border-top:1px solid var(--gray-dark);margin-top:120px}.footer-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer-text{font-size:.75rem;color:var(--gray-mid);letter-spacing:2px;text-transform:uppercase}.footer-links{display:flex;gap:40px}.footer-link{font-size:.75rem;color:var(--gray-mid);text-decoration:none;letter-spacing:2px;text-transform:uppercase;transition:color .3s ease}.footer-link:hover{color:var(--white);opacity:1}.footer-link--muted{opacity:.3}.footer-link--muted:hover{opacity:1}@media(max-width:768px){.footer{padding:40px 20px 30px}.footer-content{flex-direction:column;gap:30px;align-items:flex-start}.footer-links{flex-direction:column;gap:20px}}.intro{margin-bottom:80px;display:flex;align-items:center}.intro-content{max-width:52%}.intro-text{font-family:Archivo,sans-serif;font-size:clamp(1.75rem,4vw,3rem);font-weight:800;line-height:1.05;letter-spacing:-.03em;text-transform:uppercase;margin-bottom:32px;color:var(--white)}.intro-description{font-size:1.25rem;color:var(--gray-mid);max-width:550px;line-height:1.7;font-weight:400}.featured-project{margin-bottom:100px}.section-title{font-size:.75rem;letter-spacing:3px;color:var(--accent);text-transform:uppercase;margin-bottom:40px;font-weight:600}.project-showcase{border-top:1px solid var(--gray-dark);border-bottom:1px solid var(--gray-dark);padding:60px 0}.project-link{display:block;text-decoration:none}.project-name{font-family:Archivo,sans-serif;font-size:clamp(3rem,8vw,7rem);font-weight:900;letter-spacing:-.03em;text-transform:uppercase;line-height:1;position:relative;display:inline-block;transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer}.project-name:before{content:attr(data-text);position:absolute;left:0;top:0;color:var(--white);-webkit-text-stroke:1px var(--white);-webkit-text-fill-color:transparent;z-index:-1;transition:all .4s cubic-bezier(.4,0,.2,1)}.project-name:hover{transform:translate(10px);color:var(--accent)}.project-name:hover:before{transform:translate(-6px,6px);-webkit-text-stroke:1px var(--accent)}.project-meta{margin-top:20px;font-size:.875rem;color:var(--gray-mid);letter-spacing:1px;text-transform:uppercase}.cta-section{margin:100px 0}.cta-buttons{display:flex;gap:0;flex-wrap:wrap}.btn-primary{border-right:none}@media(max-width:968px){.intro{flex-direction:column;align-items:flex-start;margin-bottom:60px}.intro-content{max-width:100%}.intro-text{font-size:clamp(1.25rem,6vw,2rem)}.project-name{font-size:clamp(2.5rem,12vw,5rem)}.cta-buttons{flex-direction:column}.btn{width:100%;border:1px solid var(--white)}.btn-primary{border-right:1px solid var(--white);border-bottom:none}}@media(max-width:640px){.intro-description{font-size:1rem}}.about-content{max-width:900px}.page-title{font-family:Archivo,sans-serif;font-size:clamp(3rem,8vw,6rem);font-weight:900;text-transform:uppercase;letter-spacing:-.03em;margin-bottom:80px}.about-section{margin-bottom:80px}.section-text{font-size:1.125rem;color:var(--gray-light);line-height:1.8;max-width:700px}@media(max-width:640px){.section-text{font-size:1rem}}.projects-list{display:grid;gap:1px;background:var(--gray-dark);border:1px solid var(--gray-dark);margin-top:60px}.project-card{background:var(--black);padding:60px;display:block;text-decoration:none;transition:background .3s ease;cursor:pointer}.project-card:hover{background:var(--gray-dark)}.project-card-content{max-width:800px}.project-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px;gap:20px;flex-wrap:wrap}.project-card-name{font-family:Archivo,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:900;text-transform:uppercase;letter-spacing:-.02em;transition:transform .3s ease}.project-card:hover .project-card-name{transform:translate(10px)}.fan-work-badge{font-size:.75rem;color:var(--gray-mid);text-transform:uppercase;letter-spacing:1px;border:1px solid var(--gray-mid);padding:4px 12px}.project-card-category{font-size:.875rem;color:var(--gray-mid);text-transform:uppercase;letter-spacing:1px;margin-bottom:15px}.project-card-description{font-size:1rem;color:var(--gray-light);line-height:1.6;margin-bottom:30px}.project-card-footer{display:flex;justify-content:space-between;align-items:center}.project-card-year{font-size:.875rem;color:var(--gray-mid);letter-spacing:2px}.project-card-arrow{font-size:1.5rem;transition:transform .3s ease}.project-card:hover .project-card-arrow{transform:translate(10px)}.no-projects{font-size:1.125rem;color:var(--gray-mid);text-align:center;padding:100px 0}@media(max-width:768px){.project-card{padding:40px 30px}.project-card-name{font-size:clamp(1.5rem,8vw,2rem)}}.back-link{display:inline-block;font-size:.875rem;color:var(--gray-mid);text-transform:uppercase;letter-spacing:2px;margin-bottom:60px;transition:color .3s ease}.back-link:hover{color:var(--white)}.case-study-header{border-bottom:1px solid var(--gray-dark);padding-bottom:60px;margin-bottom:80px}.case-study-title{font-family:Archivo,sans-serif;font-size:clamp(3rem,8vw,6rem);font-weight:900;text-transform:uppercase;letter-spacing:-.03em;margin-bottom:30px}.case-study-subtitle{font-size:1.25rem;color:var(--gray-mid);letter-spacing:1px;text-transform:uppercase}.case-study-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;margin-bottom:60px}.info-item{border-left:1px solid var(--gray-dark);padding-left:20px}.info-label{font-size:.75rem;color:var(--gray-mid);text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}.info-value{font-size:1.125rem;font-weight:500}.live-site-link{display:inline-block;font-size:1rem;color:var(--white);border:1px solid var(--white);padding:20px 40px;text-transform:uppercase;letter-spacing:2px;margin-bottom:80px;transition:all .3s ease}.live-site-link:hover{background:var(--white);color:var(--black)}.case-study-section{margin-bottom:80px}.section-heading{font-family:Archivo,sans-serif;font-size:clamp(1.5rem,4vw,2.5rem);font-weight:700;text-transform:uppercase;letter-spacing:-.02em;margin-bottom:30px}.section-text{font-size:1.125rem;color:var(--gray-light);line-height:1.8;max-width:800px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin:60px 0 80px}.feature-card{border:1px solid var(--gray-dark);padding:30px;transition:all .3s ease}.feature-card:hover{border-color:var(--white);transform:translateY(-5px)}.feature-number{font-family:Archivo,sans-serif;font-size:2rem;font-weight:900;margin-bottom:20px;color:var(--gray-mid)}.feature-title{font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.feature-description{font-size:.875rem;color:var(--gray-mid);line-height:1.6}.metrics-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;border-top:1px solid var(--gray-dark);border-bottom:1px solid var(--gray-dark);padding:60px 0;margin:80px 0}.metric{text-align:center}.metric-value{font-family:Archivo,sans-serif;font-size:4rem;font-weight:900;margin-bottom:10px}.metric-label{font-size:.875rem;color:var(--gray-mid);text-transform:uppercase;letter-spacing:2px}.testimonial-section{border-top:1px solid var(--gray-dark);border-bottom:1px solid var(--gray-dark);padding:80px 0;margin:80px 0}.testimonial-quote{font-family:Archivo,sans-serif;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:500;line-height:1.4;margin-bottom:40px;font-style:italic}.testimonial-author{display:flex;align-items:center;gap:20px}.testimonial-avatar{width:60px;height:60px;border:1px solid var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Archivo,sans-serif;font-size:1.5rem;font-weight:900}.testimonial-info{flex:1}.testimonial-name{font-size:1rem;font-weight:600;margin-bottom:5px}.testimonial-role{font-size:.875rem;color:var(--gray-mid);text-transform:uppercase;letter-spacing:1px}.case-study-footer{display:flex;gap:0;margin-top:80px;flex-wrap:wrap}.case-study-footer .btn:first-child{border-right:none}@media(max-width:968px){.case-study-header{padding-bottom:40px;margin-bottom:60px}.case-study-info{grid-template-columns:1fr;gap:30px}.features-grid{grid-template-columns:1fr}.metrics-container{grid-template-columns:repeat(2,1fr);gap:30px;padding:40px 0}.metric-value{font-size:3rem}.case-study-footer{flex-direction:column}.case-study-footer .btn{width:100%;border:1px solid var(--white)}.case-study-footer .btn:first-child{border-right:1px solid var(--white);border-bottom:none}}@media(max-width:640px){.metrics-container{grid-template-columns:1fr}.section-text{font-size:1rem}}.contact-content{max-width:900px}.contact-section{margin-bottom:80px}.contact-info{display:grid;gap:60px}.contact-item{border-top:1px solid var(--gray-dark);padding-top:30px}.contact-label{font-size:.75rem;color:var(--gray-mid);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px}.contact-value{font-size:1.5rem;font-weight:500;display:block;transition:opacity .3s ease}.contact-value:hover{opacity:.7}.contact-links{display:flex;flex-direction:column;gap:15px}.contact-link{font-size:1.5rem;font-weight:500;display:inline-block;transition:opacity .3s ease}.contact-link:hover{opacity:.7}@media(max-width:640px){.contact-value,.contact-link{font-size:1.25rem}}.portal-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0a0a;padding:2rem}.portal-card{background:#111;border:1px solid #222;border-radius:8px;padding:2.5rem;width:100%;max-width:400px}.portal-brand{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:#555;margin-bottom:1.5rem}.portal-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 2rem}.portal-form{display:flex;flex-direction:column;gap:1.25rem}.portal-field{display:flex;flex-direction:column;gap:.4rem}.portal-field label{font-size:.8rem;color:#888;font-weight:500}.portal-field input{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:4px;color:#fff;font-size:.95rem;padding:.65rem .75rem;outline:none;transition:border-color .2s}.portal-field input:focus{border-color:#555}.portal-error{color:#e05555;font-size:.85rem;margin:0}.portal-btn{background:#fff;color:#000;border:none;border-radius:4px;font-size:.9rem;font-weight:700;padding:.75rem;cursor:pointer;transition:background .2s;margin-top:.25rem}.portal-btn:hover:not(:disabled){background:#e0e0e0}.portal-btn:disabled{opacity:.5;cursor:not-allowed}.dash-page{min-height:100vh;background:#0a0a0a;color:#fff}.dash-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem 2rem;border-bottom:1px solid #1e1e1e}.dash-brand{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:#555;margin-bottom:.25rem}.dash-title{font-size:1.4rem;font-weight:700;margin:0}.dash-logout{background:none;border:1px solid #333;color:#888;border-radius:4px;padding:.4rem .9rem;font-size:.8rem;cursor:pointer;transition:all .2s}.dash-logout:hover{border-color:#555;color:#fff}.dash-container{max-width:960px;margin:0 auto;padding:2rem;display:flex;flex-direction:column;gap:2.5rem}.dash-section{display:flex;flex-direction:column;gap:1rem}.dash-section-title{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#555;margin:0;font-weight:600}.dash-add-form{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.dash-add-form input{background:#111;border:1px solid #222;border-radius:4px;color:#fff;font-size:.9rem;padding:.6rem .75rem;outline:none;transition:border-color .2s}.dash-add-form input:focus{border-color:#444}.dash-add-form input[type=date]{color-scheme:dark}.dash-btn-primary{grid-column:1 / -1;background:#fff;color:#000;border:none;border-radius:4px;font-size:.85rem;font-weight:700;padding:.65rem;cursor:pointer;transition:background .2s}.dash-btn-primary:hover:not(:disabled){background:#ddd}.dash-btn-primary:disabled{opacity:.5;cursor:not-allowed}.dash-table-wrap{overflow-x:auto}.dash-table{width:100%;border-collapse:collapse;font-size:.875rem}.dash-table th{text-align:left;color:#555;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;padding:.5rem .75rem;border-bottom:1px solid #1e1e1e}.dash-table td{padding:.75rem;border-bottom:1px solid #1a1a1a;vertical-align:middle;color:#ccc}.dash-table tr:last-child td{border-bottom:none}.dash-editing-row td{padding:.5rem}.dash-editing-row input{background:#1a1a1a;border:1px solid #333;border-radius:3px;color:#fff;font-size:.875rem;padding:.4rem .5rem;width:100%;outline:none}.dash-editing-row input[type=date]{color-scheme:dark}.dash-actions{display:flex;gap:.5rem;white-space:nowrap}.dash-btn-edit,.dash-btn-delete,.dash-btn-save,.dash-btn-cancel{border:none;border-radius:3px;font-size:.75rem;font-weight:600;padding:.3rem .65rem;cursor:pointer;transition:all .15s}.dash-btn-edit{background:#1e1e1e;color:#aaa}.dash-btn-edit:hover{background:#2a2a2a;color:#fff}.dash-btn-delete{background:transparent;color:#644;border:1px solid #332222}.dash-btn-delete:hover{background:#3a1a1a;color:#e05555;border-color:#522}.dash-btn-save{background:#fff;color:#000}.dash-btn-save:hover:not(:disabled){background:#ddd}.dash-btn-save:disabled{opacity:.5;cursor:not-allowed}.dash-btn-cancel{background:transparent;color:#666;border:1px solid #2a2a2a}.dash-btn-cancel:hover{color:#aaa}.dash-link{color:#888;text-decoration:underline;text-underline-offset:2px}.dash-link:hover{color:#fff}.dash-muted{color:#444;font-size:.875rem;margin:0}.dash-error{color:#e05555;font-size:.85rem;margin:0;grid-column:1 / -1}
