﻿/*
 * BAV MEDIA v3.0 — Plus Jakarta Sans + Orange Editorial
 */

/* ── RESET ── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
*{user-select:none;-webkit-user-select:none;}
html{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,0.14) transparent;overflow-x:hidden;scroll-behavior:smooth;}
html::-webkit-scrollbar{width:3px;}
html::-webkit-scrollbar-track{background:transparent;}
html::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.14);border-radius:2px;}
html::-webkit-scrollbar-thumb:hover{background:rgba(232,96,15,0.55);}

/* ── TOKENS ── */
:root{
  --bg:#000000;
  --white:#ffffff;
  --accent:#e8600f;
  --text-1:rgba(255,255,255,0.94);
  --text-2:rgba(255,255,255,0.68);
  --text-3:rgba(255,255,255,0.44);
  --text-4:rgba(255,255,255,0.24);

  /* Glass — iOS 26 refresh */
  --gb:rgba(255,255,255,0.05);
  --gb-border:rgba(255,255,255,0.12);
  --gb-spec:rgba(255,255,255,0.30);
  --gb-blur:blur(60px) saturate(200%) brightness(1.08);
  --gb-shadow:
    0 24px 70px rgba(0,0,0,0.65),
    inset 0 1px 0 rgba(255,255,255,0.28),
    inset 0 -1px 0 rgba(0,0,0,0.12),
    0 0 0 1px rgba(255,255,255,0.06);

  --r:18px;
  --r-lg:24px;
  --r-pill:100px;
}

body{
  background:
    radial-gradient(60% 46% at 12% 14%, rgba(232,96,15,0.09) 0%, rgba(232,96,15,0) 60%),
    radial-gradient(42% 34% at 88% 6%, rgba(232,96,15,0.05) 0%, rgba(232,96,15,0) 60%),
    var(--bg);
  color:var(--text-1);
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:400;
}
body::before{
  content:'';position:fixed;inset:0;z-index:1;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:200px 200px;opacity:0.032;
}

/* ── LOADER ──
   Wordmark BAV care se "scrie" de la stanga la dreapta (clip-path) cu un sclipici
   cald care trece peste el (background-position), plus o linie de progres portocalie.
   Doar transform/opacity/clip-path/mask = ieftin pe mobil (zero backdrop-filter). */
html.bav-loading,html.bav-loading body{overflow:hidden;}
.bav-loader{
  position:fixed;inset:0;z-index:3000;
  display:flex;align-items:center;justify-content:center;
  background:
    radial-gradient(72% 52% at 50% 48%, rgba(232,96,15,0.12) 0%, rgba(232,96,15,0) 62%),
    #000;
  opacity:1;visibility:visible;
  transition:opacity 0.8s ease, visibility 0.8s ease;
}
.bav-loader.is-done{opacity:0;visibility:hidden;pointer-events:none;}
.bl-inner{
  display:flex;flex-direction:column;align-items:center;gap:28px;
  transform:scale(1);opacity:1;
  transition:transform 0.8s cubic-bezier(0.4,0,0.2,1), opacity 0.7s ease;
}
.bav-loader.is-done .bl-inner{transform:scale(1.07);opacity:0;}

.bl-logo{
  width:min(264px,54vw);
  aspect-ratio:2077.42/1150.9;
  -webkit-mask:url(/logos/bav-media.svg) center/contain no-repeat;
          mask:url(/logos/bav-media.svg) center/contain no-repeat;
  background:#ffffff;
  opacity:0;
  animation:blLogoIn 1.1s cubic-bezier(0.2,0.7,0.2,1) 0.1s both;
}
@keyframes blLogoIn{
  0%{opacity:0;transform:scale(1.06);filter:blur(12px);}
  100%{opacity:1;transform:scale(1);filter:blur(0);}
}

.bl-bar{
  position:relative;width:min(264px,54vw);height:2px;border-radius:2px;
  background:rgba(255,255,255,0.10);overflow:hidden;
  opacity:0;animation:blBarIn 0.7s ease 0.5s forwards;
}
/* Umplere controlata din JS (transform: scaleX 0 -> 1, lin, fara salt). */
.bl-bar-fill{
  position:absolute;inset:0;transform-origin:left;transform:scaleX(0);
  border-radius:2px;
  background:linear-gradient(90deg,var(--accent),#ff9a4d);
  box-shadow:0 0 14px rgba(232,96,15,0.6);
}
@keyframes blBarIn{to{opacity:1;}}

@media (prefers-reduced-motion:reduce){
  .bl-logo{animation:none;clip-path:none;filter:none;opacity:1;background:#fff;}
  .bl-bar{opacity:1;animation:none;}
  .bl-bar-fill{animation:none;transform:scaleX(1);}
  .bl-inner,.bav-loader{transition:opacity 0.4s ease;}
  .bav-loader.is-done .bl-inner{transform:none;}
}

/* ── VEL DE BLUR PROGRESIV (sus + jos) ──
   backdrop-filter + masca-gradient: blur tare la margine, fade la clar spre centru.
   Continutul scrollat trece prin el (apare/dispare pe jumatate blurat). Sub nav (950),
   peste continut. pointer-events:none ca sa nu blocheze click/scroll. */
.scroll-veil{position:fixed;left:0;right:0;height:96px;z-index:800;pointer-events:none;transition:opacity 0.2s linear;}
.scroll-veil-top{
  top:0;
  -webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,0.80) 30%,transparent 100%);
          mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,0.80) 30%,transparent 100%);
}
.scroll-veil-bottom{
  bottom:0;
  -webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);
  -webkit-mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,0.80) 30%,transparent 100%);
          mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,0.80) 30%,transparent 100%);
}

