/* ═══════════════════════════════════════
   BANCO HOMEPAGE CSS
   Mirror of banco-homepage-new edit.html
   Loaded ONLY on homepage via enqueue.php
   Scoped to <main class="hp"> — does NOT
   affect header, footer, or nav.
   ═══════════════════════════════════════ */

:root{
  --red:#D41920;
  --red-hover:#A8131A;
  --navy:#0F1623;
  --gray-bg:#ECEDEF;
  --gray-bg-alt:#F5F5F7;
  --gray-border:#E0E1E5;
  --text-main:#1A1D28;
  --text-secondary:#7A7D8A;
  --white:#FFFFFF;
  --radius-card:14px;
  --radius-btn:50px;
  --max-w:1200px;
  --nav-h:72px;
}

/* Scope everything to .hp so header/footer stay untouched */
.hp{font-family:'Exo',sans-serif;font-weight:400;font-size:0.9rem;color:var(--text-main);line-height:1.7;background:var(--white);-webkit-font-smoothing:antialiased}
.hp img{display:block;max-width:100%;height:auto}
.hp section{padding:72px 0}
.hp .container{max-width:var(--max-w)!important;width:100%;margin:0 auto;padding:0 24px;text-align:inherit;position:static;float:none}
.hp .container::before,.hp .container::after{display:none}

/* Utility */
.hp .section-label{font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--red);margin-bottom:8px}
.hp .section-title{font-size:clamp(1.3rem,2.5vw,1.7rem);font-weight:800;text-transform:uppercase;letter-spacing:0.3px;line-height:1.2;margin-bottom:14px}
.hp .btn{display:inline-flex;align-items:center;gap:8px;font-family:'Exo',sans-serif;font-weight:700;font-size:0.8rem;text-transform:uppercase;letter-spacing:0.8px;padding:13px 30px;border-radius:var(--radius-btn);border:2px solid transparent;cursor:pointer;transition:all 0.25s}
.hp .btn-primary{background:var(--red);color:var(--white);border-color:var(--red)}
.hp .btn-primary:hover{background:var(--red-hover);border-color:var(--red-hover)}
.hp .btn-ghost{background:transparent;color:var(--white);border-color:rgba(255,255,255,0.4)}
.hp .btn-ghost:hover{border-color:var(--white)}

/* ═══ HERO ═══ */
.hero{position:relative;min-height:auto;display:flex;align-items:center;justify-content:center;background:url('../images/webp/hero-bg.jpg') center/cover no-repeat;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:rgba(15,22,35,0.55)}
.hero-content{position:relative;z-index:2;text-align:center;padding:120px 0 160px}
.hero-tag{font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:3px;color:rgba(255,255,255,0.5);margin-bottom:16px}
.hero-tag::before{content:'';display:block;width:14px;height:14px;background:var(--red);margin:0 auto 14px}
.hero h1{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900;text-transform:uppercase;letter-spacing:0.5px;line-height:1.12;color:var(--white)}
.hero-headline{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:400;text-transform:uppercase;letter-spacing:0.5px;line-height:1.12;color:var(--white);margin:0}

/* ═══ FUNNELS ═══ */
.funnels{position:relative;z-index:3;margin-top:-100px;padding:0 0 72px}
.funnels-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.funnel-card{background:var(--white);border-radius:var(--radius-card);overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,0.1);transition:box-shadow 0.3s,transform 0.3s}
.funnel-card:hover{box-shadow:0 16px 50px rgba(0,0,0,0.14);transform:translateY(-4px)}
.funnel-img{width:100%;height:180px;overflow:hidden}
.funnel-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s}
.funnel-card:hover .funnel-img img{transform:scale(1.06)}
.funnel-body{padding:24px}
.funnel-card h3{font-size:0.92rem;font-weight:800;text-transform:uppercase;letter-spacing:0.3px;margin-bottom:8px;line-height:1.3}
.funnel-card p{font-size:0.82rem;color:var(--text-secondary);line-height:1.6;margin-bottom:14px}
.funnel-card .link{font-size:0.78rem;font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:0.5px}
.funnel-card .link:hover{text-decoration:underline}

/* ═══ GARANȚIE ═══ */
.garantie-strip{padding:0}
.garantie-card{max-width:900px;margin:-48px auto 0;position:relative;z-index:4;background:var(--white);border-radius:var(--radius-card);padding:40px 48px;display:flex;align-items:center;gap:28px;box-shadow:0 16px 60px rgba(0,0,0,0.1);border-left:5px solid var(--red)}
.garantie-icon{width:64px;height:64px;border-radius:50%;background:rgba(212,25,32,0.06);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.garantie-icon svg{width:30px;height:30px}
.garantie-card h3{font-size:1.05rem;font-weight:800;text-transform:uppercase;letter-spacing:0.3px;margin-bottom:4px}
.garantie-card p{font-size:0.86rem;color:var(--text-secondary);line-height:1.6}

/* ═══ CINE SUNTEM ═══ */
.cine-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.cine-img{border-radius:var(--radius-card);overflow:hidden}
.cine-img img{width:100%;height:400px;object-fit:cover}
.cine-check{display:flex;gap:10px;align-items:flex-start;margin-bottom:8px;font-size:0.86rem}
.cine-check svg{width:18px;height:18px;flex-shrink:0;margin-top:3px;fill:none;stroke:var(--red);stroke-width:2.5}
.cine-cifre{display:flex;gap:32px;margin-top:24px;padding-top:24px;border-top:1px solid var(--gray-border)}
.cine-cifre .c{text-align:center}
.cine-cifre .c .num{font-size:1.4rem;font-weight:900;color:var(--text-main)}
.cine-cifre .c .lab{font-size:0.68rem;font-weight:600;text-transform:uppercase;color:var(--text-secondary);margin-top:2px}

/* ═══ ETAPE ═══ */
.etape-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.etapa-card{background:var(--gray-bg-alt);border-radius:var(--radius-card);padding:28px 24px;border:1px solid transparent;transition:border-color 0.3s}
.etapa-card:hover{border-color:var(--red)}
.etapa-num{font-size:2.2rem;font-weight:900;color:rgba(212,25,32,0.12);line-height:1;margin-bottom:8px}
.etapa-card h4{font-size:0.88rem;font-weight:800;margin-bottom:8px}
.etapa-card p{font-size:0.8rem;color:var(--text-secondary);line-height:1.6}

/* ═══ DIFERENȚIATORI ═══ */
.dif-section{background:var(--gray-bg-alt)}
.dif-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:28px}
.dif-item{text-align:center;padding:0 24px;border-right:1px solid var(--gray-border)}
.dif-item:last-child{border-right:none}
.dif-icon{width:52px;height:52px;border-radius:50%;background:var(--white);display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:0 2px 12px rgba(0,0,0,0.06)}
.dif-icon svg{width:24px;height:24px;stroke:var(--red);fill:none;stroke-width:1.8}
.dif-item h4{font-size:0.88rem;font-weight:800;margin-bottom:6px}
.dif-item p{font-size:0.78rem;color:var(--text-secondary);line-height:1.5}

