/* Basic */

body {
  background: #222833;
}

body,
input,
select,
textarea {
  color: #555555;
  font-family: 'Raleway', sans-serif;
  font-size: 13pt;
  font-weight: 400;
  line-height: 1.75em;
}

a {
  color: #3ac984;
  text-decoration: underline;
}

a:hover {
  text-decoration: none;
}

strong,
b {
  font-weight: 700;
}

em,
i {
  font-style: italic;
}

p,
ul,
ol,
dl,
table,
blockquote {
  margin: 0 0 2em 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: inherit;
  font-weight: 700;
  line-height: 1.75em;
  margin-bottom: 1em;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  color: inherit;
  text-decoration: none;
}

h2 {
  font-size: 1.5em;
}

h3 {
  font-size: 1.25em;
}

sub {
  font-size: 0.8em;
  position: relative;
  top: 0.5em;
}

sup {
  font-size: 0.8em;
  position: relative;
  top: -0.5em;
}

hr {
  border-top: solid 1px #888888;
  border: 0;
  margin-bottom: 1.5em;
}

blockquote {
  border-left: solid 0.5em #888888;
  font-style: italic;
  padding: 1em 0 1em 2em;
}

section.special,
article.special {
  text-align: center;
}

/* =========================
   header.major – spacing pe zone (curat, fără efecte colaterale)
   ========================= */

/* 1) Sus, în header (în imagine) */
#banner header.major {
  padding-bottom: 4em;
}

.left-sidebar #banner header.major {
  padding-bottom: 0.5em;
}

/* 2) Conținut (wrapper-ele style1/2/3 etc.) – aceeași valoare peste tot */
.wrapper header.major {
  padding-bottom: 4em;
}

/* 3) DOAR în main (conținutul principal) pe pagini left-sidebar îl facem mai strâns */
.left-sidebar #main header.major {
  padding-bottom: 0.5em;
}

/* 4) Footer – separat */
#footer header.major {
  padding-bottom: 2.5em;
} /* pune 3em dacă vrei mai mare */

header h2 {
  margin: 0;
  padding: 0;
  font-size: 3em;
  font-weight: 600;
}

header .byline {
  font-size: 1.6em;
}

footer > :last-child {
  margin-bottom: 0;
}

footer.major {
  padding-top: 3em;
}






/* tratează ai-full-page-mode ca left-sidebar doar pentru header/banner spacing */
body.ai-full-page-mode #header{
  min-height: 140px;
  padding: 1.8em 0;
}

body.ai-full-page-mode #banner{
  padding: 0.2em 0 0 0;
}

body.ai-full-page-mode #banner header.major{
  padding-bottom: 0.5em;
}

body.ai-full-page-mode #main header.major{
  padding-bottom: 0.5em;
}

body.ai-full-page-mode #banner .byline{
  font-size: 1.1em;
}

body.ai-full-page-mode #banner .major{
  margin-bottom: 0;
}








/* Form */

input[type="text"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="email"],
textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  -ms-appearance: none;
  appearance: none;
  background: none;
  border: solid 1px #888888;
  color: inherit;
  display: block;
  outline: 0;
  padding: 0.75em;
  text-decoration: none;
  width: 100%;
}

input[type="text"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
textarea:focus {
  border-color: #3ac984;
}

input[type="text"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="email"] {
  line-height: 1em;
}

::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.5;
  position: relative;
  top: 3px;
}

:-moz-placeholder {
  color: inherit;
  opacity: 0.5;
}

::-moz-placeholder {
  color: inherit;
  opacity: 0.5;
}

:-ms-input-placeholder {
  color: inherit;
  opacity: 0.5;
}

.formerize-placeholder {
  color: rgba(85, 85, 85, 0.5) !important;
}



#form1 .field{
  margin: 0 0 14px 0;
}

#form1 .field > label,
#form1 .field > .label{
  display: block;
  margin: 0 0 6px 0;
  font-weight: 400;
  color: #222;           /* mai clar decât textul normal */
}

#form1 input[type="text"],
#form1 input[type="email"],
#form1 input[type="tel"],
#form1 input[type="number"],
#form1 textarea{
  width: 100%;
  box-sizing: border-box;
}

/* Radio groups – aliniere stabila cu primul rand */
#form1 .field-radio .choices{
  display: grid;
  gap: 8px;
}

#form1 .field-radio label.choice{
  display: flex;
  align-items: baseline;   /* <- cheie: primul rand */
  gap: 8px;
  font-weight: 400;
  margin: 0;
  cursor: pointer;
  line-height: 1.35;
}

#form1 .field-radio label.choice input[type="radio"]{
  margin: 0;
  flex: 0 0 auto;
  vertical-align: baseline;
}

/* 2 campuri pe rand cand incape */
#form1 .form-row-2{
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 18px;   /* ← asta adauga spatiu sub grup */
}

#form1 .form-row-2 .field{
  flex: 1 1 120px;  /* minim 260px, apoi cresc egal */
  margin: 0;        /* anulam margin-ul default */
  min-width: 0;     /* important: permite sa se stranga corect pe mobil */
}

/* Scoate dreptunghiul albastru la tap pe mobil (iOS/Safari/Chrome Android) */
#form1 .field-radio label.choice,
#form1 .field-radio label.choice *{
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent; /* pt compatibilitate unde exista */
}

#form1 input[type="radio"]{
accent-color: #2e8f63;
}


