/* ==========================================================================
   Poliklinika: informacije i radnje koje pacijent treba odmah
   ========================================================================== */

/* Gornja traka: radno vrijeme, telefon, adresa
   -------------------------------------------------------------------------- */
.topbar {
    font-size: .8125rem;
    color: var(--c-ink-700);
    background: var(--c-white);
    border-bottom: 1px solid var(--c-border);
}

.topbar-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--s-1) var(--s-6);
    min-height: 2.5rem;
}

.topbar a {
    display: inline-flex;
    align-items: center;
    gap: var(--s-2);
    color: inherit;
    text-decoration: none;
}

.topbar a:hover {
    color: var(--c-forest);
}

.topbar .icon {
    color: var(--c-forest);
}

.topbar-address {
    margin-left: auto;
}

.open-status {
    display: inline-flex;
    align-items: center;
    gap: var(--s-2);
}

.open-status i {
    width: .5rem;
    height: .5rem;
    background: var(--c-border);
    border-radius: 50%;
}

.open-status .label {
    font-weight: 700;
}

.open-status .label:empty {
    display: none;
}

.open-status.is-open i {
    background: var(--c-green);
    animation: dp-pulse 2.4s var(--ease) infinite;
}

.open-status.is-open .label {
    color: var(--c-forest);
}

.open-status.is-closed i {
    background: #E8A33D;
}

@keyframes dp-pulse {
    0% { box-shadow: 0 0 0 0 rgb(98 187 70 / .5); }
    70% { box-shadow: 0 0 0 .5rem rgb(98 187 70 / 0); }
    100% { box-shadow: 0 0 0 0 rgb(98 187 70 / 0); }
}

@media (max-width: 699px) {
    .topbar .topbar-address {
        display: none;
    }

    .topbar-inner {
        justify-content: space-between;
    }
}

@media (max-width: 1099px) {
    /* Otvoreni mobilni izbornik počinje odmah ispod zaglavlja */
    .nav-open .topbar {
        display: none;
    }
}

/* Tražilica
   -------------------------------------------------------------------------- */
.header-search {
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    color: var(--c-ink);
    border-radius: 50%;
    transition: background var(--t-fast), color var(--t-fast);
}

.header-search:hover {
    color: var(--c-forest);
    background: var(--c-green-100);
}

.search-trigger {
    display: flex;
    align-items: center;
    gap: var(--s-4);
    max-width: 30rem;
    padding: var(--s-3) var(--s-5);
    color: var(--c-ink);
    text-decoration: none;
    background: var(--c-white);
    border: 1px solid var(--c-green-200);
    border-radius: var(--r-pill);
    box-shadow: var(--shadow-1);
    transition: border-color var(--t-fast), box-shadow var(--t-fast);
}

.search-trigger:hover {
    color: var(--c-ink);
    border-color: var(--c-forest);
    box-shadow: var(--shadow-2);
}

.search-trigger .icon {
    color: var(--c-forest);
}

.search-trigger strong,
.search-trigger small {
    display: block;
    line-height: 1.3;
}

.search-trigger strong {
    font-family: var(--font-display);
    font-size: var(--fs-sm);
}

.search-trigger small {
    color: var(--c-ink-500);
}

.search {
    width: min(92vw, 44rem);
    max-height: min(84vh, 46rem);
    margin-top: 8vh;
    padding: 0;
    overflow: hidden;
    color: var(--c-ink);
    background: var(--c-white);
    border: 0;
    border-radius: var(--r-lg);
    box-shadow: 0 40px 100px rgb(33 94 39 / .35);
}

.search[open] {
    display: flex;
    flex-direction: column;
    animation: dp-in .5s var(--ease);
}

.search::backdrop {
    background: rgb(33 94 39 / .55);
    backdrop-filter: blur(6px);
}

.search-box {
    display: flex;
    align-items: center;
    gap: var(--s-3);
    padding: var(--s-4) var(--s-5);
    border-bottom: 1px solid var(--c-border);
}

.search-box > .icon {
    color: var(--c-forest);
}

.search-box input {
    flex: 1;
    min-width: 0;
    padding: var(--s-2) 0;
    font: inherit;
    font-family: var(--font-display);
    font-size: var(--fs-lg);
    color: var(--c-ink);
    background: none;
    border: 0;
    outline: 0;
}

.search-box input::-webkit-search-cancel-button {
    display: none;
}

.search-box button {
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1.5rem;
    line-height: 1;
    color: var(--c-ink-700);
    background: var(--c-ink-50);
    border: 0;
    border-radius: 50%;
    cursor: pointer;
}

.search-body {
    padding: var(--s-5);
    overflow-y: auto;
    overscroll-behavior: contain;
}

.search-popular > div {
    display: flex;
    flex-wrap: wrap;
    gap: var(--s-2);
}

.search-popular a {
    padding: var(--s-2) var(--s-4);
    font-size: var(--fs-xs);
    font-weight: 500;
    color: var(--c-forest-700);
    text-decoration: none;
    background: var(--c-green-100);
    border-radius: var(--r-pill);
    transition: background var(--t-fast), color var(--t-fast);
}

.search-popular a:hover,
.search-popular a:focus-visible {
    color: var(--c-white);
    background: var(--c-forest) var(--grad-brand-deep);
}

.search-results h3 {
    margin: var(--s-4) 0 var(--s-2);
    font-size: .75rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--c-ink-500);
}

.search-results h3:first-child {
    margin-top: 0;
}

.search-results ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.search-results a {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 var(--s-3);
    padding: var(--s-3) var(--s-4);
    color: var(--c-ink);
    text-decoration: none;
    border-radius: var(--r-sm);
}

.search-results a:hover,
.search-results a:focus-visible {
    background: var(--c-green-50);
    outline: 0;
}

.search-results a:focus-visible {
    box-shadow: inset 0 0 0 2px var(--c-forest);
}

.search-results strong {
    font-family: var(--font-display);
    font-weight: 500;
}

.search-results small {
    color: var(--c-ink-500);
}

.search-empty {
    margin: 0;
    color: var(--c-ink-700);
}

.search-empty a {
    font-weight: 700;
    white-space: nowrap;
}

/* Mobilna traka s radnjama
   -------------------------------------------------------------------------- */
