/**
 * Planero – paleta de culori site prezentare
 * Primary: #144972 | Primary Hover: #0f3a5c | Secondary: #38BDF8 | Accent: #F59E0B
 * Background: #F8FAFC | Card: #FFFFFF | Border: #E2E8F0
 * Text: #0F172A | Text secondary: #64748B
 * Success: #22C55E | Warning: #F59E0B | Error: #EF4444
 */

:root {
  --planero-primary: #144972;
  --planero-primary-hover: #0f3a5c;
  --planero-secondary: #38BDF8;
  --planero-accent: #F59E0B;
  --planero-bg: #F8FAFC;
  --planero-card: #FFFFFF;
  --planero-border: #E2E8F0;
  --planero-text: #0F172A;
  --planero-text-secondary: #64748B;
  --planero-success: #22C55E;
  --planero-warning: #F59E0B;
  --planero-error: #EF4444;
  /* Bootstrap override */
  --bs-primary: #144972;
  --bs-secondary: #38BDF8;
  --bs-success: #22C55E;
  --bs-warning: #F59E0B;
  --bs-danger: #EF4444;
  --bs-dark: #0F172A;
}

body {
  background-color: var(--planero-bg) !important;
  color: var(--planero-text) !important;
}

/* Butoane */
.btn-primary,
.btn.btn-primary {
  background: var(--planero-primary) !important;
  border-color: var(--planero-primary) !important;
  color: #FFFFFF !important;
}
.btn-primary:hover,
.btn.btn-primary:hover {
  background: var(--planero-primary-hover) !important;
  border-color: var(--planero-primary-hover) !important;
  color: #FFFFFF !important;
}

.btn-light {
  color: var(--planero-primary) !important;
  border-color: var(--planero-border);
  background: var(--planero-card) !important;
}
.btn-light:hover {
  background: var(--planero-primary) !important;
  color: #FFFFFF !important;
  border-color: var(--planero-primary);
}

/* Text & link-uri */
.text-primary {
  color: var(--planero-primary) !important;
}
.text-secondary,
.text-muted {
  color: var(--planero-text-secondary) !important;
}
a {
  color: var(--planero-primary);
}
a:hover {
  color: var(--planero-primary-hover);
}

/* Navbar */
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link.active {
  color: var(--planero-primary) !important;
}
.navbar .navbar-toggler {
  border-color: var(--planero-primary);
  color: var(--planero-primary);
}

/* Breadcrumb / header pagini interne */
.bg-breadcrumb {
  background: linear-gradient(rgba(20, 73, 114, 0.08), rgba(20, 73, 114, 0.04)) !important;
}
.bg-breadcrumb .breadcrumb-item.active {
  color: var(--planero-primary) !important;
}

/* Carduri, secțiuni */
.service,
.feature,
.price,
.contact {
  background-color: var(--planero-bg);
}
.service-item,
.price-item,
.footer-item,
.card {
  background-color: var(--planero-card) !important;
  border-color: var(--planero-border);
}
.price-item,
.service-item {
  border: 1px solid var(--planero-border);
}
/* Chenare „Ce oferim” – aceeași înălțime pe toate (desktop) */
.service .row.align-items-stretch .col .service-item-equal {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}
.service .row.align-items-stretch .col .service-item-equal .service-content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}
.service .row.align-items-stretch .col .service-item-equal .service-content p {
  flex: 1 1 auto;
}
.bg-light {
  background-color: var(--planero-bg) !important;
}

/* Footer – fără background pe containere */
.footer {
  background: none !important;
}
.footer .container,
.footer .container-fluid,
.footer .row,
.footer .row > div,
.footer .footer-item {
  background: none !important;
  background-color: transparent !important;
}
.footer .footer-item h4,
.footer .footer-item a,
.footer .footer-item p {
  color: var(--planero-text) !important;
}
.footer .footer-item a {
  letter-spacing: normal !important;
  white-space: nowrap;
}
.footer .footer-item a:hover {
  color: var(--planero-primary) !important;
  letter-spacing: normal !important;
}

