:root{--bg-color:#000;--card-bg:#0a0a0a;--border-color:#262626;--text-main:#f5f5f5;--text-muted:#8e8e8e;--max-feed-width:480px;--transition-fast:.2s cubic-bezier(.2,0,0,1)}
*{box-sizing:border-box;margin:0;padding:0}
body{background-color:var(--bg-color);color:var(--text-main);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;min-height:100vh;display:flex;flex-direction:column;align-items:center;padding-bottom:3rem;-webkit-font-smoothing:antialiased}
header{width:100%;max-width:var(--max-feed-width);position:sticky;top:0;z-index:10;background:rgba(0,0,0,.85);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);padding:.85rem 1rem;display:flex;align-items:center;justify-content:space-between}
.brand{font-weight:600;font-size:.95rem;letter-spacing:.05em;text-transform:uppercase;color:var(--text-main);text-decoration:none}
nav{display:flex;align-items:center;gap:1.25rem}
nav a{color:var(--text-muted);text-decoration:none;font-size:.85rem;font-weight:500;transition:color var(--transition-fast)}
nav a.active,nav a:hover{color:var(--text-main)}
.profile-summary{width:100%;max-width:var(--max-feed-width);padding:1.5rem 1rem 1rem;display:flex;flex-direction:column;gap:.35rem;border-bottom:1px solid var(--border-color)}
.profile-title{font-size:1.25rem;font-weight:600;letter-spacing:-.02em}
.profile-bio{color:var(--text-muted);font-size:.875rem;line-height:1.4;text-align:justify}
main.container{width:100%;max-width:var(--max-feed-width);margin-top:.25rem}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;width:100%}
.grid-item{position:relative;aspect-ratio:1/1;overflow:hidden;cursor:pointer;background-color:var(--card-bg)}
.grid-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--transition-fast),filter var(--transition-fast)}
.grid-item:hover img{transform:scale(1.05);filter:brightness(.9)}
.modal-overlay{position:fixed;inset:0;background-color:rgba(0,0,0,.9);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:100;padding:1rem}
.modal-overlay.active{opacity:1;pointer-events:auto}
.modal-card{background-color:#000;border:1px solid var(--border-color);border-radius:8px;width:100%;max-width:480px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(0,0,0,.8);transform:scale(.96);transition:transform var(--transition-fast)}
.modal-overlay.active .modal-card{transform:scale(1)}
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}
.modal-header-title{font-size:.85rem;font-weight:500;color:var(--text-muted);letter-spacing:.03em}
.modal-close-btn{background:none;border:none;color:var(--text-main);font-size:1.5rem;cursor:pointer;padding:0 .25rem;line-height:1}
.modal-image-container{width:100%;background-color:#050505;display:flex;align-items:center;justify-content:center;position:relative}
.modal-image-container img{width:100%;max-height:60vh;object-fit:contain;display:block}
.nav-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(20,20,20,.75);border:1px solid rgba(255,255,255,.1);color:var(--text-main);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.85;transition:opacity var(--transition-fast),background var(--transition-fast);user-select:none}
.nav-arrow:hover{opacity:1;background:rgba(35,35,35,.95)}
.nav-arrow.prev{left:.5rem}
.nav-arrow.next{right:.5rem}
.modal-footer{padding:.85rem 1rem;display:flex;flex-direction:column;gap:.25rem;border-top:1px solid var(--border-color)}
.work-title{font-size:.9rem;font-weight:600;color:var(--text-main)}
.work-description{font-size:.825rem;color:var(--text-muted);line-height:1.4}
.about-content{padding:1rem;color:var(--text-muted);line-height:1.6;font-size:.95rem;text-align:justify}
.about-content h2{color:var(--text-main);margin-bottom:1rem;font-weight:600;font-size:1.25rem}
.about-content p{margin-bottom:1rem}
.about-image{width:100%;border-radius:4px;margin-bottom:1.5rem;object-fit:cover}
.contact-container{padding:1rem;display:flex;flex-direction:column;gap:1.25rem}
.form-group{display:flex;flex-direction:column;gap:.35rem}
.form-group label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}
.form-group input,.form-group textarea{width:100%;padding:.75rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-main);font-size:.875rem;font-family:inherit;outline:none;transition:border-color var(--transition-fast)}
.form-group input:focus,.form-group textarea:focus{border-color:var(--text-muted)}
.form-group textarea{resize:vertical;min-height:100px}
.contact-btn{background:var(--text-main);color:#000;border:none;padding:.75rem;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:opacity var(--transition-fast)}
.contact-btn:hover{opacity:.9}
.contact-links{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}
.contact-link-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-main);text-decoration:none;font-size:.85rem;transition:border-color var(--transition-fast)}
.contact-link-item:hover{border-color:var(--text-muted)}
