@charset "utf-8";
/* CSS Document */
/* ================= RESET ================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}
html{
  scroll-behavior:smooth;
}
body{
  font-family:'Open Sans', sans-serif;
  background:#ffffff;
  color:#1e293b;
  line-height:1.7;
  overflow-x:hidden;
}
img{
  width:100%;
  display:block;
}
a{
  text-decoration:none;
}
ul{
  list-style:none;
}

/* ================= CONTAINER ================= */
.container{
  width:min(1200px, calc(100% - 32px));
  margin-inline:auto;
}

/* ================= SECTION ================= */
.section{
  padding:80px 0;
}
.section-heading{
  text-align:center;
  margin-bottom:48px;
}
.section-subtitle{
  display:inline-block;
  font-size:0.9rem;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#16a34a;
  margin-bottom:12px;
}
.section-title{
  font-size:2rem;
  line-height:1.2;
  color:#0f172a;
}

/* ================= BUTTONS ================= */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 28px;
  border-radius:14px;
  font-weight:700;
  transition:0.3s ease;
}
.btn-primary{
  background:#16a34a;
  color:#fff;
}
.btn-primary:hover{
  background:#15803d;
  transform:translateY(-3px);
}
.btn-secondary{
  border:2px solid #fff;
  color:#fff;
}
.btn-secondary:hover{
  background:#fff;
  color:#0f172a;
}

/* ================= HEADER ================= */
.site-header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:1000;
  background:#ffffff;
  box-shadow:0 4px 18px rgba(0,0,0,0.08);
}
.header-inner{
  height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

/* ================= LOGO ================= */

.logo{
  display:flex;
  align-items:center;
  gap:12px;
}
.logo-mark{
  width:46px;
  height:46px;
  border-radius:50%;
  background:#16a34a;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.2rem;
}
.logo-text{
  display:flex;
  flex-direction:column;
  line-height:1;
}
.logo-top{
  font-family:'Festive', cursive;
  font-size:1.8rem;
  color:#16a34a;
}
.logo-bottom{
  font-size:0.9rem;
  font-weight:700;
  color:#0f172a;
  letter-spacing:2px;
  text-transform:uppercase;
}

/* ================= HAMBURGER ================= */

.menu-toggle{
  width:46px;
  height:46px;
  border:none;
  background:none;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
  cursor:pointer;
}
.menu-toggle span{
  width:28px;
  height:3px;
  background:#0f172a;
  border-radius:10px;
  transition:0.3s;
}

/* ================= NAV MOBILE ================= */
.site-nav{
  position:fixed;
  inset:0;
  background:
    linear-gradient(rgba(15,23,42,0.96), rgba(15,23,42,0.96));
  display:flex;
  align-items:center;
  justify-content:center;
  transform:translateY(-100%);
  transition:0.4s ease;
}
.site-nav.is-open{
  transform:translateY(0);
}
.close-menu{
  position:absolute;
  top:24px;
  right:24px;
  width:46px;
  height:46px;
  border:none;
  border-radius:50%;
  background:#fff;
  color:#0f172a;
  font-size:1.3rem;
  cursor:pointer;
}
.nav-list{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:28px;
}
.nav-list a{
	 position: relative;
  color:#fff;
  font-size:1.2rem;
  font-weight:700;
  transition:0.3s;
}
.nav-list a:hover,
.nav-list a.active{
  color:#4ade80;
}
.nav-list a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 2px;
    background: #4ade80;
    transition: width 0.3s ease;
  }
.nav-list a:hover::after,
  .nav-list a.active::after {
    width: 100%;
  }

/* ================= HERO ================= */

.hero{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  padding-top:72px;
  background:
    url("../images/hero.jpg") center/cover no-repeat;
  color: #ffffff;
  padding: 0 0 16px;
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,0.72);
}
.hero-content{
  position:relative;
  z-index:2;
  color:#fff;
  text-align:center;
}
.hero-subtitle{
	 padding-top: 100px;
  display:inline-block;
  margin-bottom:18px;
  font-size:0.95rem;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#4ade80;
}
.hero h1{
  font-size:2.5rem;
  line-height:1.15;
  margin-bottom:24px;
}
.hero p{
  max-width:700px;
  margin-inline:auto;
  margin-bottom:32px;
  color:#e2e8f0;
}
.hero-buttons{
  display:flex;
  flex-direction:column;
  gap:16px;
}