/* Copyright bară */
.copyright {
  background: var(--planero-text) !important;
  border-top-color: var(--planero-border) !important;
}
.copyright .text-white,
.copyright span,
.copyright a {
  color: rgba(255, 255, 255, 0.9) !important;
}

/* Back to top */
.back-to-top {
  background: var(--planero-primary) !important;
  color: #FFFFFF !important;
}
.back-to-top:hover {
  background: var(--planero-primary-hover) !important;
  color: #FFFFFF !important;
}

/* Spinner */
#spinner .spinner-border.text-primary {
  color: var(--planero-primary) !important;
  border-color: currentColor;
}

/* Titluri */
h1, h2, h3, h4, h5, h6 {
  color: var(--planero-text) !important;
}

/* Border-uri generale */
.border,
.border-primary {
  border-color: var(--planero-border) !important;
}
.border-primary {
  border-color: var(--planero-primary) !important;
}

/* Badge, alert */
.badge.bg-primary {
  background: var(--planero-primary) !important;
}
.alert-success { background-color: rgba(34, 197, 94, 0.1); border-color: var(--planero-success); color: var(--planero-text); }
.alert-danger { background-color: rgba(239, 68, 68, 0.1); border-color: var(--planero-error); color: var(--planero-text); }
.alert-warning { background-color: rgba(245, 158, 11, 0.1); border-color: var(--planero-warning); color: var(--planero-text); }

/* Form controls - border */
.form-control,
.form-floating .form-control {
  border-color: var(--planero-border);
}
.form-control:focus {
  border-color: var(--planero-primary);
  box-shadow: 0 0 0 0.2rem rgba(20, 73, 114, 0.2);
}

/* Pice item offer badge */
.pice-item-offer {
  background: var(--planero-accent) !important;
  color: var(--planero-text) !important;
}

/* ========== Meniu mobil – overlay peste site (elegant, fundal opac) ========== */
@media (max-width: 991.98px) {
  .navbar {
    z-index: 1060;
  }
  .navbar-collapse.collapse,
  .navbar-collapse {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    margin: 0 !important;
    padding: 80px 1.5rem 2rem !important;
    z-index: 1050;
    transition: none !important;
    background: rgba(248, 250, 252, 0.98) !important;
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    border: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    overflow-y: auto;
    box-shadow: none;
  }
  .navbar-collapse:not(.show) {
    visibility: hidden;
    pointer-events: none;
  }
  /* Bara (brand + toggler) deasupra overlay-ului */
  .navbar > .navbar-toggler {
    position: relative;
    z-index: 1061;
  }
  .navbar > .navbar-brand {
    position: relative;
    z-index: 1061;
  }
  .navbar-collapse .navbar-nav {
    flex-direction: column !important;
    align-items: center !important;
    width: 100%;
    margin: 0 !important;
  }
  .navbar-collapse .nav-item .nav-link {
    padding: 14px 0 !important;
    font-size: 1.15rem !important;
    font-weight: 500;
    color: var(--planero-text) !important;
    border-bottom: 1px solid var(--planero-border);
    width: 100%;
    text-align: center;
  }
  .navbar-collapse .nav-item:last-child .nav-link {
    border-bottom: none;
  }
  .navbar-collapse .nav-link:hover,
  .navbar-collapse .nav-link.active {
    color: var(--planero-primary) !important;
  }
  .navbar-collapse .btn {
    margin-top: 1.25rem;
    width: 100%;
    max-width: 200px;
    justify-content: center;
  }
}

/* Secțiune CTA planuri – fundal albastru full width, text și buton albe */
.section-planuri-cta {
  background: var(--planero-primary) !important;
  width: 100%;
}
.section-planuri-cta .section-planuri-cta__subtitle,
.section-planuri-cta .section-planuri-cta__title,
.section-planuri-cta .section-planuri-cta__text {
  color: #fff !important;
}
.section-planuri-cta .section-planuri-cta__btn {
  background: #fff !important;
  border-color: #fff !important;
  color: var(--planero-primary) !important;
}
.section-planuri-cta .section-planuri-cta__btn:hover {
  background: rgba(255, 255, 255, 0.9) !important;
  border-color: #fff !important;
  color: var(--planero-primary-hover) !important;
}
