*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --night:#0b1120;
  --soil:#1a0e05;
  --dirt1:#3d2b1a;
  --dirt2:#5c3f27;
  --dirt3:#7a5234;
  --pipe-blue:#1e6fa8;
  --pipe-glow:#4db8ff;
  --orange:#ff6a00;
  --orange2:#ff9d45;
  --yellow:#ffd000;
  --sky1:#0f2850;
  --sky2:#1a3d72;
  --white:#ffffff;
  --gray:#8a9bb0;
}
html{scroll-behavior:smooth}
body{font-family:'Barlow',sans-serif;background:var(--night);color:var(--white);overflow-x:hidden}

/* ── SCROLL RULER ── */
.scroll-ruler{
  position:fixed;top:0;left:0;right:0;
  height:5px;z-index:300;
  background:rgba(11,17,32,.55);
  pointer-events:none;
}
.scroll-ruler-tape{
  height:100%;width:0%;
  background-color:var(--orange);
  background-image:
    repeating-linear-gradient(90deg,
      transparent 0,transparent 24px,
      rgba(0,0,0,.45) 24px,rgba(0,0,0,.45) 25px
    ),
    repeating-linear-gradient(90deg,
      transparent 0,transparent 4px,
      rgba(0,0,0,.18) 4px,rgba(0,0,0,.18) 5px
    );
  position:relative;will-change:width;
}
.scroll-ruler-tape::after{
  content:'';position:absolute;right:0;top:0;bottom:0;
  width:2px;background:white;opacity:.65;
}

/* ══════════════════════════════
   NAV
══════════════════════════════ */
nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  height:64px;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 5%;
  background:rgba(11,17,32,0.92);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(255,106,0,0.2);
}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo-box{display:none}
.logo img{filter:drop-shadow(0 0 10px rgba(255,160,40,.35)) drop-shadow(0 0 3px rgba(255,255,255,.2))}
.logo-name{font-family:'Bebas Neue',sans-serif;font-size:24px;letter-spacing:3px;color:white;line-height:1}
.logo-tag{font-size:9px;color:rgba(255,255,255,0.4);letter-spacing:2px;text-transform:uppercase;display:block}
.nav-links{display:flex;gap:28px;list-style:none}
.nav-links a{color:rgba(255,255,255,0.65);text-decoration:none;font-size:12px;font-weight:600;letter-spacing:2px;text-transform:uppercase;transition:color .2s}
.nav-links a:hover{color:var(--orange)}
.nav-btn{background:var(--orange);color:white!important;padding:8px 18px!important;clip-path:polygon(0 0,92% 0,100% 100%,8% 100%);transition:background .2s!important}
.nav-btn:hover{background:var(--orange2)!important}

/* ══════════════════════════════
   HERO — FULL SCENE
══════════════════════════════ */
#hero{
  position:relative;
  height:100vh;min-height:600px;
  display:flex;align-items:center;
  overflow:hidden;
  padding-top:64px;
  padding-bottom:80px;
}