/* ── NAV — Dynamic Island ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:950;
  display:flex;justify-content:center;align-items:flex-start;
  padding:14px 20px;
  pointer-events:none;
  background:none;backdrop-filter:none;-webkit-backdrop-filter:none;
}
.nav-island{
  pointer-events:all;
  position:relative;
  display:flex;align-items:center;gap:4px;
  width:100%;max-width:860px;
  background:linear-gradient(to bottom,rgba(255,255,255,0.10),rgba(255,255,255,0) 45%),rgba(20,20,24,0.60);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  border:1px solid rgba(255,255,255,0.12);
  border-top-color:rgba(255,255,255,0.38);
  border-radius:50px;
  padding:7px 8px 7px 16px;
  box-shadow:0 8px 32px rgba(0,0,0,0.45),inset 0 1px 0 rgba(255,255,255,0.28);
  transition:transform 0.45s cubic-bezier(0.34,1.56,0.64,1),opacity 0.35s ease;
}
nav.gallery-open .nav-island{
  transform:translateY(-22px) scale(0.50);
  opacity:0;
  pointer-events:none;
}
.nav-island::before{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(135deg,rgba(255,255,255,0.22) 0%,rgba(255,255,255,0.06) 35%,transparent 58%,rgba(255,255,255,0.08) 100%);
  pointer-events:none;
}
.nav-brand-tag{
  font-weight:700;font-size:0.65rem;letter-spacing:0.12em;text-transform:uppercase;
  color:rgba(255,255,255,0.55);margin-left:6px;flex-shrink:0;
  padding:4px 12px;border-radius:var(--r-pill);
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.09);
  display:flex;flex-direction:column;align-items:center;gap:1px;
}
.nav-brand-tag .t-accent{color:var(--accent);}
.nav-brand-sub{
  display:block;font-size:0.44rem;letter-spacing:0.08em;
  color:rgba(255,255,255,0.30);font-weight:500;
}
.nav-sep{
  width:1px;height:14px;background:rgba(255,255,255,0.10);
  flex-shrink:0;margin:0 8px;
}
.nav-logo{text-decoration:none;display:flex;align-items:center;flex-shrink:0;}
/* translateZ(0) = layer propriu randat la rezolutia device => SVG crisp, scapa de
   rasterizarea layer-ului de backdrop-filter al island-ului (pixelare pe retina). */
.nav-logo img{height:28px;width:auto;display:block;transition:opacity 0.25s;transform:translateZ(0);}
.nav-logo:hover img{opacity:0.55;}
.nav-links{flex:1;display:flex;align-items:center;justify-content:center;gap:0;}
.nav-link{
  font-weight:500;font-size:0.72rem;
  letter-spacing:0.06em;text-transform:uppercase;
  color:rgba(255,255,255,0.60);text-decoration:none;
  padding:7px 14px;border-radius:var(--r-pill);
  transition:color 0.2s,background 0.2s;white-space:nowrap;
}
.nav-link:hover{color:var(--white);background:rgba(255,255,255,0.07);}
.nav-link.active{color:var(--white);}
.nav-right{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.lang-switch{
  display:flex;align-items:center;
  position:relative;overflow:hidden;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:var(--r-pill);
  padding:3px;gap:0;
}
.lang-sep{display:none;}
.lang-switch-pill{
  position:absolute;top:3px;bottom:3px;left:3px;
  background:rgba(255,255,255,0.16);
  border-radius:var(--r-pill);
  box-shadow:0 1px 4px rgba(0,0,0,0.28),inset 0 1px 0 rgba(255,255,255,0.20);
  transition:transform 0.40s cubic-bezier(0.34,1.36,0.64,1);
  pointer-events:none;
}
.lang-btn{
  font-weight:700;font-size:0.58rem;letter-spacing:0.10em;text-transform:uppercase;
  color:rgba(255,255,255,0.38);background:none;border:none;cursor:pointer;
  transition:color 0.25s;
  padding:4px 9px;border-radius:var(--r-pill);
  min-width:34px;text-align:center;position:relative;z-index:1;
}
.lang-btn.sw-active{color:var(--white);}
.lang-btn:not(.sw-active):hover{color:rgba(255,255,255,0.65);}
.nav-mail{
  font-weight:600;font-size:0.68rem;letter-spacing:0.06em;text-transform:uppercase;
  color:var(--white);display:flex;align-items:center;gap:8px;
  background:rgba(232,96,15,0.13);
  border:1px solid rgba(232,96,15,0.28);border-top-color:rgba(232,96,15,0.48);
  border-radius:var(--r-pill);padding:8px 18px;cursor:pointer;
  box-shadow:0 0 12px 2px rgba(232,96,15,0.18),inset 0 1px 0 rgba(255,180,80,0.10);
  transition:background 0.2s,border-color 0.2s,box-shadow 0.2s;
}
.nav-mail:hover{background:rgba(232,96,15,0.22);border-color:rgba(232,96,15,0.55);animation:none;box-shadow:0 0 20px 4px rgba(232,96,15,0.28),inset 0 1px 0 rgba(255,180,80,0.18);}
.nav-mail svg{transition:transform 0.2s;}
.nav-mail:hover svg{transform:translateX(3px);}

/* ── HAMBURGER ── */
.nav-hamburger{
  display:none;flex-direction:column;gap:5px;
  background:none;border:none;cursor:pointer;padding:8px;
}
.nav-hamburger span{display:block;width:20px;height:1.5px;background:var(--white);border-radius:2px;transition:transform 0.3s,opacity 0.3s;}
.nav-hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.nav-hamburger.open span:nth-child(2){opacity:0;}
.nav-hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.nav-drawer{display:none;}

/* ── HERO ── */
/* ── HERO (full-bleed photo) ── */
#hero{
  position:relative;height:100vh;min-height:640px;overflow:hidden;
  display:block;padding:0;
}
.hero-bg{
  position:absolute;inset:0;z-index:0;
  background-size:cover;background-position:center 42%;background-repeat:no-repeat;
  transform:scale(1.0);animation:heroKen 16s ease-out both;
}
@keyframes heroKen{from{transform:scale(1.1);}to{transform:scale(1.0);}}
.hero-veil{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(to bottom,rgba(0,0,0,0.66) 0%,rgba(0,0,0,0.40) 30%,rgba(0,0,0,0.46) 62%,rgba(0,0,0,0.90) 100%),
    radial-gradient(130% 85% at 50% 46%,rgba(0,0,0,0.10) 28%,rgba(0,0,0,0.46) 100%);
}
.hero-inner{
  position:absolute;inset:0;z-index:2;
  display:flex;flex-direction:column;align-items:center;justify-content:space-between;
  text-align:center;padding:17vh 24px 38px;
}
.hero-top{display:flex;flex-direction:column;align-items:center;max-width:920px;}
.hero-title{
  font-weight:800;font-size:clamp(2.6rem,7vw,6.4rem);
  line-height:0.98;letter-spacing:-0.03em;color:var(--white);margin:0;
  text-shadow:0 2px 44px rgba(0,0,0,0.5);
  opacity:0;animation:fadeUp 1.0s 0.22s cubic-bezier(0.16,1,0.3,1) both;
}
.hero-bottom{
  display:flex;flex-direction:column;align-items:center;gap:30px;
  opacity:0;animation:fadeUp 1.0s 0.46s cubic-bezier(0.16,1,0.3,1) both;
}
.hero-cta-row{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;}
.hero-scroll{display:flex;flex-direction:column;align-items:center;gap:9px;}
.hero-scroll span{font-weight:600;font-size:0.52rem;letter-spacing:0.34em;text-transform:uppercase;color:rgba(255,255,255,0.62);}
.hero-scroll-line{
  width:1px;height:46px;background:linear-gradient(to bottom,rgba(255,255,255,0.55),transparent);
  transform-origin:top;animation:heroScrollPulse 1.9s ease-in-out infinite;
}
@keyframes heroScrollPulse{0%,100%{opacity:0.3;transform:scaleY(0.65);}50%{opacity:1;transform:scaleY(1);}}

