:root {
  --bs-font-sans-serif: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --bs-body-font-family: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --primary-color: #4AAB3D;
  --secondary-color: #FEC51B;
  --dark-color: #0F1A2D;
  --text-color: #616161;
  --white-color: #ffffff;
  --menu-dark-head-color: #072032;
  --dark-2: #072032;
  --light-green: #e5f7ec;
  --color-white:#ffffff;
}

/* Bootstrap felülírása */
.btn, .nav-link, .navbar-brand {
  font-family: 'Montserrat', system-ui, -apple-system, sans-serif !important;
}

@font-face {
    font-display: swap;
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/dm-sans/dm-sans-v15-latin-regular.woff2') format('woff2'),
         url('../fonts/dm-sans/dm-sans-v15-latin-regular.woff') format('woff');
}

@font-face {
    font-display: swap;
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/dm-sans/dm-sans-v15-latin-500.woff2') format('woff2'),
         url('../fonts/dm-sans/dm-sans-v15-latin-500.woff') format('woff');
}

@font-face {
    font-display: swap;
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/dm-sans/dm-sans-v15-latin-700.woff2') format('woff2'),
         url('../fonts/dm-sans/dm-sans-v15-latin-700.woff') format('woff');
}

/* Montserrat Font Family */
@font-face {
    font-display: swap;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/montserrat/montserrat-v29-latin-regular.woff2') format('woff2'),
         url('../fonts/montserrat/montserrat-v29-latin-regular.woff') format('woff');
}

@font-face {
    font-display: swap;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/montserrat/montserrat-v29-latin-500.woff2') format('woff2'),
         url('../fonts/montserrat/montserrat-v29-latin-500.woff') format('woff');
}

@font-face {
    font-display: swap;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/montserrat/montserrat-v29-latin-600.woff2') format('woff2'),
         url('../fonts/montserrat/montserrat-v29-latin-600.woff') format('woff');
}

@font-face {
    font-display: swap;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/montserrat/montserrat-v29-latin-700.woff2') format('woff2'),
         url('../fonts/montserrat/montserrat-v29-latin-700.woff') format('woff');
}

body {
  font-family: 'DM Sans', 
               -apple-system, 
               BlinkMacSystemFont, 
               'Segoe UI', 
               system-ui, 
               sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--text-color);
  overflow-x: hidden!important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Montserrat', 
               -apple-system, 
               BlinkMacSystemFont, 
               'Segoe UI', 
               system-ui, 
               sans-serif;
  font-weight: 700;
  line-height: 1.3;
}

a {
  text-decoration: none;
  transition: all 0.3s ease;
}

img {
  max-width: 100%;
  height: auto;
}

/* Header Stílusok */
.header-area {
	position: relative;
    z-index: 99;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    height: 158px;
    min-height: 158px;
}

.menu-header{
	height: 90px;
	min-height: 90px;
	border-color: #D9D9D9!important;
	border-style: solid!important;
	border-width: 0px 0px 0px 1px!important;
}

.menu-header-row{
	height:90px;
	min-height:90px;
}

.support-box{
	display: flex;
    align-items: center;
}

.menu-container{
	padding-right: 0;
    padding-left: 0;
}

.top-header {
  background-color: var(--menu-dark-head-color) !important;
  height:67px;
}

.contact-item {
  font-size: 14px;
}

.contact-info{
	align-items: center;
    height: 67px;
    margin-left: 55px;
}

.center-with-icon-class{
	display: flex;
	align-items: center;
	min-height:20px;
}

.center-with-icon{
	display: flex;
    align-items: center;
	font-size:18px;
}

.center-with-icon-menu{
	display: flex;
    align-items: center;
    font-size: 18px;
    height: 32px;
    min-height: 32px;
    width: 32px;
    min-width: 32px;
    background: #4AAB3D;
    border-radius: 50%;
    justify-content: center;
}

.main-menu{
	margin-left: 38px;
}

.main-header {
	background-color: var(--white-color);
    height: 158px;
    min-height: 158px;
}

.main-menu .nav-link {
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	font-weight:600;
	color: var(--dark-color);
	transition: color 0.3s;
	margin-right: 5px;
}

.main-menu .nav-link.active,
.main-menu .nav-link:hover{
	color: var(--white-color);
	background-color: var(--primary-color);
}

.call-icon {
	width: 60px;
    height: 60px;
    background-color: var(--primary-color) !important;
    color: #ffffff;
    font-size: 2.35rem;
    justify-content: center;
    align-items: center;
    display: flex;
    border-radius: 50%;
    flex-shrink: 0;
}

.call-support-row{
	align-items:center;
}

.call-text {
  font-size: 14px;
  line-height: 1.2;
  margin-left: 10px;
}

.call-support-button{
	color: #072032;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 89px;
    letter-spacing: 0.9px;
}

.call-support-button a{
	justify-content: center;
    display: flex;
    height: 90px;
    align-items: center;
}

.logo img{
	width: 90%;
    height: auto;
    padding-left: 15px;
}

.support{
	padding-left: 15px;
    border-color: #D9D9D9 !important;
    border-style: solid !important;
    border-width: 0px 0px 0px 1px !important;
}

.book-btn .btn {
  background-color: var(--secondary-color) !important;
  border-color: var(--secondary-color);
  font-weight: 700;
}

/* Hero Stílusok */
.hero-area {
  position: relative;
  overflow: hidden;
}

.hero-content {
  /*margin: 0 0 0 150px;*/
  /*padding: 80px 50px;*/
  position: relative;
  z-index: 10;
}

.hero-tag .tag-text {
	background-color: #FEC51B;
    color: #003973;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.9px;
	text-transform:uppercase;
}

.hero-title {
  font-size: 60px;
  font-weight: 700;
  line-height: 0.9375;
  letter-spacing: -1px;
}

.hero-desc {
  font-size: 16px;
  max-width: 550px;
}

.hero-image{
	background-size: cover;
    background-repeat: no-repeat;
    min-height: 400px;
    background-position: center center;
}

.hero-image img{
	width: 100%;
	min-height: calc(100vh - 157px);
    width: auto;
    object-fit: cover;
    object-position: center;
	position: relative;
    z-index: 5;
}

.bg-success {
  background-color: var(--primary-color) !important;
}

.bg-hero-left-napelem {
  background-color: var(--primary-color);
  background-image: linear-gradient(180deg, #4AAB3D 0%, #073C00 100%);
  position: relative;
}

.btn-warning {
  background-color: var(--secondary-color) !important;
  border-color: var(--secondary-color);
}

.napelem-hero-container{
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.napelem-hero-container .row{
	min-height: calc(100vh - 157px);
}

.hero-icon-bg svg {
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0.8;
}

.turbine-blades {
    animation: spin_reverse 6s linear infinite;
}

.hero-bg-winde-turbine svg{
	position: absolute;
    right: 7.5%;
    bottom: 20%;	
}

.hero-bg-winde-turbine-2 svg{
	position: absolute;
    right: 24%;
    bottom: 15%;
	width: auto;
    height: 200px;
}

.hero-bg-winde-turbine-2 svg .turbine-blades{
	animation: spin_reverse 7s linear infinite;
}

@keyframes spin_reverse {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(-360deg);
    }
}

.next{
	margin-top:120px;
	margin-bottom:120px
}

.next-left-background {
  background-image: url('../img/napelem-hatter.png');
  background-size: cover;
  background-position: center;
  background-repeat: repeat;
  height: auto;
  position: relative;
}

.justify-content-display-flex{
	display:flex;
}

.margin-top{
	margin-top:22%;
}

.logo{
	justify-content: center;
	display:flex;
}

.ceges-logo-animalt-next {
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  transform: translate(-50%, -50%);
	  z-index: 10;
	  pointer-events: none;
}

.ceges-logo-animalt-next img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 132px;
  height: auto;
  z-index: 2;
}