/* SKY gradient */
.sky{
  position:absolute;inset:0;
  background:linear-gradient(180deg,#060d1a 0%,#0f2346 40%,#1a3d72 75%,#22314a 100%);
}

/* Stars */
.stars{position:absolute;inset:0;overflow:hidden}
.star{position:absolute;background:white;border-radius:50%;animation:twinkle var(--d,3s) ease-in-out infinite var(--dl,0s)}
@keyframes twinkle{0%,100%{opacity:.8}50%{opacity:.2}}

/* Moon */
.moon{
  position:absolute;top:12%;right:12%;
  width:60px;height:60px;
  background:radial-gradient(circle at 35% 35%,#fffde0,#ffd54f);
  border-radius:50%;
  box-shadow:0 0 30px 8px rgba(255,213,79,.25),0 0 80px 20px rgba(255,213,79,.1);
  animation:moonGlow 4s ease-in-out infinite;
}
@keyframes moonGlow{0%,100%{box-shadow:0 0 30px 8px rgba(255,213,79,.25),0 0 80px 20px rgba(255,213,79,.1)}50%{box-shadow:0 0 40px 12px rgba(255,213,79,.35),0 0 100px 30px rgba(255,213,79,.15)}}

/* City silhouette */
.city{
  position:absolute;bottom:38%;left:0;right:0;
  height:120px;
  background:
    linear-gradient(transparent 0%,transparent 100%) center/0 0,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='120'%3E%3Crect x='10' y='60' width='30' height='60' fill='%230d1e3a'/%3E%3Crect x='15' y='40' width='20' height='20' fill='%230d1e3a'/%3E%3Crect x='50' y='70' width='25' height='50' fill='%230d1e3a'/%3E%3Crect x='80' y='50' width='40' height='70' fill='%230d1e3a'/%3E%3Crect x='85' y='35' width='30' height='15' fill='%230d1e3a'/%3E%3Crect x='90' y='20' width='3' height='15' fill='%230d1e3a'/%3E%3Crect x='130' y='65' width='20' height='55' fill='%230d1e3a'/%3E%3Crect x='160' y='55' width='35' height='65' fill='%230d1e3a'/%3E%3Crect x='200' y='75' width='22' height='45' fill='%230d1e3a'/%3E%3Crect x='230' y='45' width='50' height='75' fill='%230d1e3a'/%3E%3Crect x='240' y='30' width='30' height='15' fill='%230d1e3a'/%3E%3Crect x='290' y='70' width='28' height='50' fill='%230d1e3a'/%3E%3Crect x='325' y='60' width='35' height='60' fill='%230d1e3a'/%3E%3Crect x='365' y='72' width='25' height='48' fill='%230d1e3a'/%3E%3C/svg%3E") repeat-x bottom;
  opacity:.7;
}

/* Ground layers */
.ground-surface{
  position:absolute;bottom:32%;left:0;right:0;height:16px;
  background:linear-gradient(180deg,#4a3520,#3a2810);
  border-top:2px solid #6b4c2e;
}
.ground-body{
  position:absolute;bottom:0;left:0;right:0;top:68%;
  background:linear-gradient(180deg,#2e1e0f 0%,#1e1208 50%,#130c05 100%);
}

/* Trench */
.trench{
  position:absolute;bottom:32%;
  left:30%;width:42%;
  height:120px;
  background:linear-gradient(180deg,#1a0e05 0%,#0d0802 100%);
  border-left:3px solid #5c3f27;
  border-right:3px solid #5c3f27;
  overflow:hidden;
}
.trench-layer{
  position:absolute;left:0;right:0;height:18px;
  opacity:.6;
}
.trench-layer:nth-child(1){top:0;background:repeating-linear-gradient(90deg,#3d2b1a 0,#3d2b1a 8px,#2e1e0f 8px,#2e1e0f 16px)}
.trench-layer:nth-child(2){top:20px;background:repeating-linear-gradient(90deg,#5c3f27 0,#5c3f27 6px,#3d2b1a 6px,#3d2b1a 12px)}
.trench-layer:nth-child(3){top:42px;background:repeating-linear-gradient(90deg,#2e1e0f 0,#2e1e0f 10px,#1a0e05 10px,#1a0e05 20px)}

/* Pipe in trench */
.pipe-in-trench{
  position:absolute;
  left:4%;right:4%;
  bottom:10px;height:24px;
  border-radius:12px;
  background:linear-gradient(180deg,#2a7fc4 0%,#1a5fa8 40%,#0f3d72 100%);
  border:1.5px solid rgba(77,184,255,.4);
  box-shadow:0 0 12px rgba(77,184,255,.3),inset 0 3px 0 rgba(255,255,255,.15);
  overflow:hidden;
}
/* Water flow animation inside pipe */
.pipe-flow{
  position:absolute;top:0;bottom:0;width:300%;
  background:repeating-linear-gradient(90deg,
    transparent 0,transparent 40px,
    rgba(77,184,255,.3) 40px,rgba(77,184,255,.3) 80px
  );
  animation:pipeFlow 1.2s linear infinite;
}
@keyframes pipeFlow{from{transform:translateX(0)}to{transform:translateX(-80px)}}

/* Pipe extending left from trench */
.pipe-left{
  position:absolute;
  right:100%;bottom:10px;
  width:35%;height:24px;
  border-radius:12px 0 0 12px;
  background:linear-gradient(180deg,#2a7fc4 0%,#1a5fa8 40%,#0f3d72 100%);
  border:1.5px solid rgba(77,184,255,.4);
  box-shadow:0 0 12px rgba(77,184,255,.3);
}
/* Pipe extending right */
.pipe-right{
  position:absolute;
  left:100%;bottom:10px;
  width:35%;height:24px;
  border-radius:0 12px 12px 0;
  background:linear-gradient(180deg,#2a7fc4,#1a5fa8,#0f3d72);
  border:1.5px solid rgba(77,184,255,.4);
  box-shadow:0 0 12px rgba(77,184,255,.3);
  overflow:hidden;
}
.pipe-right .pipe-flow{animation:pipeFlow 1.2s linear infinite}

/* Dirt pile next to trench */
.dirt-pile{
  position:absolute;
  bottom:calc(32% + 16px);
  right:calc(58% - 30px);
  width:100px;height:40px;
  background:radial-gradient(ellipse 100% 100% at 50% 100%,#7a5234,#5c3f27,transparent);
  border-radius:50% 50% 0 0;
}
.dirt-pile2{
  position:absolute;
  bottom:calc(32% + 16px);
  left:calc(58% - 20px);
  width:70px;height:30px;
  background:radial-gradient(ellipse 100% 100% at 50% 100%,#6b4c2e,#5c3f27,transparent);
  border-radius:50% 50% 0 0;
}

/* ══════════════════════════════
   EXCAVATOR SVG — ANIMATED
══════════════════════════════ */
.excavator-wrap{
  position:absolute;
  bottom:calc(32% + 14px);
  left:16%;
  transform-origin:bottom center;
  animation:excavatorBob 3s ease-in-out infinite;
}
@keyframes excavatorBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

/* Boom (upper arm) rotation */
.exc-boom{
  transform-origin:22px 6px;
  animation:boomSwing 3s ease-in-out infinite;
}
@keyframes boomSwing{
  0%{transform:rotate(-15deg)}
  40%{transform:rotate(5deg)}
  70%{transform:rotate(-5deg)}
  100%{transform:rotate(-15deg)}
}

/* Stick (lower arm) rotation */
.exc-stick{
  transform-origin:0px 0px;
  animation:stickSwing 3s ease-in-out infinite;
}
@keyframes stickSwing{
  0%{transform:rotate(10deg)}
  40%{transform:rotate(-20deg)}
  70%{transform:rotate(-10deg)}
  100%{transform:rotate(10deg)}
}

/* Bucket rotation */
.exc-bucket{
  transform-origin:0px 0px;
  animation:bucketCurl 3s ease-in-out infinite;
}
@keyframes bucketCurl{
  0%{transform:rotate(30deg)}
  40%{transform:rotate(60deg)}
  70%{transform:rotate(40deg)}
  100%{transform:rotate(30deg)}
}

/* Track animation */
.exc-track-marks{
  animation:trackRoll 0.4s linear infinite;
}
@keyframes trackRoll{
  from{transform:translateX(0)}
  to{transform:translateX(-12px)}
}

/* Cabin light blink - handled by canvas now */

/* ══════════════════════════════
   SEMN LUCRĂRI
══════════════════════════════ */
.work-sign{
  position:absolute;
  bottom:calc(32% + 14px);
  left:4%;
  z-index:5;
  pointer-events:none;
  animation:signSway 4s ease-in-out infinite;
  transform-origin:bottom center;
}
@keyframes signSway{0%,100%{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}
.work-sign-post{
  width:4px;height:52px;
  background:linear-gradient(180deg,#6a6e76,#3a3c40);
  margin:0 auto;
  border-radius:1px;
}
.work-sign-board{
  width:90px;
  background:repeating-linear-gradient(
    45deg,
    #e8b800 0px,#e8b800 12px,
    #1a1a1a 12px,#1a1a1a 24px
  );
  border:3px solid #1a1a1a;
  border-radius:2px;
  padding:5px 4px;
  text-align:center;
  box-shadow:0 2px 8px rgba(0,0,0,.5);
}
.work-sign-inner{
  background:#e8b800;
  padding:3px 2px;
  border-radius:1px;
}
.work-sign-txt{
  font-family:'Bebas Neue',sans-serif;
  font-size:9px;letter-spacing:1.5px;
  color:#1a1a1a;line-height:1.3;
  display:block;
}
.work-sign-icon{font-size:13px;display:block;line-height:1;margin-bottom:1px}

/* Easter egg */
.exc-easter{
  position:fixed;
  font-family:'Bebas Neue',sans-serif;
  font-size:14px;letter-spacing:2px;
  color:var(--orange);
  background:rgba(11,17,32,.95);
  border:1px solid rgba(255,106,0,.4);
  padding:6px 12px;
  pointer-events:none;
  opacity:0;
  transform:translateY(6px);
  transition:opacity .3s,transform .3s;
  white-space:nowrap;
  z-index:9999;
  box-shadow:0 4px 20px rgba(0,0,0,.5);
}
.exc-easter.show{opacity:1;transform:translateY(0)}
.exc-easter::after{
  content:'';position:absolute;bottom:-6px;left:50%;
  transform:translateX(-50%) rotate(45deg);
  width:8px;height:8px;
  background:rgba(11,17,32,.95);
  border-right:1px solid rgba(255,106,0,.4);
  border-bottom:1px solid rgba(255,106,0,.4);
}

/* ══════════════════════════════
   PROGRAM CLOCK
══════════════════════════════ */
.program-clock{
  margin-top:32px;
  background:#0d1a2e;
  border:1px solid rgba(255,255,255,.07);
  padding:22px 24px;
  position:relative;
  overflow:hidden;
}
.program-clock::before{
  content:'';position:absolute;
  top:0;left:0;height:2px;
  width:var(--bar-pct, 0%);
  background:linear-gradient(90deg,var(--orange),var(--orange2));
  transition:width 1s linear;
}
.pc-header{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:16px;
}
.pc-label{
  font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(255,255,255,.35);
}
.pc-time{
  font-family:'Bebas Neue',sans-serif;
  font-size:28px;letter-spacing:3px;
  color:white;line-height:1;
}
.pc-status{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 14px;
  font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  margin-bottom:16px;
}
.pc-status.open{
  background:rgba(30,180,80,.12);
  border:1px solid rgba(30,180,80,.3);
  color:#3dd68c;
}
.pc-status.closed{
  background:rgba(220,60,60,.1);
  border:1px solid rgba(220,60,60,.25);
  color:#ff6b6b;
}
.pc-dot{
  width:7px;height:7px;border-radius:50%;
  flex-shrink:0;
}
.pc-status.open .pc-dot{
  background:#3dd68c;
  box-shadow:0 0 8px rgba(61,214,140,.6);
  animation:pcPulse 1.5s ease-in-out infinite;
}
.pc-status.closed .pc-dot{background:#ff6b6b}
@keyframes pcPulse{0%,100%{box-shadow:0 0 8px rgba(61,214,140,.6)}50%{box-shadow:0 0 16px rgba(61,214,140,.9)}}

.pc-days{
  display:grid;grid-template-columns:repeat(7,1fr);gap:3px;
  margin-bottom:14px;
}
.pc-day{
  text-align:center;
  padding:6px 2px;
  font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;
  color:rgba(255,255,255,.25);
  border:1px solid rgba(255,255,255,.05);
  position:relative;
  transition:all .3s;
}
.pc-day.workday{
  color:rgba(255,106,0,.7);
  border-color:rgba(255,106,0,.2);
  background:rgba(255,106,0,.05);
}
.pc-day.today{
  color:white;
  border-color:var(--orange);
  background:rgba(255,106,0,.15);
}
.pc-day.today.workday{
  color:white;
  border-color:var(--orange);
  background:rgba(255,106,0,.18);
}
.pc-day-name{display:block;margin-bottom:2px}
.pc-day-bar{
  width:100%;height:2px;
  background:rgba(255,106,0,.0);
  margin-top:4px;
}
.pc-day.workday .pc-day-bar{background:rgba(255,106,0,.4)}
.pc-day.today .pc-day-bar{background:var(--orange)}

.pc-hours{
  display:flex;align-items:center;gap:10px;
}
.pc-prog{
  flex:1;height:4px;background:rgba(255,255,255,.07);border-radius:2px;overflow:hidden;
}
.pc-prog-fill{
  height:100%;background:linear-gradient(90deg,var(--orange),var(--orange2));
  border-radius:2px;transition:width 1s linear;
}
.pc-prog-txt{
  font-size:10px;color:rgba(255,255,255,.35);white-space:nowrap;
}
.pc-next{
  margin-top:12px;font-size:11px;color:rgba(255,255,255,.35);line-height:1.5;
}
.pc-next strong{color:rgba(255,255,255,.6)}

/* Materiale section */
#materiale{
  padding:90px 5%;
  background:#0d1525;
  position:relative;
  overflow:hidden;
}
#materiale::before{
  content:'';position:absolute;
  top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(77,184,255,.3),transparent);
}
.mat-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:2px;
  margin-top:56px;
}
.mat-card{
  background:#111e33;
  padding:36px 32px;
  position:relative;overflow:hidden;
  transition:transform .3s,background .3s;
}
.mat-card:hover{background:#152135;transform:translateY(-3px)}
.mat-card::before{
  content:'';position:absolute;
  top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--pipe-blue),var(--pipe-glow));
  transform:scaleX(0);transform-origin:left;
  transition:transform .4s;
}
.mat-card:hover::before{transform:scaleX(1)}
.mat-badge{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(77,184,255,.08);
  border:1px solid rgba(77,184,255,.2);
  color:rgba(77,184,255,.9);
  font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  padding:4px 10px;margin-bottom:16px;
}
.mat-icon{
  width:44px;height:44px;
  background:rgba(77,184,255,.1);
  border:1px solid rgba(77,184,255,.2);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:16px;
}
.mat-icon svg{width:22px;height:22px;fill:none;stroke:var(--pipe-glow);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mat-title{
  font-family:'Bebas Neue',sans-serif;
  font-size:24px;letter-spacing:1px;color:white;margin-bottom:10px;
}
.mat-desc{font-size:13px;color:rgba(255,255,255,.5);line-height:1.75;margin-bottom:14px}
.mat-spec{
  display:flex;flex-wrap:wrap;gap:5px;margin-top:12px;
}
.mat-tag{
  font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  padding:3px 8px;
  background:rgba(255,106,0,.08);border:1px solid rgba(255,106,0,.2);
  color:rgba(255,106,0,.8);
}
.mat-highlight{
  margin-top:16px;padding:12px 16px;
  background:rgba(77,184,255,.06);
  border-left:2px solid var(--pipe-glow);
}
.mat-highlight p{font-size:12px;color:rgba(77,184,255,.8);line-height:1.6}
.mat-highlight strong{color:var(--pipe-glow)}
@media(max-width:600px){.mat-grid{grid-template-columns:1fr}}

/* Dust particles from tracks */
.dust{
  position:absolute;
  border-radius:50%;
  background:rgba(122,82,52,.6);
  animation:dustFloat var(--dd,2s) ease-out infinite var(--dl2,0s);
  pointer-events:none;
}
@keyframes dustFloat{
  0%{opacity:.6;transform:translate(0,0) scale(1)}
  100%{opacity:0;transform:translate(var(--dx,-20px),var(--dy,-30px)) scale(2.5)}
}

/* ══════════════════════════════
   HERO TEXT
══════════════════════════════ */
.hero-text{
  position:absolute;
  right:4%;top:50%;
  transform:translateY(-50%);
  width:44%;
  padding:0 2%;
  text-align:right;
  z-index:10;
}
.hero-auth{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,106,0,.15);
  border:1px solid rgba(255,106,0,.35);
  color:var(--orange2);
  font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;
  padding:6px 14px;margin-bottom:20px;
  animation:fadeIn .6s ease both;
}
.auth-dot{width:6px;height:6px;border-radius:50%;background:var(--orange);animation:pulse 2s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}

h1{
  font-family:'Bebas Neue',sans-serif;
  font-size:82px;
  line-height:.9;letter-spacing:2px;
  color:white;
  margin-bottom:20px;
  animation:fadeIn .6s ease .1s both;
}
h1 .water{
  display:block;
  background:linear-gradient(90deg,var(--pipe-glow),#80d8ff);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
h1 .orange{color:var(--orange)}

.hero-sub{
  font-size:15px;color:rgba(255,255,255,.6);
  line-height:1.7;margin-bottom:0px;
  animation:fadeIn .6s ease .2s both;
}
.hero-zones{
  display:inline-flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;
  margin-bottom:32px;
  animation:fadeIn .6s ease .25s both;
}
.zone-tag{
  font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  padding:6px 14px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.15);
  color:rgba(255,255,255,.7);
}
.hero-btns{
  display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;
  animation:fadeIn .6s ease .3s both;
}
.btn-main{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--orange);color:white;
  font-weight:700;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;
  padding:15px 28px;text-decoration:none;
  clip-path:polygon(0 0,92% 0,100% 100%,8% 100%);
  transition:all .25s;border:none;cursor:pointer;
}
.btn-main:hover{background:var(--orange2);transform:translateY(-2px)}
.btn-out{
  display:inline-flex;align-items:center;gap:8px;
  background:transparent;
  border:1.5px solid rgba(255,255,255,.2);
  color:rgba(255,255,255,.8);font-weight:600;font-size:13px;letter-spacing:1px;
  padding:15px 28px;text-decoration:none;
  transition:all .25s;
}
.btn-out:hover{border-color:var(--pipe-glow);color:var(--pipe-glow)}

@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

/* Hero bottom stats — eliminat din hero, info disponibil în secțiunea Contoare */
.hero-stats{display:none!important}
.h-stat{
  flex:1;padding:20px;text-align:center;
  border-right:1px solid rgba(255,255,255,.07);
}
.h-stat:last-child{border-right:none}
.h-num{
  font-family:'Bebas Neue',sans-serif;
  font-size:36px;color:var(--orange);letter-spacing:1px;display:block;line-height:1;
}
.h-label{font-size:10px;color:rgba(255,255,255,.4);letter-spacing:2px;text-transform:uppercase;margin-top:3px;display:block}

/* ══════════════════════════════
   ANIMATED PIPE SECTION
══════════════════════════════ */
.eye{font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--orange);display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:14px}
.eye::before,.eye::after{content:'';display:block;width:30px;height:1px;background:var(--orange)}
.section-h{font-family:'Bebas Neue',sans-serif;font-size:clamp(40px,6vw,72px);line-height:.95;letter-spacing:2px;margin-bottom:14px}
.section-p{font-size:15px;color:rgba(255,255,255,.5);max-width:500px;margin:0 auto;line-height:1.7}


/* ══════════════════════════════
   SERVICII
══════════════════════════════ */
#servicii{padding:90px 5%;background:#0d1525}

.services-wrap{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:2px;margin-top:56px;
}
.svc{
  background:#111e33;
  padding:40px 36px;
  position:relative;overflow:hidden;
  transition:transform .3s,background .3s;
}
.svc::after{
  content:'';position:absolute;
  left:0;bottom:0;right:0;height:2px;
  background:var(--orange);
  transform:scaleX(0);transform-origin:left;
  transition:transform .4s;
}
.svc:hover{background:#152135;transform:translateY(-4px)}
.svc:hover::after{transform:scaleX(1)}
.svc-n{
  font-family:'Bebas Neue',sans-serif;
  font-size:80px;color:rgba(255,255,255,.04);
  position:absolute;top:10px;right:20px;line-height:1;
}
.svc-icon{
  width:48px;height:48px;
  margin-bottom:20px;
  background:rgba(255,106,0,.12);
  border:1px solid rgba(255,106,0,.25);
  display:flex;align-items:center;justify-content:center;
}
.svc-icon svg{width:22px;height:22px;fill:none;stroke:var(--orange);stroke-width:1.8;stroke-linecap:round}
.svc-title{
  font-family:'Bebas Neue',sans-serif;
  font-size:26px;letter-spacing:1px;color:white;margin-bottom:10px;
}
.svc-desc{font-size:13px;color:rgba(255,255,255,.5);line-height:1.7}
.svc-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:16px}
.s-tag{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:3px 8px;background:rgba(77,184,255,.08);border:1px solid rgba(77,184,255,.2);color:rgba(77,184,255,.8)}

/* ══════════════════════════════
   ZONE MAP SECTION
══════════════════════════════ */
#zone{
  padding:90px 5%;
  background:var(--night);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center;
}
@media(max-width:768px){#zone{grid-template-columns:1fr;gap:50px}}

.zone-text .section-h{text-align:left}
.zone-text .eye{justify-content:flex-start}
.zone-text .eye::before{display:none}
.zone-desc{font-size:15px;color:rgba(255,255,255,.55);line-height:1.7;margin-top:16px;margin-bottom:32px}
.zone-list{list-style:none}
.zone-item{
  display:flex;align-items:center;gap:14px;
  padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,.07);
  font-size:14px;color:rgba(255,255,255,.75);font-weight:500;
}
.zone-dot{width:8px;height:8px;background:var(--orange);flex-shrink:0}

/* SVG map — interactive */
.map-svg-wrap{position:relative}
.map-svg-wrap svg{width:100%;height:auto;max-height:420px}
.map-pulse{animation:mapPulse 2s ease-in-out infinite}
@keyframes mapPulse{0%,100%{r:6}50%{r:9}}
.map-ring{animation:mapRing 2.4s ease-out infinite}
@keyframes mapRing{0%{r:6;opacity:.65;stroke-width:1.5}100%{r:20;opacity:0;stroke-width:.3}}

/* County hover */
.county-grp{cursor:default}
.cty-fill{transition:fill .25s,stroke .25s}

/* Locality pins */
.zone-pin{cursor:pointer}
.zone-pin .pin-dot{transition:transform .18s;transform-box:fill-box;transform-origin:center}
.zone-pin:hover .pin-dot{transform:scale(1.5)}
.zone-pin .pin-lbl{opacity:0;transition:opacity .18s;pointer-events:none}
.zone-pin:hover .pin-lbl{opacity:1}

/* Map info card */
.map-info-card{
  position:absolute;bottom:16px;left:16px;
  padding:10px 16px;
  background:rgba(11,17,32,.96);
  border:1px solid rgba(255,106,0,.2);
  border-left:3px solid var(--orange);
  min-width:148px;
  opacity:0;pointer-events:none;
  transition:opacity .2s,transform .2s;
  transform:translateY(6px);
}
.map-info-card.show{opacity:1;transform:translateY(0)}
.mic-county{font-size:9px;letter-spacing:2px;text-transform:uppercase;font-weight:700;margin-bottom:3px}
.mic-name{font-family:'Bebas Neue',sans-serif;font-size:22px;letter-spacing:1px;color:white;line-height:1}
.mic-hint{font-size:10px;color:rgba(255,255,255,.3);margin-top:4px}

/* ══════════════════════════════
   PROCESS
══════════════════════════════ */
#proces{
  padding:90px 5%;
  background:#0d1525;
}
.steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  margin-top:56px;
  position:relative;
}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.steps{grid-template-columns:1fr}}
/* Connecting line */
.steps::before{
  content:'';
  position:absolute;
  top:28px;left:12.5%;right:12.5%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,106,0,.4),rgba(255,106,0,.4),transparent);
  z-index:0;
}
.step{
  padding:0 24px 36px;
  position:relative;z-index:1;
  text-align:center;
}
.step-circle{
  width:56px;height:56px;
  border:1.5px solid rgba(255,106,0,.4);
  background:var(--night);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 20px;
  font-family:'Bebas Neue',sans-serif;
  font-size:24px;color:var(--orange);
  position:relative;
  transition:all .3s;
}
.step:hover .step-circle{background:var(--orange);color:white;border-color:var(--orange)}
.step-title{font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:1px;margin-bottom:10px;color:white}
.step-desc{font-size:12px;color:rgba(255,255,255,.45);line-height:1.7}

/* ══════════════════════════════
   RAJA BAND
══════════════════════════════ */
#raja{
  background:linear-gradient(135deg,#0f2a58,#0d1a3a);
  padding:64px 5%;
  border-top:1px solid rgba(77,184,255,.15);
  border-bottom:1px solid rgba(77,184,255,.15);
  display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;
}
.raja-left h2{
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(32px,4vw,56px);
  letter-spacing:2px;color:white;line-height:1;margin-bottom:10px;
}
.raja-left h2 span{color:var(--pipe-glow)}
.raja-left p{font-size:14px;color:rgba(255,255,255,.55);max-width:440px;line-height:1.7}
.raja-stamp{
  flex-shrink:0;
  width:160px;height:160px;
  border:2px solid rgba(77,184,255,.3);
  border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;
  background:rgba(77,184,255,.05);
  position:relative;
}
.raja-stamp::before{
  content:'';position:absolute;inset:6px;
  border:1px dashed rgba(77,184,255,.2);
  border-radius:50%;
}
.rs-top{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.4)}
.rs-main{font-family:'Bebas Neue',sans-serif;font-size:40px;color:var(--pipe-glow);line-height:1;text-shadow:0 0 20px rgba(77,184,255,.5)}
.rs-bot{font-size:10px;color:rgba(255,255,255,.35);text-align:center;line-height:1.4}

/* ══════════════════════════════
   CONTACT
══════════════════════════════ */
#contact{
  padding:90px 5%;
  background:var(--night);
  display:grid;
  grid-template-columns:1fr 1.3fr;
  gap:80px;align-items:start;
}
@media(max-width:768px){#contact{grid-template-columns:1fr;gap:50px}}

.cinfo .section-h{text-align:left}
.cinfo .eye{justify-content:flex-start}
.cinfo .eye::before{display:none}
.cinfo-list{list-style:none;margin-top:36px}
.cinfo-item{
  display:flex;align-items:flex-start;gap:14px;
  padding:18px 0;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.cinfo-ico{
  width:36px;height:36px;flex-shrink:0;
  border:1px solid rgba(255,106,0,.3);
  display:flex;align-items:center;justify-content:center;
}
.cinfo-ico svg{width:16px;height:16px;fill:none;stroke:var(--orange);stroke-width:2;stroke-linecap:round}
.ci-lbl{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:3px}
.ci-val{font-size:15px;font-weight:600;color:white}

/* Form */
.cform{
  background:#111e33;
  padding:44px 40px;
  border-top:3px solid var(--orange);
}
.cform-title{font-family:'Bebas Neue',sans-serif;font-size:30px;letter-spacing:1.5px;margin-bottom:6px}
.cform-sub{font-size:13px;color:rgba(255,255,255,.4);margin-bottom:28px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:500px){.frow{grid-template-columns:1fr}}
.fg{margin-bottom:16px}
.fg label{display:block;font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:6px}
.fg input,.fg select,.fg textarea{
  width:100%;padding:11px 14px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  color:white;font-family:'Barlow',sans-serif;font-size:14px;
  transition:border-color .2s;outline:none;
  border-radius:0;
}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:rgba(77,184,255,.5);background:rgba(77,184,255,.04)}
.fg select option{background:#111e33;color:white}
.fg textarea{height:100px;resize:vertical}
.fsub{
  width:100%;background:var(--orange);color:white;
  font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:3px;
  padding:16px;border:none;cursor:pointer;
  clip-path:polygon(0 0,96% 0,100% 100%,4% 100%);
  transition:background .25s;margin-top:4px;
}
.fsub:hover{background:var(--orange2)}

/* ── MULTI-STEP FORM WIZARD ── */
.step-bar{display:flex;align-items:center;gap:0;margin-bottom:28px}
.sb-seg{display:flex;align-items:center;gap:6px;flex:1}
.sb-seg:last-child{flex:none}
.sb-dot{
  width:26px;height:26px;border-radius:50%;flex-shrink:0;
  border:2px solid rgba(255,255,255,.15);
  display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:700;color:rgba(255,255,255,.3);
  transition:border-color .3s,background .3s,color .3s;
}
.sb-dot.active{border-color:var(--orange);background:var(--orange);color:white}
.sb-dot.done{border-color:rgba(255,106,0,.5);background:rgba(255,106,0,.12);color:var(--orange)}
.sb-line{flex:1;height:1px;background:rgba(255,255,255,.1);transition:background .3s}
.sb-line.done{background:rgba(255,106,0,.4)}
.sb-lbl{font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,.3);transition:color .3s;white-space:nowrap}
.sb-lbl.active{color:rgba(255,255,255,.75)}

.wiz-step{display:none}
.wiz-step.active{display:block}

.tip-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}
.tip-card{
  padding:14px 10px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.1);
  cursor:pointer;
  transition:border-color .2s,background .2s;
  font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;
  color:rgba(255,255,255,.55);line-height:1.4;
}
.tip-card:hover{border-color:rgba(255,106,0,.35);background:rgba(255,106,0,.05);color:rgba(255,255,255,.8)}
.tip-card.sel{border-color:var(--orange);background:rgba(255,106,0,.1);color:white}
.tip-card-sub{font-size:9px;font-weight:400;letter-spacing:.5px;text-transform:none;color:rgba(255,255,255,.3);display:block;margin-top:4px}

.file-zone{
  display:block;position:relative;
  border:1px dashed rgba(255,255,255,.14);
  padding:22px 16px;text-align:center;cursor:pointer;
  transition:border-color .2s,background .2s;
  margin-bottom:0;
}
.file-zone:hover,.file-zone.has-file{border-color:rgba(255,106,0,.4);background:rgba(255,106,0,.04)}
.file-zone input[type=file]{
  position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;
}
.fz-ico{font-size:20px;margin-bottom:6px;line-height:1}
.fz-txt{font-size:12px;color:rgba(255,255,255,.38);line-height:1.5}
.fz-txt span{font-size:10px;opacity:.7}
.fz-name{font-size:11px;color:var(--orange);font-weight:600;margin-top:6px;display:none;word-break:break-all}

.wiz-nav{display:flex;gap:10px;margin-top:20px}
.wiz-back{
  padding:11px 18px;background:transparent;
  border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.45);
  font-family:'Barlow',sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;cursor:pointer;
  transition:border-color .2s,color .2s;flex-shrink:0;
}
.wiz-back:hover{border-color:rgba(255,255,255,.3);color:white}
.wiz-next{
  flex:1;padding:13px 16px;background:var(--orange);color:white;border:none;
  font-family:'Barlow',sans-serif;font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  cursor:pointer;transition:background .2s;
}
.wiz-next:hover{background:var(--orange2)}
.wiz-next.wa-submit{background:#25d366;display:flex;align-items:center;justify-content:center;gap:8px}
.wiz-next.wa-submit:hover{background:#20ba57}

/* ══════════════════════════════
   FOOTER
══════════════════════════════ */
footer{
  background:#06090f;
  padding:36px 5%;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;
  border-top:1px solid rgba(255,255,255,.06);
}
.foot-copy{font-size:12px;color:rgba(255,255,255,.25);letter-spacing:.5px}
.foot-links{display:flex;gap:20px;list-style:none}
.foot-links a{font-size:11px;color:rgba(255,255,255,.25);text-decoration:none;letter-spacing:1.5px;text-transform:uppercase;transition:color .2s}
.foot-links a:hover{color:var(--orange)}

/* ── COUNTERS ── */
#counters{
  background:var(--orange);
  padding:0;
}
.cnt-inner{
  display:flex;align-items:stretch;
  max-width:100%;
}
.cnt-item{
  flex:1;padding:48px 32px;text-align:center;
  position:relative;
}
.cnt-num{
  font-family:'Bebas Neue',sans-serif;
  font-size:72px;color:white;line-height:1;
  display:inline-block;
}
.cnt-plus{
  font-family:'Bebas Neue',sans-serif;
  font-size:40px;color:rgba(255,255,255,.6);
  display:inline-block;vertical-align:top;margin-top:8px;
}
.cnt-label{
  font-size:11px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(255,255,255,.65);margin-top:6px;
}
.cnt-divider{
  width:1px;background:rgba(255,255,255,.2);
  margin:24px 0;
}
@media(max-width:700px){
  .cnt-inner{flex-wrap:wrap}
  .cnt-item{flex:1 1 45%;padding:32px 20px}
  .cnt-divider{display:none}
}

/* ── TESTIMONIALE ── */
#testimoniale{
  padding:90px 5%;
  background:var(--night);
}
.tst-head{margin-bottom:56px}
.tst-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:2px;
}
.tst-card{
  background:#0f1e35;
  padding:36px 32px;
  position:relative;
  border-top:2px solid transparent;
  transition:border-color .3s,transform .3s;
}
.tst-card:hover{border-color:var(--orange);transform:translateY(-4px)}
.tst-stars{
  font-size:18px;color:var(--yellow);
  letter-spacing:2px;margin-bottom:16px;
}
.tst-text{
  font-size:14px;color:rgba(255,255,255,.65);
  line-height:1.75;font-style:italic;
  margin-bottom:24px;
}
.tst-author{display:flex;align-items:center;gap:14px}
.tst-av{
  width:42px;height:42px;border-radius:50%;
  background:var(--orange);
  display:flex;align-items:center;justify-content:center;
  font-family:'Bebas Neue',sans-serif;font-size:15px;color:white;
  flex-shrink:0;
}
.tst-name{font-size:14px;font-weight:700;color:white}
.tst-loc{font-size:11px;color:rgba(255,255,255,.35);letter-spacing:.5px;margin-top:2px}

/* ── FAQ ── */
#faq{
  padding:90px 5%;
  background:#0d1525;
}
.faq-inner{
  display:grid;
  grid-template-columns:1fr 1.6fr;
  gap:80px;align-items:start;
}
@media(max-width:860px){.faq-inner{grid-template-columns:1fr;gap:48px}}

.faq-item{
  border-bottom:1px solid rgba(255,255,255,.07);
}
.faq-q{
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 0;
  cursor:pointer;
  gap:16px;
  transition:color .2s;
}
.faq-q:hover{color:var(--orange)}
.faq-q span{font-size:15px;font-weight:600;line-height:1.4}
.faq-icon{
  width:28px;height:28px;flex-shrink:0;
  border:1.5px solid rgba(255,255,255,.2);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:18px;color:rgba(255,255,255,.5);
  transition:all .25s;
  user-select:none;
}
.faq-item.open .faq-icon{
  background:var(--orange);border-color:var(--orange);
  color:white;transform:rotate(45deg);
}
.faq-item.open .faq-q{color:var(--orange)}
.faq-a{
  max-height:0;overflow:hidden;
  font-size:14px;color:rgba(255,255,255,.5);
  line-height:1.75;
  transition:max-height .35s ease,padding .35s ease;
  padding:0 0 0 0;
}
.faq-item.open .faq-a{
  max-height:200px;
  padding:0 0 20px 0;
}

/* ── FLOATING CTA ── */
.float-group{
  position:fixed;
  bottom:28px;right:28px;
  z-index:300;
  display:flex;flex-direction:column;gap:10px;align-items:flex-end;
  transition:transform .3s,opacity .3s;
  transform:translateY(120px);
  opacity:0;
  pointer-events:none;
}
.float-group.visible{transform:translateY(0);opacity:1;pointer-events:all}
.float-cta,.wa-btn{
  display:flex;align-items:center;gap:10px;
  font-weight:700;font-size:13px;
  letter-spacing:1px;text-transform:uppercase;
  padding:13px 20px;
  text-decoration:none;
  border-radius:3px;
  transition:background .2s,transform .2s;
  white-space:nowrap;
}
.float-cta{background:var(--orange);color:white;box-shadow:0 6px 24px rgba(255,106,0,.35)}
.float-cta:hover{background:var(--orange2);transform:translateY(-2px)}
.float-cta.hide{display:none}
.wa-btn{background:#25d366;color:white;box-shadow:0 6px 20px rgba(37,211,102,.3)}
.wa-btn:hover{background:#20ba5a;transform:translateY(-2px)}
@media(max-width:600px){
  .float-cta span,.wa-btn span{display:none}
  .float-cta,.wa-btn{padding:13px 15px;border-radius:50%}
}

/* Reveal */
.reveal{
  opacity:0;
  transform:translateY(42px);
  transition:opacity .75s cubic-bezier(0.16,1,0.3,1),
             transform .75s cubic-bezier(0.16,1,0.3,1)
}
.reveal.r-left  { transform:translateX(-56px) }
.reveal.r-right { transform:translateX(56px) }
.reveal.r-scale { transform:scale(0.84) translateY(24px) }
.revealed{opacity:1!important;transform:none!important}

/* Parallax perf hint */
.stars,.moon,.city{will-change:transform}
.mobile-menu{
  display:none;
  position:fixed;inset:0;z-index:150;
  background:rgba(6,9,15,.97);
  flex-direction:column;align-items:center;justify-content:center;
  gap:32px;
}
.mobile-menu.open{display:flex}
.mobile-menu a{
  font-family:'Bebas Neue',sans-serif;
  font-size:36px;letter-spacing:3px;color:white;
  text-decoration:none;transition:color .2s;
}
.mobile-menu a:hover{color:var(--orange)}
/* ── HAMBURGER ── */
.hamburger{
  display:none;
  flex-direction:column;justify-content:center;align-items:center;
  gap:5px;
  width:40px;height:40px;
  background:none;border:none;cursor:pointer;padding:8px;
  flex-shrink:0;
}
.hamburger span{
  display:block;
  width:22px;height:2px;
  background:rgba(255,255,255,.85);
  border-radius:1px;
  transition:transform .28s ease,opacity .2s ease,background .2s;
  transform-origin:center;
}
.hamburger:hover span{background:var(--orange)}

/* Hamburgăr → X când meniul e deschis */
body.menu-open .hamburger span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
body.menu-open .hamburger span:nth-child(2){opacity:0;transform:scaleX(0)}
body.menu-open .hamburger span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* ── MOBILE MENU CLOSE ── */
.mobile-close{
  position:absolute;top:20px;right:20px;
  width:40px;height:40px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  color:rgba(255,255,255,.7);
  font-size:18px;cursor:pointer;line-height:1;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s,color .2s;
}
.mobile-close:hover{background:rgba(255,106,0,.2);color:var(--orange);border-color:rgba(255,106,0,.4)}


/* Excavator canvas — desktop */
.exc-canvas{
  position:absolute;
  bottom:calc(27% + 14px);
  right:calc(70% - 55px);
  width:340px;height:240px;
  z-index:5;
}

/* ── MOBILE ── */
@media(max-width:900px){
  /* Hero text pe tablete — spațiu extra jos */
  .hero-text{padding-bottom:40px}
  .hero-typed-line{display:none}
}
@media(max-width:760px){
  .nav-links{display:none}
  .hamburger{display:flex}
  .steps::before{display:none}

  #hero{
    flex-direction:column;
    justify-content:flex-end;
    align-items:stretch;
    height:100svh;
    padding-top:64px;
    overflow:hidden;
  }

  .exc-canvas{
    position:absolute;
    bottom:calc(32% + 10px);
    left:50%;
    transform:translateX(-50%) scale(0.82);
    transform-origin:center bottom;
    width:88vw;
    max-width:340px;
    height:185px;
  }
  .excavator-wrap{will-change:transform}

  .trench{left:15%;width:70%}
  .dirt-pile{right:calc(28% - 20px)}
  .dirt-pile2{left:calc(28% - 10px)}
  .pipe-left,.pipe-right{display:none}

  #hero::after{
    content:'';
    position:absolute;
    right:0;top:0;bottom:0;
    width:45%;
    background:linear-gradient(to left,rgba(6,9,15,.92) 0%,rgba(6,9,15,.5) 50%,transparent 100%);
    pointer-events:none;
    z-index:9;
  }
  .hero-text{
    position:relative;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    display:block !important;
    margin:0;
    padding:18px 5% 28px;
    text-align:left;
    background:linear-gradient(0deg,rgba(6,9,15,.97) 50%,rgba(6,9,15,.7) 75%,transparent 100%);
    z-index:10;
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
  .hero-text>div:first-child{flex-wrap:wrap;gap:8px}
  .hero-text>div:first-child img{width:48px!important;height:48px!important}
  .hero-text h1{font-size:clamp(36px,11vw,60px);margin-bottom:10px}
  .hero-typed-line{display:none}
  .hero-zones{justify-content:flex-start;margin-bottom:10px}
  .hero-btns{justify-content:flex-start;flex-wrap:wrap;gap:8px}
  .hero-sub{font-size:13px;margin-bottom:10px;line-height:1.5}
  .btn-main{font-size:11px;letter-spacing:1px;padding:10px 14px;clip-path:none;border-radius:2px}
  .btn-out{font-size:11px;letter-spacing:1px;padding:10px 14px}
}

/* ══════════════════════════════
   BANNER SEZONIER
══════════════════════════════ */
#seasonal-banner{
  position:fixed;top:64px;left:0;right:0;z-index:190;
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:7px 5%;
  font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  transition:transform .3s ease,opacity .3s ease;
}
#seasonal-banner.sb-summer{
  background:linear-gradient(90deg,rgba(255,106,0,.92),rgba(255,80,0,.92));
  color:white;
  border-bottom:1px solid rgba(255,150,50,.3);
}
#seasonal-banner.sb-winter{
  background:linear-gradient(90deg,rgba(30,80,160,.95),rgba(20,60,130,.95));
  color:white;
  border-bottom:1px solid rgba(77,184,255,.2);
}
#seasonal-banner.sb-spring{
  background:linear-gradient(90deg,rgba(20,130,70,.92),rgba(15,110,55,.92));
  color:white;
  border-bottom:1px solid rgba(60,200,100,.2);
}
#seasonal-banner.hidden{transform:translateY(-110%);opacity:0;pointer-events:none}
.sb-icon{font-size:14px}
.sb-close{
  position:absolute;right:16px;
  background:none;border:none;color:rgba(255,255,255,.5);
  font-size:16px;cursor:pointer;line-height:1;padding:4px;
  transition:color .2s;
}
.sb-close:hover{color:white}
/* Push hero down when banner visible */
body.has-banner #hero{padding-top:calc(64px + 33px)}

