body {
	padding-top: 136px;
	background: #fff;
	font-family: 'Open Sans', Arial, Helvetica, sans-serif;
	color: #000;
}
a {
	outline: none;
	color: #A5CD39;
	text-decoration: none;
}
a.link_underline {
	text-decoration: underline;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Noto Serif', 'Times New Roman', Times, Georgia, serif;
	font-weight: 400;
	line-height: 1.2;
}
h1 {
	font-size: 48px;
	line-height: 1;
}
h2 {
	font-size: 30px;
	font-weight: 600;
}
h3 {
	font-size: 18px;
	font-weight: 800;
}
i {
	font-weight: 400;
}

.navbar-brand {
	padding: 0;
}
.navbar-toggler {
    padding: 0;
    line-height: 1;
    background-color: transparent;
    border: none;
    border-radius: 0;
}

img.slogan {
	width: 80%;
	position: absolute;
	bottom: 36px;
	left: 50%;
	right: 0;
	margin-left: -40%;
}
@media(min-width: 992px) {
	img.slogan {
		width: 40%;
		margin-left: -20%;
	}	
}

.logo {
	height: 120px;
}
.logo-symbol {
	width: 72px;
}
.logo-text {
	width: 96px;
	margin: 18px 0 0 -26px;
}

/* BACKGROUNDS */

.bg-light { 
	background-color: #f9fbfc !important;
}
.bg-success {
    background-color: #A5CD39 !important;
}
.text-bg-success {
    color: #fff !important;
    background-color: #A5CD39 !important;
}

.border-success {
    border-color: #A5CD39 !important;
}

/* BUTTONS */

.btn {	
	font-size: 14px;
}	
.btn-lg {
	font-size: 18px;
}
.btn-dir {
	padding: 17px 8px;
}
.btn-success {
    --bs-btn-color: #fff;
    --bs-btn-bg: #A5CD39;
    --bs-btn-border-color: #A5CD39;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #90B42D;
    --bs-btn-hover-border-color: #90B42D;
    --bs-btn-focus-shadow-rgb: 60,153,110;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #A5CD39;
    --bs-btn-active-border-color: #A5CD39;
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #e0e0e0;
    --bs-btn-disabled-border-color: #e0e0e0;
}
.btn-outline-success {
    --bs-btn-color: #000;
	--bs-btn-bg: transparent;
    --bs-btn-border-color: #000;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #A5CD39;
    --bs-btn-hover-border-color: #A5CD39;
    --bs-btn-focus-shadow-rgb: 33,37,41;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #fff;
    --bs-btn-active-border-color: #000;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #212529;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #212529;
    --bs-gradient: none;
}
.btn-dark {
    --bs-btn-color: #fff;
    --bs-btn-bg: #000;
    --bs-btn-border-color: #000;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #333;
    --bs-btn-hover-border-color: #333;
    --bs-btn-focus-shadow-rgb: 66,70,73;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #333;
    --bs-btn-active-border-color: #333;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #000;
    --bs-btn-disabled-border-color: #000;
}
.btn-outline-dark {
    --bs-btn-color: #000;
    --bs-btn-border-color: #000;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #000;
    --bs-btn-hover-border-color: #000;
    --bs-btn-focus-shadow-rgb: 33,37,41;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #fff;
    --bs-btn-active-border-color: #fff;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #212529;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #212529;
    --bs-gradient: none;
}
.input-group-text {
	padding-left: 8px;
	padding-right: 8px;
}


/* TOP BAR */

.top-bar {
	height: 34px;
    padding: 8px 0;
    background: #000;
	border-bottom: 1px solid #333;
	font-size: 14px;
	line-height: 15px;
}
.top-bar a {
	color: #fff;
	opacity: .6;
	transition: opacity .15s ease-in-out;
}
.top-bar a:hover {
	opacity: 1;
}
.ico-nav {
	max-width: 15px;
	max-height: 15px;
}

/* NAVIGATION */

