/* ============================================================================
   UEHS 2027 — KONGRES / WPBAKERY + GANTRY 5
   Verzija: 1.2.0

   UPUTSTVO ZA IZMENE
   1. Osnovni font, boje i dimenzije menjaju se u bloku 01 (PROMENLJIVE).
   2. Svaka sekcija stranice ima svoj jasno označen blok.
   3. Tablet i telefon se podešavaju na kraju, u bloku 11 (RESPONSIVE).

   Stilovi su ograničeni na .uehs2027-section, tako da ne utiču na
   Gantry 5 top bar, navigaciju, footer niti na ostale WordPress stranice.
   ============================================================================ */


/* ============================================================================
   01. PROMENLJIVE — MENJAJ OVDE
   ============================================================================ */

.uehs2027-section {
    /* Tipografija */
    --uehs-font-family: "Inter", "Segoe UI", Arial, sans-serif;
    --uehs-font-base: 19px;             /* Osnovni tekst — ranije 16px */
    --uehs-line-height: 1.7;
    --uehs-heading-h2: clamp(32px, 2.6vw, 41px);
    --uehs-heading-h3: 25px;
    --uehs-card-heading: 24px;
    --uehs-eyebrow-size: 15px;
    --uehs-button-size: 17px;
    --uehs-small-size: 16px;

    /* Boje */
    --uehs-navy: #0d3263;
    --uehs-dark-text: #123458;
    --uehs-body-text: #2b4863;
    --uehs-teal: #188c93;
    --uehs-gold: #e9b23e;
    --uehs-surface: #f1f5f8;
    --uehs-white: #ffffff;

    /* Širina, razmaci, zaobljenja */
    --uehs-container-width: 1650px;     /* Maksimalna širina sadržaja */
    --uehs-gutter: 24px;
    --uehs-card-radius: 10px;

    /* Osnovni tekst */
    font-family: var(--uehs-font-family);
    font-size: var(--uehs-font-base);
    line-height: var(--uehs-line-height);
    color: var(--uehs-dark-text);

    /* Uklanjanje podrazumevanih margina WPBakery redova */
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/* ============================================================================
   02. OSNOVNA STRUKTURA / WPBAKERY RESET
   ============================================================================ */
	 
.country-selector {
	display: none !important;
}

.uehs2027-section,
.uehs2027-section * {
    box-sizing: border-box;
}

.uehs2027-section.vc_row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.uehs2027-section > .vc_column_container > .vc_column-inner {
    padding: 0 !important;
}

.uehs2027-section .wpb_content_element {
    margin-bottom: 0 !important;
}

.uehs2027-section h2,
.uehs2027-section h3,
.uehs2027-section p {
    margin-top: 0;
}

/* Sve obične pasuse držimo na 19px; posebni natpisi su definisani niže. */
.uehs2027-section p {
    font-size: var(--uehs-font-base);
    line-height: var(--uehs-line-height);
}

.uehs2027-section h2 {
    margin-bottom: 25px;
    font-size: var(--uehs-heading-h2);
    font-weight: 750;
    line-height: 1.25;
    letter-spacing: -0.02em;
    color: var(--uehs-dark-text);
}

.uehs2027-section h3 {
    font-size: var(--uehs-heading-h3);
    font-weight: 750;
    line-height: 1.3;
    color: var(--uehs-dark-text);
}

.uehs2027-container {
    width: calc(100% - (2 * var(--uehs-gutter)));
    max-width: var(--uehs-container-width);
    margin: 0 auto;
}

.uehs2027-section .uehs2027-eyebrow {
    margin-bottom: 12px !important;
    font-size: var(--uehs-eyebrow-size);
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 0.145em;
    color: var(--uehs-teal);
}

.uehs2027-heading {
    margin-bottom: 30px;
}

.uehs2027-heading h2 {
    margin-bottom:  15px !important;
}

.uehs2027-screenreader-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Unutrašnji WPBakery redovi zadržavaju mali razmak između kolona. */
.uehs2027-inner-row {
    width: calc(100% - 24px);
    max-width: 1666px; /* 1650px + 16px za unutrašnji padding kolona */
    margin: 0 auto !important;
}

.uehs2027-inner-row > .vc_column_container > .vc_column-inner {
    padding: 0 8px !important;
}


/* ============================================================================
   03. HERO — GLAVNA KONGRESNA SLIKA
   ============================================================================ */

.uehs2027-hero .uehs2027-hero-art {
    overflow: hidden;
    line-height: 0;
    background: #f5f7fb;
}

.uehs2027-hero .uehs2027-hero-art img {
    display: block;
    width: 100%;
    height: auto;
    border: 0;
}

.uehs2027-mobile-hero-copy {
    display: none;
}


/* ============================================================================
   04. COUNTDOWN + DUGMAD ZA PRIJAVU
   ============================================================================ */

.uehs2027-countdown-bar {
    background: linear-gradient(110deg, #0d3263 0%, #0c4474 48%, #008e94 100%);
    color: var(--uehs-white);
}

.uehs2027-countdown-grid,
.uehs2027-countdown-grid > .vc_column_container {
    display: flex;
    align-items: center;
    min-height: 145px;
}

.uehs2027-countdown-grid > .vc_column_container > .vc_column-inner {
    width: 100%;
}

.uehs2027-timer {
    display: flex;
    align-items: flex-end;
    gap: 33px;
}

.uehs2027-time-unit {
    display: flex;
    flex-direction: column;
    min-width: 84px;
    text-align: center;
}

.uehs2027-time-unit strong {
    font-size: clamp(35px, 2.8vw, 50px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -0.04em;
    font-variant-numeric: tabular-nums;
    color: var(--uehs-white);
}

.uehs2027-time-unit span {
    margin-top: 8px;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.4;
    letter-spacing: 0.07em;
    color: #e8f0f6;
}

.uehs2027-actions {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 13px;
}

.uehs2027-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 53px;
    padding: 12px 21px;
    border: 2px solid var(--uehs-white);
    border-radius: 6px;
    font-size: var(--uehs-button-size);
    font-weight: 750;
    line-height: 1.35;
    text-decoration: none !important;
    transition: background-color 0.2s, border-color 0.2s, color 0.2s, transform 0.2s;
}

.uehs2027-btn:focus-visible {
    outline: 3px solid #ffe29b;
    outline-offset: 3px;
}

.uehs2027-btn--primary {
    background: var(--uehs-gold);
    border-color: var(--uehs-gold);
    color: #15365a !important;
}

.uehs2027-btn--primary:hover {
    background: #f6c553;
    border-color: #f6c553;
    color: #102f52 !important;
    transform: translateY(-1px);
}

.uehs2027-btn--outline {
    background: transparent;
    border-color: #e8f3f6;
    color: var(--uehs-white) !important;
}

.uehs2027-btn--outline:hover {
    background: var(--uehs-white);
    color: #134267 !important;
}


/* ============================================================================
   05. DOBRODOŠLICA + POTPIS
   ============================================================================ */

.uehs2027-welcome {
    padding: 74px 0 86px;
    background: var(--uehs-surface);
}

.uehs2027-welcome-content {
    max-width: var(--uehs-container-width);
}

.uehs2027-welcome-content p {
    max-width: 1060px;
    margin-bottom: 19px;
}

.uehs2027-welcome-content .uehs2027-lead {
    margin-bottom: 24px;
    font-weight: 700;
}

.uehs2027-welcome-content > p strong {
    font-weight: 750;
    color: #137f8b;
}

/* Podnaslov unutar pisma — nešto manji od glavnih H2 naslova. */
.uehs2027-welcome-content h2 {
    margin-top: 34px;
    margin-bottom: 16px;
    font-size: 28px;
}

.uehs2027-welcome-content .uehs2027-signature {
    display: block;
    width: 185px;
    max-width: 35vw;
    height: auto;
    margin: 17px 0 10px;
    mix-blend-mode: multiply;
}

.uehs2027-welcome-content .uehs2027-person {
    margin: 4px 0 0;
    line-height: 1.4;
}

.uehs2027-person strong,
.uehs2027-person span {
    display: block;
}

.uehs2027-person strong {
    font-size: 21px;
    font-weight: 800;
    color: var(--uehs-dark-text) !important;
}

.uehs2027-person span {
    font-size: var(--uehs-small-size);
    line-height: 1.65;
}


/* ============================================================================
   06. NAUČNE OBLASTI — KARTICE
   ============================================================================ */

.uehs2027-topics {
    padding: 84px 0 92px;
    background: var(--uehs-white);
}

.uehs2027-topic-grid {
    display: flex;
    flex-wrap: wrap;
}

.uehs2027-topic-grid + .uehs2027-topic-grid {
    margin-top: 18px !important;
}

.uehs2027-topic-grid > .vc_column_container {
    display: flex;
}

.uehs2027-topic-grid > .vc_column_container > .vc_column-inner,
.uehs2027-topic-grid .wpb_wrapper,
.uehs2027-topic-grid .wpb_content_element {
    display: flex;
    width: 100%;
}

.uehs2027-topic {
    width: 100%;
    min-height: 278px; /* Više mesta za tekst od 19px. Kartice se šire po potrebi. */
    padding: 24px 22px 28px;
    border-radius: var(--uehs-card-radius);
    background: var(--uehs-surface);
    box-shadow: 0 1px 0 rgba(20, 50, 80, 0.025);
}

.uehs2027-topic::before {
    content: "";
    display: block;
    width: 37px;
    height: 4px;
    margin-bottom: 19px;
    border-radius: 10px;
    background: #194d7c;
}

.uehs2027-topic--teal::before {
    background: #1b929a;
}

.uehs2027-topic--gold::before {
    background: #e3ac37;
}

.uehs2027-topic h3 {
    margin: 0 0 12px;
    font-size: var(--uehs-card-heading);
    line-height: 1.3;
}

.uehs2027-topic p {
    margin-bottom: 0;
    font-size: var(--uehs-font-base);
    line-height: 1.55;
    color: var(--uehs-body-text);
}


/* ============================================================================
   07. VAŽNI DATUMI
   ============================================================================ */

.uehs2027-dates {
    padding: 78px 0 82px;
    background: var(--uehs-navy);
    color: var(--uehs-white);
}

.uehs2027-dates .uehs2027-eyebrow {
    color: #ecc070;
}

.uehs2027-dates h2,
.uehs2027-dates h3 {
    color: var(--uehs-white);
}

.uehs2027-dates-grid {
    display: flex;
    flex-wrap: wrap;
}

.uehs2027-date {
    min-height: 110px;
    padding: 18px 0 0;
    border-top: 3px solid #dfa93e;
}

.uehs2027-date h3 {
    margin-bottom: 8px;
    font-size: 23px;
    line-height: 1.3;
}

.uehs2027-date p {
    margin-bottom: 0;
    font-size: var(--uehs-font-base);
    line-height: 1.55;
    color: #e1e9f3;
}


/* ============================================================================
   08. MESTO ODRŽAVANJA — SAVA CENTAR
   ============================================================================ */

.uehs2027-venue {
    padding: 84px 0 92px;
    background: var(--uehs-white);
}

.uehs2027-venue-grid,
.uehs2027-venue-grid > .vc_column_container {
    display: flex;
    align-items: center;
}

.uehs2027-venue-info h2 {
    margin-bottom: 24px;
}

.uehs2027-venue-info p {
    max-width: 510px;
    margin-bottom: 20px;
    color: var(--uehs-body-text);
}

.uehs2027-venue-info .uehs2027-eyebrow {
    color: var(--uehs-teal);
}

.uehs2027-venue-info .uehs2027-address {
    margin-top: 26px;
    font-size: var(--uehs-font-base);
    color: #183f64;
}

.uehs2027-venue-figure {
    margin: 0;
}

.uehs2027-venue-figure img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* ============================================================================
   09. PARTNERI I SPONZORI
   ============================================================================ */

.uehs2027-sponsors {
    padding: 78px 0 94px;
    background: var(--uehs-surface);
}

.uehs2027-sponsors .uehs2027-heading {
    margin-bottom: 34px;
    text-align: center;
}

.uehs2027-sponsors .uehs2027-heading h2 {
    font-size: 33px;
}

.uehs2027-sponsor-grid {
    display: flex;
    flex-wrap: wrap;
}

.uehs2027-sponsor {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 94px;
    padding: 13px 9px;
    border: 1px dashed #d0dbe6;
    border-radius: 8px;
    background: var(--uehs-white);
    color: #657a8e;
    font-size: var(--uehs-small-size);
    line-height: 1.35;
    text-align: center;
}

/* UEHS 2027 — hover dodatak za kartice. Dodati na KRAJ postojećeg CSS-a. */
/*
 * HOVER PODEŠAVANJA
 * - --uehs-topic-lift: koliko se kartica podiže
 * - --uehs-topic-line-width: širina linije na hover (100% = ceo sadržaj)
 * - --uehs-topic-speed: trajanje animacije
 */
.uehs2027-topic {
    --uehs-topic-accent: #194d7c;                 /* Podrazumevana: plava */
    --uehs-topic-glow: rgba(25, 77, 124, 0.09);
    --uehs-topic-lift: -7px;
    --uehs-topic-line-width: 100%;
    --uehs-topic-speed: 420ms;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    min-height: 278px; /* Tekst 19px, kartice se šire po potrebi. */
    padding: 24px 22px 28px;
    border-radius: var(--uehs-card-radius);
    background-color: var(--uehs-surface);
    box-shadow: 0 1px 0 rgba(20, 50, 80, 0.025);
    transition:
        transform var(--uehs-topic-speed) cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow var(--uehs-topic-speed) ease,
        background-color var(--uehs-topic-speed) ease;
}

/* Boja kartice dolazi iz njene postojeće WPBakery klase. */
.uehs2027-topic--navy {
    --uehs-topic-accent: #194d7c;
    --uehs-topic-glow: rgba(25, 77, 124, 0.09);
}

.uehs2027-topic--teal {
    --uehs-topic-accent: #1b929a;
    --uehs-topic-glow: rgba(27, 146, 154, 0.10);
}

.uehs2027-topic--gold {
    --uehs-topic-accent: #e3ac37;
    --uehs-topic-glow: rgba(227, 172, 55, 0.11);
}

/* Postojeća kratka crtica nežno se produžava. */
.uehs2027-topic::before {
    content: "";
    position: relative;
    z-index: 1;
    display: block;
    width: 37px;
    max-width: 100%;
    height: 4px;
    margin-bottom: 19px;
    border-radius: 10px;
    background-color: var(--uehs-topic-accent);
    transition: width var(--uehs-topic-speed) cubic-bezier(0.22, 1, 0.36, 1);
}

/* Diskretan sjaj u gornjem desnom uglu. */
.uehs2027-topic::after {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0;
    border-radius: inherit;
    background: radial-gradient(circle at 100% 0%, var(--uehs-topic-glow), transparent 58%);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--uehs-topic-speed) ease;
}

.uehs2027-topic h3,
.uehs2027-topic p {
    position: relative;
    z-index: 1;
}

.uehs2027-topic h3 {
    margin: 0 0 12px;
    font-size: var(--uehs-card-heading);
    line-height: 1.3;
    transition: color var(--uehs-topic-speed) ease;
}

.uehs2027-topic p {
    margin-bottom: 0;
    font-size: var(--uehs-font-base);
    line-height: 1.55;
    color: var(--uehs-body-text);
}

/* Aktivira se samo na uređajima sa mišem — ne pravi sticky hover na telefonu. */
@media (hover: hover) and (pointer: fine) {
    .uehs2027-topic:hover {
        transform: translateY(var(--uehs-topic-lift));
        background-color: #ffffff;
        box-shadow: 0 19px 43px rgba(13, 50, 99, 0.14),
                    0 0 0 1px rgba(13, 50, 99, 0.045);
    }

    .uehs2027-topic:hover::before {
        width: var(--uehs-topic-line-width);
    }

    .uehs2027-topic:hover::after {
        opacity: 1;
    }

    .uehs2027-topic:hover h3 {
        color: var(--uehs-topic-accent);
    }
}

/* Poštovanje sistemskog podešavanja za smanjeno kretanje. */
@media (prefers-reduced-motion: reduce) {
    .uehs2027-topic,
    .uehs2027-topic::before,
    .uehs2027-topic::after,
    .uehs2027-topic h3 {
        transition: none !important;
    }
}

/* NOT AI */

#g-expanded {
	background: #0a2f63;
	text-align: right;
}