/* ── BUTTONS ── */
.btn-primary{
  font-weight:600;font-size:0.70rem;letter-spacing:0.07em;text-transform:uppercase;
  color:var(--white);background:var(--accent);border:none;
  border-radius:var(--r-pill);padding:12px 26px;cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;
  box-shadow:0 4px 18px rgba(232,96,15,0.28),inset 0 1px 0 rgba(255,180,80,0.18);
  transition:background 0.2s,box-shadow 0.2s,transform 0.2s;
}
.btn-primary:hover{background:#ff7a1a;box-shadow:0 8px 28px rgba(232,96,15,0.38);transform:translateY(-1px);}
.btn-ghost{
  font-weight:600;font-size:0.70rem;letter-spacing:0.07em;text-transform:uppercase;
  color:rgba(255,255,255,0.68);
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);border-top-color:rgba(255,255,255,0.24);
  border-radius:var(--r-pill);padding:12px 26px;cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.14);
  transition:color 0.2s,background 0.2s,border-color 0.2s;
}
.btn-ghost:hover{color:var(--white);background:rgba(255,255,255,0.10);border-color:rgba(255,255,255,0.20);}
.btn-mail{
  font-weight:600;font-size:0.70rem;letter-spacing:0.07em;text-transform:uppercase;
  color:var(--white);background:rgba(232,96,15,0.13);
  border:1px solid rgba(232,96,15,0.30);border-top-color:rgba(232,96,15,0.50);
  border-radius:var(--r-pill);padding:12px 26px;cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;
  box-shadow:inset 0 1px 0 rgba(255,180,80,0.10);
  transition:background 0.2s,border-color 0.2s;
}
.btn-mail:hover{background:rgba(232,96,15,0.22);border-color:rgba(232,96,15,0.52);}

/* ── SECTION COMMONS ── */
section[id]{scroll-margin-top:80px;}
.section-label{
  font-weight:600;font-size:0.62rem;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--accent);margin-bottom:10px;
}
.section-title{
  font-weight:800;font-size:clamp(2rem,4vw,4.8rem);
  line-height:0.92;letter-spacing:-0.025em;color:var(--white);
}


/* ── SERVICII ── */
#servicii{
  padding:100px 60px 90px;position:relative;z-index:2;
}

.servicii-header{display:flex;flex-direction:column;max-width:1100px;margin:0 auto 44px;}
.srv-list{max-width:1100px;margin:0 auto;}
.srv-row-tools{display:flex;align-items:center;gap:8px;margin-top:10px;}
.srv-row-tools img{filter:brightness(0) invert(1);opacity:0.32;transition:opacity 0.2s;}
.srv-row:hover .srv-row-tools img{opacity:0.55;}
.srv-row{
  display:grid;grid-template-columns:56px 1fr 56px;align-items:start;gap:24px;
  padding:34px 0;border-top:1px solid rgba(255,255,255,0.07);
  cursor:pointer;position:relative;
  transition:border-top-color 0.3s;
}
.srv-row:last-child{border-bottom:1px solid rgba(255,255,255,0.07);}
.srv-row::before{
  content:'';position:absolute;left:-60px;top:0;bottom:0;
  width:3px;background:linear-gradient(to bottom,transparent,var(--accent),transparent);
  transform:scaleY(0);transform-origin:center;
  transition:transform 0.40s cubic-bezier(0.16,1,0.3,1);
}
.srv-row:hover::before{transform:scaleY(1);}
.srv-row:hover{border-top-color:rgba(232,96,15,0.25);}
.srv-row-num{
  font-weight:800;font-size:0.68rem;letter-spacing:0.12em;
  color:var(--text-4);transition:color 0.3s;
}
.srv-row:hover .srv-row-num{color:var(--accent);}
.srv-row-name{
  font-weight:700;font-size:clamp(1.6rem,3.2vw,3rem);
  letter-spacing:-0.025em;color:var(--text-2);
  line-height:1.0;margin-bottom:7px;
  transition:color 0.3s;
}
.srv-row:hover .srv-row-name{color:var(--white);}
.srv-row-tags{
  font-weight:500;font-size:0.65rem;letter-spacing:0.10em;
  text-transform:uppercase;color:var(--text-4);
  transition:color 0.3s;
}
.srv-row:hover .srv-row-tags{color:var(--text-3);}
.srv-row-arrow{
  width:50px;height:50px;border-radius:50%;
  border:1px solid rgba(255,255,255,0.10);
  display:flex;align-items:center;justify-content:center;
  color:var(--text-4);background:none;cursor:pointer;
  transition:background 0.3s,color 0.3s,border-color 0.3s,transform 0.35s,box-shadow 0.3s;
  flex-shrink:0;pointer-events:none;
  margin-top:7px;
}
.srv-row:hover .srv-row-arrow{
  background:rgba(232,96,15,0.18);border-color:rgba(232,96,15,0.35);
  color:var(--accent);
}
.srv-row.expanded .srv-row-arrow{
  background:var(--accent);border-color:var(--accent);
  color:var(--white);transform:rotate(45deg);
  box-shadow:0 4px 20px rgba(232,96,15,0.35);
}
/* Expand cu grid-template-rows 0fr→1fr = lin, fara reflow janky de max-height.
   GPU-friendly pe mobil. Continutul e in .srv-expand-inner (overflow clip). */