.action-bar {
    position: fixed;
    left: var(--s-3);
    right: var(--s-3);
    bottom: calc(var(--s-3) + env(safe-area-inset-bottom, 0px));
    z-index: 90;
    display: grid;
    grid-template-columns: 1fr 1.4fr;
    gap: var(--s-2);
    padding: var(--s-2);
    background: rgb(255 255 255 / .94);
    border: 1px solid var(--c-border);
    border-radius: var(--r-pill);
    box-shadow: var(--shadow-2);
    backdrop-filter: blur(12px);
    transform: translateY(160%);
    transition: transform .6s var(--ease);
}

.action-bar.is-visible {
    transform: none;
}

.action-bar a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--s-2);
    min-height: 3rem;
    font-family: var(--font-display);
    font-size: var(--fs-sm);
    font-weight: 700;
    text-decoration: none;
    border-radius: var(--r-pill);
}

.ab-call {
    color: var(--c-ink);
    background: var(--c-green-100);
}

.ab-book {
    color: var(--c-white);
    background: var(--c-forest) var(--grad-brand-deep);
}

.nav-open .action-bar {
    display: none;
}

@media (min-width: 900px) {
    .action-bar {
        display: none;
    }
}

/* Koraci do pregleda
   -------------------------------------------------------------------------- */
.steps {
    display: grid;
    gap: var(--s-5);
    margin: 0;
    padding: 0;
    list-style: none;
}

.steps li {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: var(--s-6);
    background: var(--c-white);
    border: 1px solid var(--c-green-200);
    border-radius: var(--r-lg);
}

.step-num {
    display: grid;
    place-items: center;
    width: 3.5rem;
    height: 3.5rem;
    margin-bottom: var(--s-6);
    font-family: var(--font-display);
    font-size: var(--fs-xl);
    font-weight: 300;
    color: var(--c-ink);
    background: var(--c-lime);
    border-radius: 50%;
}

.steps h3 {
    font-size: var(--fs-xl);
    font-weight: 500;
    letter-spacing: -.02em;
}

.steps p {
    color: var(--c-ink-700);
}

.steps .link-arrow {
    margin-top: auto;
    padding-top: var(--s-3);
}

@media (min-width: 900px) {
    .steps {
        grid-template-columns: repeat(3, 1fr);
        gap: var(--s-6);
    }

    /* Točkasta crta koja povezuje korake */
    .steps li:not(:last-child)::after {
        content: "";
        position: absolute;
        top: calc(var(--s-6) + 1.75rem);
        left: calc(var(--s-6) + 3.5rem + var(--s-3));
        right: calc(var(--s-6) * -1 - 1px);
        border-top: 2px dotted var(--c-green-200);
    }
}

/* Fotografije ljudi u običnom pravokutniku sa zaobljenim kutovima
   -------------------------------------------------------------------------- */
.profile-hero-photo .hero-image {
    border-radius: var(--r-lg);
}

.card-doctor .photo {
    border-radius: var(--r-md);
}

.card-doctor .photo img {
    object-position: 50% 12%;
}

/* Hero naslovnice: zelena ploha s naslovom, fotografija do ruba
   -------------------------------------------------------------------------- */
.hero--split {
    display: grid;
    padding: 0;
    background: var(--c-forest) var(--grad-brand-deep);
}

.hero-panel {
    position: relative;
    overflow: hidden;
    padding: clamp(2.25rem, 4vw, 3.25rem) var(--gutter) calc(var(--s-7) + clamp(2rem, 4vw, 3rem));
    color: var(--c-white);
    /* Prijelaz se računa preko cijele širine zaslona, kao u naslovu stranice:
       ploha uz fotografiju dobiva samo tamniji dio, pa limeta ne pada pod tekst */
    background: var(--grad-brand) 0 0 / 100vw 100% no-repeat;
}

/* Znak iz logotipa kao vodeni žig */
.hero-panel::after {
    content: "";
    position: absolute;
    left: -7rem;
    bottom: -9rem;
    width: 30rem;
    height: 30rem;
    background: url(../img/sign-w.svg) center / contain no-repeat;
    opacity: .09;
    pointer-events: none;
}

.hero-panel-inner {
    position: relative;
    z-index: 1;
    max-width: 37rem;
}

.hero--split h1 {
    margin-bottom: var(--s-5);
    font-size: clamp(1.5rem, 1.05rem + 1.2vw, 2.125rem);
    line-height: 1.2;
    color: var(--c-white);
}

.hero--split h1 em {
    color: inherit;
}

.hero--split .eyebrow {
    color: var(--c-lime-soft);
}

.hero--split .lead {
    margin-bottom: var(--s-5);
    color: rgb(255 255 255 / .88);
}

.hero--split .trust {
    margin: 0 0 var(--s-6);
    padding: var(--s-5) 0 0;
    border-top: 1px solid rgb(255 255 255 / .2);
}

.hero--split .trust-badge img {
    width: 4.5rem;
    height: 4.5rem;
}

.hero--split .trust-rating {
    color: rgb(255 255 255 / .85);
    border-left-color: rgb(255 255 255 / .2);
}

.hero--split .trust-rating strong {
    color: var(--c-white);
}

.hero--split .trust-rating small {
    color: rgb(255 255 255 / .7);
}

.hero--split .trust-rating .stars {
    color: var(--c-lime-soft);
}

.hero--split .trust-note {
    flex: 1 1 100%;
    max-width: none;
    font-size: var(--fs-sm);
    line-height: 1.55;
    color: rgb(255 255 255 / .85);
}

.hero--split .hero-foot {
    max-width: 34rem;
}

.hero-photo {
    position: relative;
    min-height: 22rem;
}

.hero-photo .hero-image {
    position: absolute;
    inset: 0;
    aspect-ratio: auto;
    max-height: none;
    margin: 0;
    border-radius: 0;
}

.hero-photo .hero-image img {
    object-position: 50% 18%;
}

.hero--split .hero-badge {
    display: none;
}

@media (min-width: 1000px) {
    .hero--split {
        grid-template-columns: 1fr 1fr;
        min-height: min(48rem, calc(100svh - var(--header-h) - 2.5rem));
    }

    .hero-panel {
        display: flex;
        align-items: center;
        padding-left: max(var(--gutter), calc((100vw - var(--container)) / 2));
        padding-right: var(--s-9);
    }

    /* Pečat na spoju plohe i fotografije */
    .hero--split .hero-badge {
        display: grid;
        left: 0;
        bottom: 5.5rem;
        translate: -50% 0;
    }
}

