/* ==========================================================
   modern.css — თანამედროვე ვიზუალური ფენა (style.css-ის შემდეგ იტვირთება)
   ========================================================== */
:root {
    --c-primary: #0080cb;
    --c-primary-d: #006aa8;
    --c-navy: #0a3557;
    --c-navy-d: #072640;
    --c-accent: #f4a825;
    --c-text: #1f2937;
    --c-muted: #6b7280;
    --c-line: #eef1f4;
    --radius: 20px;
    --ease: cubic-bezier(.22,.61,.36,1);
}

body { color: var(--c-text); -webkit-font-smoothing: antialiased; }
::selection { background: rgba(0,128,203,.18); }

/* ---------- Header ---------- */
.header-section {
    background-color: rgba(255,255,255,.78);
    border-bottom: 1px solid transparent;
    box-shadow: none;
    transition: background-color .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.header-section.is-scrolled {
    background-color: rgba(255,255,255,.92);
    border-bottom-color: var(--c-line);
    box-shadow: 0 10px 30px -12px rgba(10,53,87,.18);
}
.header-section .main-head { padding: 16px 0; transition: padding .3s ease; }
.header-section.is-scrolled .main-head { padding: 10px 0; }
.header-section .logo img { height: 46px; transition: height .3s ease; }
.header-section.is-scrolled .logo img { height: 40px; }

.main-nav li a { border-radius: 10px; transition: color .2s ease, background-color .2s ease; }
.main-nav li:not(.lang-drop) > a:hover { background-color: rgba(0,128,203,.06); }

ul.main-nav .dropdown2 ul {
    border-radius: 14px;
    border: 1px solid var(--c-line);
    box-shadow: 0 20px 45px -15px rgba(10,53,87,.25);
    padding: 8px;
    overflow: hidden;
}
ul.main-nav .dropdown2 ul li a { border-radius: 8px; }
ul.main-nav .dropdown2 ul li a:hover { background-color: #eef6fc; color: var(--c-primary); }

.btn-auth {
    border-radius: 999px;
    padding: 9px 20px;
    font-weight: 600;
    box-shadow: 0 8px 20px -6px rgba(0,128,203,.55);
    transition: transform .25s var(--ease), box-shadow .25s ease, background-color .2s ease;
}
.btn-auth:hover {
    background-color: var(--c-primary-d);
    border-color: var(--c-primary-d);
    transform: translateY(-2px);
    box-shadow: 0 12px 26px -8px rgba(0,128,203,.65);
}

.burgerbar .bar1, .burgerbar .bar2 { width: 30px; height: 2.5px; margin: 7px 0; border-radius: 2px; background-color: var(--c-navy); }
.sidebar.active { box-shadow: -20px 0 50px rgba(10,53,87,.15); }
.overlay { background: rgba(7,38,64,.45); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }

/* ---------- Hero slider ---------- */
section.slide { padding-top: 24px; padding-bottom: 32px; }
#main-slide, #main-slide .item { height: 540px; }
#main-slide .item {
    border-radius: 28px;
    box-shadow: 0 30px 60px -25px rgba(10,53,87,.35);
    isolation: isolate;
}
#main-slide .item .img-bg,
#main-slide .item video { border-radius: 28px; transition: transform 8s ease; }
#main-slide .owl-item.active .item .img-bg { transform: scale(1.04); }
#main-slide .item a::after {
    content: '';
    position: absolute; inset: 0;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(7,38,64,0) 55%, rgba(7,38,64,.55) 100%);
    pointer-events: none;
    z-index: 3;
}
#main-slide .item .slide-bg {
    left: 32px; bottom: 56px; right: 32px;
    max-width: 560px;
    padding: 28px 30px;
    border-radius: 20px;
    z-index: 4;
}
#main-slide .item .slide-bg:after {
    background-color: rgba(255,255,255,.82);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-radius: 20px;
}
#main-slide .item .slide-bg .slide-h { font-style: normal; font-weight: 700; color: var(--c-navy); font-size: 26px; }
#main-slide .item .slide-bg .desc-slide { font-style: normal; font-weight: 400; color: var(--c-muted); }

#main-slide .owl-dots {
    position: absolute;
    left: 50%; bottom: 20px;
    width: auto;
    transform: translateX(-50%);
    margin: 0 !important;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(255,255,255,.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 10;
    display: flex; gap: 2px;
}
#main-slide .owl-dots:after { display: none; }
#main-slide .owl-dots .owl-dot span,
#main-slide .owl-dots .owl-dot:first-child span {
    width: 8px; height: 8px; margin: 4px;
    border-radius: 999px;
    background: rgba(255,255,255,.6);
    transition: width .3s var(--ease), background-color .3s ease;
}
#main-slide .owl-dots .owl-dot.active span { width: 26px; background: #fff; }
#main-slide .owl-dots .owl-dot:hover span { background: #fff; }