/* ================= ABOUT ================= */
.about-grid{
  display:grid;
  gap:40px;
}
.about-image img{
  border-radius:24px;
  box-shadow:0 12px 30px rgba(0,0,0,0.08);
}
.about-content p{
  margin-bottom:18px;
}
.check-list{
  margin:28px 0;
  display:grid;
  gap:14px;
}
.check-list li{
  position:relative;
  padding-left:28px;
  font-weight:600;
}
.check-list li::before{
  content:"✔";
  position:absolute;
  left:0;
  color:#16a34a;
}

/* ================= SERVICES ================= */
.services{
  background:#f8fafc;
}
.services-grid{
  display:grid;
  gap:24px;
}
.service-card{
  background:#fff;
  padding:32px 28px;
  border-radius:24px;
  box-shadow:0 8px 24px rgba(0,0,0,0.05);
  transition:0.3s ease;
}
.service-card:hover{
  transform:translateY(-6px);
}
.service-icon{
  width:72px;
  height:72px;
  border-radius:20px;
  background:#dcfce7;
  color:#16a34a;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.6rem;
  margin-bottom:24px;
  transition:0.3s;
}
.service-card:hover .service-icon{
  transform:scale(1.08);
}
.service-card h3{
  margin-bottom:16px;
  color:#0f172a;
}

/* ================= FEATURES ================= */
.features-grid{
  display:grid;
  gap:24px;
}
.feature-card{
  text-align:center;
  padding:32px 24px;
  border-radius:24px;
  background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,0.05);
  transition:0.3s ease;
}
.feature-card:hover{
  transform:translateY(-6px);
}
.feature-icon{
  width:78px;
  height:78px;
  margin-inline:auto;
  margin-bottom:22px;
  border-radius:50%;
  background:#dcfce7;
  color:#16a34a;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.8rem;
  transition:0.3s;
}
.feature-card:hover .feature-icon{
  transform:scale(1.08);
}
.feature-card h3{
  margin-bottom:14px;
}

/* ================= CTA ================= */
.cta{
  background:
    linear-gradient(rgba(15,23,42,0.82), rgba(15,23,42,0.82)),
    url("../images/cta.jpg") center/cover no-repeat;
  color:#fff;
}
.cta-content{
  text-align:center;
}
.cta h2{
  font-size:2rem;
  margin-bottom:20px;
}
.cta p{
  max-width:700px;
  margin-inline:auto;
  margin-bottom:32px;
  color:#e2e8f0;
}

/* ================= FOOTER ================= */
.site-footer{
  background:#0f172a;
  color:#cbd5e1;
  padding:70px 0 40px;
  text-align:center;
}
.footer-logo{
  display:inline-block;
  margin-bottom:18px;
  font-family:'Festive', cursive;
  font-size:2.5rem;
  color:#4ade80;
}
.footer-socials{
  display:flex;
  justify-content:center;
  gap:18px;
  margin:28px 0;
}
.footer-socials a{
  width:46px;
  height:46px;
  border-radius:50%;
  background:#1e293b;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:0.3s;
}
.footer-socials a:hover{
  background:#16a34a;
  transform:translateY(-4px);
}
.copyright{
  font-size:0.9rem;
  color:#94a3b8;
}