.img-background-box{
	position: relative;
	background-color: #fff;
	padding: 13px;
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	width: 220px;
	max-width: 90vw;
	color: var(--primary-color);
	margin: auto;
}

.img-background-box-text{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

@keyframes pxl_spin_reverse {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(-360deg);
    }
}

.img-background-box > div {
	animation: 15s linear 0s infinite normal none running pxl_spin_reverse;
}

.img-background-box-text span{
	display: block;
	font-size: 16px;
	position: absolute;
	letter-spacing: -0.32px;
}

@keyframes square-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.spinning-square {
  animation: square-spin 2s linear infinite;
  transform-origin: 49.78px 9px;
}

.section-text-box{
	margin-left: 50px;
}

.text-header{
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: var(--primary-color);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .28px;
    text-transform: uppercase;
    align-items: center;
    display: flex;
    gap: 0.5rem;
}

h2, .h2{
	font-size: 54px;
    line-height: 1.037;
    letter-spacing: -1px;
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: var(--dark-2);
    font-weight: 600;
    margin: 0;
    padding: 0;
    clear: both;
	margin-top:35px;
	margin-bottom:30px;
}

.section-text-box-text{
	font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    letter-spacing: -0.36px;
	font-size: 16.5px;
    line-height: 1.5;
    color: #5c6972;
    -webkit-font-smoothing: antialiased;
	font-weight: 400;
}

.sub-text-header{
	color: #072032;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 18px;
    font-weight: 600;
	margin-top:40px;	
}

.section-text-box ul{
	list-style:none;
	padding-left: 0;
}

.section-text-box li {
	position: relative;
	padding-left: 30px;
	margin-bottom: 8px;
	color: var(--menu-dark-head-color);
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -.32px;
}

.section-text-box li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #86BB46;
  
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z'/%3E%3C/svg%3E");
  background-size: 12px;
  background-repeat: no-repeat;
  background-position: center;
}

.section-text-button{
	margin-top:50px;
}

.section-text-button a{
	color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 60px;
	background: var(--dark-color);
	border-radius:30px;
	padding:20px 55px;
}

.lenerlend-napelem-szamlalo .number{
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 48px;
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: -1px;
	color: var(--menu-dark-head-color);
}

.lenerlend-napelem-szamlalo .subtext{
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.32px;
    white-space: nowrap;
	color: var(--menu-dark-head-color);
	display:block;
}

.szamlalo-card{
    padding: 50px 20px 50px 20px;
    display: inline-flex;
    align-items: center;
}

.szamlalo-card .col-md-6{
	display: grid;
    justify-content: center;
}

.szamlalo-card-border{
	border-color: #D9D9D9;
    border-style: solid;
    border-width: 1px 1px 0px 1px;	
}

.szamlalo-card-border-top{
	border-color: #D9D9D9;
    border-style: solid;
    border-width: 1px 0px 0px 0px;	
}

.lenerlend-szolgaltatasaink{
	position: relative;
	background-color: #E7F9EE;
	margin-top:90px;
}

.lenerlend-szolgaltatasaink > svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 1;
  pointer-events: none;
}

.szolgaltatasaink-napelem {
  position: relative;
  z-index: 2;
  padding-top:115px;
  padding-bottom:120px;
}

.szolgaltatasaink-napelem-img{
	right: 0;
    position: absolute;
    bottom: 0px;
    z-index: -1;
}

.szolgaltatasaink-napelem-img-szel{
	right: 0;
    position: absolute;
    bottom: 300px;
    z-index: -2;
}

.szolgaltatasaink-card{
	background-color: #ffffff;
    border-radius: 20px;
    padding: 50px;
	height: 430px;
    max-height: 430px;
}

.card-title{
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.45455;
    margin-bottom: 18px;
	color: var(--menu-dark-head-color);
}

.card-text{
	font-size: 16px;
    line-height: 1.625;
    margin-bottom: 16px;
}

.szolgaltatasaink-card ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.szolgaltatasaink-card li {
  position: relative;
  padding-left: 25px;
  margin-bottom: 10px;
    color: var(--menu-dark-head-color);
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.6;
}

.szolgaltatasaink-card li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  
  width: 11px;
  height: 11px;
  
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 11 11' fill='none'%3E%3Cpath d='M3.80799 9.47765C3.69082 9.36045 3.625 9.20151 3.625 9.03578C3.625 8.87005 3.69082 8.71111 3.80799 8.5939L6.90174 5.50015L3.80799 2.4064C3.69414 2.28853 3.63115 2.13065 3.63257 1.96678C3.63399 1.8029 3.69972 1.64615 3.8156 1.53027C3.93148 1.41439 4.08824 1.34866 4.25212 1.34723C4.41599 1.34581 4.57386 1.4088 4.69174 1.52265L8.22737 5.05828C8.34454 5.17548 8.41036 5.33443 8.41036 5.50015C8.41036 5.66588 8.34454 5.82482 8.22737 5.94203L4.69174 9.47765C4.57454 9.59482 4.41559 9.66064 4.24987 9.66064C4.08414 9.66064 3.9252 9.59482 3.80799 9.47765Z' fill='%234AAB3D'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.szakertelem-napelem-img {
	margin-left:-1.5rem;
}

.enerlend-item-holder{
	display: inline-flex;
    align-items: center!important;
    border-radius: 16.5px;
    border: 1px solid #ecedee;
    padding: 6px 21px 6px 6px;
	margin: 36px 15px 15px 15px;
    gap: 14px;
	margin-left:40px;
	width: 292px;
    max-width: 292px;
}

.enerlend-item-holder-svg{
	--size: 72.25px;
    min-width: var(--size);
    width: var(--size);
    height: var(--size);
    border-radius: 13.6px;
    border: 1px solid #dff6e8;
    background: var(--light-green);
}

.enerlend-item-holder-svg svg{
	margin-left: 15.125px;
    margin-top: 15.125px;	
}

.item-group{
	gap:6px;
	display:flex;
	align-items:center;
}

.item-group-number{
	color: var(--dark-2);
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -.4px;
}

.enerlend-item-desc{
	font-size: 16px;
    line-height: 1.4;
    letter-spacing: -.32px;
}

.item-group-content span {
	gap: 2px;
    color: #2192d0;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: -.28px;
}

.enerlend-item-holder--box{
    border-color: #D9D9D9;
    border-style: solid;
    border-width: 0px 0px 0px 1px;
	margin-left: 50px;
}

.border-line{
	align-items: center;
    display: flex
}

.border-line--svg{
	margin-left:-8px;
	z-index:2;
}

.border-line--line{
	border-color: #D9D9D9;
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    width:335px;
	max-width:335px;
    display: flex;
	margin-left:-5px;
	z-index:1;
}