/* wrapper animabil */
#email_wrap{
  overflow: hidden;
  transition: 
    max-height .35s ease,
    opacity .25s ease,
    transform .25s ease;
  max-height: 200px; /* suficient cât să încapă inputul */
  opacity: 1;
  transform: translateY(0);
}

/* când e ascuns */
#email_wrap.email-hidden{
  max-height: 0;
  opacity: 0;
  transform: translateY(-6px);
}

#form1 .form-row-2 #infoSejur{
  flex: 0 0 100%;
  max-width: 100%;
  margin-top: -6px;
  font-size: 14px;
  font-weight: 500;
  color: #3ac984;   /* verdele tau */
}

#form1 .info-sejur:empty{
  display: none;
}

/* optional: stil “badge” discret */
#form1 .info-sejur{
  padding: 8px 12px;
  border-left: 3px solid #3ac984;
  background: rgba(58, 201, 132, 0.08);
  border-radius: 6px;
}

/* Image */

.image {
  border: 0;
  position: relative;
}

.image.fit {
  display: block;
}

.image.fit img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
}

.image.feature {
  display: block;
  margin: 0 0 2em 0;
}

.image.feature img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
}

/* Icon */

.icon {
  position: relative;
}

.icon:before {
  content: "";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-transform: none !important;
}

.icon > .label {
  display: none;
}

/* Lists */

ol.default {
  list-style: decimal;
  padding-left: 1.25em;
}

ol.default li {
  padding-left: 0.25em;
}

ul {
  margin: 0;
  padding: 0;
}

ul.default {
  list-style: none;
}

ul.default li {
  display: block;
  padding: 0.60em 0;
  border-top: 1px solid;
  border-color: rgba(192, 192, 192, 0.15);
}

ul.default > :first-child {
  padding-top: 0;
  border-top: none;
}

ul.icons {
  cursor: default;
}

ul.icons li {
  display: inline-block;
  line-height: 1em;
  padding-left: 0.5em;
}

ul.icons li:first-child {
  padding-left: 0;
}

ul.actions {
  cursor: default;
}

ul.actions:last-child {
  margin-bottom: 0;
}

ul.actions li {
  display: inline-block;
  padding: 0 0 0 1.5em;
}

ul.actions li:first-child {
  padding: 0;
}

ul.actions.vertical li {
  display: block;
  padding: 1.5em 0 0 0;
}

ul.actions.vertical li:first-child {
  padding: 0;
}

ul.contact li {
  padding: 1.05em 0;
  border-top: 1px solid;
  border-color: rgba(192, 192, 192, 0.15);
}

ul.contact li > span {
  display: inline-block;
}

ul.contact li .address,
ul.contact li .mail,
ul.contact li .phone {
  float: left;
  width: 100px;
  font-weight: 600;
}

ul.contact > :first-child {
  padding-top: 0;
  border-top: none;
}

ul.style li {
  clear: both;
  display: block;
  padding-top: 3em;
}

ul.style > :first-child {
  padding-top: 0;
}

ul.style h3 {
  display: block;
  margin: 0;
  padding-bottom: 0.50em;
  font-size: 1.1em;
  font-weight: 700;
  color: #404040;
}

ul.style .fa {
  float: left;
  display: inline-block;
  width: 80px;
  height: 80px;
  margin-right: 1em;
  background: #3ac984;
  line-height: 80px;
  text-align: center;
  border-radius: 10px;
  font-size: 2em;
  color: white;
}

ul.list {
  list-style: none;
}

ul.list li {
  display: block;
  padding: 0.60em 0;
  border-top: 1px solid;
  border-color: red;
}

ul.list > :first-child {
  padding-top: 0;
  border-top: none;
}

/* Tables */

table {
  width: 100%;
}

table.default {
  width: 100%;
}

table.default tbody tr {
  border-bottom: solid 1px #888888;
}

table.default td {
  padding: 0.5em 1em 0.5em 1em;
}

table.default th {
  font-weight: 700;
  padding: 0.5em 1em 0.5em 1em;
  text-align: left;
}

table.default thead {
  background: #555555;
  color: #fff;
}

/* Button */

input[type="submit"],
input[type="reset"],
input[type="button"],
.button {
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -moz-transition: background-color 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s ease-in-out;
  -o-transition: background-color 0.2s ease-in-out;
  -ms-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
  background: #008B8B;
  border-radius: 40px;
  border: 0;
  color: white;
  cursor: pointer;
  display: inline-block;
  padding: 0.80em 2em;
  text-align: center;
  text-decoration: none;
  font-size: 1.4em;
  font-weight: 600;
  min-width: 10em;
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:hover {
  background-color: #33A2A2;
}

input[type="submit"].fit,
input[type="reset"].fit,
input[type="button"].fit,
.button.fit {
  width: 100%;
}

input[type="submit"].small,
input[type="reset"].small,
input[type="button"].small,
.button.small {
  font-size: 0.8em;
}

/* Wrapper */

.wrapper.style1 {
  background: #fff;
}

.wrapper.style2 {
  background: #ececec;
  padding: 3em 0;
  text-align: center;
}

.wrapper.style3 {
  padding: 2em 0 3.5em 0;
  background: #ececec;
}

.wrapper.style3 span {
  display: inline-block;
  padding-top: 0.80em;
  font-size: 2em;
  font-weight: 600;
}

.wrapper.style3 .button {
  float: right;
}

/* Header */
#header {
  min-height: 160px;
  background: #333333;
  color: #fff;
  padding: 2.2em 0;
  text-align: center;
  position: relative;
  overflow: hidden;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 1);
}