/* ================= ---servicii.html---HERO ================= */
.page-hero-servicii{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  padding-top:72px;
  background:
    url("../images/hero-servicii.jpg") center/cover no-repeat;
  color: #ffffff;
  padding: 80px 0;
}
.page-hero-servicii-hero-overlay{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,0.72);
}
.page-hero-servicii-content{
  position:relative;
  z-index:2;
  color:#fff;
  text-align:center;
}
.page-hero-servicii-hero-subtitle{
  display:inline-block;
  margin-bottom:18px;
  font-size:0.95rem;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#4ade80;
}
.page-hero-servicii h1{
  font-size:2.5rem;
  line-height:1.15;
  margin-bottom:24px;
}
.page-hero-servicii p{
  max-width:700px;
  margin-inline:auto;
  margin-bottom:32px;
  color:#e2e8f0;
}

/*---servicii.html---*/
.process-grid{
	 display:grid;
  gap:24px;
}
.process-card{
	background:#fff;
  padding:32px 24px;
  border-radius:24px;
  text-align:center;
  box-shadow:0 10px 30px rgba(0,0,0,0.06);
  transition:0.3s;
}
.process-card:hover{
	transform:translateY(-6px);
}
.process-card span{
	font-size:2.4rem;
  margin-bottom:18px;
  transition:0.3s;
}
.process-card h3{
	margin-bottom:12px;
  color:#166534;
}


/* ================= ---despre.html---HERO ================= */
.page-hero-despre{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  padding-top:72px;
  background:
    url("../images/hero-despre.jpg") center/cover no-repeat;
  color: #ffffff;
  padding: 80px 0;
}
.page-hero-despre-hero-overlay{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,0.72);
}
.page-hero-despre-content{
  position:relative;
  z-index:2;
  color:#fff;
  text-align:center;
}
.page-hero-despre-hero-subtitle{
  display:inline-block;
  margin-bottom:18px;
  font-size:0.95rem;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#4ade80;
}
.page-hero-despre h1{
  font-size:2.5rem;
  line-height:1.15;
  margin-bottom:24px;
}
.page-hero-despre p{
  max-width:700px;
  margin-inline:auto;
  margin-bottom:32px;
  color:#e2e8f0;
}

.about-page{
  background:var(--white);
}
.about-grid{
  display:grid;
  gap:32px;
  align-items:center;
}
.about-content h2{
  color:var(--dark);
  font-size:clamp(1.9rem, 5vw, 3rem);
  line-height:1.15;
  margin-bottom:18px;
}
.about-content p{
  margin-bottom:16px;
}
.about-image img{
  width:100%;
  min-height:220px;
  object-fit:cover;
  border-radius:28px;
  box-shadow:var(--shadow);
}

/* =================--despre.htmlSTATS ================= */
.stats-grid {
  display: grid;
  gap: 24px;
  text-align: center;
}
.stat-box {
  background: #f8fafc;
  padding: 24px;
  border-radius: 12px;
}
.stat-box h3 {
  font-size: 32px;
  font-weight: 800;
  color:#166534;
  margin-bottom: 6px;
}

/* ================= ---contact---HERO ================= */
.page-hero-contact{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  padding-top:72px;
  background:
    url("../images/hero-contact.jpg") center/cover no-repeat;
  color: #ffffff;
  padding: 80px 0;
}
.page-hero-contact-hero-overlay{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,0.72);
}
.page-hero-contact-content{
  position:relative;
  z-index:2;
  color:#fff;
  text-align:center;
}
.page-hero-contact-section-subtitle{
  display:inline-block;
  margin-bottom:18px;
  font-size:0.95rem;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#4ade80;
}
.page-hero-contact h1{
  font-size:2.5rem;
  line-height:1.15;
  margin-bottom:24px;
}
.page-hero-contact p{
  max-width:700px;
  margin-inline:auto;
  margin-bottom:32px;
  color:#e2e8f0;
}