/* ══════════════════════════════
   TELEFON PULSE EFFECT
══════════════════════════════ */
.ci-val a.phone-link{
  color:white;text-decoration:none;
  display:inline-flex;align-items:center;gap:8px;
  position:relative;
}
.phone-pulse-ring{
  display:inline-block;
  width:8px;height:8px;border-radius:50%;
  background:var(--orange);
  position:relative;
  flex-shrink:0;
}
.phone-pulse-ring::after{
  content:'';position:absolute;
  inset:-4px;border-radius:50%;
  border:2px solid var(--orange);
  animation:phoneRing 1.8s ease-out infinite;
}
@keyframes phoneRing{
  0%{transform:scale(.6);opacity:1}
  100%{transform:scale(2.2);opacity:0}
}
.ci-val a.phone-link:hover{color:var(--orange2)}

/* ══════════════════════════════
   CALCULATOR COST
══════════════════════════════ */
#calculator{
  padding:90px 5%;
  background:var(--night);
  position:relative;overflow:hidden;
}
#calculator::before{
  content:'';position:absolute;
  top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,106,0,.3),transparent);
}
.calc-wrap{
  max-width:720px;margin:56px auto 0;
  background:#0d1a2e;
  border:1px solid rgba(255,255,255,.07);
  padding:40px;
  position:relative;
}
.calc-wrap::before{
  content:'';position:absolute;
  top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--orange),var(--orange2));
}
.calc-step{margin-bottom:32px}
.calc-step:last-of-type{margin-bottom:0}
.calc-q{
  font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:rgba(255,255,255,.4);margin-bottom:12px;
  display:flex;align-items:center;gap:8px;
}
.calc-q span{
  width:20px;height:20px;border-radius:50%;
  background:rgba(255,106,0,.15);border:1px solid rgba(255,106,0,.3);
  color:var(--orange);font-size:10px;
  display:inline-flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.calc-opts{display:flex;flex-wrap:wrap;gap:8px}
.calc-opt{
  padding:10px 18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.6);
  font-size:12px;font-weight:600;letter-spacing:.5px;
  cursor:pointer;transition:all .2s;
  user-select:none;
}
.calc-opt:hover{border-color:rgba(255,106,0,.4);color:rgba(255,255,255,.9)}
.calc-opt.selected{
  background:rgba(255,106,0,.15);
  border-color:var(--orange);
  color:white;
}
.calc-result{
  margin-top:32px;padding:28px;
  background:rgba(255,106,0,.07);
  border:1px solid rgba(255,106,0,.2);
  display:none;
}
.calc-result.show{display:block}
.cr-label{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:8px}
.cr-amount{
  font-family:'Bebas Neue',sans-serif;
  font-size:48px;letter-spacing:2px;
  color:var(--orange);line-height:1;margin-bottom:4px;
}
.cr-sub{font-size:11px;color:rgba(255,255,255,.35);margin-bottom:20px;line-height:1.5}
.cr-note{
  font-size:12px;color:rgba(255,255,255,.45);
  line-height:1.7;padding-top:16px;
  border-top:1px solid rgba(255,255,255,.07);
  margin-bottom:20px;
}
.cr-cta{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--orange);color:white;
  font-weight:700;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;
  padding:12px 24px;text-decoration:none;
  transition:background .2s;border:none;cursor:pointer;
}
.cr-cta:hover{background:var(--orange2)}
.calc-contact-note{
  margin-top:32px;padding:20px;
  background:rgba(77,184,255,.05);
  border:1px solid rgba(77,184,255,.15);
  display:none;
}
.calc-contact-note.show{display:block}
.ccn-txt{font-size:13px;color:rgba(255,255,255,.55);line-height:1.7;margin-bottom:16px}
@media(max-width:600px){
  .calc-wrap{padding:24px 20px}
  .cr-amount{font-size:36px}
}