/* Tim: fotografija, tekst i kategorije
   -------------------------------------------------------------------------- */
.team-split {
    display: grid;
    gap: var(--s-8);
    align-items: center;
}

.team-split-media {
    margin: 0;
    overflow: hidden;
    border-radius: var(--r-lg);
}

.team-split-media img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    object-position: 30% 50%;
}

.team-split .section-head {
    margin-bottom: var(--s-5);
}

.team-cats {
    margin: var(--s-6) 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid var(--c-ink);
}

.team-cats a {
    display: flex;
    align-items: center;
    gap: var(--s-3);
    padding: var(--s-4) 0;
    font-family: var(--font-display);
    font-size: var(--fs-md);
    font-weight: 500;
    color: var(--c-ink);
    text-decoration: none;
    border-bottom: 1px solid var(--c-border);
    transition: color var(--t-fast), padding var(--t-fast);
}

.team-cats small {
    margin-right: auto;
    font-size: .75rem;
    font-weight: 700;
    color: var(--c-forest);
}

.team-cats .icon {
    color: var(--c-forest);
    transition: transform var(--t-fast);
}

.team-cats a:hover {
    padding-left: var(--s-2);
    color: var(--c-forest);
}

.team-cats a:hover .icon {
    transform: translateX(4px);
}

@media (min-width: 1000px) {
    .team-split {
        grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
        gap: var(--s-10);
        align-items: stretch;
    }

    .team-split--text {
        grid-template-columns: minmax(0, 8fr);
    }

    /* Fotografija prati visinu tekstualnog stupca */
    .team-split-media {
        position: relative;
        min-height: 28rem;
    }

    .team-split-media img {
        position: absolute;
        inset: 0;
        height: 100%;
        aspect-ratio: auto;
    }
}

/* Kartice usluga na naslovnici */
.s-services .card-service {
    padding: var(--s-7) var(--s-6);
    border-radius: var(--r-lg);
}

.s-services .card-service .card-icon {
    width: 4.5rem;
    height: 4.5rem;
    transition: background var(--t-fast), transform .7s var(--ease);
}

.s-services .card-service .card-icon img {
    width: 2.5rem;
    height: 2.5rem;
}

.s-services .card-service:hover .card-icon {
    background: var(--c-lime);
    transform: scale(1.06) rotate(-4deg);
}

.s-services .card-service h3 {
    font-size: var(--fs-xl);
    font-weight: 500;
    letter-spacing: -.02em;
}

.s-services .card-service p {
    margin-bottom: var(--s-6);
}

.s-services .card-service {
    isolation: isolate;
    overflow: hidden;
}

/* Zeleni odsjaj iz kuta koji se pojavljuje na prelazak mišem */
.s-services .card-service::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: -7rem;
    right: -7rem;
    width: 20rem;
    height: 20rem;
    background: radial-gradient(closest-side, var(--c-green-100), transparent);
    opacity: 0;
    transform: scale(.6);
    transition: opacity var(--t-fast), transform .9s var(--ease);
}

.s-services .card-service:hover {
    border-color: var(--c-green);
}

.s-services .card-service:hover::after {
    opacity: 1;
    transform: none;
}

/* Podnožje kartice: poveznica lijevo, strelica u krugu desno */
.s-services .card-service .link-arrow {
    justify-content: space-between;
    padding-top: var(--s-5);
    border-top: 1px solid var(--c-border);
    transition: border-color var(--t-fast);
}

.s-services .card-service .link-arrow .icon {
    box-sizing: content-box;
    padding: .7rem;
    background: var(--c-green-100);
    border-radius: 50%;
    transition: color var(--t-fast), background var(--t-fast), transform .7s var(--ease);
}

.s-services .card-service:hover .link-arrow {
    border-color: var(--c-green-200);
}

.s-services .card-service:hover .link-arrow .icon {
    color: var(--c-white);
    background: var(--c-forest) var(--grad-brand-icon);
    transform: rotate(-45deg);
}

/* Recenzije na toploj plohi */
.section--sand .review {
    border-color: var(--c-sand-200);
    box-shadow: var(--shadow-1);
}

/* Okvir za naručivanje uz uslugu */
/* Isti prijelaz kao naslov stranice, ali dijagonalno */
.help-box {
    background: linear-gradient(135deg, #007534, var(--c-lime));
}

.help-box .help-phone {
    display: flex;
    align-items: center;
    gap: var(--s-2);
    margin-top: var(--s-4);
    font-family: var(--font-display);
    font-size: var(--fs-lg);
    font-weight: 500;
    color: var(--c-white);
    text-decoration: none;
}

.help-box .help-phone:hover,
.help-box .help-link:hover {
    color: var(--c-lime-soft);
}

.help-box .help-link {
    display: inline-flex;
    align-items: center;
    gap: var(--s-2);
    margin-top: var(--s-3);
    font-size: var(--fs-sm);
    color: rgb(255 255 255 / .85);
}

/* Dodirne mete najmanje 44 px */
.lang-switcher a {
    display: grid;
    place-items: center;
    min-width: 2.75rem;
    min-height: 2.75rem;
}

/* Uski mobiteli: logotip, pretraga, jezici i izbornik moraju stati u 375 px */
@media (max-width: 420px) {
    .header-inner { gap: var(--s-3); }
    .header-actions { gap: var(--s-2); }
    .site-logo img { height: 36px; }
    .lang-switcher a { min-width: 2.25rem; }
}

@media (max-width: 899px) {
    /* mjesto za traku s radnjama iznad podnožja */
    .site-footer {
        padding-bottom: 5.5rem;
    }
}
/* Poziv na akciju: zelena ploha preko cijele širine, tekst poravnat sa sadržajem stranice,
   fotografija poliklinike u prirodnim bojama do desnog ruba
   -------------------------------------------------------------------------- */
.s-cta {
    position: relative;
    overflow: hidden;
    padding: 0;
    color: var(--c-white);
    background: var(--grad-brand);
}

/* Znak logotipa, jedva vidljiv, u kutu zelene plohe */
.s-cta::before {
    content: "";
    position: absolute;
    left: -5rem;
    bottom: -6rem;
    width: 22rem;
    height: 22rem;
    background: url(../img/sign-w.svg) center / contain no-repeat;
    opacity: .06;
    pointer-events: none;
}

.cta-card {
    display: grid;
}

.cta-inner {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: center;
    gap: var(--s-5);
    padding-block: clamp(2.5rem, 6vw, 5.5rem);
}

.cta-inner h2 {
    max-width: 14ch;
    margin: 0;
    font-size: var(--fs-3xl);
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: -.02em;
    color: var(--c-white);
}

.cta-inner h2 em {
    font-weight: 300;
    color: var(--c-lime-soft);
}

.cta-inner .lead {
    max-width: 30rem;
    margin: 0;
    font-size: var(--fs-md);
    color: rgb(255 255 255 / .85);
}

/* Gumbi iste visine u jednom redu; radno vrijeme ispod kao tiha pločica s oznakom */
.cta-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: var(--s-3);
    margin-top: var(--s-3);
}