.dropdown-item {
	padding-top: 8px;
	padding-bottom: 8px;
}
.w-220px {
	width: 220px;
}
.dropdown-menu {
	width: 100%;
}
.dropdown-item:focus {
	background: #A5CD39 ;
}
@media (min-width: 992px) {
	.navbar-expand-lg .navbar-collapse {
		justify-content: flex-end;
	}
	.dropdown-menu {
		width: 220px;
	}
}
@media(min-width: 992px) {
	.navbar-expand-lg .navbar-nav .nav-item {
		margin-left: 12px;
		padding-right: 0;
		padding-left: 0;
	}
}

/* CONTAINERS */
@media (min-width: 992px) {
	.container {
		max-width: 1000px;
	}
}
@media(min-width: 1400px) {
	.container { 
		max-width: 1300px;
	}
}

.header-cta {
	padding-bottom: 120px;
	width: 100%;
	background-color: #000;
	background-image: url('../img/img/img-home-xl.jpg');
	background-position: top bottom;
	background-repeat: no-repeat;
	background-size: 100%;
	position: relative;
}
.header-cta-inner {
	width: 100%;
	height: 100%;
}
.header-cta-inner h1,
.header-cta-inner p {
	text-shadow: 1px 1px 2px #000000;
}
.header-page {
	padding: 96px 0;
	margin-bottom: 24px;
}
.header-page-small {
	padding: 30px 0;
	margin-bottom: 24px;
}
.bg-marble {
	background: #F6F9FB url('../img/img/bg-marble.jpg') center no-repeat;
	background-size: cover;
	background-attachment: fixed;
}
.bg-mnm-01 {
	background: url('../img/img/bg-mnm-01.jpg') center top no-repeat;
	background-size: cover;
}
.bg-mnm-03 {
	background: url('../img/img/bg-mnm-03.jpg') center top no-repeat;
	background-size: cover;
}
.p-xtra {
	padding-bottom: 220px;
}
.text-intro {
	margin-top: 120px;
}
.lead {
	font-size: 16px;
	line-height: 1.33;
	font-weight: 400;
}
@media(max-width: 991px) {
	.header-cta-inner {
		padding: 48px 0 48px;
	}
}
@media(min-width: 768px) {
	.lead {
		font-size: 18px;
	}
}
@media(min-width: 992px) {
	.header-cta {
		height: calc(100vh - 136px);

		background-position: center;
		background-size: cover;
		padding-bottom: 0;
	}
	.text-intro {
		margin-top: 0;
	}
}

/* BOOKING FORM */

.form-check-input:checked {
    background-color: #A5CD39;
    border-color: #A5CD39;
}
.focus-ring {
	--bs-focus-ring-color: rgba(165, 205, 57, .25)
}

.booking-form {
	width: 100%;
	font-size: 14px;
	color: #000;
	padding-top: 36px;
}
@media(min-width: 992px) {
	.booking-form {
		padding-top: 0;
	}
}
form,
.form-control,
.form-select {
	font-size: 14px;
}
.alert-small {
	font-size: 11px;
	padding: 1px 5px;
	position: absolute;
	top: 30px;
	right: 0;
}
.bf-title {
	font-size: 18px;
	line-height: 1.25;
}
.bf-card-home {
	border-radius: 8px;
	background: url('../img/img/pxl.png');
    z-index: 10;
}

/* CARDS */

.card {	
	
}
.card-img-top {
	border-radius: 0;
	margin-bottom: 24px;
}
h2.card-title {
	font-size: 24px;
}
.card-services {
	border: none;
	margin-bottom: 48px;
}
.card-car {
	height: 300px;
	position: relative;
	margin-bottom: 48px;
	padding: 30px;
	border: none;
	border-radius: 2px;
	background-color: #F6F9FB;
	color: #000;
	text-decoration: none;
}
.card-car:hover {
	background: #A5CD39;
}
.card-car-img {
	position: absolute;
	right: -1px;
	width: 260px;
	bottom: -20%;
}
.card-services .card-body {
	padding: 0;
}