.szakertelem-bottom-box-panel{
	margin-top:100px;
}

.dark-background {
  background-color: #072032;
  min-height: 100%;
  display: flex;
}

.dark-background--content {
	display: block;
    margin-top: auto;
    margin-bottom: auto;
  width: 100%;
  padding: 40px 20px;
  color: white;
}

.img-col-md-6 {
  background-image: url('../img/szakertelem-enerlend-napelem-section-background.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 400px;
}

.szakertelem-napelem-img-bg {
  background-image: url('../img/lenerlend-napelem-szakertelem.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 400px;
}

.szakertelem-bottom-box-panel {
  min-height: 400px;
}

.szakertelem-napelem-content{
	padding-top:100px;
	padding-left:30px;
}

h3{
	color: rgb(255, 255, 255);
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.75;
    letter-spacing: -1px;
    margin-bottom: 7px;
}

.dark-background ul{
	list-style:none;
	padding-left: 0;
}

.dark-background li {
	position: relative;
	padding-left: 30px;
	margin-bottom: 8px;
	color: var(--color-white);
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -.32px;
}

.dark-background li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #86BB46;
  
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z'/%3E%3C/svg%3E");
  background-size: 12px;
  background-repeat: no-repeat;
  background-position: center;
}

.enerlend-napelem-forgalmazott-markak{
	margin-top:110px;
	margin-bottom:110px;
	align-items:center;
	display:flex;
}

.enerlend-napelem-forgalmazott-markak--title{
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: var(--dark-2);
    font-weight: 600;
	font-size: 18px;
    line-height: 1.5;
    letter-spacing: -.36px;
	margin-bottom:50px;
}

.enerlend-napelem-forgalmazott-markak--div{
	margin-bottom:50px;
}

.enerlend-napelem-brand{
	color: #fff;
	font-size: 1.25rem;
    font-weight: 600;
    text-transform: uppercase;
    background: var(--dark-2);
    padding: 10px 20px;
	border-radius:10px;
}

.footer {
    background-image: url('../img/bg-enerlend-napelem-footer.webp');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.section-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(0deg, #0D161C 68.4%, #0D161C00 113.97%);
    opacity: 0.97;
    transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
    z-index: 1;
    pointer-events: none;
}

.footer .container-fluid {
    position: relative;
    z-index: 2;
}

.footer h2,
.footer h3 {
    color: white;
    position: relative;
    z-index: 2;
}

.footer--sub-head-text{
	color: #FFFFFF;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 44px;
    font-weight: 600;
    line-height: 1.1667;
    letter-spacing: -1px;
}

.footer--sub-head-call-text{
	color: #FFFFFF;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 22px;
    font-weight: 600;
    letter-spacing: -0.44px;
    margin-bottom: 5px;	
}

.footer--col{
	display:grid;
}

.footer--padding-90px{
	padding-top:90px;
	padding-bottom:90px;
}

.footer--col a{
	background-color: var(--primary-color);
	border-radius:30px;
	color: rgb(255, 255, 255);
    font-size: 16px;
    font-weight: 700;
	line-height:60px;
	margin-top:50px;
}

.footer-page-down{
	position: relative;
    z-index: 2;
	padding-top:90px;
	padding-bottom:90px;
	border-color: #2f2f2f;
    border-style: solid;
    border-width: 1px 0px 1px 0px;
}

.footer-page-down p{
	font-size: 15px;
    letter-spacing: -0.3px;
    line-height: 1.4;
	margin-top: 27px;
    color: #fff;
}

.footer-menu-title{
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	font-weight: 600;
	color: #FEC51B;
	margin-bottom: 27px;
    text-transform: uppercase;
	font-size: 16px;
    line-height: 1.5;
    letter-spacing: -0.32px;
}

.footer-copyright a, .footer-page-down a{
	color:#fff;
	display: flex;
    gap: 0.5rem;
	margin-bottom:15px;
}

.footer-row-border{
    margin-bottom: 15px;
}

.copy-text{
	text-align:center;
}

.footer-copyright a:hoover, .footer-page-down a:hoover{
	color:#fff;
}

.footer-menu-a--icon{
	color: var(--primary-color)!important;
}

.footer-menu-a--content{
	font-size: 17px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: -0.34px;
}

.footer-copyright{
	color: #ffffff;
    position: relative;
    z-index: 2;
	margin-top: 20px;
    padding-bottom: 20px;
}

.call-text .small{
	font-size: 14px;
    letter-spacing: -0.36px;
    line-height: 1.4;
	color: rgb(102, 102, 102);
}

.call-text .phone{
	color: var(--dark-2);
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
}

.rolunk-top-section-box {
    position: relative;
    overflow: hidden !important; /* Fontos mobilon */
    min-height: 400px;
    width: 100%;
    max-width: 100vw; /* Ne lépje túl a viewport szélességét */
}

.rolunk-top-section-box::before,
.rolunk-top-section-box::after {
    content: '';
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: url('../img/enerlend-bg-sky.webp');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center; /* Központosítás */
    animation: infiniteScrollRight 30s linear infinite;
    z-index: 1;
    
    /* Mobil optimalizálás */
    transform: translateZ(0); /* Hardware acceleration */
    will-change: transform; /* Animáció optimalizálás */
    backface-visibility: hidden; /* Mobil teljesítmény javítás */
}

.rolunk-top-section-box::before {
    left: -100%;
}

.rolunk-top-section-box::after {
    left: 0;
}

@keyframes infiniteScrollRight {
    0% {
        transform: translateX(0) translateZ(0);
    }
    100% {
        transform: translateX(100%) translateZ(0);
    }
}

.rolunk-top-section {
    position: relative;
    align-items: center;
    z-index: 2;
    justify-content: center;
    display: flex;
    height: 400px;
}

.rolunk-top-section h1 {
    font-size: 60px;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: var(--dark-2);
    font-weight: 600;
    margin: 0;
    padding: 0;
    clear: both;
}

.rolunk-top-section img {
    right: 0;
    position: absolute;
    bottom: 0;
    margin-bottom: -30px;
}

@media screen and (max-width: 480px) {
    .rolunk-top-section-box {
        min-height: 250px;
    }
    
    .rolunk-top-section {
        height: 250px;
    }
    
    .rolunk-top-section h1 {
        font-size: 28px;
    }
    
    .rolunk-top-section-box::before,
    .rolunk-top-section-box::after {
        animation-duration: 45s; /* Még lassabb kis képernyőkön */
    }
}

/* Responsive beállítások */
@media (max-width: 768px) {
    .rolunk-top-section-box {
        overflow-x: hidden; /* Horizontal scroll elrejtése */
        position: relative;
        min-height: 300px; /* Kisebb magasság mobilon */
    }
    
    .rolunk-top-section-box::before,
    .rolunk-top-section-box::after {
        animation-duration: 40s; /* Lassabb animáció mobilon */
        background-attachment: scroll; /* Mobil kompatibilitás */
    }
    
    .rolunk-top-section {
        height: 300px;
        padding: 0 20px; /* Oldalsó padding */
    }
    
    .rolunk-top-section h1 {
        font-size: 36px; /* Kisebb betűméret mobilon */
    }
    
    .rolunk-top-section img {
        max-width: 100%;
        height: auto;
    }
	iframe{
		width: 100%;
		height: 400px!important;
		margin-top: 15px;
		border-radius: 0px!important;		
	}
}

/* Mobile First Responsive Breakpoints */

/* Extra small devices (portrait phones) */
@media (max-width: 575.98px) {
	.custom-class {
	font-size: 14px;
	}
	.contact-info-box {
		padding: 10px!important;
	}
	.contact-info-box h4{
		font-size: calc(1.175rem + .002vw)!important;
	}
	.contact-info-box-content, .contact-info-box-content{
		font-size: 0.96rem!important;
	}
	iframe{
		width: 100%;
		height: 400px!important;
		margin-top: 15px;
		border-radius: 0px!important;		
	}
}

/* Small devices (landscape phones) */
@media (min-width: 576px) and (max-width: 767.98px) {
	.custom-class {
	font-size: 16px;
	}

	.logo img {
	width: 70%;
	height: auto;
	padding-left: 15px;
	}
	.contact-info-box {
		padding: 10px!important;
	}
	.contact-info-box h4{
		font-size: calc(1.175rem + .002vw)!important;
	}
	.contact-info-box-content, .contact-info-box-content{
		font-size: 0.96rem!important;
	}
	iframe{
		width: 100%;
		height: 400px!important;
		margin-top: 15px;
		border-radius: 0px!important;
	}
}

/* Medium devices (tablets) */
/* Medium devices (tablets) */
@media (max-width: 767px) {
	.hero-content {
	padding: 40px 20px;
	margin: 0;
	}

	.hero-title {
	font-size: 28px;
	}

	.hero-btns .btn {
	padding: 8px 20px;
	font-size: 14px;
	}

	.main-menu .nav-link.active, 
	.main-menu .nav-link:hover {
	color: var(--primary-color)!important;
	background-color:#fff;
	}
	.szamlalo-card-border-top {
	border-color: #D9D9D9!important;
	border-style: solid!important;
	border-width: 1px 0px 1px 0px!important;
	}
	.szamlalo-card-border {
	border-color: #D9D9D9!important;
	border-style: solid!important;
	border-width: 0px 0px 0px 0px!important;
	}
	.szolgaltatasaink-card{
	height: 530px;
	max-height: 530px;
	}
	.contact-info-box {
		padding: 10px!important;
	}
	.contact-info-box h4{
		font-size: calc(1.175rem + .002vw)!important;
	}
	.contact-info-box-content, .contact-info-box-content{
		font-size: 0.96rem!important;
	}
	iframe{
		width: 100%;
		height: 400px!important;
		margin-top: 15px;
		border-radius: 0px!important;
	}
}

@media (min-width: 768px) and (max-width: 991.98px) {
	.custom-class {
	font-size: 18px;
	}
	.bg-hero-left-napelem {
	 min-height: calc(100vh - 100px);
	}
    .szamlalo-card-border-top {
        border-color: #D9D9D9 !important;
        border-style: solid !important;
        border-width: 1px 0px 0px 0px !important;
    }
	.szamlalo-card-border {
	border-color: #D9D9D9 !important;
	border-style: solid !important;
	border-width: 1px 1px 0px 1px !important;
	}
	.szolgaltatasaink-card{
	height: 400px;
	max-height: 400px;
	}
	.contact-info-box {
		padding: 10px!important;
	}
	.contact-info-box h4{
		font-size: calc(1.175rem + .002vw)!important;
	}
	.contact-info-box-content, .contact-info-box-content{
		font-size: 0.96rem!important;
	}
}

/* Large devices (tablets and small desktops) */
@media (max-width: 991px) {
 .hero-content {
   padding: 60px 30px;
   margin: 0;
 }
 
 .hero-title {
   font-size: 36px;
 }
 
 ul.nav{
   margin-block-start: 1em !important;
   margin-block-end: 2em !important;
   padding-right: 34px;
 }
 
 .main-menu .nav-link {
   padding: 0px 10px;
   display: block;
   line-height: 46px;
   font-size: 15px;
   font-weight: 700;
   margin-right: 5px;
 }
 
 .mobile-menu .main-menu .nav-link {
   padding: 0px 10px;
   display: block;
   line-height: 46px;
   font-size: 15px;
   font-weight: 700;
   border-bottom: 1px solid rgba(0, 0, 0, 6%);
 }
 
 .mobile-menu ul.nav{
   margin-block-start: 1em !important;
   margin-block-end: 2em !important;
   padding-left: 60px;
   padding-right: 60px;
 }
 
 .mobile-menu-logo{
   padding-top: 10px;
 }
 
 .nav-info-box{
   padding: 10px 35px;
   margin: 0px 35px 35px 35px;
   font-weight: 600;
   color: var(--dark-2);
   background: var(--light-green);
   border-radius: 5px;
   text-align: center;
 }

 .next .container .gy-1{
   --bs-gutter-y: 5rem;
 }
 
 h2, .h2{
   font-size: 28px!important;
 }
 
 .section-text-box{
   padding: 33px;
   margin-left: 0px;
 }
 
 .szamlalo-card{
   padding: 50px 35px 50px 35px !important;
   display: block!important;
   align-items: center!important;
   text-align: center!important;
 }
 
 .mobile-menu{
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   background: #fff;	  	  
 }
 
 .disabled{
   display:none!important;
 }
 
 .mobile-menu img{
   margin-bottom: 25px;
   width: 55%;
   height: auto;
   padding-left: 15px;
 }

 .x-button{
   right: 0;
   position: absolute;
   margin-right: 20px;
   margin-top:5px;
 }
 
 .iconoir-menu-scale{
   font-size:32px;
 }
 
 .gy-5{
   --bs-gutter-x: 0;
 }
 
 .szolgaltatasaink-napelem{
   padding-left: 30px!important;
   padding-right: 30px!important;
 }
 
 .szakertelem-napelem-img-bg{
   min-height: 800px;
 }
 
 .szakertelem-bottom-box-panel {
   margin-top: 0px;
 }
 
 .szakertelem-napelem-content .row{
   --bs-gutter-y: 5rem!important;
 }
 
 .szakertelem-napelem-content{
   padding-left: 40px;
   padding-right: 40px;
 }
 
 .enerlend-napelem-forgalmazott-markak .col-6{
   margin-bottom:15px;
 }
 
 .mobile-menu .main-menu{
   margin-left: 0px;
 }
 
 .main-header, .header-area{
   height: 100px;
   min-height: 100px;
   align-items: center;
   display: flex;
   width: 100%;
 }
 
 .enerlend-item-holder--box {
   margin-left: 0px;
 }
}

@media (min-width: 991.98px) and (max-width: 1199.98px) {
 .logo a {
   justify-content: center;
   display: flex;
 }
}

@media (max-width: 1199.98px) {
	.d-none-box{
	display:none;
	}
	.hero-image img {
		height: 100%!important;
		height: calc(100vh);
		min-height: calc(100vh);
		min-height: 100%!important;
	}
}

/* Large devices (desktops) */
@media (min-width: 772px) and (max-width: 1199.98px) {
 .custom-class {
   font-size: 20px;
 }
 
 .menu-container .col-4{
   flex: 0 0 auto;
   width: 83.33333333%;
 }
 
 .logo img{
   width: 70%;
   height: auto;
   padding-left: 15px;
 }
 
 .call-icon{
   width: 40px;
   height: 40px;
   background-color: var(--primary-color) !important;
   color: #ffffff;
   font-size: 1.75rem;
   justify-content: center;
   align-items: center;
   display: flex;
   border-radius: 50%;
   flex-shrink: 0;
 }
 
 .call-text .phone, .call-text .small{
   font-size: 14px;
 }
 
 .call-support-button a{
   font-size:0.75rem;
 }
}

@media (min-width: 1200px) and (max-width: 1440px) {
	.hero-image img {
		height: 100%!important;
		height: calc(100vh);
		min-height: calc(100vh);
	} 
}
/* Extra large devices */
@media (min-width: 1200px) and (max-width: 1350px) {
 .custom-class {
   font-size: 22px;
 }
 
 .call-icon{
   width: 40px;
   height: 40px;
   background-color: var(--primary-color) !important;
   color: #ffffff;
   font-size: 1.75rem;
   justify-content: center;
   align-items: center;
   display: flex;
   border-radius: 50%;
   flex-shrink: 0;
 }
 
 .call-text .phone, .call-text .small{
   font-size: 14px;
 }
 
 .call-support-button a{
   font-size:0.75rem;
 }
}

/* Teljesítményoptimalizálás */
@media (min-width: 992px) {
 .hero-content {
   min-height: 600px;
 }
}

.rolunk-info-section{
	margin-top:125px;
	margin-bottom:110px;
}

.img-box-col-lg-8{
	background-image: url('../img/rolunk-img-bg-col-lg-8.webp');
	background-size: cover;
	background-position: center;
	background-repeat: repeat;
	height: 400px;
	position: relative;
}

.img-box-col-lg-4{
	background-image: url('../img/rolunk-img-bg-col-lg-4.webp');
	background-size: cover;
	background-position: center;
	background-repeat: repeat;
	height: 400px;
	position: relative;
}

.ceges-img-box-col-lg-8{
	background-image: url('../img/ceges-napelem-rendszerek.webp');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 400px;
	position: relative;
}

.ceges-img-box-col-lg-4{
	background-image: url('../img/ceges-napelem-rendszerek-col-lg-4.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 400px;
	position: relative;
}

.rolunk-info-section h3, .ceges-napelem-rendszer-taroloval h3{
	color: var(--dark-2);
	font-size: 22px;
    line-height: 1.5;
    letter-spacing: -.44px;
}

.arak-container{
	margin-top:50px;
}

.napelem-arak-valtozasa{
	background-image: url('../img/napelem-arak-valtozasa.png');
	background-size: contain;
    background-position: left;
    background-repeat: no-repeat;
    height: 300px;
    position: relative;
}

.aram-arak-valtozasa{
	background-image: url('../img/elektromos-aram-arak-alakulasa-euban.png');
	background-size: contain;
    background-position: left;
    background-repeat: no-repeat;
    height: 300px;
    position: relative;
}

.ceges-napelem-rendszer-img-bg{
    background-image: url('../img/ceges-napelem-rendszerek-30-500kw.png');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    width: 100%;
    height: 100%;
}

.ceges-napelem-rendszer-taroloval{
	padding-top: 100px;
    padding-bottom: 100px;
    background-color: var(--light-green);
}

.ceges-napelem-rendszer-taroloval svg{
	position: absolute;
    z-index: 1;
    right: 0;
}

.ceges-napelem-rendszer-taroloval .container{
	z-index: 2;
    position: relative;
}

.lakossagi-napelem-rendszer-img-bg{
    background-image: url('../img/lakossagi-napelem-rendszerek-3-30kw.png');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    width: 100%;
    height: 100%;
}

.span-enerlend-button{
	padding: 10px 20px;
    background: var(--primary-color);
    color: #fff;
    border-radius: 5px;
}

.span-enerlend-button:hover{
	background: #50b742;
}

.call-action-div{
	background: #fff;
    padding: 25px;
    border-radius: 8px;
}

.kapcsolat-info-section{
	background-color: transparent;
    background-image: linear-gradient(177deg, #FFFFFF 11.95%, #DAEED8 97.81%);
	padding-top:100px;
	padding-bottom:100px;
}

.contact-info-box-row {
    background: var(--menu-dark-head-color);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* Boxok egyenletes elosztása */
}

.contact-info-box {
    padding: 25px;
    flex: 1; /* Egyenlő magasság minden boxnak */
    display: flex;
    flex-direction: column;
    justify-content: center; /* Tartalom vertikálisan középre */
    align-items: flex-start; /* Szöveg balra igazítása */
}

.border-left{
	border-top-left-radius: 15px;
	border-bottom-left-radius: 15px;
}

iframe{
	border: 0;
    width: 100%;
    height: 100%;
    border-top-right-radius: 15px;
	border-bottom-right-radius: 15px;
}

/* Body háttérképpel a teljes oldalhoz */
.error-page {
    margin: 0;
    padding: 0;
    min-height: 100vh;
    background-image: url('../img/bg-error-page.webp');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover; /* Teljes képernyő kitöltése */
    background-attachment: fixed; /* Rögzített háttér */
}

/* Error section - átlátszó zöld overlay */
.error-section {
    min-height: 100vh;
	background: linear-gradient(180deg, #4aab3d 0%, #073c00 100%);
    opacity: .94;
    display: flex;
    align-items: center;
    justify-content: center;
}

.error-section .container-fluid {
    background: transparent; /* Átlátszó, mert a háttér a body-n van */
}

/* Error text */
.error-text {
    color: #fff;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(80px, 15vw, 226px); /* Responsive méret */
    font-weight: 700;
    line-height: 0.87;
    margin: 0;
    text-shadow: 6px 6px 0 var(--primary-color); /* Jobb kontrast */
    
    /* Kicsit átlátszó fehér háttér a szöveg mögé a jobb olvashatóságért */
    padding: 20px 40px;
    border-radius: 20px;
    backdrop-filter: blur(10px); /* Modern blur effekt */
}

.error-text-desc {
    text-align: center;
    color: #fff;
	display: grid;
}

.error-text-desc-title{
	font-size: 3rem;
    text-transform: uppercase;
	font-weight:600;
}

.error-text-desc-subtitle{
	font-size: 1.17rem;	
}

.go-back{
	margin-top:40px;
	align-items: center;
    justify-content: center;
}

.go-back a{
	font-size: 20px;
    font-weight: 600;
    color: #fff;
    background: var(--primary-color);
    padding: 10px 20px;
    border-radius: 15px;
	align-items: center;
    display: flex;
    gap: 0.2rem;
}

.go-back a:hover{
	background: var(--menu-dark-head-color);
}

/* Mobilra optimalizálás */
@media (max-width: 768px) {
    .error-text {
        font-size: 120px;
        text-shadow: 3px 3px 0 var(--primary-color);
        padding: 15px 30px;
    }
}

@media (max-width: 480px) {
    .error-text {
        font-size: 80px;
        padding: 10px 20px;
    }
}

/*Ajánlatkérő form css*/

/* Quote Form Styling */
.quote-form-wrapper {
    min-height: 100vh;
    /*background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);*/
    padding: 2rem 0;
    padding-bottom: 100px;
}

.form-header h1 {
    color: var(--primary-color);
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
}

.quote-form-card {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    padding: 3rem;
    margin-bottom: 2rem;
}

/* Form Sections */
.form-section {
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #e9ecef;
}

.form-section:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.section-header {
    display: flex;
    align-items: center;
    margin-bottom: 2rem;
}

.section-number {
    width: 40px;
    height: 40px;
    background: var(--primary-color);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1.1rem;
    margin-right: 1rem;
    flex-shrink: 0;
}

.section-header h3 {
    margin: 0;
    color: #333;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 1.4rem;
}

/* Form Controls */
.form-label.required::after {
    content: ' *';
    color: #dc3545;
}

.form-control,
.form-select {
    border: 2px solid #e9ecef;
    border-radius: 10px;
    padding: 0.75rem 1rem;
    font-size: 1rem;
    transition: all 0.3s ease;
}

.form-control:focus,
.form-select:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.2rem rgba(97, 206, 112, 0.25);
}

.form-control.is-invalid,
.form-select.is-invalid {
    border-color: #dc3545;
}

.form-control.is-valid,
.form-select.is-valid {
    border-color: #28a745;
}

/* Form Text */
.form-text {
    font-size: 0.875rem;
    color: #6c757d;
    margin-top: 0.5rem;
}

/* GDPR Notice */
.gdpr-notice {
    margin: 3rem 0 2rem 0;
}

.gdpr-notice .alert {
    border: none;
    border-radius: 15px;
    background: #f8f9ff;
    border-left: 4px solid var(--primary-color);
}

.gdpr-notice .form-check {
    margin-top: 1rem;
}

.gdpr-notice .form-check-input {
    margin-top: 0.25rem;
}

/* Form Actions */
.form-actions {
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #e9ecef;
}

.btn {
    border-radius: 10px;
    padding: 0.75rem 2rem;
    font-weight: 600;
    transition: all 0.3s ease;
}

.btn-primary {
    background: var(--primary-color);
    border-color: var(--primary-color);
}

.btn-primary:hover {
    background: #50b961;
    border-color: #50b961;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(97, 206, 112, 0.4);
}

.btn-outline-secondary {
    border: 2px solid #6c757d;
}

.btn-outline-secondary:hover {
    background: #6c757d;
    transform: translateY(-2px);
}

/* Loading State */
.btn .btn-spinner {
    display: none;
}

.btn.loading .btn-text {
    display: none;
}

.btn.loading .btn-spinner {
    display: inline-flex !important;
    align-items: center;
}

/* Success Modal */
.success-icon {
    animation: successBounce 0.6s ease-out;
}

@keyframes successBounce {
    0% { transform: scale(0); }
    50% { transform: scale(1.1); }
    100% { transform: scale(1); }
}

/* Responsive Design */
@media (max-width: 768px) {
    .quote-form-card {
        padding: 1.5rem;
    }
    
    .section-header {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
    }
    
    .section-number {
        margin-bottom: 1rem;
        margin-right: 0;
    }
    
    .form-actions .d-flex {
        flex-direction: column;
        gap: 1rem;
    }
    
    .form-actions .btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 576px) {
    .quote-form-wrapper {
        padding: 1rem 0;
    }
    
    .quote-form-card {
        padding: 1rem;
        border-radius: 15px;
    }
    
    .section-header h3 {
        font-size: 1.2rem;
    }
}

/* Form Validation Animations */
.form-control.animate-invalid {
    animation: shakeError 0.5s ease-in-out;
}

@keyframes shakeError {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    75% { transform: translateX(5px); }
}

/* Custom Checkbox Styling */
.form-check-input:checked {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

.form-check-input:focus {
    box-shadow: 0 0 0 0.2rem rgba(97, 206, 112, 0.25);
}

.rolunk-top-section-box .col-md-12, .nyilatkozat .col-md-12{
    padding-top: 100px;
    padding-bottom: 100px;	
}

/* Loading állapot a gombhoz */
.btn.loading .btn-text {
    display: none !important;
}

.btn.loading .btn-spinner {
    display: flex !important;
    align-items: center;
}

/* Animáció hibás mezőkhöz */
.animate-invalid {
    animation: shake 0.5s ease-in-out;
}

@keyframes shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    75% { transform: translateX(5px); }
}

.lakossagi-img-box-col-lg-8{
	background-image: url('../img/lakossagi-napelem.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 400px;
	position: relative;
}

.lakossagi-img-box-col-lg-4{
	background-image: url('../img/lakossagi-napelem-rendszerek.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 400px;
	position: relative;
}

.napelem-rendszerek-button{
	margin-top: 25px;
    margin-bottom: 25px;
}

.napelemes-rendszer .napelem-rendszer{
	background: #fff;
    padding: 20px;
    border-radius: 15px;
    box-shadow: rgba(166, 186, 201, 0.35) 0px 22.162px 66.486px 11.081px;
}

.termekeink-section{
	background-color: #E7F9EE;
	padding-top:80px;
	padding-bottom:80px;
}

.on-grid-s-img{
	background-image: url('../img/napelemes-rendszer-3-30kw.webp');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    width: 100%;
    height: 300px;	
}

.on-grid-b-img{
	background-image: url('../img/napelemes-rendszer-30-50kw.webp');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    width: 100%;
    height: 300px;	
}

.napelem-card-a{
	justify-content: center;
	display: flex;
}

.napelem-img-title{
	font-family: montserrat;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.25455;
    color: #000;
	display: grid

}

.napelem-img-desc{
	line-height: 1.66667;
    min-height: 94px;
    justify-content: center;
	align-items: center;
    display: flex;
}

.raklapos-napelem-img{
	background-image: url('../img/raklapos-napelem.webp');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    width: 100%;
    height: 300px;		
}

.energiatarolo-akkumulator-img{
	background-image: url('../img/akkumulator-energiatarolo.webp');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    width: 100%;
    height: 300px;		
}

.line-icons{
	justify-content: center;
    align-items: center;
    display: flex;
	min-width: 30px;
}

.line-text{
	font-size: 12px;
}

.napelem-img--desc{
	line-height: 1.66667;
    min-height: 94px;
    padding-top: 15px;
    align-items: center;
}

.price-section{
	padding-top:100px;
	padding-bottom:100px;
	background-color: #E7F9EE;
}

.table-price{
	background-color:#fff;
	padding: 25px 25px 10px 25px;
	border-radius: 25px;
}

.table{
	background:#f4f6f9;
}

.table-price .table-head-tr{
	border-style:hidden;
}

.table-price tbody{
	background:#fff;
}

.table-price tbody, .table-price td, .table-price tfoot, .table-price th, .table-price thead, .table-price tr{
	border-style: none;
    border-width: 1px;
    border-bottom-style: dashed;
    border-bottom-color: #e2e7f1;
	box-shadow: none;
}

.table tbody tr:last-child {
    border-bottom-style: solid;
    border-bottom-color: #e2e7f1;	
}

.table tbody tr:first-child td {
    padding-top: 20px;
}

.table tbody tr td:first-child {
	border-bottom-style:hidden;
}

.table thead tr th:first-child {
 	width: 25%;
    max-width: 25%;
	background-color:#fff;
}

.table thead tr th {
 	text-align:center;
}

.table-price tbody tr{
	text-align:end;
	text-align:right;
}

.table tbody tr td:nth-child(3),
.table tbody tr td:nth-child(5) {
    background-color: #f4f6f9;
}

.table tbody tr td:nth-child(2),
.table thead tr th:nth-child(2) {
	border-left-style: solid;
    border-left-color: #e2e7f1;
}

.table tbody tr td:nth-child(5),
.table thead tr th:nth-child(5) {
	border-right-style: solid;
    border-right-color: #e2e7f1;
}

.table tbody tr td:nth-child(2),
.table tbody tr td:nth-child(3),
.table tbody tr td:nth-child(4),
.table tbody tr td:nth-child(5){
	/*vertical-align: middle;*/
}

.contact-item-button a{
	color: #000;
    background: #FEC51B;
    padding: 5px 10px;
    border-radius: 15px;
    font-weight: 600;
    text-transform: uppercase;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    letter-spacing: 0.9px;
    margin-left: 25px;
    font-size: 0.75rem;
}

/* Ajánlat oldal stílusok */
.ajanlat-top-section-box {
    position: relative;
    overflow: hidden !important;
    min-height: 400px;
    width: 100%;
    max-width: 100vw;
}

.ajanlat-top-section-box::before,
.ajanlat-top-section-box::after {
    content: '';
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: url('../img/enerlend-bg-sky.webp');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    animation: infiniteScrollRight 30s linear infinite;
    z-index: 1;
    transform: translateZ(0);
    will-change: transform;
    backface-visibility: hidden;
}

.ajanlat-top-section-box::before {
    left: -100%;
}

.ajanlat-top-section-box::after {
    left: 0;
}

.ajanlat-top-section {
    position: relative;
    align-items: center;
    z-index: 2;
    justify-content: center;
    display: flex;
    height: 400px;
}

.ajanlat-top-section h1 {
    font-size: 60px;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: var(--dark-2);
    font-weight: 600;
    margin: 0;
    padding: 0;
    clear: both;
}

.ajanlat-subtitle {
    font-size: 18px;
    color: var(--dark-2);
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    margin-top: 20px;
    line-height: 1.5;
}

.ajanlat-info-section {
    margin-top: 125px;
    margin-bottom: 110px;
}

.napelem-ajanlat-card {
    background: #fff;
    padding: 30px;
    border-radius: 15px;
    box-shadow: rgba(166, 186, 201, 0.35) 0px 22.162px 66.486px 11.081px;
}

/* Responsive */
@media (max-width: 768px) {
    .ajanlat-top-section h1 {
        font-size: 36px;
    }
    
    .ajanlat-top-section-box {
        min-height: 300px;
    }
    
    .ajanlat-top-section {
        height: 300px;
        padding: 0 20px;
    }
    
    .ajanlat-info-section {
        margin-top: 80px;
        margin-bottom: 80px;
    }
}

.form-header h2{
	color: var(--primary-color);
	font-weight:700;
}

/* Auto Popup Modal Styling */
#autoQuotePopup .modal-content {
    border: none;
    border-radius: 15px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.15);
}

#autoQuotePopup .modal-header {
    border-radius: 15px 15px 0 0;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    background: linear-gradient(135deg, var(--primary-color), #4CAF50) !important;
}

#autoQuotePopup .modal-body {
    max-height: 80vh;
    overflow-y: auto;
}

/* Popup specifikus form stílusok */
#autoQuotePopup .quote-form-card {
    border: none;
    box-shadow: none;
    background: transparent;
}

#autoQuotePopup .form-header {
    padding-top: 0;
    margin-bottom: 2rem !important;
}

#autoQuotePopup .form-header h1 {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}

#autoQuotePopup .btn-primary {
    background: linear-gradient(45deg, #61CE70, #4CAF50);
    border: none;
    border-radius: 25px;
    padding: 12px 30px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

#autoQuotePopup .btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(97, 206, 112, 0.3);
}

/* Responsive */
@media (max-width: 768px) {
    #autoQuotePopup .modal-dialog {
        margin: 0.5rem;
    }
    
    #autoQuotePopup .modal-xl {
        max-width: 95%;
    }
}