/* ══════════════════════════════
   PARTENERI & CERTIFICĂRI
══════════════════════════════ */
#parteneri{padding:70px 5% 80px}
.part-strip{
  display:flex;align-items:stretch;justify-content:center;
  flex-wrap:wrap;
  margin-top:40px;
  max-width:920px;
  margin-left:auto;margin-right:auto;
  border:1px solid rgba(255,255,255,.07);
  border-radius:4px;
  overflow:hidden;
  background:rgba(255,255,255,.018);
}
.part-item{
  flex:1;min-width:170px;
  display:flex;align-items:center;justify-content:center;
  padding:32px 20px;
  transition:background .25s;
}
.part-item:hover{background:rgba(255,255,255,.035)}
.part-sep{width:1px;background:rgba(255,255,255,.07);align-self:stretch}
.part-logo{display:flex;flex-direction:column;align-items:center;gap:7px}
.pl-svg{height:36px;width:auto}
.pl-img{
  height:44px;width:auto;max-width:160px;
  object-fit:contain;
  border-radius:3px;
  padding:4px 8px;
  background:rgba(255,255,255,.06);
  filter:brightness(1.05);
}
.pl-sub{
  font-size:8px;letter-spacing:1.8px;text-transform:uppercase;
  color:rgba(255,255,255,.28);text-align:center;
}
.iso-badge{
  display:flex;flex-direction:column;align-items:center;gap:1px;
}
.iso-label{
  font-size:8px;letter-spacing:3px;text-transform:uppercase;
  color:rgba(255,255,255,.3);font-weight:700;
}
.iso-num{
  font-family:'Bebas Neue',sans-serif;
  font-size:36px;letter-spacing:2px;
  color:var(--orange);line-height:1;
}
.iso-green .iso-num{color:#5cb85c}
.iso-desc{
  font-size:7.5px;letter-spacing:1.2px;text-transform:uppercase;
  color:rgba(255,255,255,.25);text-align:center;margin-top:3px;
}
@media(max-width:640px){
  .part-strip{flex-direction:column}
  .part-sep{width:auto;height:1px;align-self:stretch}
  .part-item{padding:22px 20px}
}

/* ══════════════════════════════
   LUCRĂRI DE REFERINȚĂ
══════════════════════════════ */
#lucrari{padding:100px 5%}
.lucrari-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:24px;
  margin-top:56px;
  max-width:1100px;
  margin-left:auto;
  margin-right:auto;
}
.luc-card{
  position:relative;
  background:linear-gradient(135deg,rgba(255,106,0,.05) 0%,rgba(11,17,32,1) 55%);
  border:1px solid rgba(255,106,0,.18);
  border-radius:4px;
  padding:32px;
  overflow:hidden;
  transition:border-color .3s,transform .25s;
}
.luc-card:hover{
  border-color:rgba(255,106,0,.45);
  transform:translateY(-4px);
}
.luc-card::before{
  content:'';
  position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--orange),transparent);
}
.luc-num{
  font-family:'Bebas Neue',sans-serif;
  font-size:90px;
  color:rgba(255,106,0,.055);
  position:absolute;top:8px;right:16px;
  line-height:1;pointer-events:none;user-select:none;
}
.luc-client{
  font-size:9px;letter-spacing:2px;text-transform:uppercase;
  color:rgba(255,255,255,.3);
  margin-bottom:10px;
}
.luc-client span{color:rgba(255,150,50,.7);font-weight:700}
.luc-loc{
  display:inline-flex;align-items:center;gap:7px;
  font-size:9px;letter-spacing:2px;text-transform:uppercase;
  color:rgba(255,255,255,.38);
  margin-bottom:14px;
}
.luc-loc::before{
  content:'';width:6px;height:6px;border-radius:50%;
  background:var(--orange);flex-shrink:0;
}
.luc-title{
  font-family:'Bebas Neue',sans-serif;
  font-size:21px;letter-spacing:1.5px;
  color:white;margin-bottom:18px;line-height:1.25;
}
.luc-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:22px}
.luc-tag{
  font-size:8px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  padding:3px 9px;
  border:1px solid rgba(255,106,0,.3);
  color:var(--orange);border-radius:2px;
}
.luc-tag-b{
  border-color:rgba(30,111,168,.45);
  color:#4db8ff;
}
.luc-specs{
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:14px;margin-bottom:20px;
}
.luc-spec{display:flex;flex-direction:column;gap:3px}
.luc-spec-val{
  font-family:'Bebas Neue',sans-serif;
  font-size:22px;color:white;letter-spacing:1px;
}
.luc-spec-lbl{
  font-size:9px;color:rgba(255,255,255,.32);
  letter-spacing:1.5px;text-transform:uppercase;
}
.luc-highlight{
  padding:10px 14px;
  background:rgba(255,106,0,.05);
  border-left:2px solid var(--orange);
  font-size:11.5px;color:rgba(255,255,255,.55);
  line-height:1.6;
}
@media(max-width:860px){
  .lucrari-grid{grid-template-columns:1fr}
  .luc-card{padding:24px}
}