/* ---contact.php---CONTACT */
.contact-grid {
  display: grid;
  gap: 40px;
}
.contact-info p {
  margin-bottom: 24px;
  color: #486581;
}
.contact-box {
  display: grid;
  gap: 14px;
	 padding: 8px;
	 margin: 8px;
}
.contact-box i{
	font-size: 24px;
	color:#166534;
}
.contact-form-wrapper {
  background: #ffffff;
  padding: 28px;
  border-radius: 24px;
  border: 1px solid #e0f2fe;
}
.contact-form {
  display: grid;
  gap: 18px;
}
.form-group {
  display: grid;
  gap: 8px;
}
.form-group label {
  font-weight: 600;
  color:#166534;
}
.form-group input,
.form-group textarea {
  width: 100%;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px dotted #166534;
  font-family: inherit;
  font-size: 1rem;
  outline: none;
  transition: 0.3s ease;
}
.form-group input:focus,
.form-group textarea:focus {
  border-color: 1px dotted #80ff80;
}
.honeypot{
  position: absolute;
  left: -9999px;
}








/* ================= TABLET ================= */

@media(min-width:768px){

  .hero,
	.page-hero-servicii,
	.page-hero-despre,
	.page-hero-contact{
    min-height:400px;
  }
.hero h1,
	.page-hero-servicii h1,
.page-hero-despre h1,
	.page-hero-contact h1{
    font-size:3.6rem;
  }

 .hero-buttons{
    flex-direction:row;
    justify-content:center;
  }
.about-grid,
  .services-grid,
  .features-grid,
	 .process-grid,
	.stats-grid{
    grid-template-columns:repeat(2,1fr);
  }
	
.about-image img{
  width:100%;
  min-height:520px;
  object-fit:cover;
  border-radius:28px;
  box-shadow:var(--shadow);
}
	
.contact-grid {
    grid-template-columns: 1fr 1fr;
    align-items: start;
  }
	
	
	
	
}














/* ================= DESKTOP ================= */

@media(min-width:1024px){

  .menu-toggle,
  .close-menu{
    display:none;
  }
 .site-nav{
    position:static;
    inset:auto;
    background:transparent;
    transform:none;
    width:auto;
  }
  .nav-list{
    flex-direction:row;
    gap:32px;
  }
 .nav-list a{
    position:relative;
    color:#0f172a;
    font-size:1rem;
  }
 .nav-list a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-6px;
    width:0;
    height:2px;
    background:#16a34a;
    transition:0.3s;
  }
.nav-list a:hover::after,
  .nav-list a.active::after{
    width:100%;
  }
	.page-hero-servicii{
  
  background:
    url("../images/hero-servicii.jpg") top/cover no-repeat;
  color: #ffffff;
		padding-bottom: 220px;
 }
	.page-hero-despre{
  
  background:
    url("../images/hero-despre.jpg") top/cover no-repeat;
  color: #ffffff;
		padding-bottom: 220px;
 }
	.page-hero-contact{
  
  background:
    url("../images/hero-contact.jpg") top/cover no-repeat;
  color: #ffffff;
		padding-bottom: 220px;
 }
 .hero,
	.page-hero-servicii,
	.page-hero-despre,
	.page-hero-contact{
    max-height:600px;
  }
.hero h1,
	.page-hero-servicii h1,
	.page-hero-despre h1,
	.page-hero-contact h1{
    max-width:1000px;
    margin-inline:auto;
    font-size:4.5rem;
  }
.hero p,
	.page-hero-servicii p,
	.page-hero-despre p,
	.page-hero-contact p{
  max-width:800px;
}
 .about-grid{
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:60px;
  }
 .services-grid,
 .features-grid,
	.stats-grid{
    grid-template-columns:repeat(3,1fr);
  }
	
	
/* ================= CTA ================= */
.cta{
  background:
    linear-gradient(rgba(15,23,42,0.82), rgba(15,23,42,0.82)),
    url("../images/cta.jpg") top/cover no-repeat;
  color:#fff;
}
	
	
.process-grid{
    grid-template-columns:repeat(4,1fr);
  }	
	
	
	
}






.form-message {
  padding: 14px 16px;
  border-radius: 8px;
  margin-bottom: 16px;
  font-weight: 700;
}

.form-message.success {
  background: #dcfce7;
  color: #166534;
  border: 1px solid #bbf7d0;
}

.form-message.error {
  background: #fee2e2;
  color: #991b1b;
  border: 1px solid #fecaca;
}









































































































































































































































































































































































