/* MODALS */

.modal-body {
	padding: 24px 0;
}

/* TABLES */
.bg-ap {
	padding-left: 16px;
	min-height: 150px;
	background-size: contain;
	background-position: bottom right;
	background-repeat: no-repeat;
	background-color: #000;
	border-radius: 2px 2px 0 0;
	color: #fff;
}
.bg-ap-1 {
	background-image: url('../img/img/bg-caption-airport-1.jpg');
}
.bg-ap-2 {
	background-image: url('../img/img/bg-caption-airport-2.jpg');
}
@media(max-width: 991px) {
	.bg-ap {
		background-image: none;
	}
}
table {
	font-size: 14px;
}
.table-striped>tbody>tr:nth-of-type(odd)>* {
    --bs-table-bg-type: #F6F9FB;
}

.table-wminw>:not(caption)>*>* {
    padding: 1rem;
}
.table-hover {
	--bs-table-hover-bg: #F6F9FB;
}
.table-light {
    --bs-table-color: #000;
    --bs-table-bg: #F6F9FB;
    --bs-table-border-color: #E4EBF1;
    --bs-table-striped-bg: #000;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #fff;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #fff;
    --bs-table-hover-color: #000;
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}

table caption {
	color: #000;
	font-weight: 600;
}
table ul {
	list-style: none;
	padding: 0;
}
thead th {
	font-size: 14px;
	font-weight: normal;
	color: #999 !important;
}
table.last-child-right tr th:last-child,
table.last-child-right tr td:last-child {
	text-align: right;
}
b.price {
	font-size: 18px;
}

@media(max-width: 991px) {
	.table-wminw {
		min-width: 976px;
	}
}

/* PORTOFOLIU */
.img-partner {
	min-height: 230px;
}
.tooltip-content {
  position: absolute;
  visibility: hidden;
  background-color: #fff;
  border: 1px solid #ccc;
  padding: 10px;
  z-index: 1;
}

.tooltip-trigger:hover + .tooltip-content {
  visibility: visible;
}

/* VIDEO */
.video-frame {
	margin-top: -180px;
	padding-bottom: 3px;
	background: #000;
	border: 9px solid #000;
	border-radius: 6px;
	box-shadow: 5px 10px 18px #888;
}
@media(min-width: 768px) {
	.video-frame {
		padding-bottom: 6px;
		border: 12px solid #000;
	}
}
@media(min-width: 992px) {
	.video-frame {
		padding-bottom: 12px;
		border: 15px solid #000;
	}
}

/* FOOTER */
footer a {
	color: #aaa;
}
footer a:hover {
	color: #fff;
}


.info-error {
    color: #ff0000;
    background: #ffffff;
    padding: 5px;
}
   
input.error, select.error, textarea.error {
	background-color: #ffe4e4;
}

.text-justified, .text-justified {
    text-align: justify;
}

label.hand {
    cursor: pointer;
}

.text_green {
    color: #b0cb1f;    
}

.text_red {
    color: #ff0000;    
}

ul.list-disc {
    list-style-type: disc;
    margin-left: 50px;
}

.div_info_text a {
    text-decoration: underline
}

.text-right {
    text-align: right;
}

.bg-success a {
    color: #000;
}
.bg-success a.btn-dark {
    color: #fff;
}

.border-green {
    color: #A5CD39 !important;
    border-color: #A5CD39 !important;
    --bs-btn-hover-bg: #90B42D;
    --bs-btn-hover-border-color: #90B42D;    
}

#ui-datepicker-div {
    z-index: 2000 !important;
}


/*
.img-box {
    position: relative;
    display: inline-block;
}
.img-label {
    position: absolute;
    top: 5px;
    left: 5px;
    max-width: 80px;
    height: auto;
}
*/
.img-box {
    position: relative;
    display: inline-block;
}

.label {
    position: absolute;
    top: 20px;
    left: 5px;

    padding: 4px 22px;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    z-index: 10;

    text-transform: uppercase;
    border-radius: 3px;
}