/* ── COOKIE BANNER ── */
#cookieBanner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:rgba(10,14,26,.97);border-top:1px solid rgba(255,255,255,.08);padding:10px 5%;display:none;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:rgba(255,255,255,.45)}
#cookieBanner p{margin:0;line-height:1.4}
#cookieBanner a{color:rgba(255,106,0,.7);text-decoration:underline;text-underline-offset:2px}
.cb-btns{display:flex;gap:8px;flex-shrink:0}
#cbAccept{background:rgba(255,106,0,.85);color:#fff;border:none;padding:6px 16px;border-radius:3px;font-size:11px;font-weight:600;letter-spacing:.6px;cursor:pointer;font-family:inherit;transition:.2s}
#cbAccept:hover{background:var(--orange)}


#pipeline-flow{padding:80px 5%;background:var(--night);text-align:center;overflow:hidden}
.pf-wrap{max-width:920px;margin:36px auto 0;border-radius:14px;overflow:hidden;border:1px solid rgba(77,184,255,0.12);box-shadow:0 0 60px rgba(77,184,255,0.06)}
.pf-svg{width:100%;height:auto;display:block;background:#060d1a}
@media(max-width:600px){#pipeline-flow{padding:50px 4%}}

/* ══════════════════════════════
   PIPE JOURNEY — SCROLL CINEMATIC
══════════════════════════════ */
#pipe-journey{
  height:500vh;
  position:relative;
  background:#060d1a;
}
.pj-sticky{
  position:sticky;
  top:0;
  height:100vh;
  overflow:hidden;
  background:#060d1a;
}
#pjCanvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
@media(max-width:600px){#pipe-journey{height:420vh}}

@keyframes smokeRise{from{opacity:.5;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(2)}}

/* ── GALLERY ── */
#galerie{padding:90px 5%;background:#0d1525;text-align:center}
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:320px 220px;
  gap:10px;max-width:960px;margin:48px auto 0;
}
.gal-item:nth-child(1){grid-column:1;grid-row:1}
.gal-item:nth-child(2){grid-column:2/4;grid-row:1}
.gal-item{
  position:relative;overflow:hidden;cursor:pointer;
  background:#060d1a;
}
/* orange bottom bar slides in on hover */
.gal-item::before{
  content:'';position:absolute;bottom:0;left:0;right:0;
  height:3px;background:var(--orange);
  transform:scaleX(0);transform-origin:left;
  transition:transform .4s ease;z-index:3;
}
.gal-item:hover::before{transform:scaleX(1)}
.gal-item img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .5s ease;
}
.gal-item:hover img{transform:scale(1.07)}
.gal-overlay{
  position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(0,0,0,.68) 0%,transparent 48%);
  display:flex;align-items:flex-end;padding:16px;
  transition:background .3s;
}
.gal-item:hover .gal-overlay{
  background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,transparent 62%);
}
/* expand circle appears on hover */
.gal-overlay::before{
  content:'';position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%) scale(0);
  width:46px;height:46px;
  border:2px solid rgba(255,255,255,.75);border-radius:50%;
  transition:transform .35s cubic-bezier(.34,1.56,.64,1),opacity .3s;
  opacity:0;
}
.gal-item:hover .gal-overlay::before{
  transform:translate(-50%,-50%) scale(1);opacity:1;
}
.gal-overlay span{
  font-size:12px;font-weight:600;letter-spacing:.5px;
  color:white;text-align:left;line-height:1.4;
  opacity:.8;transform:translateY(4px);
  transition:opacity .3s,transform .3s;
}
.gal-item:hover .gal-overlay span{opacity:1;transform:translateY(0)}
/* counter in lightbox */
.lb-counter{
  position:absolute;top:22px;left:50%;transform:translateX(-50%);
  font-family:'Bebas Neue',sans-serif;font-size:15px;
  letter-spacing:3px;color:rgba(255,255,255,.4);pointer-events:none;
}
@media(max-width:600px){
  .gallery-grid{
    grid-template-columns:1fr;
    grid-template-rows:auto;
  }
  .gal-item:nth-child(1),.gal-item:nth-child(2){
    grid-column:1;grid-row:auto;
  }
  .gal-item{aspect-ratio:4/3}
  .gal-item.gal-portrait{aspect-ratio:3/4}
}