/* ═══ STADII ═══ */
.stadii-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.stadiu-card{border-radius:var(--radius-card);overflow:hidden;position:relative}
.stadiu-card img{width:100%;height:240px;object-fit:cover;transition:transform 0.5s}
.stadiu-card:hover img{transform:scale(1.05)}
.stadiu-overlay{position:absolute;bottom:0;left:0;right:0;padding:20px;background:linear-gradient(to top,rgba(15,22,35,0.85),transparent)}
.stadiu-overlay h4{font-size:0.88rem;font-weight:800;color:var(--white);text-transform:uppercase;letter-spacing:0.3px;margin-bottom:4px}
.stadiu-overlay p{font-size:0.75rem;color:rgba(255,255,255,0.6)}

/* ═══ TESTIMONIALE ═══ */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.testi-card{background:var(--gray-bg-alt);border-radius:var(--radius-card);padding:28px 24px}
.testi-card .stars{color:#f5a623;font-size:0.9rem;margin-bottom:12px;letter-spacing:2px}
.testi-card .quote{font-style:italic;font-size:0.86rem;line-height:1.7;margin-bottom:16px}
.testi-card .author{font-size:0.78rem;font-weight:700;color:var(--text-secondary)}

/* ═══ PORTOFOLIU ═══ */
.porto-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.porto-card{border-radius:var(--radius-card);overflow:hidden;position:relative;display:block;text-decoration:none;color:inherit}
.porto-card img{width:100%;height:260px;object-fit:cover;transition:transform 0.5s}
.porto-card:hover img{transform:scale(1.05)}
.porto-card .name{position:absolute;bottom:0;left:0;right:0;padding:16px;background:linear-gradient(to top,rgba(15,22,35,0.85),transparent);font-size:0.82rem;font-weight:700;color:var(--white);text-transform:uppercase;letter-spacing:0.5px}

/* ═══ FAQ ═══ */
.faq-section{background:var(--gray-bg-alt)}
.faq-grid{max-width:800px;margin:28px auto 0}
.faq-item{border:1px solid var(--gray-border);border-radius:var(--radius-card);margin-bottom:10px;overflow:hidden;background:var(--white)}
.faq-item summary{padding:18px 24px;font-size:0.88rem;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.faq-item summary::after{content:'+';font-size:1.2rem;font-weight:300;color:var(--red)}
.faq-item[open] summary::after{content:'\2212'}
.faq-item .faq-body{padding:0 24px 18px;font-size:0.84rem;color:var(--text-secondary);line-height:1.7}

/* ═══ CTA FINAL ═══ */
.cta-final{position:relative;padding:80px 0;background:linear-gradient(rgba(15,22,35,0.88),rgba(15,22,35,0.88)),url('../images/webp/cta-bg.jpg') center/cover no-repeat;text-align:center}
.cta-final h2{font-size:clamp(1.4rem,3vw,2rem);font-weight:900;text-transform:uppercase;color:var(--white);margin-bottom:12px}
.cta-final p{font-size:0.9rem;color:rgba(255,255,255,0.6);margin-bottom:28px;max-width:500px;margin-left:auto;margin-right:auto}

/* ═══ REVEAL ═══ */
.reveal{opacity:1;transform:translateY(0);transition:opacity 0.6s ease,transform 0.6s ease}
.reveal.hidden{opacity:0;transform:translateY(25px)}

/* ═══ RESPONSIVE ═══ */
@media(max-width:960px){
  .funnels-grid,.dif-grid,.etape-grid,.testi-grid,.porto-grid,.stadii-grid,.cine-grid{grid-template-columns:1fr}
  .funnels{margin-top:-60px}
}
@media(max-width:600px){
  .hp .container{padding:0 16px}
  .hero-content{padding:100px 0 140px}
  .hero h1{font-size:1.5rem}
  .cine-cifre{flex-wrap:wrap;gap:20px}
  .dif-grid .dif-item{border-right:none;border-bottom:1px solid var(--gray-border);padding:20px 0}
  .dif-grid .dif-item:last-child{border-bottom:none}
  .garantie-card{flex-direction:column;text-align:center;padding:28px 24px;margin:-36px 16px 0}
}