/* Scroll styling */
#autoQuotePopup .modal-body::-webkit-scrollbar {
    width: 6px;
}

#autoQuotePopup .modal-body::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}

#autoQuotePopup .modal-body::-webkit-scrollbar-thumb {
    background: var(--primary-color);
    border-radius: 3px;
}

.header-area-contact{
    z-index: 99;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	position: fixed;
    top: 0;
    right: 0;
    left: 0;
}

.notification-bar.available {
    background-color: #28a745;
}

.notification-bar.unavailable {
    background-color: #dc3545;
}

.notification-bar {
    width: 100%;
    padding: 8px 0;
    position: relative;
    overflow: hidden;
    z-index: 1000;
}

.notification-message {
    color: white;
    text-align: left;
    font-weight: 500;
    margin: 0;
    padding: 0;
    white-space: nowrap;
    position: relative;
	padding-left: 100%;
	display: inline-block;
	will-change: transform;
    animation: scrollText 10s linear infinite;
}

@keyframes scrollText {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-100%); }
}

.top-bar {
    background: #005c8b;
    /* background: linear-gradient(135deg, #4e54c8 0%, #8f94fb 100%); */
    padding: 8px 0;
    font-size: 14px;
}

.contact-infos {
text-align:center;
color:#fff;
}

.contact-infos a{
	color:#fff;
}

