/* Flako's original system typography and glass surfaces. No remote fonts or filters. */
:root {
  --flako-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --glass-surface: linear-gradient(135deg, rgba(255,255,255,.86), rgba(247,247,242,.72));
  --glass-line: rgba(255,255,255,.92);
  --glass-shadow: 0 12px 36px rgba(20,20,16,.075), inset 0 1px 0 rgba(255,255,255,.95), inset 0 -1px 0 rgba(20,20,16,.045);
}
body.flako-glass,body.flako-glass main,body.flako-glass #flako-consent { font-family:var(--flako-font); }
.ui-icon { display:inline-block; flex:0 0 auto; width:18px; height:18px; vertical-align:middle; pointer-events:none; }
.flako-portfolio h1,.flako-portfolio h2 { font-weight:760; letter-spacing:-.07em; }
.flako-portfolio h3 { font-weight:700; }
.flako-portfolio .brand { font-weight:740; letter-spacing:-.02em; }
.flako-portfolio .brand small { letter-spacing:0; }
.flako-portfolio .hero-heading h1 { letter-spacing:-.075em; }
.flako-portfolio .hero-heading .location { color:#66665f; }
.flako-portfolio .header {
  width:fit-content; max-width:calc(100% - 56px); gap:32px; padding:10px 14px;
  border:1px solid rgba(255,255,255,.94); background:var(--glass-surface);
  box-shadow:var(--glass-shadow), 0 0 0 1px rgba(20,20,16,.06);
  backdrop-filter:blur(24px) saturate(1.4); -webkit-backdrop-filter:blur(24px) saturate(1.4);
}
.flako-portfolio .header .brand img { width:32px; height:32px; }
.flako-portfolio .header nav { gap:4px; }
.flako-portfolio .header nav a {
  padding:10px 14px; border-radius:999px; text-decoration:none;
  font-size:11px; font-weight:650; letter-spacing:.065em; text-transform:uppercase;
  transition:background .18s,box-shadow .18s;
}
.flako-portfolio .header nav a:hover,.flako-portfolio .header nav a[aria-current] {
  background:rgba(255,255,255,.8); box-shadow:inset 0 1px 0 #fff,0 3px 12px #17171509;
}
.flako-portfolio .menu-toggle,.flako-portfolio .text-link,.flako-portfolio .card-arrow {
  color:#171715; border:1px solid rgba(255,255,255,.9); background:var(--glass-surface);
  box-shadow:var(--glass-shadow),0 0 0 1px rgba(20,20,16,.045);
  backdrop-filter:blur(18px) saturate(1.25); -webkit-backdrop-filter:blur(18px) saturate(1.25);
}
.flako-portfolio .text-link { gap:14px; padding:11px 16px; border-radius:999px; font-weight:600; }
.flako-portfolio .menu-toggle { padding:10px 15px; font-weight:650; }
.flako-portfolio .pill {
  background:linear-gradient(165deg,#383834,#111110 80%); color:#fff;
  border:1px solid #22221e; box-shadow:inset 0 1px 0 #ffffff3d,0 9px 22px #11111114;
  font-weight:650; transition:box-shadow .18s,background .18s;
}
.flako-portfolio .pill:hover { background:linear-gradient(165deg,#474741,#1c1c19 80%); box-shadow:inset 0 1px 0 #ffffff4a,0 12px 26px #1111111f; }
.flako-portfolio .project-card {
  padding:8px; border:1px solid #ffffffd9; border-radius:32px; min-width:0;
  background:linear-gradient(140deg,#ffffffa6,#ffffff3d); box-shadow:inset 0 1px 0 #fff,0 12px 40px #17171506;
}
.flako-portfolio .project-card .card-image { border-radius:24px; }
.flako-portfolio .project-card .card-caption { padding:14px 7px 7px; }
.flako-portfolio .card-caption .project-title { font-weight:650; font-size:14px; line-height:1.4; }
.flako-portfolio .card-caption>span { line-height:1.5; }
.flako-portfolio .card-arrow { width:40px; height:40px; right:13px; bottom:13px; }
.flako-portfolio .footer-links a { display:inline-flex; gap:8px; }
.flako-portfolio .service-list {
  border:1px solid #ffffffdf; border-radius:28px; padding-inline:22px;
  background:linear-gradient(135deg,#ffffff94,#ffffff33); box-shadow:inset 0 1px 0 #fff,0 14px 45px #17171504;
}
.flako-portfolio .service-list>a:last-child { border-bottom:0; }
.flako-portfolio .service-list a>span:last-child { display:flex; justify-content:center; }
.flako-portfolio .service-list h3 { letter-spacing:-.045em; }
.flako-portfolio .contact-form input,.flako-portfolio .contact-form textarea,.flako-portfolio .contact-form select {
  background:linear-gradient(135deg,#ffffffd9,#ffffff80); border-color:#d3d3cb;
  box-shadow:inset 0 1px 0 #fff,0 5px 18px #17171503; border-radius:16px;
}
.flako-portfolio .dialog-bar button,.flako-portfolio .dialog-controls button {
  display:inline-flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#ffffff26,#ffffff0a); border-color:#ffffff70; box-shadow:inset 0 1px 0 #ffffff3d;
}
.flako-portfolio .bts-toggle { background:linear-gradient(135deg,#30302ce8,#111110eb); box-shadow:inset 0 1px 0 #ffffff4d; }
body.flako-glass .flako-cookie-banner,body.flako-glass #flako-consent dialog {
  background:linear-gradient(135deg,#fffffff5,#f7f7f2f0); border-color:#ffffffed;
  box-shadow:var(--glass-shadow),0 0 0 1px #17171512;
  backdrop-filter:blur(22px) saturate(1.2); -webkit-backdrop-filter:blur(22px) saturate(1.2);
}
body.flako-glass #flako-consent .flako-cookie-reopen { background:var(--glass-surface); box-shadow:var(--glass-shadow); }
@media(max-width:1050px) {
  .flako-portfolio .header { margin-inline:auto; }
  .flako-portfolio .header nav a { padding-inline:11px; }
}
@media(max-width:700px) {
  .flako-portfolio .header { width:auto; max-width:none; gap:12px; margin-inline:max(16px,env(safe-area-inset-left)); }
  .flako-portfolio .header nav {
    background:linear-gradient(135deg,#fffffff5,#f7f7f2f0); border:1px solid #ffffffed;
    box-shadow:var(--glass-shadow),0 0 0 1px #1717150a;
    backdrop-filter:blur(24px) saturate(1.4); -webkit-backdrop-filter:blur(24px) saturate(1.4);
  }
  .flako-portfolio .header nav a { font-size:13px; padding:14px; }
  .flako-portfolio .hero-links { gap:16px; }
  .flako-portfolio .project-card { padding:6px; border-radius:26px; }
  .flako-portfolio .project-card .card-image { border-radius:20px; }
  .flako-portfolio .project-card .card-caption { padding:12px 5px 6px; }
  .flako-portfolio .card-caption .project-title { font-size:13px; }
  .flako-portfolio .service-list { padding-inline:16px; border-radius:24px; }
  .flako-portfolio .service-list>a { grid-template-columns:20px minmax(0,1fr) 20px; gap:10px; }
  .flako-portfolio .service-list h3 { font-size:24px; }
  .flako-portfolio .social-grid .project-card { padding:5px; border-radius:21px; }
  .flako-portfolio .social-grid .card-image { border-radius:16px; }
  .flako-portfolio .social-grid .card-caption .project-title { font-size:12px; }
  .flako-portfolio .social-grid .card-arrow { width:32px; height:32px; right:9px; bottom:9px; }
}
@media(prefers-reduced-transparency:reduce) {
  .flako-portfolio .header,.flako-portfolio .header nav,.flako-portfolio .text-link,.flako-portfolio .menu-toggle,.flako-portfolio .card-arrow,
  body.flako-glass .flako-cookie-banner,body.flako-glass #flako-consent dialog { background:#f7f7f2; backdrop-filter:none; -webkit-backdrop-filter:none; }
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .flako-portfolio .header,.flako-portfolio .header nav,.flako-portfolio .text-link,.flako-portfolio .menu-toggle,.flako-portfolio .card-arrow { background:#f7f7f2; }
}
@media(prefers-reduced-motion:reduce) { .flako-portfolio .project-card a:hover img { transform:none; } }