.cta-actions .btn {
    min-height: 3.25rem;
    justify-content: center;
}

.cta-hours {
    display: inline-flex;
    align-items: center;
    gap: var(--s-2);
    justify-self: start;
    margin: var(--s-2) 0 0;
    padding: .5rem 1rem .5rem .75rem;
    font-size: var(--fs-xs);
    line-height: 1.3;
    color: rgb(255 255 255 / .85);
    background: rgb(255 255 255 / .08);
    border: 1px solid rgb(255 255 255 / .14);
    border-radius: var(--r-pill);
}

.cta-hours strong {
    margin-right: .25rem;
    font-weight: 700;
    color: var(--c-white);
}

.cta-hours .icon {
    flex: none;
    color: var(--c-lime-soft);
}

/* Na mobitelu gumbi zauzimaju cijelu širinu, jedan ispod drugog */
@media (max-width: 479px) {
    .cta-actions .btn {
        flex: 1 1 100%;
    }
}

.cta-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 45%;
}

/* Mekani prijelaz iz zelene plohe u fotografiju */
.cta-media::after {
    content: "";
    position: absolute;
    inset: 0;
}

/* Desktop: pola-pola – tekst lijevo, fotografija na desnoj polovici do samog ruba zaslona */
@media (min-width: 900px) {
    .cta-inner {
        width: calc(50% - var(--s-8));
        min-height: 28rem;
    }

    .cta-media {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 50%;
    }

    .cta-media::after {
        background: linear-gradient(90deg, var(--c-grad-mid), transparent 15%);
    }
}

/* Mobitel: fotografija iznad teksta, od ruba do ruba */
@media (max-width: 899px) {
    .cta-media {
        position: relative;
        order: -1;
        height: 12rem;
        margin-inline: calc(var(--gutter) * -1);
    }

    .cta-media::after {
        background: var(--grad-brand);
        mask-image: linear-gradient(0deg, #000, transparent 50%);
    }
}



/* Pravne informacije: obavijest o kolačićima, napomena uz obrasce, vanjski sadržaji
   -------------------------------------------------------------------------- */
.cookie-notice {
    position: fixed;
    z-index: 1200;
    left: var(--s-4);
    right: var(--s-4);
    bottom: var(--s-4);
    display: grid;
    gap: var(--s-4);
    max-width: 30rem;
    padding: var(--s-5);
    font-size: var(--fs-xs);
    line-height: 1.55;
    color: var(--c-ink-700);
    background: var(--c-white);
    border: 1px solid var(--c-border);
    border-radius: var(--r-md);
    box-shadow: var(--shadow-2);
}

.cookie-notice[hidden] {
    display: none;
}

.cookie-notice p {
    margin: 0;
}

.cookie-notice strong {
    display: block;
    margin-bottom: var(--s-1);
    font-family: var(--font-display);
    font-size: var(--fs-sm);
    color: var(--c-ink);
}

.cookie-notice-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--s-2);
}

.cookie-notice-actions .btn {
    flex: 1;
    justify-content: center;
}

.form-privacy {
    margin: var(--s-4) 0;
    font-size: var(--fs-xs);
    line-height: 1.55;
    color: var(--c-text-muted);
}

.embed-consent {
    position: relative;
    overflow: hidden;
    min-height: 18rem;
    background: var(--c-green-50);
    border-radius: var(--r-md);
}

.embed-consent iframe {
    display: block;
    width: 100%;
}

.embed-consent-note {
    position: absolute;
    inset: 0;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: var(--s-4);
    padding: var(--s-6);
    text-align: center;
    background: var(--c-green-50);
}

.embed-consent-note p {
    max-width: 28rem;
    margin: 0;
}

.embed-consent.is-loaded .embed-consent-note {
    display: none;
}

.footer-bottom nav {
    flex-wrap: wrap;
    gap: var(--s-2) var(--s-5);
}

/* Stranica Usluge: kartice s opisom lijevo i poveznicama na podusluge desno
   -------------------------------------------------------------------------- */
.s-service-index {
    padding-top: clamp(2rem, 4vw, 3.5rem);
}

.si-nav {
    display: flex;
    flex-wrap: wrap;
    gap: var(--s-2);
    margin-bottom: var(--s-7);
}

.si-nav a {
    display: inline-flex;
    align-items: center;
    gap: var(--s-2);
    min-height: 2.75rem;
    padding: .375rem 1.1rem .375rem .375rem;
    font-family: var(--font-display);
    font-size: var(--fs-xs);
    font-weight: 700;
    color: var(--c-ink);
    text-decoration: none;
    background: var(--c-white);
    border: 1px solid var(--c-sand-200);
    border-radius: var(--r-pill);
    transition: color var(--t-fast), background var(--t-fast), border-color var(--t-fast);
}

.si-nav a:hover {
    color: var(--c-white);
    background: var(--c-forest) var(--grad-brand-deep);
    border-color: var(--c-forest);
}

/* Ikona područja u traci: mali zeleni krug, crtež u tamnozelenoj */
.si-nav-icon {
    display: grid;
    color: var(--c-forest-700);
    place-items: center;
    width: 2rem;
    height: 2rem;
    background: var(--c-green-100);
    border-radius: 50%;
    transition: background var(--t-fast);
}