/* Lightbox */
.lightbox{
  position:fixed;inset:0;z-index:2000;
  background:rgba(0,0,0,.93);
  display:none;align-items:center;justify-content:center;
  padding:20px;
}
.lightbox.open{display:flex}
.lb-img{
  max-width:90vw;max-height:85vh;
  object-fit:contain;
  border:1px solid rgba(255,255,255,.07);
}
.lb-close{
  position:absolute;top:18px;right:22px;
  background:none;border:none;
  color:rgba(255,255,255,.55);font-size:28px;
  cursor:pointer;line-height:1;padding:4px;transition:color .2s;
}
.lb-close:hover{color:white}
.lb-prev,.lb-next{
  position:absolute;top:50%;transform:translateY(-50%);
  background:rgba(255,255,255,.07);border:none;
  color:white;font-size:36px;line-height:1;
  cursor:pointer;padding:10px 18px;transition:background .2s;
}
.lb-prev{left:12px}
.lb-next{right:12px}
.lb-prev:hover,.lb-next:hover{background:rgba(255,106,0,.3)}
.lb-caption{
  position:absolute;bottom:18px;left:0;right:0;
  text-align:center;font-size:12px;
  color:rgba(255,255,255,.4);letter-spacing:.5px;
}

/* ══ PRELOADER ══ */
#preloader{
  position:fixed;inset:0;z-index:99999;
  background:var(--night);
  display:flex;align-items:center;justify-content:center;
  transition:opacity .55s ease,visibility .55s ease;
}
#preloader.done{opacity:0;visibility:hidden;pointer-events:none}
.pre-inner{text-align:center}
.pre-logo{width:68px;height:68px;object-fit:contain;margin-bottom:28px;
  filter:drop-shadow(0 0 18px rgba(255,160,40,.2));
  animation:preFloat 1.8s ease-in-out infinite}
