@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap";:root{--bg-color: #FFFFFF;--surface-color: #FAFAFA;--surface-alt: #F3F4F6;--text-primary: #0A0A0A;--text-secondary: #6B7280;--text-dark: #1F2937;--accent-color: #2563EB;--accent-hover: #1D4ED8;--border-color: #E5E7EB;--border-subtle: 1px solid var(--border-color);--border-heavy: 3px solid var(--text-primary);--radius: 12px;--shadow-sm: 0 4px 6px -1px rgb(0 0 0 / .05);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / .1)}*{box-sizing:border-box;margin:0;padding:0;font-family:Poppins,system-ui,sans-serif}html{background-color:var(--bg-color)}body{background-color:var(--bg-color);color:var(--text-secondary);line-height:1.6;-webkit-font-smoothing:antialiased;animation:fadeInPage .4s ease-out forwards}body.fade-out{animation:fadeOutPage .4s ease-in forwards}@keyframes fadeInPage{0%{opacity:0}to{opacity:1}}@keyframes fadeOutPage{0%{opacity:1}to{opacity:0}}h1,h2,h3,.logo-text{color:var(--text-primary);letter-spacing:-.02em}h1{font-size:3rem;font-weight:700;line-height:1.2;margin-bottom:1.25rem}h2{font-size:2.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-dark)}h3{font-size:1.5rem;font-weight:500;margin-bottom:.5rem}p{font-weight:400;font-size:1rem;margin-bottom:1rem}.navbar{background:var(--bg-color);border-bottom:var(--border-subtle);padding:1.5rem 5%;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100}.logo-text{font-weight:700;font-size:1.5rem}.nav-links a{color:var(--text-secondary);text-decoration:none;margin-left:2rem;font-weight:500;transition:color .2s ease}.nav-links a:hover,.nav-links a.active{color:var(--accent-color)}.content-wrapper{max-width:1200px;margin:4rem auto;padding:0 5%}.grid-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem}.card{background:var(--surface-alt);border:var(--border-subtle);border-radius:var(--radius);padding:2.5rem;box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--accent-color)}.hero{text-align:center;padding:5rem 2rem;background:var(--surface-color);border:var(--border-subtle);border-radius:var(--radius)}.hero p{font-size:1.125rem;max-width:800px;margin:0 auto 2rem}.section-header{text-align:center;margin-bottom:3.5rem}.contact-form{display:flex;flex-direction:column;gap:1.5rem}input,textarea{width:100%;padding:1rem;border:var(--border-subtle);border-radius:var(--radius);background:var(--bg-color);color:var(--text-primary);font-size:1rem;font-family:Poppins,sans-serif;transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #2563eb1a}.btn{padding:1rem 2rem;border-radius:var(--radius);font-weight:600;cursor:pointer;border:none;transition:all .2s ease;font-size:1rem;font-family:Poppins,sans-serif;text-decoration:none;display:inline-block;text-align:center}.primary-btn{background-color:var(--text-primary);color:var(--bg-color);width:fit-content}.primary-btn:hover{background-color:var(--text-dark)}.secondary-btn{background-color:transparent;color:var(--text-primary);border:1px solid var(--text-primary);width:fit-content}.secondary-btn:hover{background-color:var(--text-primary);color:var(--bg-color)}.accent-link{color:var(--accent-color);text-decoration:none;font-weight:500;transition:color .2s ease}.accent-link:hover{color:var(--accent-hover);text-decoration:underline}.hero .btn-group{display:flex;justify-content:center;gap:1rem}.page-section{display:block}.fade-in{animation:gentleFade .8s cubic-bezier(.16,1,.3,1) both}@keyframes gentleFade{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.float-hover{transition:transform .4s ease-in-out,box-shadow .4s ease-in-out,border-color .4s ease}.float-hover:hover{animation:floatIdle 3s ease-in-out infinite;box-shadow:6px 6px 0 var(--accent-color);border-color:var(--accent-color);transform:translateY(-5px)}@keyframes floatIdle{0%,to{transform:translateY(-5px)}50%{transform:translateY(-10px)}}.pulse-anim{animation:softPulse 2s infinite}@keyframes softPulse{0%{box-shadow:0 0 #2563eb66}70%{box-shadow:0 0 0 10px #2563eb00}to{box-shadow:0 0 #2563eb00}}@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}
