:root{--bg-1: #0d0d0f;--bg-2: #111214;--bg-3: #18191c;--card: #1e1f22;--accent: #e67e22;--accent-glow: rgba(230, 126, 34, .12);--text: #dcddde;--muted: #72767d;--white: #ffffff;--green: #23a55a;--border: #2a2a2e;--nav-height: 56px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Outfit,-apple-system,sans-serif;background:var(--bg-1);color:var(--text);-webkit-font-smoothing:antialiased}input,textarea,button{font-family:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-2)}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.site-nav{position:fixed;inset:0 0 auto;z-index:100;height:var(--nav-height);padding:0 clamp(16px,4vw,40px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid transparent;transition:all .3s}.site-nav.is-scrolled,.site-nav--solid{background:#0d0d0fed;backdrop-filter:blur(16px);border-bottom-color:var(--border)}.logo{font-size:18px;font-weight:800;color:var(--accent);letter-spacing:-.5px}.nav-links{display:flex;gap:clamp(12px,2vw,24px)}.nav-links a{font-size:13px;font-weight:500;color:var(--muted);transition:color .2s}.nav-links a:hover{color:var(--accent)}.back-link{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px;font-weight:500;transition:color .2s}.back-link:hover{color:var(--accent)}.full-section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:60px 5vw;background:var(--bg-2);position:relative;scroll-margin-top:0}.full-section--dark{background:var(--bg-1)}.full-section--short{min-height:70vh}.section-title{text-align:center;margin-bottom:40px}.section-title h2{font-size:clamp(28px,4vw,42px);font-weight:700;color:var(--white);letter-spacing:-.5px}.section-title p{color:var(--muted);font-size:15px;margin-top:8px}.section-title:after{content:"";display:block;width:50px;height:3px;background:var(--accent);border-radius:2px;margin:16px auto 0}.section-chevron{display:block;width:fit-content;margin:0 auto;padding:24px 0 8px;animation:chevron-bounce 2s ease-in-out infinite}@keyframes chevron-bounce{0%,to{transform:translateY(0);opacity:.7}50%{transform:translateY(8px);opacity:1}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.section-chevron{animation:none}}.badge-row{display:flex;flex-wrap:wrap;gap:6px}.tech-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;letter-spacing:.3px;background:#e67e2214;color:var(--accent);border:1px solid rgba(230,126,34,.27)}.tech-badge--sm{padding:3px 10px;border-radius:12px;font-size:11px;letter-spacing:0;background:#e67e2217;border-color:#e67e2233}.tech-badge--xs{padding:2px 8px;border-radius:10px;font-size:10px;letter-spacing:0;border-color:#e67e2233}.tech-badge--lg{padding:6px 16px;font-size:13px;letter-spacing:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;border-radius:8px;font-size:14px;font-weight:600;transition:transform .2s,box-shadow .2s,border-color .2s,color .2s;cursor:pointer}.btn--primary{background:var(--accent);color:var(--white);border:none;box-shadow:0 4px 20px #e67e2245}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 28px #e67e2259}.btn--ghost{border:1px solid rgba(114,118,125,.27);color:var(--muted);font-weight:400}.btn--ghost:hover{border-color:var(--accent);color:var(--accent)}.btn--card{background:var(--card);border:1px solid var(--border);color:var(--white);border-radius:10px;padding:12px 24px}.btn--card:hover{border-color:#e67e2266}.social-row{display:flex;gap:12px}.social-btn{width:36px;height:36px;border-radius:8px;background:var(--border);color:var(--text);display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.social-btn:hover{background:#3a3a40;color:var(--accent)}.hero-glow{position:absolute;width:clamp(300px,40vw,500px);height:clamp(300px,40vw,500px);border-radius:50%;background:radial-gradient(circle,var(--accent-glow),transparent 70%);right:10%;top:15%;filter:blur(60px);pointer-events:none}.hero-content{display:flex;align-items:center;justify-content:center;gap:clamp(40px,6vw,80px);max-width:1100px;margin:0 auto;width:100%;position:relative;z-index:1}.hero-text{max-width:480px;flex:1}.hero-greeting{font-size:clamp(14px,2vw,18px);color:var(--muted);margin-bottom:4px}.hero-text h1{font-size:clamp(36px,5vw,64px);font-weight:800;line-height:1.05;margin-bottom:8px;color:var(--white)}.hero-text h1 span{color:var(--accent)}.hero-role{font-size:clamp(12px,1.5vw,16px);color:var(--accent);letter-spacing:3px;text-transform:uppercase;margin-bottom:20px;font-weight:500}.hero-text .badge-row{gap:8px;margin-bottom:24px}.hero-bio{font-size:clamp(13px,1.3vw,16px);color:var(--muted);line-height:1.7;margin-bottom:28px;max-width:400px}.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}.hero-text .social-row{margin-top:24px}.phone-mockup{width:clamp(200px,22vw,280px);flex-shrink:0}.phone-frame{width:100%;aspect-ratio:9 / 19.5;position:relative;background:#0a0a0c;border-radius:clamp(28px,4vw,44px);border:3px solid #333;overflow:hidden;box-shadow:0 20px 60px #0009,0 0 80px var(--accent-glow)}.phone-island{position:absolute;top:10px;left:50%;transform:translate(-50%);width:30%;height:22px;background:#000;border-radius:14px;z-index:10}.phone-screen{position:absolute;inset:3px;border-radius:clamp(24px,3.5vw,40px);background:var(--bg-2);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px 20px;gap:10px;text-align:center}.phone-screen:before{content:"";position:absolute;inset:0 0 auto;height:40%;background:linear-gradient(180deg,rgba(230,126,34,.09),transparent)}.phone-screen>*{position:relative;z-index:1}.avatar{position:relative}.avatar__img{width:72px;height:72px;border-radius:50%;background:#333 center / cover;border:3px solid var(--accent);display:flex;align-items:center;justify-content:center;font-size:30px;color:var(--muted)}.avatar__status{position:absolute;bottom:2px;right:2px;width:14px;height:14px;border-radius:50%;background:var(--green);border:3px solid var(--bg-2)}.phone-name{font-size:16px;font-weight:700;color:var(--white)}.phone-role{font-size:11px;color:var(--muted);margin-top:-6px}.phone-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;max-width:200px;margin-top:4px}.phone-badges span{font-size:9px;padding:2px 8px;border-radius:10px;border:1px solid rgba(230,126,34,.33);color:var(--accent)}.phone-bio{font-size:10px;color:var(--muted);line-height:1.5;max-width:190px;margin-top:4px}.phone-social{display:flex;gap:8px;margin-top:6px}.phone-social a{width:24px;height:24px;border-radius:6px;background:#333;color:var(--white);display:flex;align-items:center;justify-content:center}.accent-card{max-width:640px;margin:0 auto;width:100%;background:var(--card);border-radius:16px;padding:clamp(24px,4vw,40px);border-left:4px solid var(--accent);box-shadow:0 8px 32px #0000004d}.accent-card p{color:var(--text);font-size:clamp(14px,1.3vw,16px);line-height:1.8;text-wrap:pretty}.accent-card h2{font-size:20px;font-weight:700;color:var(--white);margin-bottom:16px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:clamp(16px,2vw,24px);max-width:1000px;margin:0 auto;width:100%}.project-card{background:var(--card);border-radius:14px;overflow:hidden;border:1px solid var(--border);display:flex;flex-direction:column;transition:transform .25s,border-color .25s,box-shadow .25s}.project-card:hover{transform:translateY(-4px);border-color:#e67e2245;box-shadow:0 12px 40px #e67e221f}.project-card__cover{height:clamp(120px,14vw,180px);background:linear-gradient(135deg,rgba(230,126,34,.13),var(--bg-1));background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;font-size:40px;position:relative}.live-pill,.status-pill{padding:3px 10px;border-radius:8px;background:var(--green);color:var(--white);font-size:10px;font-weight:600}.live-pill{position:absolute;top:10px;right:10px}.project-card__body{padding:clamp(14px,2vw,20px);flex:1;display:flex;flex-direction:column}.project-card__body h3{font-size:clamp(16px,1.5vw,20px);font-weight:700;color:var(--white);margin-bottom:6px}.project-card__body p{font-size:13px;color:var(--muted);line-height:1.5;margin-bottom:14px;flex:1}.project-card__body .badge-row{margin-bottom:10px}.project-card__date{font-size:12px;color:var(--muted)}.timeline{max-width:600px;margin:0 auto;width:100%;list-style:none}.timeline-item{display:flex;gap:clamp(16px,2vw,24px);margin-bottom:32px}.timeline-rail{display:flex;flex-direction:column;align-items:center}.timeline-dot{width:18px;height:18px;border-radius:50%;background:var(--accent);flex-shrink:0;border:4px solid var(--bg-2);box-shadow:0 0 0 2px #e67e2245}.timeline-line{width:2px;flex:1;background:#e67e2233;margin-top:8px}.timeline-item:last-child .timeline-line{display:none}.timeline-body{padding-bottom:8px}.timeline-body h3{font-size:18px;font-weight:700;color:var(--white);margin-bottom:2px}.timeline-meta{font-size:13px;color:var(--accent);font-weight:500;margin-bottom:6px}.timeline-body p{font-size:14px;color:var(--muted);line-height:1.6}.contact-card{max-width:480px;margin:0 auto;width:100%;background:var(--card);border-radius:16px;padding:clamp(24px,4vw,36px);box-shadow:0 8px 32px #0000004d}.field{margin-bottom:16px}.field:last-of-type{margin-bottom:20px}.field label{font-size:12px;color:var(--muted);display:block;margin-bottom:6px;font-weight:500}.field input,.field textarea{width:100%;padding:12px 16px;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:14px;outline:none;transition:border-color .2s}.field textarea{resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--accent)}.contact-card .btn{width:100%;padding:14px 28px;font-size:15px}.contact-direct{display:flex;justify-content:center;gap:20px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.contact-direct a{font-size:13px;color:var(--accent)}.site-footer{text-align:center;margin-top:40px;font-size:12px;color:var(--muted)}.detail-page{min-height:100vh}.detail-cover{height:clamp(250px,40vh,400px);margin-top:var(--nav-height);background:linear-gradient(135deg,rgba(230,126,34,.13),var(--bg-1));background-size:cover;background-position:center;display:flex;align-items:flex-end;position:relative}.detail-cover__fade{position:absolute;inset:0;background:linear-gradient(transparent 40%,var(--bg-1))}.detail-cover__content{position:relative;z-index:1;padding:0 clamp(20px,5vw,80px) 32px;width:100%}.detail-cover__meta{display:flex;align-items:center;gap:12px;margin-bottom:8px;color:var(--muted);font-size:13px}.detail-cover .status-pill{padding:4px 12px;border-radius:20px;font-size:11px}.detail-cover h1{font-size:clamp(32px,5vw,56px);font-weight:800;color:var(--white);line-height:1.1}.detail-content{padding:40px clamp(20px,5vw,80px);max-width:900px;margin:0 auto}.detail-badges{gap:8px;margin-bottom:32px}.detail-content .accent-card{max-width:none;margin-bottom:32px}.detail-content .accent-card p{font-size:15px}.detail-links{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px}.detail-links .btn--primary{border-radius:10px;padding:12px 24px}.detail-block,.gallery-empty{margin-bottom:40px}.detail-block h2,.detail-related h2{font-size:20px;font-weight:700;color:var(--white);margin-bottom:16px}.gallery-grid,.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.gallery-item{height:160px;border-radius:10px;overflow:hidden;cursor:zoom-in;border:1px solid var(--border);background:none;padding:0;transition:transform .2s}.gallery-item:hover{transform:scale(1.02)}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block}.gallery-empty{background:var(--card);border-radius:16px;padding:40px;text-align:center;border:2px dashed var(--border)}.gallery-empty div{font-size:40px;margin-bottom:12px}.gallery-empty p{color:var(--muted);font-size:14px}.detail-related{border-top:1px solid var(--border);padding-top:40px}.detail-related h2{margin-bottom:20px}.related-grid{gap:16px}.related-card{background:var(--card);border-radius:12px;padding:16px;border:1px solid var(--border);transition:border-color .2s}.related-card:hover{border-color:#e67e2266}.related-card h3{font-size:15px;font-weight:700;color:var(--white);margin-bottom:4px}.related-card p{font-size:12px;color:var(--muted);line-height:1.4}.related-card .badge-row{gap:4px;margin-top:10px}.lightbox{position:fixed;inset:0;z-index:200;background:#000000e6;display:flex;align-items:center;justify-content:center;cursor:zoom-out}.lightbox[hidden]{display:none}.lightbox img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:8px}.lightbox button{position:absolute;top:20px;right:20px;background:none;border:none;color:var(--white);font-size:28px;cursor:pointer}.not-found{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;text-align:center}.not-found div{font-size:48px}.not-found h2{color:var(--white);font-size:24px}.not-found a{color:var(--accent);font-size:14px}.detail-loading{min-height:100vh}@media(max-width:768px){.hero-content{flex-direction:column-reverse;text-align:center}.hero-text{display:flex;flex-direction:column;align-items:center}.hero-text h1 br{display:none}.hero-text .badge-row,.hero-ctas,.hero-text .social-row{justify-content:center}.phone-mockup{width:clamp(180px,50vw,240px)}.nav-links{display:none}.full-section{padding-top:calc(var(--nav-height) + 24px)}}
