/* ===== RESET ===== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* ===== BASE ===== */
body {
    font-family: Arial, Helvetica, sans-serif;
    min-height: 100vh;

    display: flex;
    flex-direction: column;

    background: linear-gradient(180deg, #1aa3a3 0%, #0b4f6c 100%);
    color: #1c1c1c;
}

/* ===== HEADER ===== */
header {
    background: #1aa3a3;
}

.header-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 40px;

    display: flex;
    justify-content: center; /* 🔥 центр */
    align-items: center;
}

/* Навигация по центру */
nav {
    display: flex;
    gap: 32px; /* расстояние между ссылками */
}

nav a {
    text-decoration: none;
    color: #ffffff;
    font-weight: 600;
    font-size: 16px;
}

/* Burger на компе скрыт */
.burger {
    display: none;
}


nav a:hover {
    text-decoration: underline;
}

/* ===== MAIN ===== */
main {
    flex: 1;

    display: flex;
    align-items: center;
    justify-content: center;
}

.main-box {
    background: #ffffff;
    padding: 40px 50px;
    border-radius: 14px;
    text-align: center;
}

.main-button {
    display: inline-block;
    padding: 18px 32px;

    background: #1aa3a3;
    color: #ffffff;
    text-decoration: none;
    font-weight: 700;
    border-radius: 12px;
}

.main-button:hover {
    background: #148f8f;
}

/* ===== FOOTER (same style as body) ===== */
.footer {
    padding: 40px 0;
    color: #ffffff;
        background: #148f8f;
}

.footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;

    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.footer-contacts {
    line-height: 1.6;
}

.footer-map {
    width: 300px;
    height: 150px;

    background: rgba(255,255,255,0.15);
    border-radius: 8px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;
    font-size: 14px;
}
/* ===== CONTACTS ===== */
.footer-contacts {
    max-width: 420px;
    line-height: 1.6;
}

.footer-contacts h3 {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: 700;
}

.footer-contacts p {
    margin-bottom: 14px;
}

.footer-contacts a {
    color: #ffffff;
    text-decoration: none;
}

.footer-contacts a:hover {
    text-decoration: underline;
}

.program {
    margin-top: 20px;
    opacity: 0.9;
}
@media (max-width: 768px) {

 .header-inner {
        justify-content: space-between;
    }

    .burger {
        display: block;
        font-size: 26px;
        background: none;
        border: none;
        color: #ffffff;
        cursor: pointer;
    }

    nav {
        display: none;
        width: 100%;
        flex-direction: column;
        margin-top: 20px;
        gap: 16px;
        text-align: left;
    }

    nav.active {
        display: flex;
    }

.footer-inner {
        flex-direction: column;
        gap: 32px;
    }

    .footer-contacts {
        max-width: 100%;
        font-size: 15px;
    }

    .footer-map {
        width: 100%;
        height: 240px;
    }

    .footer-map iframe {
        width: 100%;
        height: 100%;
        border-radius: 12px;
    }

    @media (max-width: 768px) {

    .acte-normative {
        padding: 40px 20px;
    }

    .law-item {
        padding: 18px 20px;
    }

    .law-item h3 {
        font-size: 15px;
    }

    .law-item p {
        font-size: 13px;
    }
}

}
/* ===== ACTE NORMATIVE ===== */

.acte-normative {
    padding: 60px 40px;
    color: #ffffff;
}

.law-list {
    max-width: 1000px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
}

/* ===== CARD ===== */
.law-item {
    display: block;
    padding: 22px 26px;

    background: rgba(255, 255, 255, 0.14);
    border-radius: 12px;

    text-decoration: none;
    color: #ffffff;

    transition: background 0.2s ease, transform 0.1s ease;
}

.law-item:hover {
    background: rgba(255, 255, 255, 0.22);
    transform: translateY(-2px);
}

/* ===== TITLU ===== */
.law-item h3 {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 6px;
}

/* ===== DESCRIERE ===== */
.law-item p {
    font-size: 14px;
    opacity: 0.9;
    line-height: 1.5;
}
/* ===== CONTACTE PAGE ===== */
.contacte {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 60px 20px;
}

.contact-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

/* ===== ITEM ===== */
.contact-item {
    display: flex;
    align-items: center;
    gap: 16px;

    padding: 18px 20px;
    background: rgba(255, 255, 255, 0.12);
    border-radius: 14px;

    transition: background 0.2s ease, transform 0.2s ease;
}

.contact-item:hover {
    background: rgba(255, 255, 255, 0.18);
    transform: translateY(-2px);
}

/* ===== ICON ===== */
.contact-item .icon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    opacity: 0.9;
}

/* ===== LINKS ===== */
.contact-item a {
    color: #ffffff;
    text-decoration: none;
    font-size: 16px;
    line-height: 1.4;
}

.contact-item strong {
    display: block;
    font-weight: 700;
    margin-bottom: 2px;
}