.mobile-action-bar {
  background: #0f7d3e;              /* Enerlend-zöld */
  color: #fff;
  z-index: 1080;                    /* a navbar (fixed-top) fölé */
  box-shadow: 0 -8px 24px rgba(0,0,0,.15);
}

.mobile-action-bar .action-list {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: .5rem;
  margin: 0;
  padding: .5rem env(safe-area-inset-right) calc(.5rem + env(safe-area-inset-bottom)) env(safe-area-inset-left);
  list-style: none;
}

.mobile-action-bar .action-item { flex: 1 1 0; }

.mobile-action-bar .action-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 56px;                 /* elég nagy érintési cél */
  width: 100%;
  border-radius: .75rem;
  text-decoration: none;
  color: #fff;
  font-weight: 600;
  background: rgba(255,255,255,.12);
  backdrop-filter: blur(8px);
  -webkit-tap-highlight-color: transparent;
  transition: transform .06s ease;
}
.mobile-action-bar .action-btn:active { transform: scale(.98); }

.mobile-action-bar i { font-size: 1.25rem; line-height: 1; }
.mobile-action-bar span { font-size: .75rem; margin-top: .2rem; opacity: .95; }

/* hogy ne takarja ki a tartalmat (állítsd a tényleges magasságra) */
@media (max-width: 991.98px) {
  body { padding-bottom: 72px; }
}