.si-nav-icon svg,
.si-nav-icon img {
    width: 1.125rem;
    height: 1.125rem;
}

.si-nav a:hover .si-nav-icon {
    background: var(--c-white);
}

.service-index--cards {
    display: grid;
    gap: var(--s-5);
    border: 0;
}

.service-index--cards > li {
    position: relative;
    gap: var(--s-6);
    padding: clamp(1.5rem, 3vw, 2.5rem);
    background: var(--c-white);
    border: 1px solid var(--c-sand-200);
    border-radius: var(--r-lg);
    transition: border-color var(--t-fast), box-shadow var(--t-fast);
}

.service-index--cards > li {
    overflow: hidden;
    border: 1px solid var(--c-border);
}

/* Traka u boji znaka na vrhu kartice, ista kao pozadina naslova */
.service-index--cards > li::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 4px;
    background: var(--grad-brand);
}

.service-index--cards > li:hover {
    border-color: var(--c-green);
    box-shadow: var(--shadow-1);
}

.service-index--cards h2 a:hover {
    color: var(--c-forest);
}

.service-index--cards .btn--outline {
    font-weight: 400;
    color: var(--c-forest-700);
    border: 1px solid var(--c-border);
}

/* Ispuna koja se diže iznutra je ovdje prijelaz u boji znaka */
.service-index--cards .btn--outline::before {
    background: var(--grad-brand);
}

.service-index--cards .btn--outline:hover {
    color: var(--c-white);
    border-color: transparent;
}

/* Uvod glavne usluge: zelena okomita crta uz prvi odlomak */
.entry-content--intro > p:first-child {
    padding-left: var(--s-5);
    border-left: 4px solid;
    border-image: linear-gradient(#007534, var(--c-lime)) 1;
}

.service-index--cards .si-head {
    position: relative;
    top: auto;
    display: block;
}

/* Ikona područja: svijetla zelena pločica s tamnozelenim crtežom (SVG u kodu, boja iz tokena);
   pri prelasku mišem pločica postaje zelena, a crtež bijel */
/* Ikona područja: sam crtež u zelenoj boji znaka, bez pločice, okvira i promjene pod mišem */
.si-icon {
    display: block;
    margin-bottom: var(--s-5);
    color: #007534;
    line-height: 0;
}

.si-icon svg,
.si-icon img {
    width: 3.25rem;
    height: 3.25rem;
}

/* Neke ikone imaju crnu boju upisanu u oblike; preuzimaju boju pločice, pa su pod mišem bijele */
.si-icon svg [fill="black"],
.si-icon svg [fill="#000"],
.si-icon svg [fill="#000000"] {
    fill: currentColor;
}

/* Broj kao nadnaslov iznad naslova, s limeta crticom */
.service-index--cards .num {
    display: inline-flex;
    align-items: center;
    gap: var(--s-2);
    padding: 0;
    font-family: var(--font-display);
    font-size: var(--fs-xs);
    font-weight: 700;
    letter-spacing: .12em;
    color: var(--c-forest);
}

.service-index--cards .num::before {
    content: "";
    width: 1.25rem;
    height: 2px;
    background: var(--c-lime);
}

.service-index--cards .si-title {
    display: grid;
    gap: var(--s-2);
    margin-bottom: var(--s-4);
}

.service-index--cards h2 {
    margin: 0;
    font-size: var(--fs-2xl);
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: -.02em;
}

.service-index--cards .si-text {
    max-width: 34rem;
    margin-bottom: var(--s-5);
    font-size: var(--fs-sm);
}

.service-index--cards .si-count {
    margin-left: var(--s-2);
    padding-left: var(--s-3);
    font-family: var(--font-text);
    font-weight: 500;
    letter-spacing: 0;
    color: var(--c-text-muted);
    border-left: 1px solid var(--c-border);
}

/* Podusluge kao uredan popis linkova jedan ispod drugog; abecedni red teče niz stupac pa u sljedeći */
.service-index--cards .si-links {
    display: block;
    columns: 1;
    column-gap: var(--s-8);
    margin: 0;
    border: 0;
}

.service-index--cards .si-links li {
    break-inside: avoid;
    border: 0;
}

.service-index--cards .si-links a {
    display: flex;
    align-items: baseline;
    justify-content: flex-start;
    gap: var(--s-2);
    padding: .375rem 0;
    font-family: var(--font-text);
    font-size: var(--fs-sm);
    font-weight: 500;
    line-height: 1.4;
    color: var(--c-forest-700);
    background: none;
    border: 0;
    border-radius: 0;
    transition: color var(--t-fast);
}

.service-index--cards .si-links a span {
    text-decoration: underline;
    text-decoration-color: var(--c-green-200);
    text-underline-offset: .2em;
    transition: text-decoration-color var(--t-fast);
}

.service-index--cards .si-links .icon {
    order: -1;
    flex: none;
    align-self: center;
    width: 14px;
    height: 14px;
    padding: 0;
    color: var(--c-green);
    background: none;
    opacity: 1;
    transform: none;
}

.service-index--cards .si-links a:hover {
    padding-left: 0;
    color: var(--c-forest-900);
    background: none;
}

.service-index--cards .si-links a:hover span {
    text-decoration-color: currentColor;
}

@media (min-width: 700px) {
    .service-index--cards .si-links { columns: 2; }
}

@media (min-width: 1100px) {
    .service-index--cards .si-links { columns: 3; }
    .with-sidebar .service-index--cards .si-links { columns: 2; }
}

@media (min-width: 1000px) {
    .service-index--cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    /* Naslov, opis i gumb u gornjem redu, a oznake ispod njih preko cijele širine kartice */
    .service-index--cards > li {
        grid-column: span 2;
        grid-template-columns: 1fr;
        gap: var(--s-6);
        align-items: start;
    }

    .service-index--cards > li:not(.no-children) .si-head {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        column-gap: var(--s-8);
        align-items: end;
    }

    .service-index--cards > li:not(.no-children) .si-head > :not(.btn) {
        grid-column: 1;
    }

    .service-index--cards > li:not(.no-children) .si-head .si-text {
        margin-bottom: 0;
    }

    .service-index--cards > li:not(.no-children) .si-head .btn {
        grid-column: 2;
        grid-row: 1 / span 3;
        align-self: end;
    }

    .service-index--cards > li:not(.no-children) .si-body {
        padding-top: var(--s-6);
        border-top: 1px solid var(--c-border);
    }

    /* Usluge bez podusluga stoje jedna uz drugu */
    .service-index--cards > li.no-children {
        grid-column: span 1;
        grid-template-columns: 1fr;
    }
}

/* Stranica usluge: uvod pa kartice područja; unutar stupca s bočnom navigacijom kartice idu jedna ispod druge */
.section--tight-end {
    padding-bottom: clamp(2rem, 4vw, 3.5rem);
}

/* Sadržaj odmah ispod naslova: manji razmak, a prvi podnaslov ne dodaje svoju marginu */
.page-head + .section {
    padding-top: clamp(2.5rem, 4vw, 3.5rem);
}

.entry-content > :first-child {
    margin-top: 0;
}

/* Kartice na istoj bijeloj podlozi kao uvod: bez dvostrukog razmaka između njih (na bež plohi razmak ostaje) */
.section--tight-end + .s-service-index:not(.section--sand) {
    padding-top: 0;
}

.with-sidebar .service-index--cards > li {
    gap: var(--s-5);
}

.with-sidebar .service-index--cards .si-text {
    max-width: none;
}

/* Kartice bez podusluga: gumb je uvijek na dnu, poravnat u cijelom redu */
.service-index--cards > li.no-children .si-head {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.service-index--cards > li.no-children .si-head .btn {
    align-self: flex-start;
    margin-top: auto;
}

/* Naslov unutarnjih stranica: zelena ploha sa znakom, kao hero naslovnice
   -------------------------------------------------------------------------- */
.page-head {
    position: relative;
    overflow: hidden;
    padding-block: clamp(2.5rem, 5vw, 4.5rem);
    color: var(--c-white);
    /* Kao naslov na staroj stranici: od zelene iz znaka do limete */
    background: var(--grad-brand);
}

.page-head::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -5rem;
    width: 26rem;
    height: 26rem;
    background: url(../img/sign-w.svg) center / contain no-repeat;
    opacity: .08;
    transform: translateY(-50%);
    pointer-events: none;
}

.page-head .container {
    position: relative;
    z-index: 1;
}

.page-head h1 {
    max-width: 20ch;
    font-size: clamp(1.875rem, 1.2rem + 2vw, 3rem);
    line-height: 1.05;
    color: var(--c-white);
}

.page-head h1 em {
    color: var(--c-lime-soft);
}

/* Kratka crta u boji znaka dijeli naslov od uvoda */
.page-head h1::after {
    content: "";
    display: block;
    width: 3.5rem;
    height: 3px;
    margin-top: var(--s-5);
    background: var(--c-lime);
    border-radius: 2px;
}

.page-head .lead {
    max-width: 40rem;
    margin-top: var(--s-5);
    color: rgb(255 255 255 / .88);
}

.page-head .breadcrumbs {
    margin-bottom: var(--s-5);
    font-family: var(--font-display);
    font-weight: 500;
    color: rgb(255 255 255 / .6);
}

.page-head .breadcrumbs a:hover {
    color: var(--c-lime-soft);
}

.page-head .breadcrumbs .breadcrumb_last {
    color: var(--c-white);
}

.page-head-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--s-3);
    margin-top: var(--s-6);
}