/* ===== MOBILE ===== */
@media (max-width: 768px) {
    .contact-list {
        grid-template-columns: 1fr;
    }

    .contacte {
        padding: 40px 16px;
    }

    .contact-item {
        padding: 16px;
    }
}
/* ===== FORM WRAPPER ===== */
#letterForm {
  max-width: 520px;
  margin: 60px auto;
  padding: 32px 36px;

  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(6px);
  border-radius: 16px;

  display: flex;
  flex-direction: column;
  gap: 18px;

  color: #ffffff;
}

/* ===== LABELS ===== */
#letterForm label {
  font-size: 14px;
  font-weight: 600;
  opacity: 0.9;
}

/* ===== INPUTS ===== */
#letterForm input {
  width: 100%;
  padding: 14px 16px;

  border-radius: 10px;
  border: none;
  outline: none;

  font-size: 15px;
  color: #1c1c1c;

  background: #ffffff;
}

/* ===== COUNTRY DROPDOWN FIX ===== */
.iti__country-list {
  background: #ffffff;
  color: #1c1c1c;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.25);
  border: none;
  max-height: 260px;
}

/* Страна */
.iti__country {
  padding: 10px 14px;
  font-size: 14px;
}

/* Наведение */
.iti__country:hover {
  background: #1aa3a3;
  color: #ffffff;
}

/* Выбранная страна */
.iti__country.iti__active {
  background: #148f8f;
  color: #ffffff;
}

/* Код страны */
.iti__dial-code {
  opacity: 0.7;
}

/* Поиск */
.iti__search-input {
  border-radius: 8px;
  padding: 8px 10px;
  border: 1px solid #ddd;
}


/* ===== INPUT FOCUS ===== */
#letterForm input:focus {
  box-shadow: 0 0 0 3px rgba(26, 163, 163, 0.35);
}

/* ===== BUTTON ===== */
#letterForm button {
  margin-top: 10px;
  padding: 16px;

  background: #1aa3a3;
  color: #ffffff;

  border: none;
  border-radius: 12px;

  font-size: 16px;
  font-weight: 700;
  cursor: pointer;

  transition: background 0.2s ease, transform 0.1s ease;
}

#letterForm button:hover {
  background: #148f8f;
}

#letterForm button:active {
  transform: scale(0.98);
}

/* ===== MOBILE ===== */
@media (max-width: 600px) {
  #letterForm {
    margin: 40px 16px;
    padding: 26px;
  }
}
/* ===== SENT PAGE ===== */
.sent-page {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
}

.sent-box {
    background: rgba(255,255,255,0.15);
    backdrop-filter: blur(6px);
    padding: 40px 50px;
    border-radius: 16px;
    text-align: center;
    max-width: 520px;
    color: #ffffff;
}

.sent-box h1 {
    font-size: 26px;
    margin-bottom: 20px;
}

.sent-box p {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 30px;
}

.sent-btn {
    display: inline-block;
    padding: 14px 28px;
    background: #ffffff;
    color: #1aa3a3;
    font-weight: 700;
    text-decoration: none;
    border-radius: 10px;
    transition: 0.2s ease;
}

.sent-btn:hover {
    background: #f1f1f1;
}
.container{
  width:min(1100px, 92%);
  margin:0 auto;
  padding:60px 0;
}

.page-title{
  color:#fff;
  font-size:34px;
  margin:0 0 25px;
}

.cards-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:22px;
}

.card{
  background:rgba(255,255,255,0.07);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:14px;
  overflow:hidden;
  padding:0 0 16px;
}

.card-img img{
  width:100%;
  height:190px;
  object-fit:cover;
  display:block;
}

.card-meta{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:12px 14px 0;
  color:rgba(255,255,255,0.85);
  font-size:13px;
}

.card-title{
  padding:10px 14px 0;
  color:#fff;
  font-size:20px;
  margin:0;
}

.card-text{
  padding:10px 14px 0;
  color:rgba(255,255,255,0.85);
  line-height:1.45;
  margin:0;
}

.card-link{
  display:inline-block;
  margin:12px 14px 0;
  color:#fff;
  text-decoration:underline;
  font-weight:600;
}

.licitatie-view .container{
  display:grid;
  grid-template-columns: 1fr 320px;
  gap:24px;
  align-items:start;
}

.view-meta{
  color:rgba(255,255,255,0.9);
  display:flex;
  gap:18px;
  margin:10px 0 18px;
}

.view-content{
  grid-column:1/2;
  background:rgba(255,255,255,0.07);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:14px;
  padding:18px;
  color:rgba(255,255,255,0.92);
  line-height:1.7;
  white-space:pre-wrap;
}

.side-box{
  grid-column:2/3;
  background:rgba(255,255,255,0.07);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:14px;
  padding:16px;
  color:#fff;
}

.latest-item{
  display:block;
  padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,0.12);
  color:#fff;
  text-decoration:none;
}

.latest-item:last-child{ border-bottom:none; }
.latest-title{ font-weight:700; }
.latest-meta{ font-size:12px; color:rgba(255,255,255,0.85); margin-top:4px; }

