*{margin:0;padding:0;box-sizing:border-box}@font-face{font-family:Helvetica;src:url(/assets/Helvetica-zhVn_y_h.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Helvetica;src:url(/assets/Helvetica-Bold-DbiQUL7g.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:Helvetica;src:url(/assets/Helvetica-Oblique-BUgM8Nqj.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:Helvetica;src:url(/assets/helvetica-light-587ebe5a59211-CK-9iIph.ttf) format("truetype");font-weight:300;font-style:normal}body{font-family:Helvetica,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;background:#fff;color:#000;line-height:1.5}nav{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3rem;border-bottom:1px solid #e5e5e5}.logo{display:flex;align-items:center;gap:.75rem;font-size:1rem;font-weight:500}@media (min-width: 1024px){.logo{font-size:1.25rem}}.logo-image{width:40px;height:40px;object-fit:contain;border-radius:6px}.nav-links{display:flex;gap:2.5rem}.hamburger{display:none;cursor:pointer;flex-direction:column;gap:5px}.hamburger span{display:block;width:25px;height:3px;background-color:#333;transition:all .3s ease}.nav-links a{color:#000;text-decoration:none;font-size:.95rem;transition:opacity .2s}.nav-links a:hover{opacity:.6}.container{max-width:1400px;margin:0 auto;padding:3rem 3rem 6rem}.columns{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;gap:3rem;margin-top:2rem}.column h2{font-size:1rem;font-weight:600;margin-bottom:1.5rem;letter-spacing:.3px}.column-content{font-size:.9rem;line-height:1.7}.column-content p{margin-bottom:1.2rem}.item{margin-bottom:2rem}.item-year{font-weight:600;margin-bottom:.25rem}.item-title{font-weight:500;margin-bottom:.25rem}.item-detail{color:#666;font-size:.875rem;line-height:1.6;margin-bottom:15px}.item-detail em{font-style:italic}.link{color:#06c;text-decoration:none}.link:hover{text-decoration:underline}@media (max-width: 1200px){.columns{grid-template-columns:1fr 1fr 1fr}}@media (max-width: 768px){.columns{grid-template-columns:1fr;gap:3rem}nav{padding:1rem 1.5rem;position:relative}.container{padding:2rem 1.5rem}.hamburger{display:flex;z-index:100}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,6px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-6px)}.nav-links{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:center;padding:2rem;gap:2rem;border-bottom:1px solid #e5e5e5;transform:translateY(-150%);transition:transform .3s ease-in-out;z-index:99;opacity:0}.nav-links.active{transform:translateY(0);opacity:1;box-shadow:0 4px 6px -1px #0000001a}.portfolio-grid{column-count:1!important}}#portfolio{padding:4rem 3rem;background:#f9f9f9}.portfolio-header{margin-bottom:3rem}.portfolio-header h2{font-size:1.5rem;font-weight:600;letter-spacing:-.5px}.portfolio-grid{column-count:3;column-gap:2rem}.portfolio-item{position:relative;border-radius:12px;overflow:hidden;cursor:pointer;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:all .4s cubic-bezier(.4,0,.2,1);margin-bottom:2rem;break-inside:avoid}.portfolio-item:hover{transform:translateY(-8px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.portfolio-item img{width:100%;height:auto;display:block;transition:transform .6s cubic-bezier(.4,0,.2,1)}.portfolio-item:hover img{transform:scale(1.05)}.portfolio-overlay{position:absolute;bottom:0;left:0;right:0;padding:1.5rem;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);opacity:0;transform:translateY(20px);transition:all .4s cubic-bezier(.4,0,.2,1)}.portfolio-item:hover .portfolio-overlay{opacity:1;transform:translateY(0)}.portfolio-title{color:#fff;font-size:1rem;font-weight:500}@media (max-width: 1024px){.portfolio-grid{column-count:2}}#contact{padding:8rem 3rem;background:#fff;text-align:center;position:relative;overflow:hidden}#contact:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#e5e5e5,transparent)}.contact-container{max-width:800px;margin:0 auto}.contact-header h2{font-size:2rem;font-weight:700;margin-bottom:4rem;letter-spacing:-.03em;background:linear-gradient(135deg,#1a1a1a,#4a4a4a);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.contact-links{display:flex;justify-content:center;gap:4rem;flex-wrap:wrap}.contact-link{display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-decoration:none;color:#666;transition:all .4s cubic-bezier(.4,0,.2,1);group:contact-item}.contact-icon{width:80px;height:80px;border-radius:24px;background:#f5f5f5;display:flex;align-items:center;justify-content:center;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;z-index:1;box-shadow:0 4px 6px -1px #0000000d}.contact-icon:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:24px;background:linear-gradient(135deg,#84cc16,#65a30d);opacity:0;transition:opacity .4s ease;z-index:-1}.contact-icon svg{width:32px;height:32px;fill:#4a4a4a;transition:all .4s ease}.contact-label{font-size:1rem;font-weight:500;letter-spacing:.02em;transition:color .3s ease}.contact-link:hover{transform:translateY(-8px)}.contact-link:hover .contact-icon{box-shadow:0 20px 25px -5px #84cc164d,0 10px 10px -5px #84cc161a}.contact-link:hover .contact-icon:after{opacity:1}.contact-link:hover .contact-icon svg{fill:#fff;transform:scale(1.1)}.contact-link:hover .contact-label{color:#65a30d;font-weight:600}.site-footer{text-align:center;padding:2rem .5rem;background:#fff;border-top:1px solid #f0f0f0;font-size:.8rem;color:#888}.site-footer p{margin:1rem 0}.love{font-size:.75rem;opacity:.8;margin-top:1rem;color:#d70000}