.srv-expand{
  display:grid;grid-template-rows:0fr;opacity:0;
  transition:grid-template-rows 0.42s cubic-bezier(0.16,1,0.3,1),opacity 0.32s;
}
.srv-expand-inner{overflow:hidden;min-height:0;}
.srv-row.expanded .srv-expand{grid-template-rows:1fr;opacity:1;}
.srv-row.expanded .srv-expand-inner{padding-top:18px;}
.srv-expand-desc{
  font-size:0.84rem;line-height:1.82;color:var(--text-2);margin-bottom:20px;
}
.srv-expand-actions{display:flex;align-items:center;gap:10px;}

/* ── PORTOFOLIU ── */
#portofoliu{padding:100px 60px;position:relative;z-index:2;background:var(--bg);}
.porto-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:56px;}
.porto-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:1100px;margin:0 auto;}
@keyframes sheen{0%{left:-150px;}50%,100%{left:150%;}}

.cat-card{
  position:relative;overflow:hidden;border-radius:var(--r);
  cursor:pointer;min-height:420px;
  isolation:isolate;
  border:1px solid var(--gb-border);
  box-shadow:var(--gb-shadow);
  transition:transform 0.5s cubic-bezier(0.23,1,0.32,1),box-shadow 0.5s;
}
.cat-card:hover{
  transform:translateY(-8px) scale(1.012);
  box-shadow:0 40px 80px rgba(0,0,0,0.65),0 0 0 1px rgba(255,255,255,0.10);
}
.cat-bg{
  position:absolute;inset:0;background-size:cover;background-position:center;
  transition:transform 0.8s cubic-bezier(0.23,1,0.32,1),filter 0.5s;
  filter:brightness(0.82) saturate(1.05);
}
.cat-card:hover .cat-bg{transform:scale(1.06);filter:brightness(0.90) saturate(1.15);}
.cat-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.25) 50%,transparent 100%);
}
.cat-glass-panel{
  position:absolute;bottom:16px;left:16px;right:16px;
  overflow:hidden;
  background:rgba(255,255,255,0.08);
  backdrop-filter:blur(60px) saturate(200%) brightness(1.10);-webkit-backdrop-filter:blur(60px) saturate(200%) brightness(1.10);
  border:1px solid rgba(255,255,255,0.14);border-top-color:rgba(255,255,255,0.36);
  border-radius:16px;padding:18px 20px;
  box-shadow:
    0 8px 28px rgba(0,0,0,0.50),
    inset 0 1px 0 rgba(255,255,255,0.30),
    inset 0 -1px 0 rgba(0,0,0,0.10),
    0 0 0 0.5px rgba(255,255,255,0.08);
  transition:transform 0.4s cubic-bezier(0.23,1,0.32,1);
}
.cat-card:hover .cat-glass-panel{transform:translateY(-4px);}
.cat-glass-panel::before{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(125deg,rgba(255,255,255,0.24) 0%,rgba(255,255,255,0.06) 38%,transparent 62%,rgba(255,255,255,0.09) 100%);
  pointer-events:none;z-index:0;
}
.cat-glass-panel::after{
  content:'';position:absolute;top:0;left:-150px;width:80px;height:100%;
  background:linear-gradient(to right,transparent,rgba(255,255,255,0.12),transparent);
  transform:skewX(-20deg);animation:sheen 5s ease-in-out infinite;
  pointer-events:none;z-index:1;
}
.cat-label{font-weight:600;font-size:0.58rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--accent);margin-bottom:4px;}
.cat-name{font-weight:700;font-size:1.35rem;letter-spacing:-0.01em;color:var(--white);line-height:1.1;}
.cat-count{font-weight:500;font-size:0.58rem;letter-spacing:0.10em;text-transform:uppercase;color:rgba(255,255,255,0.32);margin-top:4px;}
.cat-arrow{
  position:absolute;top:16px;right:16px;
  width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,0.07);
  border:1px solid rgba(255,255,255,0.10);border-top-color:rgba(255,255,255,0.20);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,0.50);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.12);
  transition:background 0.25s,color 0.25s,border-color 0.25s,transform 0.35s;
}
.cat-card:hover .cat-arrow{
  background:var(--accent);border-color:var(--accent);
  color:var(--white);transform:rotate(45deg);
  box-shadow:0 4px 14px rgba(232,96,15,0.32);
}

/* ── SLIDESHOW — 3-image carousel ── */
#slideshow{
  position:fixed;inset:0;z-index:900;
  opacity:0;pointer-events:none;
  transition:opacity 0.35s;
  overflow:hidden;
  backdrop-filter:blur(26px) saturate(140%);
  -webkit-backdrop-filter:blur(26px) saturate(140%);
}
#slideshow.open{opacity:1;pointer-events:all;}
.ss-backdrop{
  position:absolute;inset:0;z-index:0;
  background:rgba(0,0,0,0.52);
}
.ss-x{
  position:absolute;top:20px;right:20px;z-index:10;
  width:40px;height:40px;border-radius:50%;
  background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.12);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,0.65);cursor:pointer;
  transition:background 0.2s,color 0.2s;
}
.ss-x:hover{background:rgba(232,96,15,0.30);color:var(--white);}
.ss-stage{
  position:absolute;inset:0;z-index:1;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;pointer-events:none;
}
.ss-img{
  position:absolute;
  max-width:72vw;max-height:52vh;
  object-fit:contain;display:block;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.12);
  border-top-color:rgba(255,255,255,0.24);
  box-shadow:0 24px 70px rgba(0,0,0,0.65),0 0 0 1px rgba(255,255,255,0.04);
  will-change:transform,opacity;
  -webkit-user-drag:none;
  user-drag:none;
}
#slideshow.open{cursor:grab;}
#slideshow.open:active{cursor:grabbing;}
.ss-info{
  position:absolute;bottom:28px;left:50%;transform:translateX(-50%);
  z-index:5;display:flex;align-items:center;gap:10px;
  background:rgba(0,0,0,0.45);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,0.07);border-radius:10px;padding:8px 16px;
  white-space:nowrap;pointer-events:none;
}
.ss-cat{font-weight:600;font-size:0.58rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent);}
.ss-num{font-weight:500;font-size:0.58rem;letter-spacing:0.10em;color:rgba(255,255,255,0.28);}