#g-expanded a {
	color: #fff;
	display: inline-block;
}

#g-expanded a:hover {
	color: #bbd0e8;
}

#g-expanded .g-content {
    padding: 0;
}

.language-selection .sr {
	margin-right: 40px;
}

.page-id-3489 .language-selection .sr {
	text-decoration: underline;
}

.page-id-3499  .language-selection .en {
	text-decoration: underline;
}

/* ============================================================================
   10. RESPONZIVNI PRIKAZ — TABLET (do 991px)
   ============================================================================ */

@media (max-width: 991px) {
    .uehs2027-section {
        --uehs-gutter: 20px;
    }

    .uehs2027-countdown-grid,
    .uehs2027-countdown-grid > .vc_column_container {
        min-height: 140px;
    }

    .uehs2027-timer {
        gap: 15px;
    }

    .uehs2027-time-unit {
        min-width: 68px;
    }

    .uehs2027-topic-grid > .vc_column_container {
        width: 50% !important;
        float: none !important;
        margin-bottom: 18px;
    }

    .uehs2027-topic-grid + .uehs2027-topic-grid {
        margin-top: 0 !important;
    }

    .uehs2027-topic {
        min-height: 0;
    }

    .uehs2027-sponsor-grid > .vc_column_container {
        width: 33.3333% !important;
        float: none !important;
        margin-bottom: 18px;
    }
}


