/* Kliktura UI — shared buttons, header nav and mobile action bar (loaded on all pages) */

:root {
    --kt-gold: linear-gradient(135deg, #FFE45C 0%, #FFD000 40%, #FFF2A8 60%, #FFC800 100%);
    --kt-gold-border: rgba(255, 240, 170, .8);
    --kt-gold-shadow: 0 4px 18px rgba(255, 204, 0, .32), inset 0 1px 0 rgba(255, 255, 255, .6);
    --kt-gold-shadow-hover: 0 8px 26px rgba(255, 204, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .65);
    --kt-gold-deep: linear-gradient(135deg, #E9B800 0%, #D6A300 45%, #EDC13A 65%, #C79600 100%);
    --kt-radius: 10px;
}

/* ── Primarna dugmad: blago zaobljena, zlatno-žuta, s odsjajem ── */
.kt-call,
.kt-btn-primary,
.v2-btn--primary,
.btn-primary,
.form-button {
    border-radius: var(--kt-radius) !important;
    background: var(--kt-gold) !important;
    color: #111 !important;
    font-weight: 700 !important;
    border: 1px solid var(--kt-gold-border) !important;
    box-shadow: var(--kt-gold-shadow) !important;
    position: relative;
    overflow: hidden;
    text-decoration: none !important;
}
.kt-call:hover,
.kt-btn-primary:hover,
.v2-btn--primary:hover,
.btn-primary:hover,
.form-button:hover {
    box-shadow: var(--kt-gold-shadow-hover) !important;
    transform: translateY(-2px);
}

/* Odsjaj: stalno na "Pozovite nas", na ostalima prelazi na hover */
.kt-call::before,
.kt-btn-primary::before,
.v2-btn--primary::before,
.btn-primary::before,
.form-button::before {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 70%;
    height: 100%;
    background: linear-gradient(100deg, transparent 0%, rgba(255, 255, 255, .75) 50%, transparent 100%);
    transform: skewX(-20deg);
    pointer-events: none;
    transition: left .7s ease;
}
.kt-btn-primary:hover::before,
.v2-btn--primary:hover::before,
.btn-primary:hover::before,
.form-button:hover::before { left: 150%; }

.kt-call::before { transition: none; animation: ktGoldSweep 3.6s ease-in-out infinite; }
.kt-call:hover::before { left: -120%; }

@keyframes ktGoldSweep {
    0% { left: -120%; }
    45%, 100% { left: 150%; }
}

/* ── Sekundarna dugmad: isti oblik, zlatni obrub ── */
.kt-btn-secondary,
.v2-btn--ghost,
.btn-secondary {
    border-radius: var(--kt-radius) !important;
    border: 1.5px solid rgba(255, 215, 0, .7) !important;
    color: #FFD700 !important;
    background: rgba(255, 215, 0, .04) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}
.kt-btn-secondary:hover,
.v2-btn--ghost:hover,
.btn-secondary:hover {
    background: var(--kt-gold) !important;
    border-color: var(--kt-gold-border) !important;
    color: #111 !important;
    transform: translateY(-2px);
}

/* v2-btn nije imao osnovni stil, pa je izgledao kao običan link */
.v2-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 22px;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
    transition: transform .3s, box-shadow .3s, background .3s, color .3s;
}

/* Tabovi i filteri: isti oblik, boje ostaju */
.tab-button,
.portfolio-filter-button,
.ga-tab-btn {
    border-radius: var(--kt-radius) !important;
}

/* ── Jedna paleta: narandžasti boxovi, CTA trake i šarene ikone → zlatno-žuta kao dugmad ── */
.w-16.h-16.bg-gradient-to-br,
.v2-bento__icon[style*="F97316"] {
    background: var(--kt-gold) !important;
}
/* Velike površine (CTA trake, boxovi): ista žuta, malo tamnija da ne bliješti */
section.bg-gradient-to-r[class*="from-yellow-"],
.bg-gradient-to-r.from-yellow-400.to-orange-500,
.bg-gradient-to-br.rounded-xl.p-6 {
    background: var(--kt-gold-deep) !important;
}
/* Tamni sloj preko CTA trake je mutio boju */
section.bg-gradient-to-r[class*="from-yellow-"] > .absolute.inset-0.bg-black { display: none; }

/* Ikone u zlatnim kvadratima tamne, da se vide */
.w-16.h-16.bg-gradient-to-br i,
.v2-bento__icon[style*="F97316"] i { color: #111 !important; }
.w-16.h-16.bg-gradient-to-br {
    border: 1px solid var(--kt-gold-border);
    box-shadow: var(--kt-gold-shadow);
}

/* Liste s kvačicama: jedna boja umjesto četiri */
div.flex.items-center:has(> i.fa-check-circle) { color: #E5E7EB !important; }
div.flex.items-center > i.fa-check-circle { color: #FFD000 !important; }

/* Crna dugmad u zlatnim trakama: isti oblik kao ostala */
a.bg-black.rounded-full,
a.bg-black.rounded-lg {
    border-radius: var(--kt-radius) !important;
    color: #FFD000 !important;
}
section.bg-gradient-to-r[class*="from-yellow-"] a.bg-black {
    padding: 12px 26px !important;
    font-size: 15px !important;
}

/* ── Desktop meni: sve stavke u istoj liniji ── */
@media (min-width: 768px) {
    header nav.nav-links { align-items: center; }
    header nav.nav-links > a,
    header nav.nav-links > .dropdown > a {
        display: inline-flex;
        align-items: center;
        height: 40px;
        line-height: 1;
        padding-top: 0;
        padding-bottom: 0;
    }
    header nav.nav-links > .dropdown {
        display: flex;
        align-items: center;
        height: 40px;
    }
    header nav.nav-links > .dropdown > a::after {
        content: "";
        width: 6px;
        height: 6px;
        margin-left: 7px;
        border-right: 1.5px solid currentColor;
        border-bottom: 1.5px solid currentColor;
        transform: translateY(-2px) rotate(45deg);
        opacity: .7;
        transition: transform .25s;
    }
    header nav.nav-links > .dropdown:hover > a::after { transform: translateY(1px) rotate(225deg); }
    header .dropdown-menu { min-width: 210px; padding: 6px 0; }
    header .dropdown-menu a { white-space: nowrap; }
}

/* ── Mobilna traka: Pozovi + Pošalji poruku ── */
.kt-mbar { display: none; }

@media (max-width: 767px) {
    .kt-mbar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 9990;
        display: flex;
        gap: 10px;
        padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
        background: rgba(10, 15, 30, .9);
        -webkit-backdrop-filter: blur(12px);
        backdrop-filter: blur(12px);
        border-top: 1px solid rgba(255, 215, 0, .18);
        transform: translateY(110%);
        transition: transform .35s cubic-bezier(.2, .7, .2, 1);
    }
    .kt-mbar.is-on { transform: translateY(0); }

    .kt-mbar a {
        height: 50px;
        border-radius: var(--kt-radius);
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        font-family: 'Poppins', 'Inter', sans-serif;
        font-weight: 700;
        font-size: 15px;
        text-decoration: none !important;
        white-space: nowrap;
    }
    .kt-mbar__call {
        flex: 0 0 36%;
        background: #0F172A;
        color: #fff !important;
        border: 1px solid rgba(255, 215, 0, .45);
    }
    .kt-mbar__call i { color: #FFD700; }
    .kt-mbar__msg { flex: 1; }

    /* Footer ne smije ostati ispod trake */
    body.kt-mbar-on { padding-bottom: 76px; }

    /* Chatbot samo na desktopu - na mobitelu bi se takmičio s trakom Pozovi / Pošalji poruku */
    #kb-btn, #kb-win { display: none !important; }
}

@media (prefers-reduced-motion: reduce) {
    .kt-call::before { animation: none; }
    .kt-mbar { transition: none; }
}

/* ── Cookie banner: kompaktan box dolje lijevo (na mobitelu preko širine) ── */
.kt-cc-wrap {
    position: fixed;
    left: 20px;
    bottom: 20px;
    z-index: 10000;
    width: 380px;
    max-width: calc(100vw - 24px);
}
.kt-cc {
    background: rgba(15, 23, 42, .97);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 215, 0, .25);
    border-radius: 14px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, .45);
    padding: 18px 18px 16px;
    color: #CBD5E1;
    font-size: 13.5px;
    line-height: 1.55;
}
.kt-cc__title { margin: 0 0 6px; color: #fff; font-weight: 700; font-family: 'Poppins', sans-serif; font-size: 15px; display: flex; gap: 8px; align-items: center; }
.kt-cc__title i { color: #FFD000; }
.kt-cc__text { margin: 0 0 14px; }
.kt-cc__text a { color: #FFD000; text-decoration: underline; }
.kt-cc__btns { display: flex; gap: 8px; }
.kt-cc__btns .kt-btn-primary,
.kt-cc__btns .kt-btn-secondary { flex: 1; padding: 9px 14px; font-size: 13.5px; }
@media (max-width: 767px) {
    .kt-cc-wrap { left: 12px; right: 12px; bottom: 12px; width: auto; max-width: none; }
}

/* ── Footer: politika privatnosti + postavke kolačića ── */
.kt-legal-links { margin-top: 8px; font-size: 13px; color: #64748B; display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; }
.kt-legal-links a { color: #94A3B8; text-decoration: none; }
.kt-legal-links a:hover { color: #FFD000; }

/* ── Pravne stranice (politika privatnosti) ── */
.kt-legal { color: #CBD5E1; font-size: 16px; line-height: 1.75; }
.kt-legal .v2-hero__headline { font-size: clamp(2rem, 5vw, 3.2rem); margin-bottom: .5rem; }
.kt-legal__date { color: #64748B; font-size: 14px; margin: 0 0 1.5rem; }
.kt-legal__lead { background: rgba(255, 208, 0, .07); border-left: 3px solid #FFD000; padding: 14px 16px; border-radius: 10px; color: #E2E8F0; margin-bottom: 2rem; }
.kt-legal h2 { color: #fff; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 1.3rem; margin: 2.2rem 0 .7rem; }
.kt-legal p { margin: 0 0 .9rem; }
.kt-legal ul { list-style: disc; padding-left: 1.3rem; margin: 0 0 1rem; }
.kt-legal li { margin-bottom: .5rem; }
.kt-legal a { color: #FFD000; text-decoration: underline; }
.kt-legal code { background: #1E293B; padding: 1px 6px; border-radius: 6px; font-size: .9em; }

/* ── Naslovna: rezultati (5 kartica, zadnji red centriran) ── */
.kt-results { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; }
.kt-results > .service-card { flex: 0 1 100%; }
@media (min-width: 768px) { .kt-results > .service-card { flex-basis: calc((100% - 24px) / 2); } }
@media (min-width: 1024px) { .kt-results > .service-card { flex-basis: calc((100% - 48px) / 3); } }