/* ── DESPRE ── */
#despre{
  padding:100px 60px;position:relative;z-index:2;
  background:
    radial-gradient(ellipse 80% 60% at 30% 50%,rgba(232,96,15,0.05) 0%,transparent 65%),
    var(--bg);
}
.despre-inner{display:grid;grid-template-columns:1fr 1.15fr;gap:14px;max-width:1100px;margin:0 auto;align-items:stretch;}
@keyframes despFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-8px);}}
.despre-photo-card{
  position:relative;overflow:hidden;border-radius:var(--r-lg);
  border:1px solid var(--gb-border);border-top-color:var(--gb-spec);
  box-shadow:var(--gb-shadow);min-height:520px;
}
.despre-photo-card.visible{}
.despre-photo-card img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(0.86) contrast(1.05) saturate(0.90);}
.despre-name-tag{
  position:absolute;bottom:16px;left:16px;right:16px;overflow:hidden;
  background:rgba(255,255,255,0.09);
  backdrop-filter:blur(48px) saturate(200%) brightness(1.08);-webkit-backdrop-filter:blur(48px) saturate(200%) brightness(1.08);
  border:1px solid rgba(255,255,255,0.14);border-top-color:rgba(255,255,255,0.32);
  border-radius:14px;padding:14px 18px;
  box-shadow:0 8px 28px rgba(0,0,0,0.40),inset 0 1px 0 rgba(255,255,255,0.28),inset 0 -1px 0 rgba(0,0,0,0.08);
}
.despre-name-tag::before{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(125deg,rgba(255,255,255,0.22) 0%,rgba(255,255,255,0.05) 45%,transparent 68%);
  pointer-events:none;
}
.despre-name-tag > *{position:relative;z-index:1;}
.despre-name-tag-name{font-weight:700;font-size:1.15rem;letter-spacing:-0.01em;color:var(--white);}
.despre-name-tag-role{font-weight:600;font-size:0.58rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--accent);margin-top:3px;}
.despre-bio-card{
  position:relative;overflow:hidden;border-radius:var(--r-lg);
  padding:48px 44px;
  background:var(--gb);
  backdrop-filter:var(--gb-blur);-webkit-backdrop-filter:var(--gb-blur);
  border:1px solid var(--gb-border);border-top-color:var(--gb-spec);
  box-shadow:var(--gb-shadow);
  display:flex;flex-direction:column;justify-content:center;
}
.despre-bio-card::before{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(135deg,rgba(255,255,255,0.14) 0%,rgba(255,255,255,0.03) 40%,transparent 65%);
  pointer-events:none;z-index:0;
}
.despre-bio-card > *{position:relative;z-index:1;}
@keyframes despStagger{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}
.despre-label{font-weight:600;font-size:0.60rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;}
.despre-title{font-weight:800;font-size:clamp(1.9rem,3.2vw,3.2rem);letter-spacing:-0.02em;color:var(--white);line-height:0.94;margin-bottom:20px;}
.despre-sub{font-weight:500;font-size:0.68rem;letter-spacing:0.10em;text-transform:uppercase;color:var(--text-3);margin-bottom:20px;}
.despre-text{font-size:0.88rem;line-height:1.82;color:var(--text-2);margin-bottom:30px;}
.despre-text strong{color:var(--text-1);font-weight:600;}
.despre-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px;}
.despre-bio-card.visible .despre-label{animation:despStagger 0.6s 0.15s both;}
.despre-bio-card.visible .despre-title{animation:despStagger 0.65s 0.28s both;}
.despre-bio-card.visible .despre-sub{animation:despStagger 0.6s 0.38s both;}
.despre-bio-card.visible .despre-text{animation:despStagger 0.65s 0.50s both;}
.despre-bio-card.visible .despre-tools{animation:despStagger 0.6s 0.62s both;}
.despre-bio-card.visible > div:last-child{animation:despStagger 0.6s 0.72s both;}
.despre-tool{
  display:flex;align-items:center;gap:7px;
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-top-color:rgba(255,255,255,0.14);
  border-radius:11px;padding:7px 12px;
  font-weight:600;font-size:0.64rem;letter-spacing:0.07em;text-transform:uppercase;
  color:rgba(255,255,255,0.55);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
}
.despre-tool img{filter:brightness(0) invert(1);opacity:0.68;}

/* ── TESTIMONIALE ── */
#testimoniale{padding:100px 60px;position:relative;z-index:2;background:var(--bg);}
.test-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:56px;}
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:1100px;margin:0 auto;}
.test-card{
  position:relative;overflow:hidden;
  padding:34px 30px;border-radius:var(--r);
  background:var(--gb);backdrop-filter:var(--gb-blur);-webkit-backdrop-filter:var(--gb-blur);
  border:1px solid var(--gb-border);border-top-color:var(--gb-spec);
  box-shadow:var(--gb-shadow);
}
.test-card::before{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(135deg,rgba(255,255,255,0.12) 0%,rgba(255,255,255,0.03) 42%,transparent 65%);
  pointer-events:none;
}
.test-card > *{position:relative;z-index:1;}
.test-quote{font-size:0.90rem;line-height:1.84;color:var(--text-2);font-style:italic;margin-bottom:20px;}
.test-name{font-weight:700;font-size:0.95rem;letter-spacing:-0.01em;color:var(--white);}
.test-role{font-weight:500;font-size:0.58rem;letter-spacing:0.10em;text-transform:uppercase;color:var(--text-3);margin-top:4px;}

