.intro-section{padding:var(--space-xl) var(--space-lg)}.intro-grid{display:flex;flex-direction:column;gap:var(--space-xl);align-items:center}.intro-photo{display:flex;justify-content:center;flex-shrink:0}#fishLips{max-width:300px;width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);object-fit:cover}.intro-content{display:flex;flex-direction:column;gap:var(--space-md);animation:fadeInUp .6s ease both}.intro-greeting{text-align:left;font-size:clamp(1.5rem,4vw,2.5rem);margin-bottom:var(--space-sm)}.intro-interests p{margin:0 0 var(--space-sm);color:var(--color-text-muted)}.interest-pills{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.interest-pill{display:inline-block;padding:6px 14px;background-color:var(--color-surface-high);border:1px solid rgba(198,216,255,.2);border-radius:var(--radius-full);font-size:.85rem;color:var(--color-blue);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.interest-pill:hover{background-color:#c6d8ff1a;border-color:#c6d8ff66}.repo-badge{display:inline-flex;align-items:center;gap:var(--space-sm);padding:8px 16px;background-color:var(--color-surface-high);border-radius:var(--radius-full);border:1px solid rgba(254,127,45,.3);width:fit-content;font-size:.9rem}.repo-badge-label{color:var(--color-text-muted)}.repo-badge-name{color:var(--color-orange);font-weight:500}.weather-widget{background-color:var(--color-surface-high);border-radius:var(--radius-md);padding:var(--space-md);border-left:3px solid var(--color-blue)}.weather-widget p{margin:0;font-size:.9rem;color:var(--color-text-muted)}.weather-offline{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-subtle)!important;font-style:italic}.weather-icon{font-size:1.1rem}.weather-note{display:block;font-size:.8rem;color:var(--color-text-subtle);margin-top:var(--space-xs)}@media(min-width:768px){.intro-grid{flex-direction:row;align-items:flex-start}.intro-photo{flex-shrink:0}#fishLips{max-width:360px}.intro-greeting{font-size:clamp(1.75rem,3vw,2.5rem)}}.projects-preview{padding:var(--space-lg) 0}.carousel-wrapper{display:flex;align-items:center;gap:var(--space-md);width:90%;margin:0 auto;position:relative}.carousel-card{flex:1;min-width:0}.carousel-btn{flex-shrink:0;width:40px;height:40px;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.2);background-color:var(--color-surface-high);color:var(--color-text);font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast),border-color var(--transition-fast);line-height:1}.carousel-btn:hover{background-color:var(--color-orange);border-color:var(--color-orange);color:#121212}.carousel-dots{display:flex;justify-content:center;gap:var(--space-sm);margin-top:var(--space-lg)}.carousel-dot{width:8px;height:8px;border-radius:var(--radius-full);border:none;background-color:var(--color-surface-high);cursor:pointer;padding:0;transition:background-color var(--transition-fast),transform var(--transition-fast)}.carousel-dot--active{background-color:var(--color-orange);transform:scale(1.3)}.projects-preview-footer{text-align:center;margin-top:var(--space-lg)}.view-all-link{display:inline-block;color:var(--color-orange);font-family:Oswald,sans-serif;font-size:1rem;letter-spacing:.05em;border-bottom:1px solid rgba(254,127,45,.4);padding-bottom:2px;transition:border-color var(--transition-fast)}.view-all-link:hover{color:var(--color-orange);border-color:var(--color-orange)}
