.site-header{z-index:100;height:var(--nav-height);-webkit-backdrop-filter:blur(.75rem);transition:border-color var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base);background-color:#ffffffeb;border-bottom:.0625rem solid #0000;position:fixed;top:0;left:0;right:0}.site-header.is-scrolled{border-bottom-color:var(--color-border-light);box-shadow:0 .125rem 1.25rem #1e6b8a12}.nav{align-items:center;gap:var(--space-xl);height:100%;display:flex}.nav-logo{flex-shrink:0;align-items:center;text-decoration:none;display:flex}.nav-logo img{width:auto;height:2.25rem}.nav-links{align-items:center;gap:var(--space-lg);margin-left:auto;display:flex}.nav-links a{font-family:var(--font-display);font-size:var(--text-base);color:var(--color-text-muted);transition:color var(--transition-fast);white-space:nowrap;font-weight:500;text-decoration:none}.nav-links a:hover{color:var(--color-text)}.nav-cta{margin-left:var(--space-md);flex-shrink:0}.lang-switcher{flex-shrink:0;align-items:center;gap:.125rem;display:flex}.lang-divider{color:var(--color-border);font-size:var(--text-sm);-webkit-user-select:none;user-select:none}.lang-btn{font-family:var(--font-display);font-size:var(--text-sm);color:var(--color-text-muted);border-radius:var(--radius-sm);transition:color var(--transition-fast);padding:.25rem .375rem;font-weight:500;line-height:1}.lang-btn:hover{color:var(--color-text)}.lang-btn.is-active{color:var(--color-text);font-weight:700}.nav-hamburger{cursor:pointer;width:2.5rem;height:2.5rem;padding:var(--space-sm);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:flex-end;gap:.3125rem;margin-left:auto;display:none}.nav-hamburger span{background-color:var(--color-text);height:.125rem;transition:width var(--transition-base), transform var(--transition-base), opacity var(--transition-base);border-radius:.125rem;display:block}.nav-hamburger span:first-child{width:1.5rem}.nav-hamburger span:nth-child(2){width:1.125rem}.nav-hamburger span:nth-child(3){width:1.5rem}.nav-hamburger[aria-expanded=true] span:first-child{width:1.5rem;transform:translateY(.4375rem)rotate(45deg)}.nav-hamburger[aria-expanded=true] span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-hamburger[aria-expanded=true] span:nth-child(3){width:1.5rem;transform:translateY(-.4375rem)rotate(-45deg)}@media (max-width:48rem){.nav-hamburger{order:2;margin-left:0;display:flex}.lang-switcher{order:1;margin-left:auto}.nav-cta{display:none}.nav-links{top:var(--nav-height);background-color:var(--color-bg);padding-top:var(--space-xl);transition:transform var(--transition-spring);pointer-events:none;flex-direction:column;justify-content:flex-start;align-items:center;gap:0;margin:0;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translate(100%)}.nav-links.is-open{pointer-events:all;transform:translate(0)}.nav-links li{border-bottom:.0625rem solid var(--color-border-light);width:100%}.nav-links a{padding:var(--space-lg) var(--space-xl);font-size:var(--text-xl);color:var(--color-text);display:block}.nav-links a:hover{background-color:var(--color-surface)}}
.site-footer{background-color:var(--color-text);color:#ffffffb3;padding-top:var(--space-3xl);padding-bottom:var(--space-xl)}.footer-grid{gap:var(--space-2xl);padding-bottom:var(--space-2xl);border-bottom:.0625rem solid #ffffff1a;grid-template-columns:2fr 1fr 1fr;display:grid}.footer-brand{gap:var(--space-md);flex-direction:column;display:flex}.footer-logo img{filter:brightness(0)invert();opacity:.9;width:auto;height:2rem}.footer-tagline{font-size:var(--text-sm);color:#ffffff8c;max-width:32ch;line-height:1.6}.footer-nav h4,.footer-contact h4{font-family:var(--font-display);font-size:var(--text-sm);color:#fff;letter-spacing:.06em;text-transform:uppercase;margin-bottom:var(--space-lg);font-weight:600}.footer-nav ul{gap:var(--space-sm);flex-direction:column;display:flex}.footer-nav a{font-size:var(--text-sm);color:#fff9;transition:color var(--transition-fast);text-decoration:none}.footer-nav a:hover{color:#fff}.footer-contact address{gap:var(--space-sm);flex-direction:column;display:flex}.footer-contact p,.footer-contact a{font-size:var(--text-sm);color:#fff9;max-width:none;line-height:1.5}.footer-contact a{transition:color var(--transition-fast);text-decoration:none}.footer-contact a:hover{color:var(--color-primary)}.footer-bottom{justify-content:space-between;align-items:center;gap:var(--space-md);padding-top:var(--space-xl);flex-wrap:wrap;display:flex}.footer-bottom p{font-size:var(--text-xs);color:#fff6;max-width:none}.footer-bottom a{color:#fff9;transition:color var(--transition-fast);text-decoration:none}.footer-bottom a:hover{color:var(--color-primary)}@media (max-width:48rem){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (max-width:30rem){.footer-grid{grid-template-columns:1fr}.footer-bottom{align-items:flex-start;gap:var(--space-sm);flex-direction:column}}
.portfolio-section{background-color:var(--color-surface)}.portfolio-grid{gap:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.portfolio-card{background:var(--color-bg);border:.0625rem solid var(--color-border-light);border-radius:var(--radius-lg);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-spring);flex-direction:column;display:flex;overflow:hidden}.portfolio-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-.25rem)}.portfolio-card img{object-fit:cover;width:100%;height:14rem}.portfolio-card-body{gap:var(--space-sm);padding:var(--space-lg);flex-direction:column;display:flex}.portfolio-name{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-text);font-weight:600}.portfolio-description{font-size:var(--text-sm);color:var(--color-text-muted);max-width:none;line-height:1.6}.portfolio-tags{gap:var(--space-xs);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.portfolio-tags li{font-size:var(--text-xs);letter-spacing:.01em;color:var(--color-primary-darker);background-color:var(--color-primary-muted);border-radius:var(--radius-full);align-items:center;padding:.25rem .625rem;font-weight:600;display:inline-flex}.portfolio-more{margin-top:var(--space-2xl);justify-content:center;display:flex}.page-header{padding-top:calc(var(--nav-height) + var(--space-3xl));text-align:center}.page-header .section-title,.page-header .section-subtitle{margin-inline:auto}@media (max-width:64rem){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:48rem){.portfolio-grid{grid-template-columns:1fr}}