/* ── CTA ── */
#cta{
  padding:120px 60px;position:relative;z-index:2;
  display:flex;flex-direction:column;align-items:center;text-align:center;
  background:
    radial-gradient(ellipse 80% 90% at 50% 60%,rgba(232,96,15,0.08) 0%,transparent 65%),
    var(--bg);
}
.cta-inner{
  max-width:760px;width:100%;
  background:var(--gb);backdrop-filter:var(--gb-blur);-webkit-backdrop-filter:var(--gb-blur);
  border:1px solid var(--gb-border);border-top-color:var(--gb-spec);
  box-shadow:var(--gb-shadow);
  border-radius:var(--r-lg);padding:72px 56px;
  position:relative;overflow:hidden;
}
.cta-inner::before{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(135deg,rgba(255,255,255,0.16) 0%,rgba(255,255,255,0.04) 40%,transparent 65%,rgba(255,255,255,0.06) 100%);
  pointer-events:none;z-index:0;
}
.cta-inner::after{
  content:'';position:absolute;top:0;left:0;right:0;height:45%;
  border-radius:inherit;
  background:linear-gradient(to bottom,rgba(255,255,255,0.08) 0%,transparent 100%);
  pointer-events:none;z-index:1;
}
.cta-inner > *{position:relative;z-index:2;}
.cta-title{
  font-weight:800;font-size:clamp(2rem,5vw,5rem);
  letter-spacing:-0.03em;color:var(--white);line-height:0.92;margin-bottom:14px;
}
.cta-sub{
  font-weight:500;font-size:0.70rem;letter-spacing:0.10em;text-transform:uppercase;
  color:var(--text-3);margin-bottom:38px;
}
.cta-row{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;}

/* ── CLIENTS ── */
#clients{padding:52px 60px;position:relative;z-index:2;overflow:hidden;}
.clients-inner{display:flex;align-items:center;gap:36px;max-width:1100px;margin:0 auto;}
.clients-label{flex-shrink:0;font-weight:600;font-size:0.56rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-4);white-space:nowrap;}
.clients-track{flex:1;display:flex;align-items:center;justify-content:space-between;gap:36px;overflow:hidden;mask-image:linear-gradient(to right,transparent,black 4%,black 96%,transparent);padding:0 20px;}
.client-item{flex-shrink:0;text-decoration:none;font-weight:700;font-size:1.1rem;letter-spacing:0.04em;color:rgba(255,255,255,0.18);transition:color 0.3s,opacity 0.3s;display:flex;align-items:center;}
.client-item:hover{color:rgba(255,255,255,0.50);}
.client-item img{height:28px;width:auto;display:block;filter:brightness(0) invert(1);opacity:0.45;transition:opacity 0.3s;}
.client-item:hover img{opacity:0.9;}

/* ── FOOTER ── */
footer{
  position:relative;z-index:2;
  border-top:1px solid rgba(255,255,255,0.06);
  padding:60px 60px 34px;
  background:linear-gradient(to top,rgba(0,0,0,0.98),transparent);
}
.footer-main{display:grid;grid-template-columns:1fr auto;gap:44px;align-items:start;margin-bottom:44px;}
.footer-logo{text-decoration:none;display:block;}
.footer-logo img{height:28px;width:auto;opacity:0.65;transition:opacity 0.25s;transform:translateZ(0);}
.footer-logo:hover img{opacity:1;}
.footer-tagline{font-weight:500;font-size:0.64rem;letter-spacing:0.10em;text-transform:uppercase;color:var(--text-4);margin-top:12px;}
.footer-contact{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:12px;text-align:right;}
.footer-contact-label{font-weight:600;font-size:0.56rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-4);}
/* Buton contact = stil identic cu .nav-mail din header (ghost portocaliu + sageata) */
.footer-contact-btn{
  font-weight:600;font-size:0.68rem;letter-spacing:0.06em;text-transform:uppercase;
  color:var(--white);display:inline-flex;align-items:center;gap:8px;
  background:rgba(232,96,15,0.13);
  border:1px solid rgba(232,96,15,0.28);border-top-color:rgba(232,96,15,0.48);
  border-radius:var(--r-pill);padding:11px 22px;cursor:pointer;
  box-shadow:0 0 12px 2px rgba(232,96,15,0.18),inset 0 1px 0 rgba(255,180,80,0.10);
  transition:background 0.2s,border-color 0.2s,box-shadow 0.2s;
}
.footer-contact-btn:hover{background:rgba(232,96,15,0.22);border-color:rgba(232,96,15,0.55);box-shadow:0 0 20px 4px rgba(232,96,15,0.28),inset 0 1px 0 rgba(255,180,80,0.18);}
.footer-contact-btn svg{transition:transform 0.2s;}
.footer-contact-btn:hover svg{transform:translateX(3px);}
.footer-mid{display:flex;align-items:center;gap:18px;padding:20px 0;border-top:1px solid rgba(255,255,255,0.05);border-bottom:1px solid rgba(255,255,255,0.05);margin-bottom:24px;}
.footer-socials{display:flex;gap:8px;}
.footer-soc{
  width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  color:rgba(255,255,255,0.38);text-decoration:none;
  transition:background 0.2s,color 0.2s,border-color 0.2s;
}
.footer-soc:hover{background:rgba(232,96,15,0.12);border-color:rgba(232,96,15,0.25);color:var(--accent);}
.footer-divider{flex:1;height:1px;background:rgba(255,255,255,0.05);}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.footer-copy{font-weight:500;font-size:0.58rem;letter-spacing:0.10em;text-transform:uppercase;color:var(--text-4);}
.footer-legal{display:flex;gap:14px;}
.footer-legal-link{font-weight:500;font-size:0.58rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-4);text-decoration:none;transition:color 0.2s;}
.footer-legal-link:hover{color:var(--text-3);}