.left-sidebar #header {
  min-height: 140px;
  padding: 1.8em 0;
}

#header::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../images/fundal.webp");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 48%;
  transform: none;
  animation: none;
  will-change: auto;
  z-index: 0;
}

#header::after {
  content: "";
  position: absolute;
  inset: 0;
  background: transparent;
  z-index: 1;
  pointer-events: none;
}

#header > * {
  position: relative;
  z-index: 2;
}

/* homepage */
.homepage #header {
  min-height: 160px;
  padding: 1.6em 0;
}

.homepage #banner header.major {
  padding-bottom: 2em;
}


/* normal */
html.normal:not(.narrow):not(.narrower):not(.mobile) .homepage #header {
  min-height: 140px;
  padding: 1.1em 0;
}

html.normal:not(.narrow):not(.narrower):not(.mobile) .homepage #banner {
  padding-top: 0.8em;
}

html.normal:not(.narrow):not(.narrower):not(.mobile) .homepage #banner header.major {
  padding-bottom: 1.1em;
}

/* narrow */
html.narrow:not(.narrower):not(.mobile) .homepage #header {
  min-height: 120px;
  padding: 0.9em 0;
}

html.narrow:not(.narrower):not(.mobile) .homepage #banner {
  padding-top: 0.7em;
}

html.narrow:not(.narrower):not(.mobile) .homepage #banner h2 {
  font-size: 2.2em;
  line-height: 1.15em;
}

html.narrow:not(.narrower):not(.mobile) .homepage #banner .major .byline {
  font-size: 1.2em;
  line-height: 1.35em;
  margin: 0.1em 2em 0.35em 2em;
}

html.narrow:not(.narrower):not(.mobile) .homepage #banner header.major {
  padding-bottom: 1em;
}

/* narrower + mobile */
html.narrower .homepage #header,
html.mobile .homepage #header {
  min-height: 118px;
  padding: 0.85em 0;
}

html.narrower .homepage #banner {
  padding-top: 0.6em;
}

html.narrower .homepage #banner h2,
html.mobile .homepage #banner h2 {
  font-size: 2em;
  line-height: 1.15em;
}

html.narrower .homepage #banner .major .byline,
html.mobile .homepage #banner .major .byline {
  font-size: 1.08em;
  line-height: 1.3em;
  margin: 0.1em 1.2em 0.3em 1.2em;
}

html.narrower .homepage #banner header.major,
html.mobile .homepage #banner header.major {
  padding-bottom: 0.8em;
}


/* pe homepage vrei “center” ca aveai */
.homepage #header::before {
  background-position: center;
}



/* Respecta “reduce motion” */
@media (prefers-reduced-motion: reduce){
  #header::before{
    animation: none;
  }
}

#logo {
  font-size: 2em;
  text-shadow: -1px 1px 0 #000,
               1px 1px 0 #000,
               1px -1px 0 #000,
               -1px -1px 0 #000;
}

/* NAV = banda gri sub imagine */
#nav {
  width: 100%;
  background: #f2f2f2;
  border-top: 1px solid rgba(0, 0, 0, .08);
  border-bottom: 1px solid rgba(0, 0, 0, .08);
   box-shadow: rgba(50, 50, 93, 0.20) 0px 2px 5px -1px,
                rgba(0, 0, 0, 0.25) 0px 1px 3px -1px;
  padding: 10px 0;
  text-align: center;
  position: relative;
  z-index: 9999;
}

#nav > ul {
  margin: 0 auto;
  max-width: 1200px;
  text-shadow: none; /* nu mai e pe poză */
}

#nav > ul > li {
  border-radius: 999px; /* modern */
  display: inline-block;
  margin-left: 0.35em;
  padding: 0.25em 0.8em;
}

#nav > ul > li:first-child {
  margin-left: 0;
}

#nav > ul > li a {
  color: #1f2a2e; /* text închis pe gri */
  text-decoration: none;
  font-weight: 700;
  font-size: 1.05em;
}

#nav > ul > li:hover > a,
#nav > ul > li:hover > .nav-span {
  color: #008B8B;
}

/* VERDE doar când e deschis / activ dropdown-ul */
#nav > ul > li.active > a,
#nav > ul > li.active > .nav-span {
  color: #008B8B !important;
}

#nav > ul > li.active {
  background: transparent;
}

#nav > ul > li.active a {
  color: #008B8B;
}

#nav > ul > li > ul {
  display: none;
}

/* span (dropdown) ca link */
.nav-span {
  color: #1f2a2e;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.05em;
  display: inline-block;
}

/* Dropotron */

.dropotron {
  margin-top: -2px;
  background: #f2f2f2;
  border-radius: 5px;
  color: black;
  min-width: 12em;
  padding: 1em 0;
  border: 1px solid rgba(0, 0, 0, 0.12); /* bordură fină */
}

.dropotron > li {
  line-height: 2em;
  padding: 0 1em;
}

.dropotron > li > a {
  color: black;
  text-decoration: none;
}

.dropotron > li.active > a,
.dropotron > li:hover > a {
  color: black;
}

.dropotron.level-0 {
  border-radius: 0 5px 5px 5px;
  font-size: 1em;
}

.dropotron > li:hover > a {
  background-color: #ddd;
  border-radius: 5px;
  transition: background-color 0.3s ease;
  color: black;
}










/* =========================================
   PAGINA TARIFE – stil pentru continutul din DB
   fara @media, doar pe clasele Skel
   ========================================= */