.back-link{
  display:inline-block;
  margin-bottom:12px;
  color:#fff;
  text-decoration:none;
  opacity:.9;
}

@media (max-width: 980px){
  .cards-grid{ grid-template-columns:repeat(2, 1fr); }
  .licitatie-view .container{ grid-template-columns:1fr; }
  .side-box{ grid-column:auto; }
}

@media (max-width: 620px){
  .cards-grid{ grid-template-columns:1fr; }
}
/* ===== VACANTE ===== */
.vacante-page{
  width:100%;
  max-width:1100px;
  margin:0 auto;
  padding:60px 20px;
}
.vacante-title{
  text-align:center;
  color:#fff;
  font-size:34px;
  font-weight:800;
  margin:0 0 28px;
}

.vacante-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px;
}
@media (max-width: 900px){
  .vacante-grid{ grid-template-columns:1fr; }
}

.vacante-card{
  background: rgba(255,255,255,0.12);
  border-radius:16px;
  padding:20px;
  color:#fff;
  box-shadow: 0 8px 22px rgba(0,0,0,0.15);
}
.vacante-card h3{
  margin:0 0 10px;
  font-size:20px;
  font-weight:800;
}

.vacante-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  opacity:0.95;
  font-size:14px;
  margin-bottom:12px;
}

.vacante-desc{
  margin:0 0 12px;
  line-height:1.55;
  opacity:0.95;
}

.vacante-req{
  margin:0 0 14px;
  padding:12px 14px;
  border-radius:12px;
  background: rgba(0,0,0,0.12);
  font-size:14px;
  line-height:1.5;
}

.vacante-btn{
  display:inline-block;
  padding:10px 14px;
  border-radius:12px;
  color:#fff;
  text-decoration:none;
  font-weight:700;
  background: rgba(255,255,255,0.18);
  transition: transform .15s ease, background .15s ease;
}
.vacante-btn:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,0.26);
}

.vacante-empty{
  grid-column:1 / -1;
  text-align:center;
  color:#fff;
  opacity:.9;
  padding:22px;
  background: rgba(255,255,255,0.10);
  border-radius:16px;
}
.licitatii-header{
  display:flex;
  align-items:center;
  gap:14px;
  margin: 10px 0 22px;
}

.licitatii-logo{
  width:150px;
  height:150px;
  object-fit:contain;
  border-radius:12px;
}
/* ===== PAY CHOOSE ===== */
.pay-choose{
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:60px 20px;
}

.pay-card{
  width:min(720px, 92%);
  background:#ffffff;
  border-radius:16px;
  padding:38px 36px;
  text-align:center;
  box-shadow:0 12px 34px rgba(0,0,0,0.18);
}

.pay-card h1{
  font-size:28px;
  margin-bottom:10px;
  color:#0b4f6c;
}

.pay-sub{
  font-size:15px;
  opacity:0.85;
  margin-bottom:26px;
}

.currency-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.currency-btn{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;

  padding:22px 18px;
  border-radius:14px;

  text-decoration:none;
  background:#1aa3a3;
  color:#ffffff;

  transition:0.2s ease;
}

.currency-btn:hover{
  background:#148f8f;
  transform:translateY(-2px);
}

.currency-big{
  font-size:26px;
  font-weight:800;
  letter-spacing:0.6px;
}

.currency-small{
  font-size:13px;
  opacity:0.95;
}

.pay-note{
  margin-top:22px;
  font-size:13px;
  opacity:0.75;
}

/* mobile */
@media (max-width: 680px){
  .currency-grid{ grid-template-columns:1fr; }
  .pay-card{ padding:30px 22px; }
}
.pay-form{
  margin-top:18px;
  display:grid;
  gap:14px;
  text-align:left;
}

.pay-row label{
  display:block;
  font-size:13px;
  font-weight:700;
  margin-bottom:6px;
  color:#0b4f6c;
}

.pay-row input{
  width:100%;
  padding:14px 16px;
  border-radius:10px;
  border:1px solid #ddd;
  outline:none;
  font-size:15px;
}

.pay-row input:focus{
  box-shadow:0 0 0 3px rgba(26, 163, 163, 0.25);
  border-color:#1aa3a3;
}

.pay-alert{
  margin-top:14px;
  padding:12px 14px;
  border-radius:12px;
  font-size:14px;
  text-align:left;
}

.pay-alert-error{
  background: rgba(255,0,0,0.08);
  border:1px solid rgba(255,0,0,0.18);
  color:#7a1f1f;
}

.pay-alert-ok{
  background: rgba(0,255,120,0.10);
  border:1px solid rgba(0,255,120,0.18);
  color:#0b4f6c;
}

.pay-sep{
  margin:22px 0;
  border:none;
  height:1px;
  background: rgba(0,0,0,0.08);
}

.currency-disabled .currency-btn{
  pointer-events:none;
  opacity:0.55;
}

.currency-btn.is-disabled{
  cursor:not-allowed;
}