/* ── CONTACT MODAL ── */
.contact-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;pointer-events:none;}
.contact-modal.open{pointer-events:all;}
.contact-modal-overlay{
  position:absolute;inset:0;
  background:rgba(0,0,0,0);
  backdrop-filter:blur(0px) saturate(140%);-webkit-backdrop-filter:blur(0px) saturate(140%);
  transition:background 0.45s ease,backdrop-filter 0.45s ease;
}
.contact-modal.open .contact-modal-overlay{
  background:rgba(0,0,0,0.58);
  backdrop-filter:blur(8px) saturate(140%);-webkit-backdrop-filter:blur(8px) saturate(140%);
}
.contact-modal-box{
  position:relative;z-index:1;width:100%;max-width:420px;margin:20px;overflow:hidden;
  background:rgba(10,10,16,0.55);
  backdrop-filter:blur(0px) saturate(200%) brightness(1.10);-webkit-backdrop-filter:blur(0px) saturate(200%) brightness(1.10);
  border:1px solid rgba(255,255,255,0.12);border-top-color:rgba(255,255,255,0.30);
  border-radius:24px;padding:40px 32px 32px;
  box-shadow:
    0 40px 100px rgba(0,0,0,0.60),
    inset 0 1px 0 rgba(255,255,255,0.34),
    inset 0 -1px 0 rgba(0,0,0,0.12),
    0 0 0 1px rgba(255,255,255,0.06);
  opacity:0;
  transform:translateY(22px) scale(0.96);
  transition:transform 0.42s cubic-bezier(0.34,1.56,0.64,1),opacity 0.32s ease,backdrop-filter 0.45s ease;
  will-change:transform;
}
.contact-modal-box::before{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(135deg,rgba(255,255,255,0.20) 0%,rgba(255,255,255,0.05) 38%,transparent 62%,rgba(255,255,255,0.07) 100%);
  pointer-events:none;z-index:0;
}
.contact-modal-box > *{position:relative;z-index:1;}
.contact-modal.open .contact-modal-box{
  opacity:1;
  transform:none;
  backdrop-filter:blur(48px) saturate(200%) brightness(1.10);
  -webkit-backdrop-filter:blur(48px) saturate(200%) brightness(1.10);
}
.contact-modal-label{font-weight:600;font-size:0.58rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;}
.contact-modal-title{font-weight:800;font-size:1.75rem;letter-spacing:-0.02em;color:var(--white);margin-bottom:24px;line-height:1.1;}
.contact-opts{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;}
.contact-opt{
  display:flex;align-items:center;gap:12px;
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-top-color:rgba(255,255,255,0.14);
  border-radius:14px;padding:12px 16px;text-decoration:none;
  transition:background 0.2s,border-color 0.2s,transform 0.2s;
}
.contact-opt:hover{background:rgba(255,255,255,0.07);border-color:rgba(255,255,255,0.14);transform:translateX(3px);}
.contact-opt-icon{
  width:38px;height:38px;border-radius:11px;flex-shrink:0;
  background:rgba(232,96,15,0.12);border:1px solid rgba(232,96,15,0.20);border-top-color:rgba(232,96,15,0.36);
  display:flex;align-items:center;justify-content:center;color:var(--accent);
  box-shadow:0 4px 12px rgba(232,96,15,0.08);
}
.contact-opt-name{font-weight:600;font-size:0.70rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--white);}
.contact-opt-val{font-size:0.78rem;color:var(--text-3);margin-top:2px;}
.contact-email-copy{
  margin-left:auto;flex-shrink:0;
  width:30px;height:30px;border-radius:8px;
  background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.09);
  color:var(--text-3);display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:background 0.18s,color 0.18s,border-color 0.18s;
}
.contact-email-copy:hover{background:rgba(232,96,15,0.12);border-color:rgba(232,96,15,0.28);color:var(--accent);}
.contact-modal-close-btn{
  width:100%;padding:11px;border-radius:12px;
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);border-top-color:rgba(255,255,255,0.12);
  font-weight:600;font-size:0.64rem;letter-spacing:0.08em;text-transform:uppercase;
  color:var(--text-3);cursor:pointer;
  transition:background 0.2s,color 0.2s;
}
.contact-modal-close-btn:hover{background:rgba(255,255,255,0.07);color:var(--white);}

/* ── SCROLL REVEAL ── */
.reveal{opacity:0;transform:translateY(22px);transition:opacity 0.75s cubic-bezier(0.16,1,0.3,1),transform 0.75s cubic-bezier(0.16,1,0.3,1);}
.reveal.visible{opacity:1;transform:none;}

.reveal.d1{transition-delay:0.10s;}
.reveal.d2{transition-delay:0.20s;}
.reveal.d3{transition-delay:0.30s;}

/* ── KEYFRAMES ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:none;}}
@keyframes heroScroll{from{opacity:0;transform:translateX(-50%) translateY(14px);}to{opacity:1;transform:translateX(-50%);}}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  nav{padding:10px 12px;}
  /* logo la stanga, grupul lang+hamburger lipit la dreapta (nu mai inghesuit stanga) */
  .nav-island{max-width:100%;padding:7px 10px 7px 16px;gap:1px;justify-content:space-between;}
  .nav-brand-tag{display:none;}
  .nav-sep{display:none;}
  .nav-links{display:none;}
  .nav-right{gap:14px;}
  .nav-hamburger{display:flex;}
  .nav-mail{display:none;}

  .nav-drawer{
    position:fixed;inset:0;z-index:590;
    background:rgba(0,0,0,0.97);
    backdrop-filter:blur(60px);-webkit-backdrop-filter:blur(60px);
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;
    pointer-events:none;opacity:0;transition:opacity 0.28s;
  }
  .nav-drawer.open{pointer-events:all;opacity:1;}
  .nav-drawer .nav-link{
    font-size:2.4rem;font-weight:800;letter-spacing:-0.02em;padding:12px 44px;
    display:block;text-align:center;background:none;color:rgba(255,255,255,0.55);
  }
  .nav-drawer .nav-link:hover{color:var(--white);}
  .nav-drawer .lang-row{display:flex;gap:14px;margin-top:24px;}
  .nav-drawer-contact{
    margin-top:28px;padding:14px 32px;border-radius:40px;
    background:var(--accent);color:#000;font-weight:700;font-size:1rem;
    border:none;letter-spacing:0.01em;
  }

  #hero{height:100svh;min-height:560px;}
  .hero-bg{background-position:center 40%;}
  .hero-inner{padding:13vh 20px 32px;}
  .hero-title{font-size:clamp(2.4rem,11vw,4rem);}
  .srv-row::before{display:none;}

  #servicii{padding:72px 22px 60px;}
  .servicii-grid{grid-template-columns:1fr;gap:10px;}

  #portofoliu{padding:72px 22px;}
  .porto-grid{grid-template-columns:1fr;gap:10px;}
  .cat-card{min-height:280px;}

  #despre{padding:72px 22px;}
  .despre-inner{grid-template-columns:1fr;gap:10px;}
  .despre-photo-card{min-height:380px;}
  .despre-bio-card{padding:32px 26px;}

  #testimoniale{padding:72px 22px;}
  .test-grid{grid-template-columns:1fr;gap:10px;}

  #cta{padding:80px 22px;}
  .cta-inner{padding:48px 26px;}

  /* Clienti: label sus + logos wrap centrat = TOTI vizibili (nu mai sunt taiati de track) */
  #clients{padding:40px 22px;}
  .clients-inner{flex-direction:column;gap:18px;align-items:center;}
  .clients-label{text-align:center;}
  .clients-track{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px 26px;overflow:visible;mask-image:none;-webkit-mask-image:none;padding:0;width:100%;}
  /* inaltime fixa mica + latime naturala (SVG-urile colapsau la height:auto). Toti incap si se vad. */
  .client-item img{height:21px!important;width:auto!important;max-width:none!important;}
  .client-item:nth-child(1) img{height:30px!important;} /* oaia = icon, mai mare ca sa se vada */

  /* Footer: coloana curata, fara linia goala care se intindea */
  footer{padding:44px 22px 30px;}
  .footer-main{grid-template-columns:1fr;gap:24px;}
  .footer-contact{align-items:flex-start;text-align:left;}
  .footer-mid{justify-content:space-between;gap:16px;}
  .footer-divider{display:none;}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:8px;}

  .ss-nav{opacity:0.80;width:36px;height:36px;}
  .ss-prev{left:10px;}
  .ss-next{right:10px;}
  .ss-img{max-width:92vw;max-height:80vh;}
}

