.navbar{position:fixed;top:0;width:100%;background:transparent;border-bottom:1px solid transparent;z-index:100;padding:1.4rem 0;transition:background .3s,border-color .3s,padding .3s}.navbar.scrolled{background:rgba(10,10,10,.95);border-bottom-color:var(--border);padding:1rem 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-theme=light] .navbar.scrolled{background:rgba(255,255,255,.95)}.navbar-inner{display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none}.logo-img{height:32px;width:auto;object-fit:contain}.logo:hover{opacity:.8}.nav-right{display:flex;align-items:center;gap:2rem}.nav-links{list-style:none;display:flex;gap:2rem}.nav-links a{color:var(--text-muted);font-size:.72rem;letter-spacing:2px;text-transform:uppercase;transition:color .2s;position:relative;padding-bottom:4px}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--accent);transition:width .3s}.nav-links a:hover,.nav-links a.active{color:var(--text);text-decoration:none}.nav-links a.active:after,.nav-links a:hover:after{width:100%}.theme-toggle{background:none;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;padding:.45rem;display:flex;align-items:center;justify-content:center;transition:color .2s,border-color .2s;flex-shrink:0}.theme-toggle:hover{color:var(--text);border-color:var(--accent)}.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.nav-hamburger span{display:block;width:22px;height:1px;background:var(--text-muted);transition:all .3s}.nav-mobile{display:none;position:fixed;top:0;left:0;width:100%;height:100vh;background:var(--bg);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem}.nav-mobile.open{display:flex}.nav-mobile a{color:var(--text);font-size:1.5rem;font-family:Playfair Display,serif;letter-spacing:2px}.nav-mobile-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer}@media (max-width: 768px){.nav-links{display:none}.nav-hamburger{display:flex}}.sidebar{position:fixed;left:0;bottom:0;width:60px;display:flex;align-items:flex-end;justify-content:center;z-index:200;padding-bottom:0}.sidebar-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.sidebar-links{display:flex;flex-direction:column;align-items:center;gap:1.4rem}.sidebar-links a{color:var(--accent-light);transition:color .2s,transform .2s;display:flex;align-items:center}.sidebar-links a:hover{color:var(--accent);transform:translateY(-3px)}.sidebar-line{width:1px;height:90px;background:var(--accent-light);margin-top:.8rem}.sidebar-visitor{margin-top:.8rem;writing-mode:vertical-rl;transform:rotate(180deg)}@media (max-width: 768px){.sidebar{display:none}}.hero{min-height:100vh;display:flex;align-items:center;padding-top:80px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 70% 50%,rgba(138,129,124,.06) 0%,transparent 60%);pointer-events:none}.hero-container{display:grid;grid-template-columns:1fr auto;gap:5rem;align-items:center;width:100%}.hero-greeting{display:flex;align-items:center;gap:.6rem;color:var(--accent);font-size:.75rem;letter-spacing:3px;text-transform:uppercase;margin-bottom:1.8rem;font-family:Inter,sans-serif}.hero-dot{width:8px;height:8px;border-radius:50%;background:#4caf50;display:inline-block;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.hero-name{font-family:Playfair Display,serif;font-size:6rem;font-weight:800;color:var(--text);line-height:1.05;margin-bottom:1rem}.hero-name em{font-style:italic;color:var(--accent-light)}.hero-title{font-family:Inter,sans-serif;font-size:.85rem;color:var(--text-muted);font-weight:600;letter-spacing:4px;text-transform:uppercase;margin-bottom:2rem}.hero-divider{width:40px;height:1px;background:var(--accent);margin-bottom:2rem}.hero-desc{max-width:500px;color:var(--text-muted);margin-bottom:3rem;font-size:1rem;line-height:1.9}.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.btn-ghost{border-color:transparent;color:var(--text-muted);font-size:.75rem}.btn-ghost:hover{background:transparent;color:var(--text);border-color:var(--border)}.hero-photo{position:relative;flex-shrink:0}.photo-frame{width:300px;height:300px;border:2px solid var(--accent);border-radius:50%;overflow:hidden;position:relative;z-index:1}.photo-placeholder{width:100%;height:100%;background:var(--bg-card);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--text-muted);border-radius:50%}.photo-placeholder i{font-size:3rem;opacity:.3}.photo-placeholder span{font-size:.75rem;letter-spacing:2px;text-transform:uppercase;opacity:.4}.photo-accent{position:absolute;top:12px;left:12px;width:100%;height:100%;border:1px solid var(--accent);border-radius:50%;z-index:0;opacity:.4}@media (max-width: 900px){.hero-container{grid-template-columns:1fr;gap:2rem}.hero-photo{display:flex;justify-content:center;order:-1}.photo-frame{width:180px;height:180px}.hero-name{font-size:3.5rem}}@media (max-width: 480px){.hero-name{font-size:2.6rem}.hero-desc{font-size:.9rem}}.photo-img{width:100%;height:100%;object-fit:cover;display:block}.projects{background:var(--bg)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1px;border:1px solid var(--border)}.project-card{background:var(--bg);padding:2.5rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border);transition:background .3s;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:0;width:2px;height:0;background:var(--accent);transition:height .4s}.project-card:hover{background:var(--bg-alt)}.project-card:hover:before{height:100%}.project-number{font-family:Playfair Display,serif;font-size:2.5rem;color:var(--border);line-height:1;margin-bottom:1rem;font-style:italic}.project-card h3{font-family:Playfair Display,serif;color:var(--text);margin-bottom:.75rem;font-size:1.25rem;font-weight:700}.project-card>p{color:var(--text-muted);font-size:.88rem;margin-bottom:1.5rem;line-height:1.8}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tag{color:var(--accent-light);font-size:.7rem;letter-spacing:1px;text-transform:uppercase;border:1px solid var(--border);padding:.2rem .6rem}.project-links{display:flex;gap:1.5rem}.project-links a{color:var(--text-muted);font-size:.75rem;letter-spacing:1.5px;text-transform:uppercase;transition:color .2s;display:flex;align-items:center;gap:.4rem}.project-links a:hover{color:var(--text)}.loading,.no-projects{color:var(--text-muted);font-size:.9rem;letter-spacing:1px}@media (max-width: 480px){.projects-grid{grid-template-columns:1fr}.project-card{padding:1.5rem}}.services{background:var(--bg)}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1px;border:1px solid var(--border)}.service-card{background:var(--bg);padding:2.5rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border);position:relative;overflow:hidden;transition:background .3s}.service-card:before{content:"";position:absolute;top:0;left:0;width:2px;height:0;background:var(--accent);transition:height .4s}.service-card:hover{background:var(--bg-alt)}.service-card:hover:before{height:100%}.service-card:hover .service-icon{color:var(--text);border-color:var(--accent)}.service-icon{width:48px;height:48px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:1.1rem;margin-bottom:1.5rem;transition:color .3s,border-color .3s}.service-card h3{font-family:Playfair Display,serif;font-size:1.15rem;font-weight:700;color:var(--text);margin-bottom:.8rem}.service-card p{color:var(--text-muted);font-size:.88rem;line-height:1.8}.service-number{font-family:Playfair Display,serif;font-size:2.5rem;color:var(--border);font-style:italic;line-height:1;margin-top:1.5rem;pointer-events:none}@media (max-width: 480px){.services-grid{grid-template-columns:1fr}.service-card{padding:1.5rem}}.contact{background:var(--bg-alt);border-top:1px solid var(--border)}.contact-desc{color:var(--text-muted);margin-bottom:3rem;font-size:.95rem;max-width:500px;line-height:1.9}.contact-form{display:flex;flex-direction:column;gap:0;max-width:580px}.contact-form input,.contact-form textarea{background:transparent;border:none;border-bottom:1px solid var(--border);padding:1rem 0;color:var(--text);font-size:.95rem;outline:none;font-family:Inter,sans-serif;font-weight:300;transition:border-color .2s;margin-bottom:1.5rem}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-muted);font-size:.85rem;letter-spacing:1px}.contact-form input:focus,.contact-form textarea:focus{border-bottom-color:var(--accent)}.contact-form textarea{resize:none}.contact-form .btn{align-self:flex-start;margin-top:1rem}.msg{font-size:.85rem;margin-top:1rem;letter-spacing:1px}.msg.success{color:var(--accent-light)}.msg.error{color:#c0614a}.footer{text-align:center;padding:3rem 2rem;border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:center;gap:1.2rem}.footer-links{display:flex;gap:1.5rem}.footer-links a{color:var(--text-muted);font-size:1rem;transition:color .2s,transform .2s;display:flex}.footer-links a:hover{color:var(--accent-light);transform:translateY(-2px)}.footer-copy{color:var(--text-muted);font-size:.78rem;letter-spacing:1px}.footer-copy span{color:var(--accent-light)}.login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.7);z-index:1000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.login-modal{background:var(--bg-alt);border:1px solid var(--border);padding:3rem;width:100%;max-width:400px;position:relative}.login-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;transition:color .2s}.login-close:hover{color:var(--text)}.login-label{color:var(--accent);font-size:.72rem;letter-spacing:3px;text-transform:uppercase;margin-bottom:.5rem}.login-title{font-family:Playfair Display,serif;font-size:1.8rem;font-weight:700;margin-bottom:2rem}.login-form{display:flex;flex-direction:column;gap:0}.login-form input{background:transparent;border:none;border-bottom:1px solid var(--border);padding:.9rem 0;color:var(--text);font-size:.95rem;outline:none;font-family:Inter,sans-serif;margin-bottom:1.5rem;transition:border-color .2s}.login-form input:focus{border-bottom-color:var(--accent)}.login-form input::placeholder{color:var(--text-muted);font-size:.85rem}.login-form .btn{margin-top:.5rem;width:100%;text-align:center}.login-error{color:#c0614a;font-size:.82rem;margin-bottom:.5rem;letter-spacing:.5px}.admin-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.admin-gate-box{text-align:center;padding:3rem;border:1px solid var(--border);background:var(--bg-alt);max-width:400px;width:100%}.admin-gate-label{color:var(--accent);font-size:.72rem;letter-spacing:3px;text-transform:uppercase;margin-bottom:1rem}.admin-gate-box h1{font-family:Playfair Display,serif;font-size:2rem;font-weight:400;margin-bottom:.8rem}.admin-gate-box p{color:var(--text-muted);font-size:.9rem;margin-bottom:2rem}.admin-page{display:flex;min-height:100vh;background:var(--bg)}.admin-sidebar{width:220px;background:var(--bg-alt);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:2rem 0;position:fixed;top:0;left:0;height:100vh}.admin-logo{font-family:Playfair Display,serif;font-size:1.3rem;color:var(--text);padding:0 1.5rem 2rem;border-bottom:1px solid var(--border);margin-bottom:1.5rem;letter-spacing:1px}.admin-nav{display:flex;flex-direction:column;gap:.3rem;padding:0 .8rem;flex:1}.admin-nav-item{display:flex;align-items:center;gap:.8rem;padding:.75rem 1rem;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.85rem;font-family:Inter,sans-serif;letter-spacing:.5px;text-align:left;transition:color .2s,background .2s;border-radius:2px;text-transform:capitalize}.admin-nav-item i{width:16px;font-size:.8rem}.admin-nav-item:hover{color:var(--text);background:var(--bg-card)}.admin-nav-item.active{color:var(--text);border-left-color:var(--accent)}.sidebar-stats{padding:1rem 0;border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:center;gap:.6rem}.sidebar-stats-title{color:var(--accent-light);font-size:.6rem;letter-spacing:2px;text-transform:uppercase}.sidebar-stats-grid{display:flex;flex-direction:column;align-items:center;gap:.6rem}.sidebar-stat{display:flex;align-items:center;gap:.4rem}.sidebar-stat span{color:var(--text);font-family:Playfair Display,serif;font-size:1rem;font-weight:700}.sidebar-stat label{color:var(--text-muted);font-size:.55rem;letter-spacing:1px;text-transform:uppercase}.admin-sidebar-footer{padding:1.5rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.8rem}.admin-view-site{color:var(--text-muted);font-size:.78rem;letter-spacing:1px;display:flex;align-items:center;gap:.5rem;transition:color .2s}.admin-view-site:hover{color:var(--accent-light)}.admin-logout{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.78rem;font-family:Inter,sans-serif;letter-spacing:1px;display:flex;align-items:center;gap:.5rem;transition:color .2s;padding:0}.admin-logout:hover{color:#c0614a}.admin-main{margin-left:220px;flex:1;padding:2.5rem;min-height:100vh}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.admin-title{font-family:Playfair Display,serif;font-size:1.8rem;font-weight:400;text-transform:capitalize}.admin-user{color:var(--text-muted);font-size:.85rem}.admin-content{display:flex;flex-direction:column;gap:1.5rem}.admin-card{background:var(--bg-alt);border:1px solid var(--border);padding:2rem}.admin-card h3{font-family:Playfair Display,serif;font-size:1.1rem;font-weight:400;margin-bottom:1.5rem;color:var(--text)}.admin-form{display:flex;flex-direction:column;gap:1rem}.admin-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-field{display:flex;flex-direction:column;gap:.4rem}.admin-field label{color:var(--text-muted);font-size:.75rem;letter-spacing:1px;text-transform:uppercase}.admin-form input,.admin-form textarea{background:var(--bg);border:1px solid var(--border);padding:.7rem 1rem;color:var(--text);font-size:.9rem;outline:none;font-family:Inter,sans-serif;transition:border-color .2s;width:100%}.admin-form input:focus,.admin-form textarea:focus{border-color:var(--accent)}.admin-form textarea{resize:vertical}.admin-form-actions{display:flex;align-items:center;gap:1rem;margin-top:.5rem}.admin-msg{color:var(--accent-light);font-size:.82rem;letter-spacing:1px}.admin-projects-list{display:flex;flex-direction:column;gap:0}.admin-project-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border)}.admin-project-item:last-child{border-bottom:none}.admin-project-title{color:var(--text);font-size:.95rem;margin-bottom:.2rem}.admin-project-tech{color:var(--text-muted);font-size:.78rem;letter-spacing:.5px}.admin-delete-btn{background:none;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;padding:.4rem .6rem;transition:color .2s,border-color .2s}.admin-delete-btn:hover{color:#c0614a;border-color:#c0614a}.admin-item-actions{display:flex;align-items:center;gap:.5rem}.admin-order-input{width:60px;padding:.35rem .5rem;background:var(--bg);border:1px solid var(--border);color:var(--text);font-size:.85rem;text-align:center}.admin-order-input:focus{border-color:var(--accent);outline:none}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem;margin-top:1rem}.admin-stat-card{background:var(--bg);border:1px solid var(--border);padding:1rem;text-align:center;display:flex;flex-direction:column;gap:.3rem}.admin-stat-number{font-family:Playfair Display,serif;font-size:1.8rem;color:var(--text);font-weight:700}.admin-stat-label{color:var(--text-muted);font-size:.7rem;letter-spacing:1.5px;text-transform:uppercase}.admin-messages-list{display:flex;flex-direction:column;gap:0}.admin-message-item{padding:1.2rem 0;border-bottom:1px solid var(--border)}.admin-message-item:last-child{border-bottom:none}.admin-message-header{display:flex;gap:1rem;align-items:center;margin-bottom:.5rem;flex-wrap:wrap}.admin-message-name{color:var(--text);font-size:.9rem;font-weight:700}.admin-message-email{color:var(--accent-light);font-size:.82rem}.admin-message-date{color:var(--text-muted);font-size:.75rem;margin-left:auto}.admin-message-body{color:var(--text-muted);font-size:.88rem;line-height:1.7}.admin-empty{color:var(--text-muted);font-size:.85rem;padding:1rem 0}@media (max-width: 768px){.admin-sidebar{width:56px!important;min-width:56px;overflow:hidden}.admin-main{margin-left:56px!important;padding:1.2rem 1rem;width:calc(100% - 56px)}.admin-form-row{grid-template-columns:1fr}.admin-header{flex-direction:column;align-items:flex-start;gap:.5rem}.admin-card{padding:1.2rem 1rem}.admin-logo{display:none}.admin-nav-item{justify-content:center;padding:.8rem 0;width:100%}.admin-nav-item i{width:auto;font-size:1.1rem;margin:0}.admin-nav-item .nav-label{display:none}.admin-sidebar-footer{padding:.8rem 0;align-items:center}.admin-view-site .link-label,.admin-logout .link-label{display:none}.admin-view-site,.admin-logout{justify-content:center;padding:0}}@media (max-width: 480px){.admin-main{padding:1rem .8rem}}.admin-avatar-preview{width:110px;height:110px;border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center;margin:.5rem 0;background:var(--bg-card)}.admin-avatar-preview img{width:100%;height:100%;object-fit:cover}.admin-avatar-placeholder{font-size:2.5rem;color:var(--text-muted);opacity:.4}.page-header{padding-top:120px;padding-bottom:40px;background:var(--bg);border-bottom:1px solid var(--border)}.page-title{font-family:Playfair Display,serif;font-size:clamp(2.4rem,5vw,3.2rem);font-weight:700;margin-bottom:.5rem}.page-body{padding:60px 0 100px;background:var(--bg);min-height:50vh}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent);font-size:.78rem;letter-spacing:2px;text-transform:uppercase;margin-bottom:2rem;transition:all .3s cubic-bezier(.22,1,.36,1)}.back-link:hover{color:var(--text);transform:translate(-4px)}.back-link i{transition:transform .3s}.back-link:hover i{transform:translate(-4px)}.service-detail{color:var(--text-muted);font-size:.82rem;line-height:1.8;margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--border);opacity:.7}@media (max-width: 768px){.page-header{padding-top:100px}.page-body{padding:40px 0 60px}}.about{background:var(--bg-alt);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.about-content{display:grid;grid-template-columns:1.4fr 1fr;gap:6rem;align-items:start}.about-text p{color:var(--text-muted);margin-bottom:1.2rem;font-size:.95rem;line-height:1.9}.about-meta{display:flex;flex-direction:column;gap:.6rem;margin:1.5rem 0 2rem}.meta-item{display:flex;align-items:center;gap:.8rem;color:var(--text-muted);font-size:.85rem}.meta-item i{color:var(--accent);width:14px;font-size:.8rem}.skills-label{color:var(--accent-light);font-size:.72rem;letter-spacing:3px;text-transform:uppercase;margin-bottom:1rem}.skills-list{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.skills-list li{color:var(--text-muted);font-size:.88rem;padding-left:1.2rem;position:relative}.skills-list li:before{content:"▸";color:var(--accent);position:absolute;left:0;font-size:.7rem;top:2px}.about-stats{display:flex;flex-direction:column;gap:2.5rem;padding-top:.5rem}.stat-item{border-left:1px solid var(--accent);padding-left:1.5rem}.stat-number{font-family:Playfair Display,serif;font-size:2.8rem;color:var(--text);line-height:1;margin-bottom:.3rem;font-weight:700}.stat-label{color:var(--text-muted);font-size:.72rem;letter-spacing:2px;text-transform:uppercase}@media (max-width: 768px){.about-content{grid-template-columns:1fr;gap:3rem}}.page-body .about-content{padding-top:0}.page-body .about-stats{border-left:1px solid var(--border)}.experience{background:var(--bg)}.timeline{display:flex;flex-direction:column;gap:0}.timeline-item{display:grid;grid-template-columns:40px 1fr;gap:2rem}.timeline-marker{display:flex;flex-direction:column;align-items:center;padding-top:6px}.timeline-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);outline:1px solid var(--accent);flex-shrink:0}.timeline-line{width:1px;flex:1;background:var(--border);margin-top:8px;min-height:60px}.timeline-content{padding-bottom:3.5rem}.exp-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.2rem;flex-wrap:wrap}.exp-title{font-family:Playfair Display,serif;font-size:1.3rem;font-weight:700;color:var(--text);margin-bottom:.3rem}.exp-company{color:var(--accent-light);font-size:.85rem;letter-spacing:1px}.exp-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem}.exp-duration{color:var(--text-muted);font-size:.78rem;letter-spacing:1px;white-space:nowrap}.exp-type{font-size:.7rem;letter-spacing:2px;text-transform:uppercase;color:var(--accent);border:1px solid var(--border);padding:.15rem .6rem}.exp-achievements{list-style:none;display:flex;flex-direction:column;gap:.6rem}.exp-achievements li{color:var(--text-muted);font-size:.9rem;line-height:1.7;padding-left:1.2rem;position:relative}.exp-achievements li:before{content:"▸";color:var(--accent);position:absolute;left:0;font-size:.7rem;top:3px}@media (max-width: 600px){.exp-header{flex-direction:column}.exp-meta{align-items:flex-start}}*{margin:0;padding:0;box-sizing:border-box}:root,[data-theme=dark]{--bg: #3b0020;--bg-alt: #4a0028;--bg-card: #550030;--accent: #c9a84c;--accent-light: #e0c878;--accent-vivid: #d4b85a;--text: #f5f1ee;--text-muted: #c8b0b0;--border: #6b1040;--border-light: #7b1850}[data-theme=light]{--bg: #c9a84c;--bg-alt: #b89a42;--bg-card: #d4b85a;--accent: #800020;--accent-light: #a00028;--accent-vivid: #900024;--text: #1a1010;--text-muted: #4a3a20;--border: #a88830;--border-light: #987828}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:Inter,sans-serif;background-color:var(--bg);background-image:radial-gradient(ellipse at 20% 0%,rgba(128,0,32,.12) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(201,168,76,.1) 0%,transparent 50%);background-attachment:fixed;color:var(--text);line-height:1.7;font-weight:400;transition:background-color .3s,color .3s;overflow-x:hidden}a{color:var(--accent-light);text-decoration:none;transition:color .2s}a:hover{color:var(--text)}.container{max-width:1100px;margin:0 auto;padding:0 2rem}.main-content{padding-left:60px}section{padding:100px 0}h1,h2,h3{font-family:Playfair Display,serif;color:var(--text);font-weight:700}.section-title{font-family:Playfair Display,serif;font-size:clamp(2rem,4vw,2.6rem);color:var(--text);margin-bottom:.5rem;font-weight:700}.section-subtitle{color:var(--accent);font-size:.72rem;letter-spacing:4px;text-transform:uppercase;margin-bottom:.8rem}.section-line{width:40px;height:1px;background:var(--accent);margin-bottom:3rem;transition:width .6s cubic-bezier(.22,1,.36,1)}[data-reveal].revealed .section-line{width:80px}.btn{display:inline-block;padding:.85rem 2rem;border:1px solid var(--accent);color:var(--text);cursor:pointer;background:transparent;font-size:.78rem;letter-spacing:2px;text-transform:uppercase;font-family:Inter,sans-serif;transition:all .4s cubic-bezier(.22,1,.36,1);white-space:nowrap;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:var(--accent);border-radius:50%;transform:translate(-50%,-50%);transition:width .5s,height .5s;z-index:-1}.btn:hover:before{width:300px;height:300px}.btn:hover{color:var(--bg);border-color:var(--accent);text-decoration:none;transform:translateY(-2px);box-shadow:0 4px 20px #8a817c33}.btn:active{transform:translateY(0)}.btn-primary{background:var(--accent);color:var(--bg)}.btn-primary:hover{background:var(--accent-light);border-color:var(--accent-light)}.section-cta{margin-top:3rem;text-align:center}.section-cta .btn{display:inline-flex;align-items:center;gap:.6rem}.section-cta .btn i{transition:transform .3s cubic-bezier(.22,1,.36,1)}.section-cta .btn:hover i{transform:translate(4px)}.hero-anim{opacity:0;transform:translateY(30px);animation:heroSlideIn .8s cubic-bezier(.22,1,.36,1) forwards}.hero-anim-1{animation-delay:.2s}.hero-anim-2{animation-delay:.4s}.hero-anim-3{animation-delay:.6s}.hero-anim-4{animation-delay:.8s}.hero-anim-5{animation-delay:1s}@keyframes heroSlideIn{to{opacity:1;transform:translateY(0)}}.hero-divider{width:0;animation:dividerGrow .8s 1s cubic-bezier(.22,1,.36,1) forwards}@keyframes dividerGrow{to{width:40px}}.hero-photo{animation:heroSlideIn .8s .3s cubic-bezier(.22,1,.36,1) forwards;opacity:0}.photo-frame{animation:photoFloat 6s ease-in-out infinite}.photo-accent{animation:accentSpin 20s linear infinite}@keyframes photoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes accentSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-reveal]{opacity:0;transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1)}[data-reveal=fade-up]{transform:translateY(40px)}[data-reveal=fade-left]{transform:translate(40px)}[data-reveal=fade-right]{transform:translate(-40px)}[data-reveal=scale-in]{transform:scale(.95)}[data-reveal].revealed{opacity:1;transform:translateY(0) translate(0) scale(1)}.revealed .timeline-item,.revealed .project-card,.revealed .service-card{opacity:0;animation:staggerFadeUp .6s cubic-bezier(.22,1,.36,1) forwards}@keyframes staggerFadeUp{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}.revealed .skill-item{opacity:0;animation:skillSlideIn .4s cubic-bezier(.22,1,.36,1) forwards}@keyframes skillSlideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.revealed .stat-item{opacity:0;animation:statFadeIn .5s cubic-bezier(.22,1,.36,1) forwards}.revealed .stat-item:nth-child(1){animation-delay:.1s}.revealed .stat-item:nth-child(2){animation-delay:.2s}.revealed .stat-item:nth-child(3){animation-delay:.3s}.revealed .stat-item:nth-child(4){animation-delay:.4s}@keyframes statFadeIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.revealed .meta-item{opacity:0;animation:metaSlideIn .4s cubic-bezier(.22,1,.36,1) forwards}.revealed .meta-item:nth-child(1){animation-delay:.1s}.revealed .meta-item:nth-child(2){animation-delay:.2s}.revealed .meta-item:nth-child(3){animation-delay:.3s}@keyframes metaSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.revealed .timeline-dot{animation:dotPulse .4s cubic-bezier(.22,1,.36,1) forwards,dotGlow 3s .5s ease-in-out infinite}@keyframes dotPulse{0%{transform:scale(0)}70%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes dotGlow{0%,to{box-shadow:0 0 #8a817c00}50%{box-shadow:0 0 0 6px #8a817c26}}.service-card{transition:background .3s,transform .4s cubic-bezier(.22,1,.36,1)}.service-card:hover{transform:translateY(-4px);z-index:2}.service-card:hover .service-icon{transform:scale(1.1) rotate(5deg)}.service-icon{transition:all .4s cubic-bezier(.22,1,.36,1)}.service-card:hover .service-number{opacity:.3;transform:scale(1.1)}.service-number{transition:all .4s;opacity:.15}.project-card{transition:background .3s,transform .4s cubic-bezier(.22,1,.36,1)}.project-card:hover{transform:translateY(-3px);z-index:2}.project-card:hover .project-number{color:var(--accent);transform:translate(4px)}.project-number{transition:all .4s cubic-bezier(.22,1,.36,1)}.tag{transition:all .3s cubic-bezier(.22,1,.36,1)}.tag:hover{background:var(--accent);color:var(--bg);border-color:var(--accent);transform:translateY(-1px)}.project-links a{transition:all .3s cubic-bezier(.22,1,.36,1)}.project-links a:hover{transform:translate(4px)}.contact-form input,.contact-form textarea{transition:border-color .3s,transform .3s}.contact-form input:focus,.contact-form textarea:focus{transform:translate(4px)}.nav-links a{transition:color .2s}.footer-links a{transition:all .3s cubic-bezier(.22,1,.36,1)}.footer-links a:hover{transform:translateY(-3px) scale(1.15)}.logo{transition:all .3s cubic-bezier(.22,1,.36,1)}.logo:hover{letter-spacing:4px}.section-subtitle{transition:color .3s}.skeleton{background:linear-gradient(90deg,var(--bg-alt) 25%,var(--border) 50%,var(--bg-alt) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:2px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pageLoad{0%{opacity:0}to{opacity:1}}#root{animation:pageLoad .4s ease-out}@media (max-width: 1024px){.container{padding:0 1.5rem}}@media (max-width: 768px){.main-content{padding-left:0}.container{padding:0 1.2rem}section{padding:70px 0}.hero-anim{animation-duration:.6s}}@media (max-width: 480px){.container{padding:0 1rem}section{padding:60px 0}.btn{padding:.75rem 1.5rem}}