.tarife-db {
  color: #555555;
}

.tarife-db-title {
  margin-bottom: 0.8em;
  line-height: 1.45em;
}

.tarife-db-update {
  margin: 0 auto 2em auto;
  max-width: 920px;
  padding: 1em 1.2em;
  background: #f7f7f7;
  border: 1px solid #dddddd;
  border-left: 4px solid #008B8B;
  border-radius: 10px;
  box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 3px;
}

.tarife-db-alert {
  margin: 0 0 2em 0;
  padding: 1em 1.2em;
  background: #f2f2f2;
  border: 1px solid #dddddd;
  border-radius: 10px;
  box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 3px;
}

.tarife-db-alert a {
  display: block;
  font-weight: 700;
  text-decoration: none;
}

.tarife-db-alert a:hover {
  text-decoration: underline;
}

.tarife-db-pricing {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5em;
  margin: 2em 0;
}

.tarife-db-card,
.tarife-db-section,
.tarife-db-links {
  background: #ffffff;
  border: 1px solid #dddddd;
  border-radius: 12px;
  padding: 1.5em;
  box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 3px;
}

.tarife-db-section,
.tarife-db-links {
  margin-top: 1.35em;
}

.tarife-db-section-soft {
  background: #f8f8f8;
}

.tarife-db-badge {
  display: inline-block;
  margin-bottom: 1em;
  padding: 0.28em 0.8em;
  border-radius: 999px;
  background: rgba(0, 139, 139, 0.10);
  color: #006d6d;
  font-size: 0.92em;
  font-weight: 700;
  line-height: 1.2;
}

.tarife-db-card h3,
.tarife-db-section h3 {
  margin-bottom: 0.75em;
  line-height: 1.45em;
  color: #333333;
}

.tarife-db-price {
  margin: 0.1em 0 0.25em 0;
  line-height: 1.1;
}

.tarife-db-price strong {
  display: block;
  font-size: 2.35em;
  line-height: 1;
  color: #222222;
}

.tarife-db-price span {
  display: block;
  margin-top: 0.35em;
  font-size: 1em;
  color: #666666;
}

.tarife-db-included {
  margin-bottom: 1em;
  font-weight: 700;
  color: #333333;
}

.tarife-db-box {
  margin-top: 1em;
  padding: 1em 1.05em;
  background: #f9f9f9;
  border: 1px solid #e5e5e5;
  border-radius: 10px;
}

.tarife-db-box p:last-child {
  margin-bottom: 0;
}

.tarife-db-note {
  margin-top: 1.15em;
  padding-top: 1em;
  border-top: 1px dashed #d8d8d8;
}

.tarife-db ul {
  list-style: none;
  margin: 0.6em 0 0 0;
  padding: 0;
}

.tarife-db li {
  position: relative;
  padding-left: 1.1em;
  margin-bottom: 0.55em;
}

.tarife-db li::before {
  content: "–";
  position: absolute;
  left: 0;
  top: 0;
  color: #008B8B;
  font-weight: 700;
}

.tarife-db p:last-child,
.tarife-db ul:last-child {
  margin-bottom: 0;
}

.tarife-db a {
  font-weight: 700;
}

.tarife-db .linie-verde {
  display: none;
}

.tarife-db-box p,
.tarife-db-section p,
.tarife-db-links p {
  margin-bottom: 1.2em;
}

.tarife-cta-wrap {
  margin: 2em 0 1.2em 0;
  text-align: center;
}

.tarife-cta-btn {
  display: inline-block;
  min-width: 220px;
  padding: 0.85em 1.6em;
  background: #008B8B;
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 700;
  line-height: 1.2;
  border: 0;
  border-radius: 2.75em;
  box-shadow: inset 0 -0.15em 0 rgba(0,0,0,0.15);
  transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
}

.tarife-cta-btn:hover,
.tarife-cta-btn:focus {
  background: #00A3A3;
  color: #ffffff !important;
  text-decoration: none;
}

.tarife-cta-btn:focus {
  outline: 2px solid rgba(0, 139, 139, 0.25);
  outline-offset: 2px;
}


.tarife-cta-btn:active {
  transform: translateY(1px);
}




/* narrow */
html.narrow:not(.narrower):not(.mobile) .tarife-db-pricing {
  gap: 1.2em;
}

html.narrow:not(.narrower):not(.mobile) .tarife-db-card,
html.narrow:not(.narrower):not(.mobile) .tarife-db-section,
html.narrow:not(.narrower):not(.mobile) .tarife-db-links {
  padding: 1.35em;
}

html.narrow:not(.narrower):not(.mobile) .tarife-db-price strong {
  font-size: 2.1em;
}

/* narrower + mobile */
html.narrower .tarife-db-pricing,
html.mobile .tarife-db-pricing {
  grid-template-columns: 1fr;
  gap: 1.1em;
}

html.narrower .tarife-db-card,
html.narrower .tarife-db-section,
html.narrower .tarife-db-links,
html.narrower .tarife-db-update,
html.narrower .tarife-db-alert,
html.mobile .tarife-db-card,
html.mobile .tarife-db-section,
html.mobile .tarife-db-links,
html.mobile .tarife-db-update,
html.mobile .tarife-db-alert {
  padding: 1.1em;
  border-radius: 10px;
}

html.narrower .tarife-db-price strong,
html.mobile .tarife-db-price strong {
  font-size: 1.8em;
}

html.narrower .tarife-db-title,
html.mobile .tarife-db-title {
  line-height: 1.35em;
}

