@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:wght@600;700&display=swap");:root,[data-theme=light]{--bg:#fafaf8;--bg2:#f4f3ef;--bg3:#eeecea;--surface:#fff;--text:#1a1a18;--text3:#8a8a84;--accent:#1d5c8a;--accent2:#2e7ab8;--border:rgba(0,0,0,.08);--border2:rgba(0,0,0,.16);--tag-bg:#e6f1fb;--tag-text:#185fa5}[data-theme=dark]{--bg:#141412;--bg2:#1e1e1b;--bg3:#252521;--surface:#1e1e1b;--text:#f0efeb;--text2:#b0afa8;--text3:#6a6a62;--accent:#5aaee8;--accent2:#378add;--border:hsla(0,0%,100%,.07);--border2:hsla(0,0%,100%,.14);--tag-bg:#0c447c;--tag-text:#85b7eb}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text);line-height:1.7;font-size:15px;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent2)}button{font-family:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg2)}::-webkit-scrollbar-thumb{background:var(--bg3);border-radius:3px}nav{display:flex;justify-content:space-between;padding:1.5rem}.exp-container{max-width:900px;margin:auto;padding:4rem 2rem;border-top:.5px solid var(--border)}@media (max-width:768px){.exp-container{padding:3rem 1.5rem}}.exp-item{padding:24px 0;border-bottom:1px solid var(--border)}.exp-item:last-child{border-bottom:none}.exp-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.exp-header h2{font-size:20px;margin:0;color:var(--text)}.exp-date{font-size:13px;color:var(--text3);white-space:nowrap}.exp-role{font-weight:500;color:var(--accent);font-size:14px;margin:6px 0}.exp-desc{font-size:14px;color:var(--text2);line-height:1.6;margin-top:10px}.exp-projects{margin-top:16px;display:flex;flex-direction:row;flex-wrap:wrap;gap:16px}@media (max-width:768px){.exp-projects{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}}.mini-project{display:flex;align-items:center;gap:12px;cursor:pointer}.mini-project img{width:100%;max-width:400px;height:auto;max-height:400px;border-radius:6px;object-fit:cover}.mini-project span{font-size:14px;font-weight:500;color:var(--text)}.mini-project:hover span{text-decoration:underline;color:var(--accent)}.contact-section{max-width:1024px;margin:0 auto;padding:4rem 1.5rem;border-top:.5px solid var(--border)}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem}@media (max-width:900px){.contact-grid{grid-template-columns:repeat(1,1fr)}}.section-container{max-width:900px;margin:0 auto;padding:4rem 2rem}@media (max-width:768px){.section-container{padding:3rem 1.5rem}}.hero-section{max-width:900px;margin:0 auto;padding:5rem 2rem;display:flex;gap:3rem;align-items:center}@media (max-width:768px){.hero-section{flex-direction:column;align-items:center;padding:3rem 1.5rem;gap:2rem}}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:0;gap:0}.gallery-grid.mobile-only{display:none}@media (max-width:768px){.gallery-grid{grid-template-columns:repeat(6,1fr)}.gallery-grid.desktop-only{display:none}.gallery-grid.mobile-only{display:grid}}.gallery-card{overflow:hidden;cursor:pointer;position:relative;background:var(--bg2);transition:transform .2s ease,box-shadow .2s ease}.gallery-card.tall{grid-row:span 2;height:200px}.gallery-card.standard{grid-row:span 1;height:100px}@media (max-width:768px){.gallery-card.tall{height:120px}.gallery-card.standard{height:60px}}.gallery-section{padding:4rem 2rem;border-top:.5px solid var(--border)}@media (max-width:768px){.gallery-section{padding:2rem 1rem}}@media (max-width:600px){.exp-header{flex-direction:column;align-items:flex-start;gap:4px}}.blog-featured-card{display:grid;grid-template-columns:1fr 300px;grid-gap:2rem;gap:2rem;align-items:center;background:var(--surface);border:.5px solid var(--border);border-radius:12px;padding:2rem;cursor:pointer;text-decoration:none;color:inherit;transition:border-color .2s,transform .15s;margin-bottom:1.5rem}.blog-featured-card:hover{transform:translateY(-2px);border-color:var(--accent)}@media (max-width:768px){.blog-featured-card{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem}}@keyframes intro-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes intro-shake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}.intro-shake{animation:intro-shake .3s cubic-bezier(.36,.07,.19,.97) both}@keyframes intro-fadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.05)}}@keyframes intro-bgGlow{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.intro-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;background:#fff;display:flex;justify-content:center;align-items:center;overflow:hidden}.intro-backdrop:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;animation:intro-bgGlow 15s ease infinite;pointer-events:none}[data-theme=dark] .intro-backdrop:before{background:radial-gradient(circle,rgba(90,174,232,.06) 0,transparent 60%)}.intro-card{max-width:600px;width:90%;padding:3rem 2.5rem;text-align:center;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .3s cubic-bezier(.4,0,.2,1)}.intro-animate-fade{animation:intro-fadeIn .6s cubic-bezier(.16,1,.3,1) forwards}.intro-backdrop.exiting{animation:intro-fadeOut .8s cubic-bezier(.7,0,.3,1) forwards;pointer-events:none}.intro-progress-container{display:flex;gap:.5rem;margin-top:2rem}.intro-progress-dot{width:6px;height:6px;border-radius:50%;background:var(--border2);transition:all .3s ease}.intro-progress-dot.active{width:20px;border-radius:3px;background:var(--accent)}.intro-btn{background:var(--accent);color:#fff;border:none;border-radius:12px;padding:12px 28px;font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s ease;box-shadow:0 4px 12px rgba(29,92,138,.15)}[data-theme=dark] .intro-btn{box-shadow:0 4px 12px rgba(90,174,232,.2);color:#141412}.intro-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(29,92,138,.25);background:var(--accent2)}.intro-btn:active{transform:translateY(0)}.intro-btn-secondary{background:transparent;color:var(--text);border:1px solid var(--border2);border-radius:12px;padding:12px 24px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.intro-btn-secondary:hover{background:var(--bg3);border-color:var(--text3)}.intro-btn-secondary.selected{background:var(--tag-bg);color:var(--tag-text);border-color:var(--accent)}