/* ============================================================================
   11. RESPONZIVNI PRIKAZ — TELEFON (do 767px)
   Osnovni font ostaje 19px i na mobilnim uređajima.
   ============================================================================ */

@media (max-width: 767px) {
    .uehs2027-section {
        --uehs-heading-h2: 30px;
    }

    .uehs2027-mobile-hero-copy {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
        padding: 15px 20px 19px;
        background: #f8fafc;
        color: #173d65;
        font-size: 16px;
        line-height: 1.45;
    }

    .uehs2027-mobile-hero-copy strong {
        font-size: 25px;
        line-height: 1.2;
    }

    .uehs2027-countdown-bar {
        padding: 26px 0;
    }

    .uehs2027-countdown-grid {
        display: block;
        min-height: 0;
    }

    .uehs2027-countdown-grid > .vc_column_container {
        display: block;
        width: 100% !important;
        min-height: 0;
        float: none !important;
    }

    .uehs2027-countdown-grid > .vc_column_container + .vc_column_container {
        margin-top: 24px;
    }

    .uehs2027-timer {
        justify-content: center;
        gap: 22px;
    }

    .uehs2027-time-unit {
        min-width: 76px;
    }

    .uehs2027-time-unit strong {
        font-size: 38px;
    }

    .uehs2027-actions {
        justify-content: center;
    }

    .uehs2027-btn {
        flex: 1 1 145px;
        max-width: 250px;
    }

    .uehs2027-welcome {
        padding: 52px 0 62px;
    }

    .uehs2027-welcome-content h2 {
        margin-top: 30px;
        font-size: 26px;
    }

    .uehs2027-topics {
        padding: 57px 0 62px;
    }

    .uehs2027-topic {
        min-height: 0;
    }

    .uehs2027-dates {
        padding: 61px 0 63px;
    }

    .uehs2027-dates-grid > .vc_column_container {
        width: 100% !important;
        float: none !important;
        margin-bottom: 24px;
    }

    .uehs2027-date {
        min-height: 0;
    }

    .uehs2027-venue {
        padding: 58px 0 62px;
    }

    .uehs2027-venue-grid {
        display: block;
    }

    .uehs2027-venue-grid > .vc_column_container {
        display: block;
        width: 100% !important;
        float: none !important;
        margin-bottom: 18px;
    }

    .uehs2027-venue-figure {
        margin-top: 8px;
    }

    .uehs2027-sponsors {
        padding: 60px 0 72px;
    }
}


/* ============================================================================
   12. MALI TELEFONI (do 480px)
   ============================================================================ */

@media (max-width: 480px) {
    .uehs2027-section {
        --uehs-gutter: 17px;
        --uehs-heading-h2: 29px;
    }

    .uehs2027-topic-grid > .vc_column_container {
        width: 100% !important;
    }

    .uehs2027-topic {
        padding: 23px;
    }

    .uehs2027-sponsor-grid > .vc_column_container {
        width: 50% !important;
    }

    .uehs2027-time-unit strong {
        font-size: 35px;
    }

    .uehs2027-time-unit span {
        font-size: 12px;
    }

    .uehs2027-timer {
        gap: 9px;
    }
}


/* ============================================================================
   13. PRISTUPAČNOST — ISKLJUČIVANJE ANIMACIJA PO PODEŠAVANJU KORISNIKA
   ============================================================================ */

@media (prefers-reduced-motion: reduce) {
    .uehs2027-btn {
        transition: none;
    }
}