html.narrower .tarife-db-box,
html.mobile .tarife-db-box {
  padding: 0.9em 0.95em;
}


html.narrower .tarife-cta-btn,
html.mobile .tarife-cta-btn {
  display: block;
  width: 100%;
  max-width: 320px;
  margin: 0 auto;
}





/* Meta articol blog */
.data-blog {
  font-size: 0.9rem;
  color: #777;
  margin-top: -10px;
  margin-bottom: 25px;
  font-style: italic;
  letter-spacing: 0.3px;
}

/* Titlu articol */
.continut-blog h1,
.blog-article h1 {
  margin-bottom: 10px;
}

/* Conținut articol */
.continut-blog {
  line-height: 1.8;
  font-size: 1.05rem;
}

.continut-blog p {
  margin-bottom: 1.4em;
}


.titlu-articol {
  text-align: center;
}


/* ============================= */
/* BLOG SECTION SUB MENIU */
/* ============================= */

.blog-section-top {
  background: #f7f4ee; /* crem cald, nu gri */
  padding: 60px 0 55px 0;
  text-align: center;
  border-bottom: 1px solid #e6e0d5;
}

.blog-section-label {
  font-size: 13px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #7c6f5a;
  margin-bottom: 12px;
}

.blog-section-title {
  font-size: 42px;
  margin: 0;
  font-weight: 700;
}

.article-subtitle {
  font-size: 16px;
  opacity: .6;
}


/* BLOG header: mai mic pe narrower/mobile (Skel) */
html.narrower .blog-section-top,
html.mobile   .blog-section-top {
  padding: 20px 0;
}

html.narrower .blog-section-title,
html.mobile   .blog-section-title {
  font-size: 24px;
}

html.narrower .blog-section-label,
html.mobile   .blog-section-label {
  font-size: 11px;
  letter-spacing: 2px;
}


.blog-nav{
  margin-top: 60px;
  padding-top: 30px;
  border-top: 1px solid #e6e0d5;
  display: flex;
  gap: 25px;
  justify-content: space-between;
  align-items: flex-start;
}

.blog-nav-item{
  width: 50%;
}

.blog-nav-label{
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #888;
  margin-bottom: 8px;
}

.blog-nav-title{
  font-size: 18px;
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
}

.blog-nav-title:hover{
  text-decoration: underline;
}

.blog-nav-next{
  margin-left: auto;
  text-align: right;
}

.blog-nav-only{
  justify-content: center;
}

/* Pe mobil (Skel narrower/mobile) */
html.narrower .blog-nav,
html.mobile   .blog-nav {
  flex-direction: column;
  gap: 20px;
}

html.narrower .blog-nav-item,
html.mobile   .blog-nav-item {
  width: 100%;
}

html.narrower .blog-nav-next,
html.mobile   .blog-nav-next {
  text-align: left;
}


.blog-title {
    text-align: center;
    font-size: 2.2em;
    margin-bottom: 40px;
    letter-spacing: 1px;
    position: relative;
}

.blog-title::after {
    content: "";
    display: block;
    width: 120px;
    height: 3px;
    background: #8b5e3c; /* maro rustic */
    margin: 15px auto 0;
}


.blog-item{
  padding: 26px 0;
  border-bottom: 1px solid #e6e6e6;
}

.blog-item:last-child{
  border-bottom: none;
}

.blog-excerpt{
  margin: 10px 0 0;
}



/* Banner */

#banner {
  text-align: center;
  padding: 1.5em 0 0 0;
}

#banner .major h2 {
  font-size: 3.5em;
  text-shadow: -1px 1px 0 #000,
               1px 1px 0 #000,
               1px -1px 0 #000,
               -1px -1px 0 #000;
}

#banner .major .byline {
  display: block;
  margin: 0em 2em;
  line-height: 1.6em;
  font-size: 1.5em;
  text-shadow: 2px 2px 1px #000000;
}

#banner a {
  color: inherit;
}

.left-sidebar #banner {
  padding: 0.2em 0 0 0;
}

.left-sidebar #banner .byline {
  font-size: 1.1em;
}

.left-sidebar #banner .major {
  margin-bottom: 0;
}

/* Main */

.no-sidebar #main .major,
.left-sidebar #main .major,
.right-sidebar #main .major {
  text-align: left;
}

.homepage #main .major {
  text-align: center;
}

#main {
  padding: 4em 0;
}

#main .sidebar .major {
  padding-bottom: 2em;
}

#main .sidebar .major h2 {
  font-size: 1.8em;
}

#main .sidebar .default li {
  border-color: #cdcdcd;
}

#main .sidebar .default a {
  color: #464646;
}

#main .sidebar > :first-child {
  margin-bottom: 3em;
}

/* Footer */

#footer {
  padding: 4em 0;
  color: #fff;
}

#footer .major h2 {
  font-size: 2em;
  color: #FFF;
}

#footer .major .byline {
  font-size: 1.1em;
}

#footer .copyright {
  margin-top: 3em;
  padding-top: 3em;
  border-top: 1px solid;
  border-color: rgba(192, 192, 192, 0.15);
  text-align: center;
  color: inherit;
}

#footer a {
  color: inherit;
}


.footer-plata-wrap {
	text-align: center;
}

.footer-rezervarea-mea-wrap {
	margin-top: 14px;
}