/* Naslov sa slikom: kao hero naslovnice, fotografija do ruba i pune visine
   (na mobitelu ispod naslova, preko cijele širine) */
.page-head--image {
    padding-bottom: 0;
}

.page-head--image::after {
    top: auto;
    right: auto;
    left: -7rem;
    bottom: -9rem;
    transform: none;
}

.page-head--image .page-head-media {
    position: relative;
    min-height: 16rem;
    margin-inline: calc(var(--gutter) * -1);
    border-radius: 0;
}

.page-head--image .page-head-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: 50% 15%;
    border-radius: 0;
    box-shadow: none;
}

@media (min-width: 900px) {
    .page-head--image {
        padding-block: 0;
    }

    .page-head--image .container {
        max-width: none;
        min-height: 30rem;
        padding: 0;
        gap: 0;
        align-items: stretch;
    }

    .page-head--image .page-head-text {
        align-self: center;
        padding: clamp(2.5rem, 5vw, 4.5rem) var(--s-9) clamp(2.5rem, 5vw, 4.5rem) max(var(--gutter), calc((100vw - var(--container)) / 2));
    }

    .page-head--image .page-head-media {
        min-height: 0;
        margin: 0;
    }
}

/* Stručni tim: traka područja ispod naslova, ostaje pri vrhu dok se lista
   -------------------------------------------------------------------------- */
.section-nav {
    position: sticky;
    top: var(--header-h);
    z-index: 50;
    background: rgb(255 255 255 / .94);
    border-bottom: 1px solid var(--c-border);
    backdrop-filter: blur(10px);
}

.section-nav-inner {
    display: flex;
    gap: var(--s-2);
    padding-block: var(--s-3);
    overflow-x: auto;
    scrollbar-width: none;
}

.section-nav-inner::-webkit-scrollbar {
    display: none;
}

/* Uski zasloni: traka se lista vodoravno; desni rub blago nestaje, pa se vidi da ima još stavki */
@media (max-width: 999px) {
    .section-nav-inner {
        -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 2.5rem), transparent);
        mask-image: linear-gradient(90deg, #000 calc(100% - 2.5rem), transparent);
        padding-right: 2rem;
    }
}

/* Širi zasloni: stavke se prelamaju u novi red umjesto da se zadnja odreže */
@media (min-width: 1000px) {
    .section-nav-inner {
        flex-wrap: wrap;
        overflow: visible;
    }
}

.section-nav a {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    gap: .6rem;
    min-height: 2.75rem;
    padding: .35rem .45rem .35rem 1.1rem;
    font-family: var(--font-display);
    font-size: var(--fs-xs);
    font-weight: 700;
    color: var(--c-ink);
    text-decoration: none;
    white-space: nowrap;
    background: var(--c-green-50);
    border: 1px solid var(--c-green-100);
    border-radius: var(--r-pill);
    transition: color var(--t-fast), background var(--t-fast), border-color var(--t-fast);
}