/* HERO stílus – tedd a style.css végére */
.hero {
	min-height: 80vh;
	/*background: url('https://enerlend.hu/assets/img/hero/napelem-telepites-csaladi-hazra_w1200.avif') center/cover no-repeat fixed;*/
	margin-top: 100px;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  /* finom sötétítés a jobb olvashatóságért */
  background: linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.35));
}

.hero .hero-content {
  position: relative;
  padding-top: 0rem;  /* ha fixed-top navbarod van, ez segít, hogy ne takarja */
  padding-bottom: 3rem;
}

.hero { position: relative; overflow: hidden; }
.hero .hero-bg{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center;
}


/* mobil finomhangolás */
@media (max-width: 991.98px) {
  .hero { 
    min-height: 100vh;
    background-attachment: scroll; /* jobb teljesítmény mobilon */
  }
  .hero .hero-content { padding-top: 1rem; }
}

/* Bizalomépítő blokk finom stílusok – tedd a style.css végére */
:root { --enerlend-green: #0f7d3e; }

.section-trust .feature-card {
  border-radius: 1rem;
  transition: transform .12s ease, box-shadow .12s ease;
}
.section-trust .feature-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(0,0,0,.08);
}
.section-trust .icon-badge {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: var(--enerlend-green);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  line-height: 1;
  font-size: 1.1rem;
  box-shadow: 0 4px 12px rgba(15,125,62,.35);
}
.section-trust .partners img {
  opacity: .8;
  filter: grayscale(100%);
  transition: opacity .15s ease, filter .15s ease, transform .15s ease;
}
.section-trust .partners img:hover {
  opacity: 1;
  filter: grayscale(0%);
  transform: translateY(-2px);
}