.footer-rezervarea-mea-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	border-radius: 8px;
	background: #ffffff;
	color: #2b2b2b !important;
	text-decoration: none;
	font-weight: 700;
	border: 1px solid rgba(0,0,0,0.12);
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	transition: all 0.2s ease;
}

.footer-rezervarea-mea-btn:hover {
	text-decoration: none;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(0,0,0,0.12);
}

.footer-rezervarea-mea-icon {
	font-size: 16px;
	line-height: 1;
}




.booking-success-wrap{
    margin: 20px 0 35px;
}

.booking-success-head{
    max-width: 900px;
    margin: 0 auto 24px;
    text-align: center;
}

.booking-success-main{
    color: #009933;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 20px;
}

.booking-success-info{
    max-width: 900px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 1.7;
    color: #333;
}

.booking-success-wa-link{
    color: #0a7f39;
    font-weight: 700;
    text-decoration: none;
}

.booking-success-wa-link:hover{
    text-decoration: underline;
}

.booking-success-card{
    max-width: 700px;
    margin: 0 auto;
    padding: 18px 22px;
    border: 1px solid #d8d8d8;
    background: #f7f7f7;
    border-radius: 10px;
}

.booking-success-row{
    margin-bottom: 10px;
    line-height: 1.6;
}

.booking-success-row:last-child{
    margin-bottom: 0;
}

.booking-success-label{
    color: #666666;
    font-weight: 700;
}

.booking-success-value{
    color: #222;
}

.booking-success-actions{
    text-align: center;
    margin-top: 20px;
}

.booking-success-actions a{
    text-decoration: none;
}

.booking-success-actions a:hover{
    text-decoration: underline;
}


.booking-success-status-link{
    max-width: 900px;
    margin: 18px auto 0;
    text-align: center;
    font-size: 16px;
    line-height: 1.7;
    color: #000;
}

.booking-success-status-link a{
    color: #0a7f39;
    font-weight: 700;
    text-decoration: none;
}

.booking-success-status-link a:hover{
    text-decoration: underline;
}


.rez-acc {
  margin: 0 0 12px 0;
  border: 1px solid #d9d9d9;
  border-radius: 10px;
  background: #fafafa;
  overflow: hidden;
}

.rez-acc summary {
  cursor: pointer;
  padding: 12px 15px;
  font-weight: bold;
  list-style: none;
}

.rez-acc summary::-webkit-details-marker {
  display: none;
}

.rez-acc summary::before {
  content: "+ ";
  font-weight: bold;
}

.rez-acc[open] summary::before {
  content: "− ";
}

.rez-acc[open] summary {
  border-bottom: 1px solid #e5e5e5;
}

.rez-acc-content {
  padding: 14px 15px 16px 15px;
}

.rez-acc-content ul {
  margin-top: 10px;
  margin-bottom: 10px;
}

.rez-acc-content li {
  margin-bottom: 8px;
}



.boxdreapta {
  display: inline;
  text-align: center;
  float: right;
  width: 40px;
  height: 30px;
  line-height: 0.75em;
}

.logopress {
  display: inline-block;
  float: left;
}

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.pret-home {
	margin: 1.4em auto 0 auto;
	padding: 1em 1.3em;
	background: #f2f2f2;
	border: 1px solid #dddddd;
	border-radius: 10px;
	max-width: 760px;
	text-align: center;
	font-size: 1.05em;
	line-height: 1.7em;
	color: #333;
	box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 3px;
}

.intro-final {
	font-style: italic;
	margin-top: 1em;
}

.major-home-intro {
	padding-bottom: 1em !important;
}


.reviews-home-summary {
	max-width: 980px;
	margin: 2.4em auto 2.8em auto;
	padding: 0 1em;
	text-align: center;
}

.reviews-home-header {
	padding-bottom: 1.5em !important;
}

.reviews-home-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1.4em;
}

.reviews-home-card {
	flex: 1 1 320px;
	max-width: 440px;
	background: #f2f2f2;
	border: 1px solid #dddddd;
	border-radius: 10px;
	padding: 1.4em 1.3em 1.3em 1.3em;
	box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 3px;
}

.reviews-home-source {
	margin: 0 0 0.35em 0;
	font-size: 0.95em;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #666;
}


.reviews-home-score {
	margin: 0 0 0.2em 0;
	line-height: 1;
}

.reviews-home-value {
	font-size: 2.6em;
	font-weight: 700;
	color: #333;
}

.reviews-home-outof {
	font-size: 1.05em;
	color: #666;
}

.reviews-home-score-facebook .reviews-home-value {
	font-size: 2.35em;
}

.reviews-home-meta {
	margin: 0 0 0.8em 0;
	font-weight: 700;
	color: #444;
}

.reviews-home-text {
	margin: 0 0 1.1em 0;
	color: #555;
	line-height: 1.7em;
}

.reviews-home-actions {
	margin: 0;
}

.reviews-home-actions .button {
	min-width: 0;
}

.reviews-home-note {
	margin: 1em 0 0.3em 0;
	font-size: 0.92em;
	color: #777;
}


.reviews-home-stars {
	margin-bottom: 0.25em;
	font-size: 1.35em;
	line-height: 1;
	color: #d8a931;
	letter-spacing: 0.12em;
}

/* varianta partiala Google */
.reviews-home-stars-partial {
	position: relative;
	display: inline-block;
	vertical-align: top;
	letter-spacing: 0;
}

.reviews-home-stars-partial .reviews-home-stars-bg,
.reviews-home-stars-partial .reviews-home-stars-fill {
	display: block;
	letter-spacing: 0;
}