.label-levels-1 {
    background: linear-gradient(135deg, #cd7f32, #8b5a2b);
    color: #fff;
}
.label-levels-2 {
    background: linear-gradient(135deg, #f5f5f5, #a9a9a9);
    color: #222;
}
.label-levels-3 {
    background: linear-gradient(135deg, #ffd700, #b8860b);
    color: #222;
}
.label-levels-4 {
    background: linear-gradient(135deg, #f8f8ff, #bfc1c2);
    color: #222;
}

.text_error {
    color: #ff0000;
}

.div_error {
	padding: 3px 3px 0 3px;
	background-color: #FFCACA;
	border: 1px solid #ff0000;
}


thead.thead-gray th {
    background-color: #3d3d3d !important; /* important pt Bootstrap tables */
    color: #fff !important;
}

/* --- MOBILE MENU FIX --- */
@media (max-width: 991px) {

    /* 1. Revenim la comportamentul normal pentru container */
    #navbarCollapse {
        position: static !important;
        height: auto;
        overflow: visible;
        background: transparent !important;
    }

    /* 2. Fixăm DOAR meniul, nu logo-ul și nu butonul */
    #navbarCollapse.show .navbar-nav {
        position: fixed;
        top: 160px; /* logo + top-bar (ajustabil) */
        left: 0;
        right: 0;
        height: calc(100vh - 160px);
        overflow-y: auto;
        background: #000;
        padding: 1rem;
        z-index: 9999;
    }

    /* 3. Dropdown-urile lungi */
    #navbarCollapse .dropdown-menu {
        max-height: 60vh;
        overflow-y: auto;
    }

    /* 4. Butonul de meniu rămâne vizibil */
    .navbar-toggler {
        position: relative;
        z-index: 10000;
    }
}


/* ================================
   FLOATING CONTACT BUTTONS
   ================================ */

.floating-contact-buttons {
    position: fixed;
    right: 20px;
    bottom: 110px; /* deasupra butonului de chat */
    z-index: 9999;

    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}

.floating-btn {
    width: 52px;
    height: 52px;
    box-sizing: border-box;

    display: flex;
    align-items: center;
    justify-content: flex-start;

    border-radius: 50%;
    color: #fff !important;
    text-decoration: none !important;

    overflow: hidden;
    white-space: nowrap;

    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.25);

    transition:
        width 0.25s ease,
        border-radius 0.25s ease,
        transform 0.2s ease;
}

/* Iconita */

.floating-btn .floating-icon {
    width: 52px;
    height: 52px;
    min-width: 52px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.floating-btn svg {
    width: 25px;
    height: 25px;
    display: block;

    fill: currentColor;
    color: #fff;
}

/* Text */

.floating-btn .floating-text {
    padding-right: 18px;

    font-size: 14px;
    font-weight: 600;
    line-height: 1;

    opacity: 0;

    transition: opacity 0.15s ease;
}

/* Mouseover */

.floating-btn:hover {
    width: 150px;
    border-radius: 26px;
    color: #fff !important;
    text-decoration: none !important;
    transform: translateY(-2px);
}

.floating-btn:hover .floating-text {
    opacity: 1;
}


/* WhatsApp */

.floating-whatsapp {
    background-color: #25D366;
}


/* Telefon */

.floating-phone {
    background-color: #0878d1;
}


/* Rezervare */

.floating-booking {
    background-color: #e67e22;
}


/* ================================
   MOBILE
   ================================ */

@media (max-width: 767px) {

    .floating-contact-buttons {
        right: 12px;
        bottom: 100px;
        gap: 8px;
    }

    .floating-btn,
    .floating-btn:hover {
        width: 48px;
        height: 48px;
        border-radius: 50%;
        transform: none;
    }

    .floating-btn .floating-icon {
        width: 48px;
        height: 48px;
        min-width: 48px;
    }

    .floating-btn svg {
        width: 23px;
        height: 23px;
    }

    .floating-btn .floating-text {
        display: none;
    }
}