@keyframes preFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.pre-bar{width:140px;height:2px;background:rgba(255,255,255,.07);margin:0 auto 14px;overflow:hidden}
.pre-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--orange),var(--orange2));transition:width .4s ease}
.pre-txt{font-size:9px;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.2);font-family:'Barlow',sans-serif}

/* ══ TYPING EFFECT ══ */
.hero-typed-line{
  display:none; /* ascuns - hero-text prea înalt pe laptop cu tipărit activ */
}
.hero-typed-cur{
  color:var(--orange);font-weight:400;
  animation:blink 1.1s step-end infinite;
}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}

/* ══ WA BUBBLE ══ */
.wa-bubble{
  background:#0d1e2e;
  border:1px solid rgba(37,211,102,.18);
  border-radius:8px;
  padding:14px 16px;
  width:230px;
  opacity:0;
  transform:translateY(8px) scale(.97);
  transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1);
  pointer-events:none;
  box-shadow:0 8px 32px rgba(0,0,0,.4);
}
.wa-bubble.show{opacity:1;transform:translateY(0) scale(1);pointer-events:all}
.wab-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.wab-av{
  width:34px;height:34px;border-radius:50%;flex-shrink:0;
  background:var(--orange);
  display:flex;align-items:center;justify-content:center;
  font-family:'Bebas Neue',sans-serif;font-size:14px;color:white;
}
.wab-name{font-size:12px;font-weight:700;color:white}
.wab-status{font-size:10px;color:#3dd68c;margin-top:1px}
.wab-msg{
  font-size:12px;color:rgba(255,255,255,.65);line-height:1.6;
  background:rgba(255,255,255,.05);
  border-radius:0 6px 6px 6px;
  padding:8px 10px;margin-bottom:8px;
}
.wab-hint{font-size:10px;color:rgba(255,255,255,.3);letter-spacing:.3px;text-align:right}

/* ══ SCROLL TO TOP ══ */
/* Logo — indicator scroll-to-top când nu ești în hero */
.logo.scrolled-down img{
  filter:drop-shadow(0 0 14px rgba(255,106,0,.55)) drop-shadow(0 0 3px rgba(255,255,255,.2));
  transition:filter .3s;
}
.logo.scrolled-down::after{
  content:'↑';
  position:absolute;
  top:-6px;left:50%;transform:translateX(-50%);
  font-size:8px;font-weight:700;letter-spacing:1px;
  color:var(--orange);
  opacity:0;
  transition:opacity .3s;
}
.logo:hover.scrolled-down::after{opacity:1}


/* ══ GALLERY FADE-IN ══ */
.gal-item img.lazy-ready{
  opacity:0;transition:opacity .5s ease;
}
.gal-item img.lazy-loaded{opacity:1}

/* ══════════════════════════════
   AERISIRE EXTRA — trog
══════════════════════════════ */
#servicii,#materiale,#zone,#proces,#contact,
#calculator,#testimoniale,#faq,#galerie,#pipeline-flow{
  padding-top:150px;padding-bottom:150px;
}
#lucrari{padding-top:160px;padding-bottom:160px}
#parteneri{padding-top:110px;padding-bottom:110px}
#raja{padding-top:96px;padding-bottom:96px}