.reviews-home-stars-bg {
	color: #cfcfcf;
}

.reviews-home-stars-fill {
	position: absolute;
	left: 0;
	top: 0;
	overflow: hidden;
	white-space: nowrap;
	color: #d8a931;
}

/* narrow */
html.narrow:not(.narrower):not(.mobile) .reviews-home-summary {
	max-width: 920px;
}

html.narrow:not(.narrower):not(.mobile) .reviews-home-grid {
	gap: 1.2em;
}

html.narrow:not(.narrower):not(.mobile) .reviews-home-card {
	padding: 1.3em 1.15em;
}

html.narrow:not(.narrower):not(.mobile) .reviews-home-value {
	font-size: 2.35em;
}

html.narrow:not(.narrower):not(.mobile) .reviews-home-score-facebook .reviews-home-value {
	font-size: 2.15em;
}

/* narrower + mobile */
html.narrower .reviews-home-summary,
html.mobile   .reviews-home-summary {
	margin: 2em auto 2.2em auto;
	padding: 0 0.7em;
}

html.narrower .reviews-home-header,
html.mobile   .reviews-home-header {
	padding-bottom: 1em !important;
}

html.narrower .reviews-home-grid,
html.mobile   .reviews-home-grid {
	gap: 1em;
}

html.narrower .reviews-home-card,
html.mobile   .reviews-home-card {
	flex: 1 1 100%;
	max-width: 100%;
	padding: 1.2em 1em;
}

html.narrower .reviews-home-value,
html.mobile   .reviews-home-value {
	font-size: 2.2em;
}

html.narrower .reviews-home-score-facebook .reviews-home-value,
html.mobile   .reviews-home-score-facebook .reviews-home-value {
	font-size: 2.05em;
}

html.narrower .reviews-home-stars,
html.mobile   .reviews-home-stars {
	font-size: 1.25em;
}

html.narrower .reviews-home-text,
html.mobile   .reviews-home-text {
	line-height: 1.6em;
}

.reviews-home-actions {
	margin: 0;
	text-align: center;
}

html.narrower .reviews-home-actions .button,
html.mobile   .reviews-home-actions .button {
	display: block;
	width: 100%;
	max-width: 260px;
	margin: 0 auto;
}



.centru {
  text-align: center;
}

.promotitlu {
  color: #CC0000;
  font-weight: bold;
  text-decoration: none;
}

.promotitlu:hover {
  color: #CC0000;
  font-weight: bold;
  text-decoration: none;
}

.promotext {
  color: #CC0000;
  text-decoration: none;
}

.promotext:hover {
  color: #CC0000;
  text-decoration: none;
}

.centrustanga {
  margin: auto;
  width: 70%;
  border: 0;
  padding: 10px;
  text-align: left;
}

.faq li {
  padding: 20px;
}

.faq li.q {
  font-weight: bold;
  border-bottom: 1px #ddd solid;
  cursor: pointer;
}

.faq li.a {
  background: #eee;
  display: none;
  color: #000;
}

.rotate {
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.success-animation {
  margin: 30px auto;
}

.checkmark {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  display: block;
  stroke-width: 2;
  stroke: #4bb71b;
  stroke-miterlimit: 10;
  box-shadow: inset 0px 0px 0px #4bb71b;
  animation: fill .4s ease-in-out .4s forwards, scale .3s ease-in-out .9s both;
  position: relative;
  top: 5px;
  right: 5px;
  margin: 0 auto;
}

.checkmark__circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 2;
  stroke-miterlimit: 10;
  stroke: #4bb71b;
  fill: #fff;
  animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}

.checkmark__check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}

@keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}

@keyframes scale {
  0%,
  100% {
    transform: none;
  }

  50% {
    transform: scale3d(1.1, 1.1, 1);
  }
}

@keyframes fill {
  100% {
    box-shadow: inset 0px 0px 0px 30px #4bb71b;
  }
}

