@font-face{font-family:Helvetica Neue Medium;src:url(/assets/HelveticaNeueMedium-ZQAozK0D.otf) format("opentype")}@font-face{font-family:Helvetica Neue Roman;src:url(/assets/HelveticaNeueRoman-kqQRqaph.otf) format("opentype")}*{margin:0;padding:0;box-sizing:border-box;font-family:Helvetica Neue Roman,Helvetica,Arial,sans-serif}html,body{margin:0;padding:0;width:100%;min-height:100%;overflow-x:hidden;overflow-y:auto}.rive-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden;background:#000}.rive-background canvas{width:100vw;height:100vh;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(1.8);object-fit:cover;min-width:100%;min-height:100%;margin:0;padding:0}@media screen and (max-width: 768px){.rive-background{height:80%;top:20%}.rive-background canvas{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(3.3);min-width:100%;min-height:100%}body,html{overflow-x:hidden;margin:0;padding:0;min-height:-webkit-fill-available}}body{margin:0;padding:0;overflow-x:hidden}main.portfolio{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:20px;color:#2a6e78}.card{background:rgba(255,255,255,.75);border:none;border-radius:16px;padding:20px;max-width:800px;width:100%;box-shadow:0 8px 24px #2a6e7826;border-bottom:4px solid #D9A404;margin:20px;box-sizing:border-box}.profile{display:flex;gap:20px;margin-bottom:20px;flex-wrap:wrap}@media screen and (max-width: 600px){.profile{justify-content:center;text-align:center}.buttons,.sub-buttons{grid-template-columns:1fr}.profile-image{width:150px;height:150px}}.profile-image{width:200px;height:200px;border-radius:8px;object-fit:cover}.summary{flex:1}.summary h1{margin:0 0 5px;color:#112c30;font-family:Helvetica Neue Medium,Helvetica,Arial,sans-serif}.summary h2{margin:0 0 10px;color:#2a6e78;font-size:1.1em;font-family:Helvetica Neue Roman,Helvetica,Arial,sans-serif}.summary p{color:#000}.buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:20px auto;max-width:600px}button{padding:12px 20px;border:none;border-radius:8px;background:#2a6e78;color:#fff;cursor:pointer;transition:all .3s ease;font-family:Helvetica Neue Medium,Helvetica,Arial,sans-serif;font-weight:500}button:hover{background:#d9a404;color:#fff;transform:translateY(-2px)}button:active{background:#f9b8b8;transform:translateY(0)}.linkedin-button{width:100%}a{text-decoration:none;display:block}.content-section{padding:24px;background:white;border-radius:12px;margin-top:24px;line-height:1.7;color:#2a6e78;border:2px solid #a0cc3b}.sub-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.sub-content{margin-top:20px;padding-top:20px;border-top:1px solid #98d2db}.photo-gallery{width:100%;padding:20px 0}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;padding:20px}.gallery-item{position:relative;padding-bottom:100%;cursor:pointer;overflow:hidden;border-radius:8px;box-shadow:0 2px 10px #0000001a;transition:transform .3s ease}.gallery-item:hover{transform:scale(1.02)}.gallery-item img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:1;transition:all .3s ease-in-out;transform:scale(1.01);image-rendering:-webkit-optimize-contrast;backface-visibility:hidden}.gallery-item.loading img{opacity:0}.loading-spinner{position:absolute;top:50%;left:50%;width:30px;height:30px;border:3px solid #f3f3f3;border-top:3px solid #2a6e78;border-radius:50%;animation:spin 1s linear infinite;transform:translate(-50%,-50%)}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.9);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-image{max-width:90%;max-height:90vh;object-fit:contain}.content-section .sub-content:contains("Rive.app"){text-decoration:underline}.close-button{position:fixed;top:20px;right:20px;background:white;border:none;width:40px;height:40px;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1001}@media (max-width: 768px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;padding:10px}}
