:root{--bg: #0f1a20;--bg-deeper: #0b1419;--gold: #c8a84d;--gold-hover: #e3c66b;--text: #f5f7fa;--muted: #c9d1d9;--footer-bg: #efefef;--footer-text: #1f2933;--divider: #5aa9e6;--container: 1080px;--about-bg: #e3e7ea;--about-heading: #1f2933;--about-body: #000000}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(var(--container),calc(100% - 48px));margin:0 auto}.site-header{width:100%;background:#f6f6f6;padding:1rem 0}.header-inner{width:100%;max-width:none;padding:0 24px;display:flex;align-items:center;justify-content:flex-start}.logo{height:68px;width:auto}.hero{min-height:730px;background-size:cover;background-position:center center;background-repeat:no-repeat;border-bottom:3px solid var(--divider)}.hero-overlay{min-height:730px;background:linear-gradient(to bottom,#00000038,#00000057)}.hero-content{min-height:730px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:4rem 1rem}.hero h1{margin:0;font-size:clamp(3rem,6vw,4.8rem);letter-spacing:.08em;text-shadow:0 2px 10px rgba(0,0,0,.55)}.hero-tagline{margin:1rem 0 3.5rem;font-size:clamp(1.4rem,2.5vw,2.2rem);font-weight:600;text-shadow:0 2px 8px rgba(0,0,0,.45)}.hero-sub{display:grid;gap:.8rem;color:#f0c94a;font-size:clamp(.95rem,1.5vw,1.35rem);font-weight:700;letter-spacing:.03em;text-transform:none;text-shadow:0 2px 6px rgba(0,0,0,.55)}.about{padding:2.75rem 0 4.5rem;background:var(--about-bg);border-bottom:3px solid var(--divider)}.about h2,.projects h2{text-align:center;margin:0 0 1rem;font-size:clamp(2rem,3vw,2.8rem);letter-spacing:.12em}.about h2{color:var(--about-heading)}.about-content{max-width:var(--container);width:100%;margin:0 auto;padding:0 2rem;display:grid;gap:.8rem;line-height:1.45;color:var(--about-body);font-size:clamp(.98rem,1.2vw,1.1rem)}.about-body{display:grid;grid-template-columns:minmax(0,138px) minmax(0,1fr);gap:1.4rem;align-items:start}.about-photo{width:138px;height:138px;margin-top:.2rem;border-radius:50%;overflow:hidden;border:1px solid rgba(0,0,0,.08);box-shadow:0 6px 14px #0000001a}.about-photo img{width:100%;height:100%;object-fit:cover}.about-text{display:grid;gap:.8rem}.about-content p,.subtitle{margin:0 0 .8rem;font-size:clamp(.98rem,1.2vw,1.1rem);line-height:1.45}.subtitle{margin-bottom:2rem}.hero h1,.hero-tagline{font-family:"Droid Serif",serif}.projects{padding:2.75rem 0 4.5rem;background:linear-gradient(90deg,var(--bg) 0%,#112028 50%,var(--bg) 100%);border-bottom:3px solid var(--divider)}.projects h2{text-align:center;margin:0;font-size:clamp(2rem,3vw,2.8rem);letter-spacing:.12em}.subtitle{text-align:center;color:#ffffffd9;margin:1rem 0 3rem;font-size:clamp(.98rem,1.2vw,1.1rem);line-height:1.45}.projects .subtitle a,.projects .subtitle a:visited{color:var(--gold);text-decoration:underline;text-underline-offset:2px}.projects .subtitle a:hover,.projects .subtitle a:focus{color:var(--gold-hover)}.project-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin:0 0 2rem}.filter-button{border:1px solid rgba(200,168,77,.9);background:transparent;color:var(--text);padding:.45rem .9rem;font-size:.9rem;letter-spacing:.04em;text-transform:none;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,color .16s ease}.filter-button:hover{background:#ffffff0f;border-color:var(--gold-hover)}.filter-button.active{background:#edd17d;border-color:transparent;color:#0b1419;font-weight:600;box-shadow:inset 0 1px #fff6,0 4px 10px #00000029}.filter-button:focus-visible{outline:2px solid var(--gold-hover);outline-offset:2px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;align-items:stretch}.card{border:1px solid rgba(200,168,77,.9);padding:0;background:#00000014;display:flex;flex-direction:column;align-items:stretch;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.card-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.4rem 1.4rem 1.8rem;height:100%}.card-action{margin-top:auto}.card:hover{transform:translateY(-4px);box-shadow:0 14px 35px #00000038;border-color:var(--gold-hover)}.card-image-wrap{width:100%;height:265px;display:flex;justify-content:center;align-items:center;overflow:hidden;margin-bottom:1.4rem}.card-image-wrap.preview{padding:.6rem;background:#0000002e}.card-image-wrap.preview .card-image{object-fit:contain;border:1px solid rgba(255,255,255,.12);box-shadow:0 6px 16px #00000040}.card-image{width:100%;height:100%;transition:transform .16s ease,filter .16s ease}.card-image.cover{object-fit:cover}.card-image.contain{object-fit:contain;padding:.35rem}.card h3{margin:.35rem 0 1rem;font-size:1.8rem;letter-spacing:.08em;font-weight:600}.card-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem .5rem;margin:-.35rem 0 .9rem}.card-tag{font-size:.75rem;letter-spacing:.02em;text-transform:none;color:#ffffffbf;border:1px solid rgba(255,255,255,.25);padding:.2rem .45rem}.card p{margin:0;color:var(--text);font-size:1.05rem;line-height:1.75;max-width:92%}.card-content a,.card-content a:visited{color:#f0c94a;text-decoration:underline}.card-content a:hover,.card-content a:focus{color:#ffe08a;text-decoration:underline}.button-like{display:inline-flex;align-items:center;justify-content:center;margin-top:1.6rem;padding:.85rem 1.5rem;min-width:172px;border:1px solid rgba(255,255,255,.85);color:var(--text);text-transform:uppercase;letter-spacing:.1em;font-weight:600;transition:background-color .18s ease,color .18s ease,border-color .18s ease}.button-like.disabled{opacity:.65;border-color:#ffffff80}.card:hover .button-like{background:#ffffff14;border-color:var(--gold-hover)}.projects .card:hover .card-image{transform:scale(1.02);filter:brightness(1.04)}@media (prefers-reduced-motion: reduce){.projects .card,.projects .card-image,.projects .button-like{transition:none;transform:none}}.card:hover .button-like.disabled{background:transparent;border-color:#ffffff80}@media (max-width: 1100px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.footer{background:var(--footer-bg);color:var(--footer-text)}.footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:3.5rem 0 2.5rem}.footer-col h3{margin:0 0 1.35rem;font-size:1.6rem;letter-spacing:.14em;color:#444}.footer-role{margin:0 0 .5rem;font-size:1rem;color:#2f3942}.footer-summary{margin-top:2rem;max-width:32rem;line-height:1.9;color:#2f3942}.footer-link{display:flex;align-items:center;gap:.7rem;padding:.7rem 0;border-bottom:1px solid rgba(0,0,0,.12);color:#3f6ea4;transition:color .18s ease}.footer-link:hover{color:#1f4f85}.copyright{background:#2f2f2f;color:#e8e8e8;text-align:center;padding:1.15rem 1rem;font-size:.98rem}@media (max-width: 900px){.grid,.footer-inner{grid-template-columns:1fr}.about-body{grid-template-columns:1fr;justify-items:center;text-align:center}.about-text{text-align:left}.hero,.hero-overlay,.hero-content{min-height:620px}.card-image-wrap{height:240px}}@media (max-width: 640px){.container{width:min(var(--container),calc(100% - 28px))}.logo{height:56px}.projects{padding-top:4rem}.subtitle{font-size:.88rem;line-height:1.6}.card h3{font-size:1.45rem}.card p{max-width:100%;font-size:1rem}.hero-sub{font-size:.9rem}}