/* Broj članova u području */
.section-nav b {
    display: grid;
    place-items: center;
    min-width: 1.75rem;
    height: 1.75rem;
    padding: 0 .4rem;
    font-size: .75rem;
    color: var(--c-forest);
    background: var(--c-white);
    border-radius: var(--r-pill);
    transition: color var(--t-fast), background var(--t-fast);
}

.section-nav a:hover,
.section-nav a.is-active {
    color: var(--c-white);
    background: var(--c-forest) var(--grad-brand-deep);
    border-color: var(--c-forest);
}

.section-nav a.is-active b {
    color: var(--c-ink);
    background: var(--c-lime);
}

.s-team-list {
    padding-top: 0;
}

.s-team-list .team-group {
    border-top-color: var(--c-border);
    scroll-margin-top: calc(var(--header-h) + 4.5rem);
}

.s-team-list .team-group:first-child {
    border-top: 0;
}

/* Na širim zaslonima traka područja može imati dva reda, pa su odmaci veći */
@media (min-width: 1000px) {
    .s-team-list .team-group {
        scroll-margin-top: calc(var(--header-h) + 8rem);
    }

    .s-team-list .tg-head {
        top: calc(var(--header-h) + 9.5rem);
    }
}

/* Cjenik: područja s ikonom koja se otvaraju klikom, unutar njih kategorije koje se također otvaraju;
   tri stupca (usluga, aktualna cijena, sidrena cijena), mirna tipografija, bez kutija i oštrih rubova
   -------------------------------------------------------------------------- */
.s-price {
    padding-top: clamp(2rem, 4vw, 3rem);
}

.s-price [hidden] {
    display: none !important;
}

.container--price {
    max-width: 68rem;
}

.price-search {
    display: flex;
    align-items: center;
    gap: var(--s-2);
    min-height: 3rem;
    margin-bottom: var(--s-5);
    padding: 0 var(--s-4);
    color: var(--c-text-muted);
    background: var(--c-white);
    border: 1px solid var(--c-border);
    border-radius: 999px;
    transition: border-color var(--t-fast);
}

.price-search:focus-within {
    border-color: var(--c-green);
}

.price-search input {
    flex: 1;
    min-width: 0;
    padding: 0;
    font: inherit;
    color: var(--c-ink);
    background: none;
    border: 0;
    outline: 0;
}

.price-cats {
    display: grid;
    gap: var(--s-3);
}

/* Područje (npr. Dermatologija i venerologija) */
.price-cat {
    background: var(--c-white);
    border: 1px solid var(--c-border);
    border-radius: var(--r-lg);
    transition: border-color var(--t-fast);
}

.price-cat[open] {
    border-color: var(--c-green-200);
}

.price-cat > summary,
.price-sec > summary {
    display: flex;
    align-items: center;
    gap: var(--s-4);
    cursor: pointer;
    list-style: none;
}

.price-cat > summary::-webkit-details-marker,
.price-sec > summary::-webkit-details-marker {
    display: none;
}

.price-cat-head {
    padding: var(--s-4) var(--s-5);
}

.price-cat-icon {
    display: grid;
    flex: none;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    color: #007534;
    background: var(--c-green-50);
    border-radius: var(--r-md);
}

.price-cat-icon svg {
    width: 1.75rem;
    height: 1.75rem;
}

.price-cat-icon svg [fill="black"],
.price-cat-icon svg [fill="#000"],
.price-cat-icon svg [fill="#000000"] {
    fill: currentColor;
}

.price-cat-head h2 {
    flex: 1;
    margin: 0;
    font-size: var(--fs-lg);
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -.01em;
}

.price-cat > summary > .icon,
.price-sec > summary > .icon {
    flex: none;
    color: var(--c-forest);
    transition: transform var(--t-fast);
}

.price-cat[open] > summary > .icon,
.price-sec[open] > summary > .icon {
    transform: rotate(180deg);
}

.price-cat-body {
    padding: 0 var(--s-5) var(--s-3);
}

/* Kategorija unutar područja (npr. Pregled, Terapijski postupci) */
.price-sec {
    border-top: 1px solid var(--c-border);
}

.price-sec > summary {
    justify-content: space-between;
    padding: var(--s-4) 0;
    font-family: var(--font-display);
    font-size: var(--fs-md);
    font-weight: 500;
    color: var(--c-ink);
}

.price-sec > summary:hover {
    color: var(--c-forest);
}

.price-sec > summary small,
.price-sub small {
    font-family: var(--font-text);
    font-size: var(--fs-xs);
    font-weight: 400;
    color: var(--c-text-muted);
}

.price-sec[open] > summary {
    color: var(--c-forest);
}

.price-sec .price-table {
    padding-bottom: var(--s-4);
}

/* Tablica: naziv usluge pa aktualne i sidrene cijene */
.price-head,
.price-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) repeat(2, 7.5rem);
    column-gap: var(--s-3);
    align-items: center;
}

.price-table--2 .price-head,
.price-table--2 .price-row {
    grid-template-columns: minmax(0, 1fr) repeat(4, 6.25rem);
}

.price-head {
    padding: 0 0 var(--s-2);
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--c-text-muted);
    border-bottom: 1px solid var(--c-border);
}

.price-head-name {
    grid-row: span 2;
    align-self: end;
}

.price-table--1 .price-head-name {
    grid-row: auto;
}

.price-head-group {
    text-align: right;
}

.price-table--2 .price-head-group {
    grid-column: span 2;
    padding-bottom: var(--s-1);
    text-align: center;
    border-bottom: 1px solid var(--c-border);
}

.price-head-group--current {
    color: var(--c-forest);
}

.price-head-col {
    padding-top: var(--s-1);
    font-weight: 500;
    letter-spacing: .02em;
    text-transform: none;
    text-align: right;
}

.price-sub {
    margin: var(--s-4) 0 0;
    padding: var(--s-2) 0;
    font-size: var(--fs-sm);
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0;
    color: var(--c-forest-700);
}

.price-sub--3 {
    margin-top: var(--s-2);
    padding-left: var(--s-4);
    font-family: var(--font-text);
    color: var(--c-ink-700);
}