.card h3, .partners h3{
	color:#072032;
	font-weight:600;
}

/* Partner logók finomhangolás */
.section-trust .partners img {
  max-height: 32px;               /* egységes magasság */
  height: auto;
  width: auto;
  opacity: .9;
  filter: grayscale(100%);
  transition: opacity .15s ease, filter .15s ease, transform .15s ease;
}
.section-trust .partners img:hover {
  opacity: 1;
  filter: grayscale(0%);
  transform: translateY(-2px);
}

/* FOMO szekció stílusok – mehet a style.css végére */
:root { --enerlend-green: #0f7d3e; }

#fomo h2{
	color:#fff;
}

.section-fomo {
  background: linear-gradient(135deg, var(--enerlend-green) 0%, #0b5c2e 100%);
  position: relative;
}
.section-fomo .countdown-card { border-radius: 1rem; }
.section-fomo .btn-outline-light { border-width: 2px; }

/* Folyamat szekció stílusok – tedd a style.css végére */
:root { --enerlend-green:#0f7d3e; }

.section-process .process-step{
  border-radius: 1rem;
  transition: transform .12s ease, box-shadow .12s ease;
}
.section-process .process-step:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(0,0,0,.08);
}

.section-process .step-index{
  flex: 0 0 44px;
  width: 44px; height: 44px;
  border-radius: 999px;
  background: var(--enerlend-green);
  color:#fff;
  display:inline-flex; align-items:center; justify-content:center;
  font-weight: 800; font-size: 1.1rem; line-height:1;
  box-shadow: 0 4px 12px rgba(15,125,62,.35);
}
.section-process .step-icon{
  font-size: 1.35rem;
  color: var(--enerlend-green);
}

/* Finom összekötő vonalak nagy kijelzőn */
@media (min-width: 992px){
  .section-process .process-list>li{ position: relative; }
  .section-process .process-list>li:not(:last-child) .process-step::after{
    content:"";
    position:absolute; top:50%; right:-12px;
    width:24px; height:2px;
    background: rgba(15,125,62,.45);
    transform: translateY(-50%);
    border-radius: 2px;
  }
}

/* Testimonials szekció */
.testimonials{
	padding-bottom:25px;
}

.testimonial-card {
    background-color: #ffffff;
    padding: 30px;
    border-radius: 8px;
    position: relative;
    height: 310px;
    display: flex;
    flex-direction: column;
	border:1px solid #1987544d;
}
.swiper-slide{
	box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075) !important;
}