.mat-grid{gap:36px;margin-top:80px}
.services-wrap{gap:36px;margin-top:80px}
.tst-grid{gap:28px;margin-top:64px}
.lucrari-grid{gap:36px;margin-top:80px}
.steps{margin-top:80px}
.step{padding:0 32px 64px}

.section-h{font-size:clamp(46px,7vw,86px);margin-bottom:28px}
.eye{margin-bottom:26px;font-size:12px;gap:14px}
.eye::before,.eye::after{width:40px}
.section-p{font-size:16px;line-height:1.9;max-width:600px;margin-bottom:0}

.mat-card{padding:50px 44px}
.svc{padding:50px 44px}
.tst-card{padding:46px 40px}
.luc-card{padding:44px 40px}

.h-stat{padding:32px 28px}
#counters .cnt-item{padding:68px 32px}
.zone-item{padding:22px 0}
.cinfo-item{padding:24px 0}
.faq-q{padding:28px 0}
.faq-inner{gap:100px}
#contact{gap:100px}
#zone{gap:100px}
.calc-step{margin-bottom:40px}
.calc-wrap{padding:56px;margin-top:76px}
.cform{padding:56px 52px}
.fg{margin-bottom:22px}
.part-item{padding:44px 24px}
.raja-stamp{width:180px;height:180px}
.tst-head{margin-bottom:70px}

@media(max-width:768px){
  #servicii,#materiale,#zone,#proces,#contact,
  #calculator,#testimoniale,#faq,#galerie,#pipeline-flow{
    padding-top:90px;padding-bottom:90px;
  }
  #lucrari{padding-top:100px;padding-bottom:100px}
  .mat-grid,.services-wrap{gap:20px}
  .tst-grid{gap:18px}
  .section-h{font-size:clamp(38px,11vw,62px);margin-bottom:20px}
  .mat-card,.svc,.tst-card{padding:36px 28px}
  .calc-wrap,.cform{padding:32px 24px}
  .faq-inner{gap:48px}
  #contact,#zone{gap:56px}
}

/* ── MOBILE STICKY CTA ── */
.mob-cta{display:none}
@media(max-width:768px){
  .mob-cta{
    display:flex;
    position:fixed;bottom:0;left:0;right:0;z-index:290;
    height:58px;
    background:rgba(8,14,26,.98);
    border-top:1px solid rgba(255,255,255,.07);
    transform:translateY(100%);
    transition:transform .35s cubic-bezier(.16,1,.3,1);
  }
  .mob-cta.show{transform:translateY(0)}
  .mob-cta-phone,.mob-cta-wa{
    flex:1;display:flex;align-items:center;justify-content:center;gap:8px;
    font-family:'Barlow',sans-serif;font-weight:700;font-size:12px;
    letter-spacing:1px;text-transform:uppercase;text-decoration:none;
  }
  .mob-cta-phone{background:var(--orange);color:white}
  .mob-cta-wa{background:#25d366;color:white}
  .mob-cta-phone:active{background:var(--orange2)}
  .mob-cta-wa:active{background:#20ba5a}
  /* push footer content above bar when visible */
  body:has(.mob-cta.show) footer{padding-bottom:74px}
}

/* ══════════════════════════════
   AERISIRE GLOBALĂ
══════════════════════════════ */
#servicii,#materiale,#zone,#proces,#contact,
#calculator,#testimoniale,#faq,#galerie,#pipeline-flow{
  padding-top:120px;padding-bottom:120px;
}
#lucrari{padding-top:130px;padding-bottom:130px}
#parteneri{padding-top:100px;padding-bottom:100px}
#raja{padding-top:80px;padding-bottom:80px}
#counters .cnt-item{padding:56px 32px}

/* Card grids — spațiu între carduri */
.mat-grid{gap:22px;margin-top:72px}
.services-wrap{gap:22px;margin-top:72px}
.tst-grid{gap:22px}
.lucrari-grid{gap:32px;margin-top:72px}
.steps{margin-top:72px}

/* Card padding */
.mat-card{padding:46px 40px}
.svc{padding:46px 40px}
.tst-card{padding:44px 38px}
.luc-card{padding:40px 36px}

/* Heading breathing */
.section-h{margin-bottom:22px}
.eye{margin-bottom:22px}
.section-p{line-height:1.88;max-width:560px}

/* List items */
.zone-item{padding:20px 0}
.cinfo-item{padding:22px 0}
.faq-q{padding:24px 0}
.h-stat{padding:28px 24px}
.step{padding:0 28px 52px}

/* Form */
.calc-wrap{padding:48px}
.cform{padding:52px 46px}
.fg{margin-bottom:20px}

@media(max-width:600px){
  #servicii,#materiale,#zone,#proces,#contact,
  #calculator,#testimoniale,#faq,#galerie{
    padding-top:80px;padding-bottom:80px;
  }
  .mat-grid,.services-wrap,.tst-grid{gap:14px}
  .mat-card,.svc,.tst-card{padding:32px 26px}
  .calc-wrap{padding:28px 22px}
  .cform{padding:36px 28px}
}

/* ══ MOBILE FIXES ══
   Patch-uri pentru specificitate înaltă + componente noi
════════════════════════════════════════════════════════ */
@media(max-width:768px){
  /* Float group — ascuns pe mobil, bara de jos preia rolul */
  .float-group{display:none!important}

  /* WA bubble — hover indisponibil pe touch */
  .wa-bubble{display:none!important}

  /* Hero typed line */
  .hero-typed-line{font-size:11px;margin-bottom:10px;margin-top:-2px}

  /* Counter padding — override specificity înaltă */
  #counters .cnt-item{padding:40px 20px!important}

  /* Lucrari cards */
  .luc-card{padding:28px 22px!important}
  .lucrari-grid{gap:18px;margin-top:44px}

  /* Steps */
  .step{padding:0 18px 44px!important}

  /* Spacings */
  .zone-item{padding:15px 0!important}
  .cinfo-item{padding:16px 0!important}
  .faq-q{padding:18px 0!important}
  .section-h{font-size:clamp(34px,10vw,56px)!important;margin-bottom:16px!important}
  .eye{margin-bottom:16px!important}
  .h-stat{padding:24px 16px!important}
  .faq-inner{gap:44px!important}
  #contact,#zone{gap:44px!important}

  /* Sections */
  #lucrari{padding-top:90px!important;padding-bottom:90px!important}
  #parteneri{padding-top:72px!important;padding-bottom:72px!important}
  #raja{padding-top:60px!important;padding-bottom:60px!important}

  /* Calculator */
  .calc-wrap{padding:28px 22px!important;margin-top:44px!important}
  .calc-step{margin-bottom:28px!important}
  .cform{padding:32px 24px!important}

}