.conterror {
  background-color: white;
  height: 70px;
  width: 70px;
  margin: 30px auto;
  box-shadow: 0 2px 10px 10px rgba(#000, 0.05);
}

.circle,
.circle-border {
  width: 90px;
  height: 90px;
  border-radius: 50%;
}

.circle {
  z-index: 1;
  position: relative;
  background: white;
  transform: scale(1);
  animation: success-anim 700ms ease;
}

.circle-border {
  z-index: 0;
  position: absolute;
  transform: scale(1.1);
  animation: circle-anim 400ms ease;
  background: #f86;
}

@keyframes success-anim {
  0% {
    transform: scale(0);
  }

  30% {
    transform: scale(0);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes circle-anim {
  from {
    transform: scale(0);
  }

  to {
    transform: scale(1.1);
  }
}

.error::before,
.error::after {
  content: "";
  display: block;
  height: 4px;
  background: #f86;
  position: absolute;
}

.error::before {
  width: 60px;
  top: 48%;
  left: 16%;
  transform: rotateZ(50deg);
}

.error::after {
  width: 60px;
  top: 48%;
  left: 16%;
  transform: rotateZ(-50deg);
}

.imganpc {
  border-radius: 10%;
  border: 0;
}

a img {
  border: 0;
}

hr.linie-verde {
  border: 0;
  border-top: 2px solid green;
  margin-bottom: 1.5em; /* sau ce vrei tu */
}



/* Switch Email / WhatsApp */
.raspuns-switch{
  width: 100%;
  margin: 0 0 18px 0;
  padding: 14px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 14px;
background: #fdfdfd;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
  text-align: center;
}

.raspuns-title{
  font-weight: 700;
  margin-bottom: 10px;
}

.raspuns-toggle{
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr; /* înapoi la egal */
  max-width: 420px;               /* ca să nu fie prea lung */
  margin: 0 auto;                 /* centrat */
  border-radius: 999px;
  background: rgba(0,0,0,.06);
  padding: 4px;
  overflow: hidden;
}

.raspuns-toggle input[type="radio"]{
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.raspuns-toggle .opt{
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;

  padding: 12px 28px;   /* mai ok decât 40 */
  min-width: 130px;     /* IMPORTANT: egalizează cele 2 butoane */
  line-height: 1;       /* text perfect centrat */

  cursor: pointer;
  border-radius: 999px;
  user-select: none;
  font-weight: 700;
  transition: transform .15s ease, opacity .15s ease;
}

.raspuns-toggle .opt:active{
  transform: scale(.98);
}

.raspuns-toggle .pill{
  position: absolute;
  z-index: 1;
  top: 4px;
  left: 4px;
  height: calc(100% - 8px);
  width: calc(50% - 4px);
  border-radius: 999px;
  background: #3AC984;
  box-shadow: 0 10px 24px rgba(0,0,0,.10);
  transition: transform .25s ease;
}


/* mută pill când WhatsApp e selectat */
#rasp_whatsapp:checked ~ .pill{
  transform: translateX(100%);
}

.raspuns-hint{
  margin-top: 10px;
  font-size: 0.95em;
  color: rgba(0,0,0,.70);
}

/* text alb când este selectat */
#rasp_email:checked + .opt,
#rasp_whatsapp:checked + .opt{
  color: #fff;
}

/* text gri când nu este selectat */
.raspuns-toggle .opt{
  color: #999;
}
.raspuns-toggle,
.raspuns-toggle *{
  -webkit-tap-highlight-color: transparent;
}

/* nu scoate complet focus-ul; îl facem discret doar pentru tastatură */
.raspuns-toggle .opt:focus{
  outline: none;
}
.raspuns-toggle .opt:focus-visible{
  outline: 2px solid rgba(46,125,117,.45);
  outline-offset: 2px;
}

/* pentru harta google maps */

.map-container {
  width: 100%;
  max-width: 1200px;
  margin: 40px auto;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid #e6e6e6;
  background: #fff;
}

.map-container iframe {
  display: block;
  width: 100%;
  height: 450px;
  border: 0;
}

.tabel-centru {
  width: 95%;
  margin: 0 auto; /* echivalent align="center" */
  border-collapse: collapse; /* echivalent cellspacing="0" */
}

.tabel-centru td {
  padding: 0; /* echivalent cellpadding="0" */
}

/* sterge urmator daca nu mai folosesti bullet1.gif prin pagini*/
img[src$="bullet1.gif"] {
  width: 12px;
  height: 10px;
}

/* culoare fond se schimba de la wrapper.style1*/
/* Sidebar - fereastră gri fereastra cu meniu stanga*/
/* daca vrei sa renunti la border si culori ferestra principala si stanga, sterge cele 4 coduri de mai jos*/

#main .sidebar .sidebar-box {
  margin-top: 20px;
  background: #fdfdfd;
  padding: 1.5em;
  border-radius: 10px;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

/* fereastra principala*/
/*
#main #content section {
  background: #ffffff;
  padding: 2em;
  border-radius: 12px;
  #   border: 1px solid #d8d8d8;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
}
*/

/* linkurile puțin mai elegante */
#main .sidebar .default a {
  color: #333;
  text-decoration: none;
}

#main .sidebar .default a:hover {
  color: #008B8B;
}

.scroll-top-btn {
  position: fixed;
  top: -80px;
  left: 50%;
  transform: translateX(-50%);
  background: #f2f2f2;
  color: #000;
  text-decoration: none;
  border-radius: 50px;
  width: 118px;
  height: 30px;
  font-size: 1em;
  line-height: 1;
  cursor: pointer;
  z-index: 900;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  white-space: nowrap;
  box-sizing: border-box;
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
  transition: top 0.5s ease, background 0.3s ease, color 0.3s ease;
}

.scroll-top-btn.show {
  top: 60px;
}

.scroll-top-btn:hover {
  background: #e0e0e0;
  color: #111;
}


.scroll-top-btn {
  border-bottom: 0 !important;
  text-shadow: none;
}


.scroll-top-btn svg {
  display: block;
  flex: 0 0 auto;
}

/* ===============================
   DESKTOP sticky – sincronizat cu Skel
   =============================== */

@keyframes navSlideDown {
  from {
    transform: translateY(-12px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

/* Sticky activ doar când Skel NU este narrower */
html:not(.narrower) body.nav-sticky #nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10000;

  background: rgba(242,242,242,1);
  border-top: 1px solid rgba(0,0,0,.08);
  border-bottom: 1px solid rgba(0,0,0,.08);

  box-shadow: rgba(50, 50, 93, 0.20) 0px 2px 5px -1px,
              rgba(0, 0, 0, 0.25) 0px 1px 3px -1px;

  padding: 10px 0;
  text-align: center;
}

/* Compensare spațiu doar pe desktop real */
html:not(.narrower) body.nav-sticky #skel-layers-wrapper {
  padding-top: 56px;
}

/* Buton scroll sus doar pe desktop */
html:not(.narrower) body.nav-sticky .scroll-top-btn.show {
  top: 70px;
}