.quote {
    font-size: 4rem;
    color: #FFC11A;
    position: absolute;
    top: -20px;
    left: 20px;
    opacity: 0.3;
}

.testimonial-text {
    font-size: 0.9rem;
    line-height: 1.6;
    margin-bottom: 20px;
    position: relative;
    z-index: 1;
    max-height: 11em;
    overflow: hidden;
}

.client-info {
    display: flex;
    align-items: center;
}

.client-image {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin-right: 15px;
}

.client-details {
    margin-top: 15px;
}

.client-details h4 {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 600;
}

.client-details p {
    margin: 0;
    color: #666;
    font-size: 0.75rem;
    padding-top: 0;
}

/* Értékelés csillagok */
.rating {
    display: flex;
    align-items: center;
    gap: 10px;
	margin-left:26%;
}

.stars {
    display: flex;
    gap: 2px;
}

.star {
    width: 20px;
    height: 20px;
    background: #FFC11A;
    clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

.testimonials .title-text p, .section-process .before-text, #referenciak .before-text, #gyik .before-text{
	text-transform: uppercase;
    letter-spacing: 1.2px;
}

.testimonials h2{
	margin-top:0;
	margin-bottom:35px;
}

/* Referencia kártyák finom stílusai */
:root { --enerlend-green:#0f7d3e; }

.section-refs .ref-card { border-radius: 1rem; overflow: hidden; }
.section-refs .ref-card:hover { box-shadow: 0 16px 40px rgba(0,0,0,.12); }

.section-refs .ref-cover { position: relative; }
.section-refs .ref-badge{
  position: absolute; left: .75rem; bottom: .75rem;
  /*background: rgba(15,125,62,.95);*/
  color: #fff; padding: .35rem .6rem;
  border-radius: .5rem; font-weight: 600; font-size: .85rem;
  /*box-shadow: 0 6px 18px rgba(15,125,62,.35);*/
}
.section-refs .ref-meta .badge{
  background: rgba(15,125,62,.08)!important;
  color: var(--enerlend-green)!important;
  font-weight: 600;
}
/* FAQ finom stílusok – mehet a style.css végére */
:root { --enerlend-green:#0f7d3e; }

.section-faq .accordion-button:not(.collapsed){
  color: var(--enerlend-green);
  background: rgba(15,125,62,.06);
}
.section-faq .accordion-button:focus{
  box-shadow: 0 0 0 .25rem rgba(15,125,62,.15);
}
.section-faq .accordion-item{
  border-radius: .75rem;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.06);
  margin-bottom: .75rem;
}

.ajanlatkeres section{
	padding-top:80px;
	padding-bottom:80px;
}

/* Záró CTA stílusok – tedd a style.css végére */
:root { --enerlend-green:#0f7d3e; }

.section-cta{
  background: linear-gradient(135deg, var(--enerlend-green) 0%, #0b5c2e 100%);
}
.section-cta .btn-outline-light{ border-width:2px; }
.section-cta .card{ border-radius: 1rem; }

#zaras-cta h2{
	color:#ffffff;
}

/*
.process-step::before{
	content: '';
	position: absolute;
	left: 70%;
	top: 65%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: rotate(83deg);
	width: 167px;
	height: 55px;
	background: url(../img/step-1.png) transparent top left no-repeat;
}*/

#ajanlat-form, #ajanlat-form-bottom { scroll-margin-top: 150px; }

.green-border{
	border: 2px solid var(--enerlend-green);
}

.section-thanks{
	margin-top:150px;
}

.hero .form-label, .section-cta .form-label{
	color: var(--menu-dark-head-color);
}

.promo-banner h4{
	color: var(--menu-dark-head-color);
	font-weight:400;
}

.promo-banner h3{
	color: var(--menu-dark-head-color);
	font-weight:600;
}

.ajanlat-card{
    border-radius: 8px;
    padding-top: 35px;
    padding-bottom: 35px;
    background-color: #fff;	
}