@media(max-width:600px){
  .hero-title{font-size:clamp(2.8rem,16vw,5rem);}
  .cta-row{flex-direction:column;align-items:stretch;}
  .cta-row .btn-primary,.cta-row .btn-mail{justify-content:center;}
  .ss-img{max-width:92vw;max-height:64vh;}
}

@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .nav-island{background:rgba(20,20,24,0.92);}
}

/* ── MOBILE PERFORMANCE ── */
@media(pointer:coarse),(max-width:900px){
  /* Kill noise texture fixed layer = cauza #1 de compositing overhead */
  body::before{display:none;}
  /* Native momentum scroll pe mobile */
  html{scroll-behavior:auto;}

  /* Vel de blur progresiv = radius mai mic + mai scurt pe mobil (backdrop-filter in timpul
     scroll-ului e cel mai scump caz GPU; tinem efectul dar ieftin). */
  .scroll-veil{height:100px;}
  .scroll-veil-top,.scroll-veil-bottom{
    -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  }

  /* Nav fix = solid pe mobil (FARA backdrop-filter). Pe element FIX backdrop-filter
     se re-randeaza la fiecare frame de scroll/reflow = lag la deschiderea rolldown-ului
     Servicii. Fake-glass (gradient+luciu) arata aproape la fel, zero cost. */
  .nav-island{
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    background:linear-gradient(to bottom,rgba(255,255,255,0.07),rgba(255,255,255,0) 45%),rgba(10,10,14,0.94)!important;
  }
  /* Nav drawer: deja solid, scoate blur */
  .nav-drawer{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}

  /* Hero: arata imediat fara delay de animatie */
  .hero-title,.hero-bottom,.hero-bg{
    animation:none!important;opacity:1!important;transform:none!important;
  }
  /* Butoane: scoate blur */
  .btn-ghost{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}

  /* Portfolio cards: Liquid Glass restaurat (blur moderat peste poza cardului) */
  .cat-glass-panel{
    backdrop-filter:blur(14px) saturate(150%)!important;-webkit-backdrop-filter:blur(14px) saturate(150%)!important;
    background:linear-gradient(158deg,rgba(40,40,50,0.42) 0%,rgba(14,14,19,0.58) 100%)!important;
  }
  .cat-glass-panel::after{animation:none!important;}
  .cat-card:hover{transform:none!important;}

  /* Slideshow: blur de fundal PASTRAT pe mobil — cand galeria e deschisa scroll-ul e
     blocat, deci pagina din spate e INGHETATA => backdrop-filter se randeaza o data, ieftin.
     (Per-frame blur pe poze e oprit din JS prin SS_MOBILE.) */
  #slideshow{backdrop-filter:blur(20px) saturate(140%)!important;-webkit-backdrop-filter:blur(20px) saturate(140%)!important;}
  .ss-x{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
  .ss-info{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:rgba(0,0,0,0.65);}

  /* Despre: name-tag Liquid Glass restaurat */
  .despre-name-tag{
    backdrop-filter:blur(14px) saturate(150%)!important;-webkit-backdrop-filter:blur(14px) saturate(150%)!important;
    background:linear-gradient(158deg,rgba(40,40,50,0.44) 0%,rgba(14,14,19,0.60) 100%)!important;
  }
  .despre-bio-card{
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    background:rgba(255,255,255,0.04)!important;
  }
  /* Disable staggered animations in bio card */
  .despre-bio-card.visible .despre-label,
  .despre-bio-card.visible .despre-title,
  .despre-bio-card.visible .despre-sub,
  .despre-bio-card.visible .despre-text,
  .despre-bio-card.visible .despre-tools,
  .despre-bio-card.visible > div:last-child{
    animation:none!important;opacity:1!important;transform:none!important;
  }
  .despre-tool{
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    padding:8px 14px!important;font-size:0.68rem!important;
  }

  /* Testimoniale cards: solid */
  .test-card{
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    background:rgba(255,255,255,0.04)!important;
  }

  /* CTA: solid in loc de glass */
  .cta-inner{
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    background:rgba(255,255,255,0.04)!important;
  }

  /* Reveal: mai rapid, fara delay + blur-in stil Navarro (doar mobil;
     pe desktop reveal-ul sectiunilor e controlat de scroll.js/ScrollTrigger) */
  .reveal{transition:filter 0.45s ease, opacity 0.45s ease, transform 0.45s ease!important;filter:blur(7px);}
  .reveal.visible{filter:blur(0px);}
  .reveal.d1,.reveal.d2,.reveal.d3{transition-delay:0s!important;}
}
