/* A restrained glass finish. Solid bases remain usable without backdrop-filter. */
:root{--glass-edge:rgba(255,255,255,.72);--glass-shadow:0 8px 28px rgba(20,24,47,.07);--glass-highlight:inset 0 1px 0 rgba(255,255,255,.82),inset 0 -1px 0 rgba(255,255,255,.22)}
.site-header{background:#f6f7fb;border-bottom-color:#ffffffa6;box-shadow:var(--glass-highlight),0 3px 20px #14182f05}
.site-header.is-scrolled{box-shadow:var(--glass-highlight),var(--glass-shadow)}
.mobile-contact-bar{background:#f6f7fb;border-top-color:var(--glass-edge);box-shadow:var(--glass-highlight),0 -6px 28px #14182f0c}
.menu-toggle,.portfolio-filters button{background:linear-gradient(145deg,#ffffffef,#f0f2f9e0);border:1px solid #ffffffd9;box-shadow:var(--glass-highlight),0 3px 12px #14182f0a;color:var(--ink)}
.menu-toggle{border-radius:13px}
.portfolio-filters button{transition:background .25s,box-shadow .25s,color .25s,border-color .25s}
.portfolio-filters button[aria-pressed="true"]{background:linear-gradient(145deg,#3b405e,#14182f);border-color:#676c8299;color:white;box-shadow:inset 0 1px 0 #ffffff38,0 5px 14px #14182f22}
.button{border-radius:12px}
.button-orange{background:linear-gradient(155deg,#ffb078 0%,#f58634 52%,#ee7c2d 100%);border-color:#ffc79c;box-shadow:inset 0 1px 0 #ffffff7a,inset 0 -1px 0 #9d431d28,0 5px 16px #9e481616}
.button-dark{background:linear-gradient(145deg,#454775,var(--brand-blue));border-color:#ffffff24;box-shadow:inset 0 1px 0 #ffffff38,0 5px 16px #14182f12}
.hero-dot{border:1px solid #ffffff30;border-radius:12px;background:linear-gradient(140deg,#ffffff18,#ffffff05);box-shadow:inset 0 1px 0 #ffffff24;min-height:44px}
.hero-dot.is-active{background:linear-gradient(140deg,#f5863433,#f5863410);color:#ffb782;border-color:#f586347d}
.image-label{background:#1d223bd9;border:1px solid #ffffff40;border-radius:10px;box-shadow:inset 0 1px 0 #ffffff26,0 4px 18px #00000012}
.project-open,.dialog-close,.dialog-navigation button{background:linear-gradient(145deg,#3c435bcc,#1b2038e6);border:1px solid #ffffff55;box-shadow:inset 0 1px 0 #ffffff42,0 4px 12px #00000014;color:#fff}
.project-dialog{border:1px solid #ffffff38;border-radius:20px;box-shadow:inset 0 1px 0 #ffffff26,0 28px 80px #00000042}
.project-dialog::backdrop{background:#080c20c9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .site-header,.mobile-contact-bar{background:linear-gradient(120deg,#ffffffed,#f4f6fbd9 55%,#ffffffeb);-webkit-backdrop-filter:blur(20px) saturate(125%);backdrop-filter:blur(20px) saturate(125%)}
  .image-label{background:linear-gradient(135deg,#242b43d9,#14182fb8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
  .project-open,.dialog-close{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
}
@media(hover:hover){
  .portfolio-filters button:not([aria-pressed="true"]):hover{background:#fff;border-color:#b8bfd3;box-shadow:var(--glass-highlight),0 5px 16px #14182f14}
  .button-orange:hover{background:linear-gradient(155deg,#ffbc8e,#ff9b51 65%,#f58634);box-shadow:inset 0 1px 0 #ffffff99,0 8px 22px #b65b2526}
  .button-dark:hover{background:linear-gradient(145deg,#4a507d,#242842)}
}
@media(max-width:720px){
  .site-header,.mobile-contact-bar{-webkit-backdrop-filter:blur(12px) saturate(115%);backdrop-filter:blur(12px) saturate(115%)}
  .mobile-nav{background:#f7f8fcf5}
  .hero-dot{padding-inline:10px}
  .project-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
}
@media(prefers-reduced-transparency:reduce){
  .site-header,.mobile-contact-bar,.mobile-nav{background:#f7f8fc;-webkit-backdrop-filter:none;backdrop-filter:none}
  .image-label,.project-open,.dialog-close{background:#20253d;-webkit-backdrop-filter:none;backdrop-filter:none}
  .project-dialog::backdrop{background:#080c20ed;-webkit-backdrop-filter:none;backdrop-filter:none}
}
@media(prefers-reduced-motion:reduce){.portfolio-filters button,.hero-dot,.button{transition:none}}
@media(forced-colors:active){.portfolio-filters button,.hero-dot,.button,.menu-toggle,.project-open,.dialog-close,.dialog-navigation button{border:1px solid ButtonText}.portfolio-filters button[aria-pressed="true"],.hero-dot.is-active{border:3px solid Highlight}}