.price-row {
    padding: var(--s-3) 0;
    border-bottom: 1px solid var(--c-ink-50);
}

.price-row:last-child {
    border-bottom: 0;
}

.price-name {
    font-size: var(--fs-sm);
    line-height: 1.45;
    color: var(--c-ink);
}

.price-name small {
    display: block;
    margin-top: .125rem;
    font-size: var(--fs-xs);
    color: var(--c-text-muted);
}

/* Redci pod naslovom treće razine (npr. Alergološko testiranje > Kutano) uvučeni su kao i naslov */
.price-sub--3 ~ .price-row .price-name {
    padding-left: var(--s-4);
}

.price-cell {
    font-size: var(--fs-sm);
    text-align: right;
    white-space: nowrap;
}

.price-cell--current .price-value {
    font-weight: 600;
    color: var(--c-forest);
}

.price-cell--anchor .price-value {
    color: var(--c-text-muted);
}

.price-cell em {
    display: block;
    font-size: .75rem;
    font-style: normal;
    white-space: normal;
    color: var(--c-text-muted);
}

.price-label {
    display: none;
}

.price-empty {
    margin: var(--s-5) 0 0;
    text-align: center;
    color: var(--c-text-muted);
}

.price-empty a {
    font-weight: 500;
}

.s-price .price-note {
    max-width: none;
    margin-top: var(--s-5);
    font-size: var(--fs-xs);
    color: var(--c-text-muted);
}

/* Na mobitelu naziv usluge ide preko cijele širine, a cijene ispod s oznakom stupca */
@media (max-width: 759px) {
    .price-cat-head {
        padding: var(--s-3) var(--s-4);
    }

    .price-cat-body {
        padding: 0 var(--s-4) var(--s-2);
    }

    .price-head {
        display: none;
    }

    .price-row,
    .price-table--2 .price-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--s-1) var(--s-3);
    }

    .price-name {
        grid-column: 1 / -1;
        margin-bottom: var(--s-1);
    }

    .price-cell {
        text-align: left;
    }

    .price-cell.is-empty {
        display: none;
    }

    .price-label {
        display: block;
        font-size: .6875rem;
        line-height: 1.3;
        color: var(--c-text-muted);
    }

    .price-sub--3,
    .price-sub--3 ~ .price-row .price-name {
        padding-left: 0;
    }
}

/* Stručni tim: ista tipografska logika kao ostatak stranice (naslovi 500, nadnaslov s brojem),
   kartice bez ponovljene titule, vanjski suradnici sa sažetkom umjesto cijele biografije
   -------------------------------------------------------------------------- */
.tg-head .eyebrow {
    margin-bottom: 0;
}

.tg-head h2 {
    margin-top: var(--s-3);
    font-size: var(--fs-2xl);
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: -.02em;
}

.tg-head p {
    max-width: 22rem;
    font-size: var(--fs-sm);
    color: var(--c-text-muted);
}

.card-doctor h3 {
    margin-bottom: var(--s-2);
    font-size: var(--fs-lg);
    font-weight: 500;
    line-height: 1.3;
    /* titule bez razmaka („bacc.med.techn.”) smiju se prelomiti u uskom stupcu */
    overflow-wrap: anywhere;
}

.tg-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 700px) {
    .tg-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.card-doctor .role {
    font-size: var(--fs-sm);
    line-height: 1.5;
}

/* Podnožje: copyright, pravne poveznice i potpis izrade (BozooArt, uz desni rub) u jednoj liniji */
.footer-bottom {
    align-items: center;
    justify-content: flex-start;
}

.footer-credit {
    margin-left: auto;
    font-family: var(--font-display);
    font-weight: 500;
    letter-spacing: .02em;
}

/* Korekcije poliklinike (studeni 2026)
   -------------------------------------------------------------------------- */

/* Naslovi u jednoj debljini: bez kombinacije podebljanog i tankog dijela ("Naše usluge", "Upoznajte stručni tim") */
h1, h2, h3, h4, h5, h6 {
    font-weight: 500;
}

h1 em, h2 em, h3 em, h4 em {
    font-weight: inherit;
}

/* Nadnaslov na naslovnici: krupniji i razmaknutiji */
.hero--split .eyebrow {
    font-size: var(--fs-sm);
    letter-spacing: .24em;
}

/* Akreditacije i Google ocjena: čitke, ali nenametljive */
.hero--split .trust {
    gap: var(--s-3) var(--s-4);
}

.hero--split .trust-badge img {
    width: 3.25rem;
    height: 3.25rem;
}

.hero--split .trust-rating {
    gap: var(--s-2);
    padding-left: var(--s-4);
}

.hero--split .trust-rating strong {
    font-size: var(--fs-xl);
}

.hero--split .trust-note {
    font-size: .8125rem;
}

/* Naslov unutarnjih stranica: tanja zelena traka i mirniji rez */
.page-head {
    padding-block: clamp(1.75rem, 3vw, 2.75rem);
}

.page-head h1 {
    font-size: clamp(1.75rem, 1.25rem + 1.4vw, 2.5rem);
    letter-spacing: -.015em;
}

/* Usluga bez podusluga koja nema para u redu (npr. Savjetovalište) ide preko cijele širine */
@media (min-width: 1000px) {
    .service-index--cards > li.no-children:not(.no-children + .no-children):not(:has(+ .no-children)) {
        grid-column: span 2;
    }
}

@media (max-width: 599px) {
    .hero--split .eyebrow {
        font-size: var(--fs-xs);
        letter-spacing: .14em;
    }
}

/* O nama: priznanje (Najdoktor) i certifikati manji i decentniji; slike su male rezolucije,
   pa ih manja veličina čini i oštrijima. Certifikati bez okvira. */
.media-figure--contain img {
    max-width: 9.5rem;
}

.certs {
    gap: var(--s-8);
}

.certs a,
.certs a:hover {
    width: auto;
    padding: 0;
    font-size: var(--fs-xs);
    font-weight: 500;
    color: var(--c-ink-700);
    border: 0;
    box-shadow: none;
    transform: none;
}

.certs a:hover {
    color: var(--c-forest);
}

.certs img {
    width: 4.5rem;
    height: 4.5rem;
}

@media (max-width: 759px) {
    .price-cell {
        white-space: normal;
    }
}