/* ---------- Partners strip ---------- */
.footer-brand { background: #fff; padding: 56px 0 64px; border-top: 1px solid var(--c-line); }
.partners-head { text-align: center; margin-bottom: 28px; }
.partners-head .bar { display: inline-block; width: 48px; height: 4px; border-radius: 99px; background: var(--c-primary); margin-bottom: 14px; }
.partners-head h2 { font-size: 22px; font-weight: 700; color: var(--c-text); margin: 0; font-feature-settings: "case" on; }
.footer-owl .owl-item .item { padding: 6px; }
.footer-owl .owl-item .item a {
    display: grid; place-items: center;
    height: 112px;
    border-radius: 18px;
    background: #fafbfc;
    border: 1px solid var(--c-line);
    transition: background-color .3s ease, box-shadow .3s ease, transform .3s var(--ease);
}
.footer-owl .owl-item .item img {
    height: 64px; width: 100px;
    filter: grayscale(1);
    opacity: .8;
    transition: filter .3s ease, opacity .3s ease;
}
.footer-owl .owl-item .item a:hover { background: #fff; box-shadow: 0 16px 34px -16px rgba(10,53,87,.3); transform: translateY(-3px); }
.footer-owl .owl-item .item a:hover img { filter: none; opacity: 1; }

/* ---------- Footer ---------- */
.mfooter {
    position: relative;
    overflow: hidden;
    background: linear-gradient(160deg, var(--c-navy) 0%, var(--c-navy-d) 100%);
    color: rgba(255,255,255,.72);
    padding: 72px 0 0;
    font-size: 14.5px;
}
.mfooter::before {
    content: '';
    position: absolute;
    width: 420px; height: 420px;
    right: -140px; top: -180px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(0,128,203,.35), rgba(0,128,203,0) 70%);
    pointer-events: none;
}
.mfooter a { color: rgba(255,255,255,.72); text-decoration: none; transition: color .2s ease; }
.mfooter a:hover { color: #fff; }
.mfooter-grid {
    position: relative;
    display: grid;
    grid-template-columns: 1.4fr 1fr 1.2fr 1fr;
    gap: 40px;
    padding-bottom: 48px;
}
.mfooter-logo { display: inline-flex; padding: 10px 14px; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px -12px rgba(0,0,0,.4); }
.mfooter-logo img { height: 48px; }
.mfooter-about { margin-top: 18px; line-height: 1.75; max-width: 320px; }
.mfooter-about p { margin: 0; }
.mfooter h4 {
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    margin: 6px 0 20px;
    font-feature-settings: "case" on;
    letter-spacing: .02em;
}
.mfooter-links { list-style: none; padding: 0; margin: 0; display: grid; gap: 11px; }
.mfooter-links a { display: inline-block; transition: color .2s ease, transform .2s ease; }
.mfooter-links a:hover { transform: translateX(4px); }
.mfooter-contact { list-style: none; padding: 0; margin: 0; display: grid; gap: 14px; }
.mfooter-contact li { display: flex; align-items: flex-start; gap: 12px; line-height: 1.5; }
.mfooter-contact .ico {
    flex: 0 0 36px; height: 36px;
    display: grid; place-items: center;
    border-radius: 10px;
    background: rgba(255,255,255,.08);
    color: #fff;
}
.mfooter-contact .ico svg { width: 17px; height: 17px; }
.mfooter-contact li > div { padding-top: 7px; }
.mfooter-social { display: flex; gap: 10px; list-style: none; padding: 0; margin: 0 0 24px; }
.mfooter-social a {
    width: 42px; height: 42px;
    display: grid; place-items: center;
    border-radius: 12px;
    background: rgba(255,255,255,.08);
    transition: background-color .25s ease, transform .25s var(--ease);
}
.mfooter-social a svg { width: 18px; height: 18px; fill: #fff; }
.mfooter-social a:hover { background: var(--c-primary); transform: translateY(-3px); }
.mfooter-cta {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 11px 22px;
    border-radius: 999px;
    background: var(--c-accent);
    color: #3a2500 !important;
    font-weight: 700;
    font-feature-settings: "case" on;
    transition: transform .25s var(--ease), box-shadow .25s ease;
}
.mfooter-cta:hover { transform: translateY(-2px); box-shadow: 0 12px 24px -10px rgba(244,168,37,.7); }
.mfooter-bottom {
    position: relative;
    border-top: 1px solid rgba(255,255,255,.1);
    padding: 22px 0;
    display: flex; justify-content: space-between; align-items: center; gap: 16px;
    font-size: 13px;
    color: rgba(255,255,255,.55);
}

@media (max-width: 1035.98px) {
    .mfooter-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
    #main-slide, #main-slide .item { height: 420px; }
    #main-slide .item, #main-slide .item .img-bg, #main-slide .item video, #main-slide .item a::after { border-radius: 20px; }
    #main-slide .item .slide-bg { left: 14px; right: 14px; bottom: 48px; padding: 20px; }
    #main-slide .item .slide-bg .slide-h { font-size: 20px; }
    .footer-owl .owl-item .item a { height: 88px; border-radius: 14px; }
    .footer-owl .owl-item .item img { height: 48px; width: 72px; }
    .mfooter { padding-top: 52px; }
    .mfooter-grid { grid-template-columns: 1fr; gap: 32px; }
    .mfooter-bottom { flex-direction: column; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
    #main-slide .item .img-bg { transition: none; transform: none !important; }
}
