@charset "utf-8";


:root {
	--main: #e5001f;
	--gray: #2d2a2a;
}
*,*:before,*:after{
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	outline:none;
}
html {overflow-y: auto; min-height:100%;
	overflow-x: hidden;}

body{
	min-height:100%;
	font-family:"Inter", Calibri, Arial, Helvetica, sans-serif;
	font-size:14px;
	background-color: #f4f4f4;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
	margin:0px;
	padding:0px;
	color:#333;
	width: 100vw;
	overflow-x: hidden;
}

select, input, textarea, button{
	font-family:"Inter", Calibri, Arial, Helvetica, sans-serif;
}
a{
	text-decoration:none;
	color:#512a78;
}
.container{
	width:94%;
	max-width:1200px;
	margin:0 auto;
	position:relative;
}
.wow{
	visibility:hidden;
}
.hello,.forbidden{
	width:100%;
	height:auto;
	line-height:26px;
	position:fixed;
	z-index:1000;
	bottom:0;
	left:0;
	padding:30px 20px;
	margin:auto;
	text-align:center;
	font-size:18px;
	color:#fff;
	font-weight:bold;
}
.hello{
	background-color: #328721;
}
.forbidden{background-color:#d00;}



/* --------------------------------------------------- forms --------------------------------------------------- */
.general-label{
	font-size: 12px;
	color: #888;
	font-weight: 700;
	margin-top: 25px;
	padding-left: 5px;
}
.general-input{
	width: 100%;
	height: 44px;
	padding: 0 8px;
	border: none;
	background-color: #eee;
	color: #333;
}
.general-textarea{
	width: 100%;
	height: 94px;
	padding: 8px;
	border-radius: 4px;
	border: none;
	background-color: #eee;
	color: #333;
	resize: none;
}

.input-holder-1{
	width: 100%;
	position: relative;
}
.input-holder-2{
	width: 49%;
	position: relative;
}
.input-holder-23{
	width: 65.666%;
	position: relative;
}
.input-holder-13{
	width: 32.333%; 
	position: relative;
}
.input-holder-4{
	width: 24%;
	position: relative;
}
.input-margin-bottom{
	margin-bottom: 20px;
}
.view-password{
	position: absolute;
	height: 16px;
	right: 10px;
	bottom: 14px;
	z-index: 50;
	opacity: 0.5;
	transition: 0.3s ease-in-out all;
	cursor: pointer;
}
.view-password:hover{
	opacity: 1;
}
.cautare-form{
	width: 100%;
	max-width: 500px;
	margin: 25px auto;
}

.default-list-options{
	width: 110px;
}
.default-list-options-1{
	width: 35px;
}
.default-list-options-2{
	width: 75px;
}
.default-list-options-3{
	width: 110px;
}
.default-list-options-4{
	width: 150px;
}
.default-list-options-5{
	width: 180px;
}
.option-btn{
	width: 32px;
	height: 32px;
	position: relative;
	background-color: var(--lightest);
	border-radius: 50%;
	text-align: center;
	border: none;
}
.option-btn img{
	width: 18px;
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	filter: grayscale(100%) brightness(500%);
}

/* --------------------------------------------------- login --------------------------------------------------- */
.login-box-holder{
	width: 70vw;
	max-width: 1000px;
	height: 80vh;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background-color: #fff;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
}
.login-box-holder-large{
	width: 70vw;
	height: auto;
	position: relative;
	margin: 120px auto;
	background-color: #fff;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.1);
}
.login-page-box-holder{
	position: relative;
	margin: 35px auto;
}
.login-bg{
	width: calc(45% - 30px);
	height: calc(100% - 30px);
	margin: 15px;
	background-image: url(../../Images/cum-functioneaza-2.jpg);
	background-position: center top;
	background-size: cover;
}
.login-profile-bg{
	background-image: url(../../Images/backgrounds/profil.jpg);
}
.login-info{
	width: 55%;
	height: 100%;
	padding: 25px;
	position: relative;
}
.login-info-large{
	width: 100%;
	height: 100%;
	padding: 25px;
	position: relative;
}

.login-form{
	width: 100%;
	height: calc(100% - 35px);
	margin: auto;
	overflow: auto;
	padding: 15px;
}
.login-title{
	font-size: 20px;
	color: var(--gray);
	margin-bottom: 10px;
	margin-top: 0;
	text-align: left;
}
.login-subtitle{
	font-size: 14px;
	text-align: left;
	margin-bottom: 25px;
	color: #999;
}
.login-title-link{
    font-size: 18px;
    color: var(--main);
    margin-bottom: 15px;
    font-weight: 700;
}
.login-title-link:hover{
	color: #D00;
	text-decoration: underline;

}

.login-label{
	width: 100%;
	text-align: left;
	color: #999;
	margin-bottom: 4px;
}
.general-input-marg-bottom{
	margin-bottom: 25px !important;
}
.login-page-btn{
	width: 160px;
	height: 44px;
	line-height: 44px;
	display: block;
	border: none;
	background-color: var(--gray);
	color: #fff;
	font-weight: 500;
	text-align: center;
	font-size: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.login-page-btn:hover{
	background-color: var(--main);
	color: #fff;
}


.login-switch{
	color: var(--gray);
	width: 100%;
	height: 34px;
	line-height: 34px;
	text-align: right;
	position: absolute;
	bottom: 15px;
	right: 15px;
	font-size: 13px;
	font-weight: 400;
}
.login-switch-btn{
	padding: 0 10px;
	text-align: center;
	height: 34px;
	line-height: 32px;
	background-color: var(--gray);
	border: 1px solid var(--gray);
	color: #fff;
	display: inline-block;
	text-decoration: none;
	margin-left: 5px;
}
.login-switch-btn-gray{
	background-color: #999;
	border: 1px solid #999;
}
.login-switch-btn:hover{
	background-color: #F00;
	border: 1px solid #F00;
	color: #fff;
}


.login-forgot{
	float: right;
	text-align: right;
	font-size: 12px;
	color: #999 !important;
	display: block;
	margin-top: 5px;
	padding-right: 5px;
}
.form-error{
	display: block;
	width: 100%;
	color: #f00;
	font-size: 12px;
}
.account-blocked-warning{
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	width: 100%;
	max-width: 800px;
	margin: 0 auto 50px auto;
	color: var(--main);
}


/* --------------------------------------------------- menu --------------------------------------------------- */

.menu-holder{
	position: fixed;
	z-index: 99;
	top: 0;
	left: 0;
	width: 100%;
	height: 70px;
	background-color: #fff;
}
.logo{
	height: 60px;
	margin: 5px;
}
.menu{
	width: 800px;
	height: 70px;
	margin: 0;
	text-transform: uppercase;
}
.menu-item{
	display: block;
	height: 70px;
	line-height: 70px;
	font-size: 16px;
	font-weight: 600;
	text-align: center;
	color: var(--gray);
}
.menu-item:hover{
	color: var(--main);
}
.menu-item-red{
	background-color: var(--gray);
	color: #fff;
	display: block;
	width: 135px;
}
.menu-item-red:hover{
	background-color: var(--main);
	color: #fff !important;
}


.menu-option-holder{
	width: 36px;
	height: 36px;
	position: relative;
	margin: 15px 0;
}
.menu-option-icon{
	width: 24px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.cart-amount{
	position: absolute;
    top: -2px;
    right: -22px;
    left: 0;
    margin: auto;
    z-index: 50;
    width: 18px;
    height: 18px;
    line-height: 18px;
    font-size: 12px;
    text-align: center;
    color: #fff;
    background-color: var(--main);
    border-radius: 50%;
    transition: 0.3s cubic-bezier(.33,-0.46,.48,1.43) all;
    box-shadow: 0px 0px 3px rgb(0 0 0 / 30%);
    font-weight: 500;
}
.cart-amount-anim{
	transform: scale(0,0);
	transition: 0.3s cubic-bezier(.33,-0.46,.48,1.43) all;
}


.header-user-cart-row {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    height: 60px;
    gap: 28px;
    padding-right: 35px;
}

.header-greet {
    font-size: 14px;
    color: #262e36;
    font-weight: 500;
    white-space: nowrap;
}

.header-hello strong {
    color: var(--main);
    font-weight: 600;
}

.header-puncte {
    display: flex;
    align-items: center;
    gap: 3px;
    background: #eee;
    border-radius: 20px;
    padding: 7px 13px 7px 9px;
    font-weight: 500;
    color: #1d3557;
    box-shadow: 0 1px 3px rgba(80,80,100,0.06);
    line-height: 1;
}
.header-puncte-bolt {
    color: var(--main) !important;      /* uses your main color variable */
    font-size: 16px;       /* optional: makes it pop */
    margin-right: 3px;
    display: inline-block;
    vertical-align: middle;
}


.header-puncte-value {
    color: var(--gray);
    font-weight: 700;
    font-size: 14px;
    margin: 2px 2px 0 0;
}

.header-puncte-label {
    color: #848da5;
    font-size: 14px;
    font-weight: 700;
    margin-left: 2px;
}








.header{
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	height: 51vw;
	max-height: 979px;
	display: flex;
    align-items: center;
	background-image: url(../../Images/header.jpg);
	background-size: cover;
	background-position: center center;
	padding: 1px;
	position: relative;
}
.header-funda{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	width: 13vw;
}
.header-info{
	width: 35%;
	height: 60%;
	margin-left: 5%;
}
.header-title{
	font-size: 42px;
	font-weight: 900;
	color: var(--main);
	margin: 0;
	margin-bottom: 15px;
}
.header-title font{
	color: #2d2a2a;
}
.header-subtitle{
	font-size: 24px;
	color: var(--gray);
	margin-bottom: 25px;
}


.main-container{
	width: 100%;
	background-color: #fff;
	border-radius: 15px;
	padding: 25px;
}
.main-title{
	font-size: 32px;
}

.general-button{
	width: 200px;
	height: 50px;
	line-height: 50px;
	display: block;
	border: none;
	background-color: var(--main);
	color: #fff;
	font-weight: 600;
	text-align: center;
	font-size: 15px;
	border-radius: 15px;
}
.general-button-big{
	width: 245px;
	font-size: 18px;
	margin-top: 15px;
}

/* Top buttons (remove inline styles from HTML; control here) */
.top-swap-btn{
	width:49%;margin-bottom:15px;border-radius:15px;text-align:center
}
.btn-ghost{background:#fff;border:2px solid var(--main);color:#323232}

section{
	width: 100%;
	margin: 150px auto;
}
.page-section{
	margin: 100px auto;
	min-height: calc(100vh - 350px);
}
.light-gray-section{
	background-color: #f3f3f3;
	padding: 100px;
}

.intro-split-image{
	width: 40%;
}
.intro-split-info{
	width: 55%;
}

.intro-split-title{
	font-size: 42px;
	font-weight: 900;
	color: var(--main);
	margin: 0;
	margin-bottom: 35px;
}
.intro-split-title font{
	color: #2d2a2a;
}
.intro-split-text{
	font-size: 16px;
	line-height: 26px;
	text-align: justify;
}

.intro-dark-holder{
	width: 100%;
	min-height: 400px;
	background-image: url(../../Images/dark-intro.jpg);
	background-size: cover;
	background-position: center center;
	padding: 75px 0;
}

.intro-dark-image{
	width: 40%;
}
.intro-dark-info{
	width: 55%;
	color: #fff;
}

.intro-dark-title{
	font-size: 42px;
	font-weight: 900;
	margin: 0;
	margin-bottom: 35px;
}
.intro-dark-text{
	font-size: 16px;
	line-height: 26px;
	text-align: justify;
}

.intro-center-title{
	font-size: 42px;
	font-weight: 900;
	color: var(--gray);
	margin: 0;
	margin-bottom: 5px;
	text-align: center;
}
.intro-center-subtitle{
	font-size: 18px;
	font-weight: 500;
	color: var(--main);
	margin: 0;
	margin-bottom: 35px;
	text-align: center;
}
.beneficii-box{
	width: 49%;
	margin-bottom: 25px;
	background-color: #fff;
	box-shadow: 0 0 4px rgba(0,0,0,0.08);
	overflow: hidden;
}
.beneficii-box-info-holder{
	width: 100%;
	height: 50px;
}
.beneficii-box-icon-holder{
	width: 50px;
	height: 50px;
	background-color: var(--main);
	position: relative;
}
.beneficii-box-icon{
	width: 30px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.beneficii-box-title-holder{
	width: calc(100% - 50px);
	height: 50px;
	background-color: var(--gray);
	color: #fff;
	padding: 0 8px;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	font-weight: 500;
}
.beneficii-box-text{
	padding: 15px;
	text-align: justify;
	font-size: 16px;
}


.level-box{
	width: 30%;
	min-height: 400px;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.08);
	background-color: #fff;
	overflow: hidden;
}
.level-box-header{
	width: 100%;
	padding: 1px 0;
	background-color: var(--main);
	background: linear-gradient(to bottom, #c00002, var(--main));
	position: relative;
}
.level-box-title{
	width: 100%;
	text-align: center;
	color: #fff;
	font-size: 28px;
	margin-bottom: 5px;
	font-weight: 700;
	text-shadow: 2px 2px 2px rgba(0,0,0,0.2);
}
.level-box-subtitle{
	text-align: center;
	color: #fff;
	font-size: 13px;
	font-weight: 500;
	width: 90%;
	margin: auto;
}
.level-box-icon{
	height: 50px;
	margin: 15px auto;
	display: block;
}
.triangle-down {
	position: absolute;
  width: 100%;
  height: 30px;            /* Triangle height */
  background-color: var(--main);
  clip-path: polygon(0 0, 50% 100%, 100% 0);
	bottom: -29px;
	left: 0;
}
.level-box-list {
  list-style: none;
  padding-left: 0;
	padding: 50px 15px 15px 15px;
}

.level-box-list li {
  position: relative;
  padding-left: 30px; /* space for bullet */
	padding-bottom: 15px;
}

.level-box-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4em;
  width: 16px;
  height: 16px;
  background-image: url(../../Images/icons/dot.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.cifre-holder{
	width: 90%;
	max-width: 900px;
	padding: 50px;
	background-color: var(--main);
	margin: auto;
}
.cifre-side-box{
	width: 45%;
	color: #fff;
	text-align: justify;
	font-size: 18px;
	line-height: 30px;
}
.cifre-box{
	width: 100%;
	text-align: center;
	margin-bottom: 30px;
	margin-top: 10px;
}
.cifre-box-pushed{
	margin-left: 16%;
}
.cifre-box-big{
	color: #fff;
	font-size: 36px;
	font-weight: 900;
}
.cifre-box-small{
	font-size: 14px;
	color: var(--gray);
	font-weight: 600;
}


/* --------------------------------------------------- cont --------------------------------------------------- */
.main-nav {
  display: flex;
  margin-bottom: 15px;
  flex-wrap: wrap;
	width: 100%;
}

.nav-btn {
	display: block;
	width: 16%;
  background: #fff;
  color: #999;
  padding: 0;
  border-radius: 15px;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  transition: background 0.15s;
	overflow: hidden;
}
.nav-ico {
  font-size: 28px;
  margin-bottom: 10px;
	width: 100%;
	background-color: #2d2a2a;
	text-align: center;
	padding: 6px 0;
}
	.nav-ico-icon{
		height: 18px;
		display: block;
		margin: 0 auto;
		filter: invert(100%);
	}
	.nav-btn:hover .nav-ico, .nav-ico-active{
		background-color: #e5001f;
	}
.nav-title {
  font-weight: 600;
	font-size: 12px;
  margin: 0 auto;
	color: #000;
}
.nav-desc {
  font-size: 11px;
  color: #999;
  font-weight: 400;
	padding: 6px;
}
	
	
.main-content-box{
	width: 80%;
	border-radius: 15px;
	padding: 15px;
	background-color: #fff;
}
.main-content-box-big{
	width: 100%;
	border-radius: 15px;
	padding: 15px;
	background-color: #fff;
}
.main-content-box-big-inner{
	width: 100%;
	padding: 15px;
}
.account-info-alert-icon{
	width: 128px;
	display: block;
	margin: 0 auto;
}
.account-info-alert{
	background-color: var(--main);
	color: #fff;
	font-size: 18px;
	text-align: center;
	padding: 20px 10px;
	border-radius: 15px;
	font-weight: 700;
}
.account-info-text{
	color: #333;
	font-size: 16px;
	text-align: center;
	border-radius: 15px;
	font-weight: 700;
	margin: 25px auto;
}
.account-info-text a{
	color: var(--main);
}
.points-card {
  background: #2d2a2a;
  color: #fff;
  border-radius: 18px;
  width: 19%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 32px 24px 24px 24px;
  margin-right: 0;
	height: 460px;
}
.points-card .lightning {
  font-size: 86px;
  margin-bottom: 16px;
  margin-top: -18px;
}
.points-card .points-total {
  font-size: 2.6em;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  margin-bottom: 6px;
}
.points-card .points-total .points-label {
  font-size: 0.43em;
  font-weight: 500;
  display: block;
  margin-top: 8px;
}
.points-card .divider {
  width: 85%;
  height: 2px;
  background: #fff4;
  margin: 28px 0 20px 0;
}
.points-card .points-breakdown {
  display: flex;
  width: 100%;
  justify-content: space-evenly;
  gap: 8px;
}
.points-card .points-breakdown div {
  text-align: center;
}
.points-big {
  font-size: 2.1em;
  font-weight: bold;
}
.points-label2 {
  font-size: 0.93em;
  margin-top: 5px;
  display: block;
  font-weight: 500;
  letter-spacing: 0.03em;
  color: #fff;
}
	
.points-level{
	font-size: 16px;
	text-align: center;
	width: 100%;
}
	

.upload-form {
  display: flex;
  flex-direction: column;
  gap: 14px;
	padding: 0 15px 15px 15px;
}
.form-title {
  font-weight: bold;
  font-size: 1.16em;
  color: #e5001f;
  letter-spacing: 0.01em;
}
.form-desc {
  color: #767676;
  font-size: 0.97em;
  margin-bottom: 8px;
}
.form-row {
  display: flex;
  gap: 8px;
}
.upload-form input[type="text"], .upload-form input[type="date"] {
  background: #f7f7f7;
  border-radius: 8px;
  border: none;
  padding: 10px 10px;
  font-size: 1em;
  color: #1b1b1b;
  margin-bottom: 0;
  margin-top: 0;
  outline: none;
  box-sizing: border-box;
  border: 1.5px solid #eee;
  transition: border .13s;
}
.upload-form input[type="text"]:focus { border: 1.5px solid #e5001f; }
.upload-box {
  background: #f7f7f7;
  border: 2px dashed #d2d2d2;
  border-radius: 10px;
  text-align: center;
  color: #a8a8a8;
  font-size: 1.09em;
  padding: 22px 0;
  margin-bottom: 0;
  margin-top: 0;
  cursor: pointer;
  transition: border-color .15s;
}
.upload-box:hover { border-color: #e5001f; color: #e5001f; }
.submit-btn {
  background: #e5001f;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 13px 0;
  font-size: 1.09em;
  font-weight: bold;
  margin-top: 10px;
  cursor: pointer;
  letter-spacing: 0.01em;
  box-shadow: 0 2px 6px #e5001f24;
  transition: background .14s;
}
.submit-btn:hover {
  background: #b11e2e;
}



/* --------------------------------------------------- modern table --------------------------------------------------- */
.modern-invoice-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 15px;
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  min-width: 720px;
}

.modern-invoice-table thead tr {
  background: #f7fafd;
  color: #29304b;
}

.modern-invoice-table th, 
.modern-invoice-table td {
  padding: 14px 12px;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #edf0f6;
}

.modern-invoice-table th {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.01em;
  border-bottom: 2px solid #e1e7ef;
  background: #f7fafd;
}

.modern-invoice-table tbody tr:last-child td {
  border-bottom: none;
}

.modern-invoice-table td {
  font-size: 14px;
}

.modern-invoice-table tbody tr:hover {
  background: #f3f8fd;
}

.factura-date {
  color: #758098;
  font-size: 13px;
  font-weight: 400;
  margin-top: 3px;
}
.order-prod-thumb {
  display:inline-block;
  vertical-align:middle;
  width:23px;
  height:23px;
  border-radius:6px;
  background:#fff;
  background-size:cover;
  background-position:center;
  margin-right:7px;
  box-shadow:0 1px 4px rgba(55,147,224,0.09);
  border:1px solid #e4eaf3;
}
.prodline {
  font-size: 13.7px;
  margin-bottom: 3px;
  line-height: 1.35;
}
.prodpackage {
  color: #5f8abf;
  font-size: 12px;
  font-weight: 400;
}
.orange-text { color: #f29c12; font-weight: 600; }
.green-text { color: #22b573; font-weight: 600; }
.red-text { color: #d9534f; font-weight: 600; }

/* Responsive */
@media (max-width: 1030px) {
  .table-container-modern { border-radius: 0; box-shadow: none; padding: 0; }
  .modern-invoice-table, .modern-invoice-table thead, .modern-invoice-table tbody, .modern-invoice-table th, .modern-invoice-table td, .modern-invoice-table tr { display:block; width:100%; }
  .modern-invoice-table th, .modern-invoice-table td { border-bottom: none; }
  .modern-invoice-table thead { display:none; }
  .modern-invoice-table tr { margin-bottom: 22px; background: #fff; border-radius: 10px; box-shadow:0 2px 8px rgba(0,0,0,0.03);}
  .modern-invoice-table td { padding: 14px 10px; font-size: 15px; border-bottom: 1px solid #f4f6fb; }
  .modern-invoice-table td:last-child { border-bottom: none; }
  .order-prod-thumb { width: 22px; height: 22px; margin-right: 5px;}
}

/* --------------------------------------------------- shop --------------------------------------------------- */


.produse-holder{
	width: 100%;
	margin-top: 50px;
}
.produs-box{
	width: 23%;
	margin-bottom: 35px;
	border: 1px solid #eee;
	border-radius: 15px;
	padding: 15px;
	background-color: #fff;
}
.produs-box-3{
	width: 31.333%;
	margin-bottom: 25px;
}
.produs-box-no-border{
	border: none;
	background-color: transparent;
}
.produs-img{
	width: 80%;
	height: 240px;
	margin: 25px 10%;
	border-radius: 25px;
	margin-bottom: 15px;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
.produs-title{
	text-align: center;
	font-size: 16px;
	font-weight: 700;
	color: #000;
	padding: 10px 0;
}
.produs-title-uppercase{
	text-transform: uppercase;
}
.produs-title-small{
	font-size: 14px;
	line-height: 20px;
	height: 60px;
	margin-bottom: 10px;
	overflow: hidden;
	padding: 0;
}
.produs-desc{
	text-align: center;
	font-size: 16px;
	font-weight: 400;
	font-style: italic;
	color: #999;
	margin-bottom: 25px;
}
.produs-desc-small{
	font-weight: 500;
	color: var(--main-red);
	margin-bottom: 15px;
	margin-top: 15px;
	font-style: normal;
}


.produs-main-holder{
	margin: 50px auto;
	width: 100%;
}
.produs-main-image-holder{
	min-height: 420px;
	width: 46%;
	background-color: #fff;
	border: 1px solid #eee;
}
.produs-main-image{
	height: 80%;
	width: 80%;
	display: block;
	margin: 10% auto;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
.produs-main-text{
	width: 46%;
	padding: 25px;
}
.produs-main-title{
	text-align: left;
	font-size: 20px;
	font-weight: 700;
	color: #000;
}


.shop-btn{
	width: 100%;
	height: 60px;
	border: 1px solid #ccc;
	position: relative;
	overflow: hidden;
	background-color: transparent;
	cursor: pointer;
	border-radius: 15px;
}
.shop-btn-left-box{
	width: calc(100% - 59px);
	height: 60px;
	line-height: 60px;
	font-size: 14px;
	letter-spacing: 0;
	color: #000;
	border-right: 1px solid #ccc;
	text-align: center;
	position: absolute;
	text-transform: uppercase;
	left: 0;
	top: 0;
	z-index: 20;
	font-weight: 600;
}
.shop-btn-right-box{
	width: 60px;
	height: 60px;
	line-height: 60px;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 20;
	overflow: hidden;
}
.shop-btn-main-icon{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	padding: 9px 0;
	width: 60px;
	height: 60px;
	line-height: 20px;
	text-align: center;
	font-size: 15px;
	letter-spacing: -1px;
	font-weight: 700;
	color: var(--main);
	transition: 0.3s ease-in-out transform 0.3s;
}

.shop-btn-main-icon font{
	color: #000;
	font-size: 12px;
}
.shop-btn-sec-icon{
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    height: 20px;
    transform: translateX(-60px);
    transition: 0.3s ease-in-out transform 0.3s;
}
.shop-btn-underlay{   
	width: 100%;
    height: 60px;
    position: absolute;
    top: 0;
    right: 0;
	background-color: var(--main);
    z-index: 19;
    transform: translateX(-101%);
    transition: 0.3s ease-in-out transform 0.4s, 0.3s ease-in-out width;
}
.shop-btn:hover .shop-btn-main-icon{
	transform: translateX(60px);
	transition: 0.3s ease-in-out transform;
}
.shop-btn:hover .shop-btn-sec-icon{
	transform: translateX(0);
	transition: 0.3s ease-in-out transform;
}
.shop-btn:hover .shop-btn-underlay{
	transform: translateX(0);
	width: 59px;
	transition: 0.3s ease-in-out transform, 0.3s ease-in-out width 0.4s;
}


.shop-btn-overlay{
	width: 60px;
	height: 60px;
	position: absolute;
	top: 0;
	right: 0;
background: linear-gradient(90deg, #28d76d 0%, #1fc492 100%);
	z-index: 21;
	transform: translateX(60px);
	transition: 0.3s ease-in-out transform;
}
.shop-btn-overlay img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	height: 20px;
}
.shop-btn-overlay-open{
	transform: translateX(0);
}


.pagination-box{
	width: 100%;
	max-width: 550px;
	margin: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.pagination-item{
	width: 36px;
	height: 36px;
	line-height: 36px;
	background-color: var(--main);
	color: #fff;
	text-align: center;
	font-size: 14px;
	border-radius: 50%;
	margin: 5px;
}
.pagination-item-active,.pagination-item:hover{
	background-color: var(--main-yellow);
	color: #000;
}




.cart-overlay {
    display: none;
    position: fixed; left: 0; top: 0; width: 100vw; height: 100vh;
    background: rgba(24,24,24,0.75);
    z-index: 9998;
    opacity: 0;
    transition: opacity 0.3s;
}
.cart-overlay.cart-overlay-open {
    display: block;
    opacity: 1;
}

.cart-panel {
    position: fixed;
    top: 0; right: 0;
    height: 100vh;
    width: 380px;
    max-width: 94vw;
    background: #fff;
    box-shadow: -3px 0 18px rgba(0,0,0,0.26);
    z-index: 9999;
    transform: translateX(100%);
    transition: transform 0.33s cubic-bezier(.8,.4,.2,1);
    display: flex;
    flex-direction: column;
    border-radius: 18px 0 0 18px;
}

.cart-panel.cart-panel-open {
    transform: translateX(0);
}

.cart-panel-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 22px 24px 10px 24px;
    font-size: 1.23rem;
    font-weight: bold;
    border-bottom: 1px solid #e4e8ef;
}

.cart-panel-close {
    font-size: 2.3rem;
    line-height: 1;
    cursor: pointer;
    color: #333;
    transition: color 0.15s;
}
.cart-panel-close:hover {
    color: #b00;
}

.cart-panel-content {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 0 24px;
}
.cart-panel-footer {
    border-top: 1px solid #e4e8ef;
    padding: 18px 24px;
    font-size: 14px;
    background: #f9fafd;
}
.cart-loading {
    text-align: center;
    margin: 30px 0;
    color: #aaa;
    font-size: 1.15rem;
}

.cart-product-row {
    display: flex;
    align-items: center;
    margin: 20px 0 18px 0;
    border-bottom: 1px solid #ececec;
    padding-bottom: 14px;
}
.cart-product-img {
    width: 54px; height: 54px; flex-shrink: 0;
    background: #f1f1f6;
    border-radius: 12px;
    background-size: cover;
    background-position: center;
    margin-right: 18px;
}
.cart-product-details {
    flex: 1 1 auto;
}
.cart-product-title {
    font-size: 1.03rem;
    font-weight: 600;
    margin-bottom: 3px;
}
.cart-product-meta {
    font-size: 0.97rem;
    color: #6c7686;
    margin-bottom: 3px;
}
.cart-product-qty-box {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 5px;
}
.cart-product-qty-input {
    width: 36px;
    padding: 4px;
    text-align: center;
    border: 1px solid #d1d1e5;
    border-radius: 6px;
    font-size: 1.03rem;
    outline: none;
}
.cart-product-update, .cart-product-delete {
    background: none;
    border: none;
    font-size: 1.13rem;
    padding: 4px 7px;
    margin-left: 4px;
    cursor: pointer;
    border-radius: 4px;
    transition: background 0.13s;
}
.cart-product-update:hover {
    background: #e4f4e4;
}
.cart-product-delete {
    color: #b00;
}
.cart-product-delete:hover {
    background: #fee9e9;
}
.cart-panel-empty {
    color: #999;
    text-align: center;
    margin: 44px 0 25px 0;
    font-size: 14px;
}
.cart-panel-total-label {
    float: left; font-weight: bold;
}
.cart-panel-total-value {
    float: right; font-weight: bold; color: #059669;
}

.cart-checkout-btn {
    width: 100%;
    margin-top: 25px;
    padding: 13px 0;
    border: none;
    border-radius: 8px;
    background: var(--main);
    color: #fff;
    font-size: 1.08rem;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(80,80,110,0.06);
    transition: background 0.2s;
}
.cart-checkout-btn:disabled,
.cart-checkout-btn[disabled] {
    background: #ccc;
    cursor: not-allowed;
}
.cart-checkout-error {
    color: #b00;
    background: #fff1f1;
    border-radius: 7px;
    padding: 10px 8px;
    margin-top: 18px;
    font-size: 1.03rem;
    text-align: center;
    font-weight: 500;
}


/* --------------------------------------------------- adrese --------------------------------------------------- */


.address-container {max-width:920px;margin:40px auto;}
.address-list-box {margin-bottom:32px;}
.address-table {width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;}
.address-table th, .address-table td {padding:12px 10px;text-align:left;}
.address-table th {background:#f8fafb;font-size:1.03rem;color:#456;}
.address-table tr:nth-child(even) {background:#f7fafd;}
.address-edit-btn, .address-delete-btn {
    border:none;outline:none;background:none;
    color:var(--main);padding:3px 11px;cursor:pointer;font-weight:500;text-decoration:underline;
    border-radius:5px;transition:.1s;background:#f5f6fa;
}
.address-delete-btn {color:#c00;background:#fde9e9;}
.address-edit-btn:hover {background:#e6f8e2;}
.address-delete-btn:hover {background:#ffe3e3;}

.address-form-box {background:#fff;padding:32px 26px 20px 26px;border-radius:14px;box-shadow:0 2px 12px rgba(30,40,80,.08);}
.address-form-box h3 {margin:0 0 18px 0;color:#18477b;}
.upload-form .form-row {display:flex;gap:16px;margin-bottom:13px;}
.upload-form input, .upload-form select {
    flex:1 1 0; padding:9px 10px;border:1px solid #d6dde7;border-radius:6px;
    font-size:1.03rem;transition:.12s;
}
.upload-form input:focus, .upload-form select:focus {border-color:var(--main);}
.submit-btn {
    margin-top:10px;background:var(--main);color:#fff;border:none;border-radius:8px;
    padding:11px 38px;font-size:1.08rem;cursor:pointer;font-weight:600;transition:.16s;
}
.submit-btn:hover {background:#0b3357;}



/* --------------------------------------------------- cursuri --------------------------------------------------- */
.curs-list{display:flex;flex-direction:column;gap:12px;margin:8px 0}
.curs-box{width:100%;background:#fff;border:1px solid #e9ecef;border-radius:16px;box-shadow:0 6px 18px rgba(0,0,0,.05);padding:16px 20px}
.curs-box.past{opacity:.85;border-style:dashed}
.curs-title{font-size:18px;font-weight:700;color:#222;margin:0 0 10px 0}
.curs-info{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.curs-tag{display:inline-flex;align-items:center;gap:8px;background:#f6f8f9;border:1px solid #eef2f4;border-radius:10px;padding:8px 10px;font-size:13px;color:#2d333a}
.curs-ico{width:16px;height:16px;display:inline-block}
.curs-button a{display:inline-block;background:var(--main,#0089bb);color:#fff;padding:10px 14px;border-radius:10px;font-weight:600;text-decoration:none}
.curs-button a:hover{opacity:.9}
.section-title{font-size:20px;font-weight:800;margin:18px 0 10px 0}

/* --------- Responsive --------- */
@media (max-width:1030px){

	/* card compact */
	.curs-box{padding:14px 14px;border-radius:14px}
	.curs-title{font-size:17px;margin-bottom:8px}

	/* tags: show two per row; allow wrapping text */
	.curs-info{gap:8px;margin-bottom:12px}
	.curs-tag{flex:1 1 calc(50% - 8px);font-size:12.5px;padding:8px 9px;white-space:normal}
	.curs-ico{width:15px;height:15px}

	/* button a bit taller for touch */
	.curs-button a{width:100%;text-align:center;padding:11px 14px}
}

@media (max-width:560px){
	/* tags: one per row on very small screens */
	.curs-tag{flex:1 1 100%}
	.section-title{font-size:18px}
}

/* --------------------------------------------------- footer --------------------------------------------------- */


.footer{
	background-color: var(--gray);
	padding: 75px 0;
	color: #fff;
}
.footer-menu{
	width: 640px;
}
.footer-menu a{
	color: #fff;
	text-decoration: none;
}

/* --------------------------------------------------- general styles --------------------------------------------------- */
.float-left{float: left;}
.float-right{float: right;}
.clear{clear: both;}
.center-text{text-align: center;}
.left-text{text-align: left;}
.right-text{text-align: right;}
.gray-text{color: #aaa;}
.no-border{border:none;}
.no-border-bottom{border-bottom:none;}
.no-padd{padding: 0;}
.no-background{background-color: transparent;}
.full-width{width: 100%;}
.half-width{width: 50%;}
.marg-top-25{margin-top: 25px;}
.opac-0{opacity:0;}
.inverted{filter: invert(100%);}

.hr-divider{
    border: none;
    border-bottom: 1px solid #eee;
	margin: 25px 0;
}

.flex-container{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: space-between;
}
.flex-container-around{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-content: space-around;
}
.flex-container-vertical-center{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.clear{
	clear: both;
}
.center-element{
	margin: 0 auto;
}

.blue-bg{background-color: #4fa8e7; transition: 0.3s ease-in-out background;}
.purple-bg{background-color: #ac58e6; transition: 0.3s ease-in-out background;}
.orange-bg{background-color: #e6a258; transition: 0.3s ease-in-out background;}
.red-bg{background-color: #dc4242; transition: 0.3s ease-in-out background;}
.green-bg{background-color: #8bcc7a; transition: 0.3s ease-in-out background;}

.blue-bg:hover{background-color: #008ae1;}
.purple-bg:hover{background-color: #8434bc;}
.orange-bg:hover{background-color: #d37c1e;}
.red-bg:hover{background-color: #ad0c0c;}
.green-bg:hover{background-color: #58bb3d;}

.red-hover{color: inherit;}

.orange-text{color: #e6a258;}
.green-text{color: #8bcc7a;}
.red-text,.red-hover:hover{color: #dc4242 !important;}
.blue-text{color: #008ae1;}
.purple-text{color: #ac58e6;}

.border-bottom-3{border-bottom: 3px solid;}
.orange-border{border-color: #e6a258;}
.green-border{border-color: #8bcc7a;}
.red-border{border-color: #dc4242;}
.blue-border{border-color: #008ae1;}
.purple-border{border-color: #ac58e6;}


.cat-menu-container{
	position: -webkit-sticky;
	position: sticky;
	top: 70px;
	z-index: 11;
	padding: 0 15px;
	border-bottom: 1px solid #f9f9f9;
}

.disp-mob{display: none;}
.disp-desk{display: block;}
.disp-desk-flex{display: flex;}



@media screen and (max-width: 1030px){

.disp-mob{display: block;}
.disp-desk{display: none;}
.disp-desk-flex{display: none;}
	.header-mob{
		display: block;
		width: 100%;
		margin-top: 70px;
	}


  /* ---------- forms ---------- */
  .input-holder-2,
  .input-holder-23,
  .input-holder-13,
  .input-holder-4,
  .input-holder-1 { width: 100%; }
  .cautare-form { max-width: 100%; }

  
/* --------------------------------------------------- login --------------------------------------------------- */
.login-box-holder{
	width: 90vw;
	height: auto;
	position: relative;
	margin: 50px auto;
}
.login-box-holder-large{
	width: 90vw;
	height: auto;
	position: relative;
	margin: 50px auto;
}
.login-bg{
	display: none;
}
.login-profile-bg{
	display: none;
}
.login-info{
	width: 100%;
	height: auto;
	padding: 15px;
}
.login-info-large{
	width: 100%;
	height: auto;
	padding: 15px;
}

.login-form{
	height: auto;
}
.login-title-link{
    font-size: 18px;
    color: var(--main);
    margin-bottom: 15px;
    font-weight: 700;
}
.login-title-link:hover{
	color: #D00;
	text-decoration: underline;

}

.login-page-btn{
	width: 100%;
	margin-bottom: 15px;
}
.login-page-btn:hover{
	background-color: var(--main);
	color: #fff;
}


.mob-switch-big{
	width: 100%;
	text-align: center;
}
.login-switch{
	position: relative;
	width: 100%;
	margin: 25px auto;
	right: 0;
	text-align: center;
}
.login-switch-btn{
	width: 100%;
}


	
.header-greet {
    display: none !important;
}

.header-puncte {
    display: none;
}
	
.menu-option-holder{
	margin-right: -10px;
}
	
/* ---------- menu / header row ---------- */
	
.header{
	height: auto;
	max-height: none;
	display: block;
	background-image: url(../../Images/header-mobile.jpg);
	margin-top: 10px;
}
.header-funda{
	display: none;
}
.header-info{
	width: 100%;
	height: auto;
	margin-left: 0%;
	padding: 25px 15px;
	text-align: center;
}
.header-title{
	font-size: 32px;
}
.header-subtitle{
	font-size: 20px;
}
	.general-button-big{
		margin: auto;
	}


  /* hide main menu, add hamburger */
.menu {
display: none;
flex-direction: column;
width: 100%;
background: #fff;
border-top: 1px solid #eee;
position: absolute;
top: 60px;  /* below menu-holder */
left: 0;
z-index: 99;
  height: auto;
}

.menu.menu-open { display: flex; }

.menu-item {
height: auto;
  width: 100%;
line-height: 1.4;
padding: 14px 18px;
text-align: left;
border-bottom: 1px solid #f2f2f2;
}

/* hamburger icon */
.menu-toggle {
display: block;
width: 32px;
height: 26px;
position: absolute;
right: 18px;
top: 17px;
cursor: pointer;
z-index: 100;
}
.menu-toggle span {
display: block;
height: 3px;
background: #333;
margin: 6px 0;
border-radius: 2px;
transition: 0.3s;
}

/* active/close animation */
.menu-toggle.active span:nth-child(1) { transform: rotate(45deg) translate(6px,6px); }
.menu-toggle.active span:nth-child(2) { opacity: 0; }
.menu-toggle.active span:nth-child(3) { transform: rotate(-45deg) translate(6px,-6px); }

	


.cart-panel {
    height: 100vh;
    width: 100vw;
    max-width: 100vw;
}


.cart-panel-content {
    padding: 0 14px;
}
.cart-panel-footer {
    font-size: 12px;
}
.cart-loading {
    font-size: 12px;
}

.cart-product-title {
    font-size: 12px;
}
.cart-product-meta {
    font-size: 12px;
}
.cart-product-qty-input {
    font-size: 12px;
}
.cart-product-update, .cart-product-delete {
    font-size: 12px;
}
.cart-panel-empty {
    font-size: 12px;
}

.cart-checkout-btn {
    font-size: 13px;
}

  
/* --------------------------------------------------- cont --------------------------------------------------- */
.main-nav {
  display: flex;
  margin-bottom: 15px;
  flex-wrap: wrap;
	width: 100%;
}

.nav-btn {
	display: block;
	width: 16%;
  background: #fff;
  color: #999;
  padding: 0;
  border-radius: 15px;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  transition: background 0.15s;
	overflow: hidden;
}
.nav-ico {
  margin-bottom: 0;
	padding: 10px 0;
}
	.nav-ico-icon{
		height: 18px;
		display: block;
		margin: 0 auto;
		filter: invert(100%);
	}
	.nav-btn:hover .nav-ico, .nav-ico-active{
		background-color: #e5001f;
	}
.nav-title {
 display: none;
}
.nav-desc {
 display: none;
}
	
	

  /* ---------- sections / intro ---------- */
  section { margin: 70px auto; }
  .page-section { min-height: auto; margin: 70px auto; }
  .light-gray-section { padding: 40px 18px; }

  .intro-split-image,
  .intro-split-info { width: 100%; }
  .intro-split-title,
  .intro-dark-title,
  .intro-center-title { font-size: 30px; }
  .intro-split-text,
  .intro-dark-text { font-size: 15px; line-height: 24px; }

  .intro-dark-holder { padding: 40px 0; }
  .intro-dark-image,
  .intro-dark-info { width: 100%; }

  /* ---------- cards / boxes ---------- */
  .beneficii-box { width: 100%; }
  .level-box { width: 100%; min-height: 0; }
  .level-box-title { font-size: 24px; }
  .level-box-list { padding: 36px 15px 15px 15px; }

  /* ---------- cifre ---------- */
  .cifre-holder { width: 100%; padding: 24px; }
  .cifre-side-box { width: 100%; font-size: 16px; line-height: 26px; }
  .cifre-box { margin: 18px 0; }
  .cifre-box-pushed { margin-left: 0; }
  .cifre-box-big { font-size: 28px; }

  /* ---------- cont / dashboard ---------- */
  .main-content-box { width: 100%; padding: 0; }
  .points-card {
    width: 100%;
    height: auto;
    padding: 22px 18px;
    margin-bottom: 14px;
  }

  /* ---------- shop: product grids ---------- */
  .produse-holder { margin-top: 30px; }
  .produs-box { width: 48%; }
  .produs-box-3 { width: 48%; }
  .produs-img { height: 200px; margin: 18px 10% 12px 10%; }

  /* ---------- product page split ---------- */
  .produs-main-image-holder,
  .produs-main-text { width: 100%; }
  .produs-main-image-holder { min-height: 320px; }
  .produs-main-title { font-size: 18px; }


  /* ---------- addresses / forms within ---------- */
  .upload-form .form-row { flex-direction: column; gap: 10px; }

  /* ---------- pagination ---------- */
  .pagination-item { width: 34px; height: 34px; line-height: 34px; }


/* --------------------------------------------------- footer --------------------------------------------------- */


.footer{
	padding: 50px 0;
	text-align: center;
}
.footer-menu{
	width: 100%;
	margin-top: 25px;
}
	.footer-menu-info{
		width: 100%;
	}
.footer-menu-item{
	display: block;
	width: 100%;
	margin-bottom: 8px;
	text-align: center;
	color: #fff;
	text-decoration: none;
}
	
	
}

/* --- Cart: product no longer offered by the supplier feed --- */
.cart-product-unavailable{
  opacity: .62;
  background: #fdf3f3;
  border-left: 3px solid #d9534f;
}
.cart-product-unavailable .cart-product-title{
  text-decoration: line-through;
}
.cart-product-unavailable-note{
  color: #b3261e;
  font-size: 11px;
  font-weight: 700;
  margin: 2px 0 4px 0;
  line-height: 1.3;
}

/* --- Atlas supplier order cancellations --- */
.order-partial-badge{
  display: inline-block;
  background: #ffe9b8;
  color: #7a5a00;
  font-size: 11px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 999px;
  vertical-align: middle;
}
.prodline-canceled{
  opacity: .7;
}
.prodline-canceled strong{
  text-decoration: line-through;
}
.prodline-canceled-tag{
  display: inline-block;
  margin-left: 6px;
  background: #d9534f;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: 3px;
  text-transform: uppercase;
  letter-spacing: .03em;
}
.order-cancel-warning-row td{
  background: #fff8ea !important;
  border-top: none !important;
  padding-top: 0 !important;
}
.order-cancel-warning{
  border-left: 3px solid #f0ad4e;
  background: #fffaf0;
  padding: 10px 14px;
  border-radius: 4px;
  font-size: 13px;
  color: #5a4300;
}
.order-cancel-warning-title{
  font-weight: 700;
  margin-bottom: 6px;
  color: #7a5a00;
}
.order-cancel-warning-list{
  margin: 0 0 8px 0;
  padding-left: 18px;
}
.order-cancel-warning-list li{
  margin-bottom: 3px;
  line-height: 1.4;
}
.order-cancel-warning-foot{
  border-top: 1px dashed #e8d5a8;
  padding-top: 7px;
  font-size: 12px;
}
