/* ============================================================
   PAGE BLOCKS - blocks.css
   Vsi stili za page_block tip vsebin
   ============================================================ */

/* ── H1 / Naslov ────────────────────────────────────────── */
.pb-h1 {
    padding: 55px 0 25px;
    text-align: center;
}
.pb-h1-inner {
    max-width: 780px;
    margin: 0 auto;
}
.pb-h1 .pb-heading {
    font-weight: 400;
    letter-spacing: 0.05em;
    color: #2c2418;
    margin: 0 0 14px;
    line-height: 1.2;
}
/* Velikost SLEDI izbranemu elementu (H1 najvecji, H2 privzeto, H3 manjsi).
   "Velikost naslova" (title_size) spodaj to po potrebi povozi (!important). */
.pb-h1 h1.pb-heading { font-size: clamp(2.4rem, 6vw, 3.8rem); }
.pb-h1 h2.pb-heading { font-size: clamp(2rem, 5vw, 3.2rem); }
.pb-h1 h3.pb-heading { font-size: clamp(1.5rem, 4vw, 2.4rem); }
.pb-h1 .pb-subtitle {
    font-size: 1.1rem;
    color: #7a6e5f;
    line-height: 1.75;
    margin: 0;
}

/* ── Text / Besedilo ─────────────────────────────────────── */
.pb-text {
    padding: 20px 0 40px;
}
/* Velikost besedila enaka stari vsebini (legacy .hFont = 16px/28px). */
.pb-text .main_cont,
.pb-text .user_style {
    font-size: 16px;
    line-height: 28px;
}

/* ── Besedilo: "Skrij del besedila" (prikaži N vrstic + gumb) ───────────── */
.pb-text-clamp {
    position: relative;             /* fade-preliv se sidra TU (ne na .contentRead), da ne prekrije gumba */
    overflow: hidden;
    transition: max-height .35s ease;
}
/* Mehak prehod v nič na dnu skritega besedila (samo dokler ni razprto).
   Sidran na .pb-text-clamp in znotraj overflow:hidden, zato NE seže na gumb. */
.pb-text-clamp:not(.is-open)::after {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 1.6em;
    background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,.92));
    pointer-events: none;
}
.pb-text-toggle {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 10px;
    padding: 0;
    background: none;
    border: none;
    cursor: pointer;
    font: inherit;
    font-weight: 700;
    font-size: 1rem;
    line-height: 1;
    color: #004d47;                 /* temno zelena - jasno vidno */
    text-decoration: none;          /* podcrtana je SAMO besedilna oznaka, ne ikona */
    transition: color .2s ease;
    -webkit-tap-highlight-color: transparent;
}
.pb-text-toggle-txt { text-decoration: underline; text-underline-offset: 3px; }
.pb-text-toggle:hover { color: #53c0ac; }
.pb-text-toggle-ico { transition: transform .3s ease; font-size: .8em; text-decoration: none; }
.pb-text-toggle[aria-expanded="true"] .pb-text-toggle-ico { transform: rotate(180deg); }

/* ── Iframe / vdelava ────────────────────────────────────── */
.pb-iframe {
    padding: 20px 0 40px;
}
.pb-iframe-wrap {
    position: relative;
    width: 100%;
    line-height: 0;             /* odpravi morebiten spodnji presledek pod iframe */
}
.pb-iframe-el {
    display: block;
    width: 100%;
    height: var(--pb-if-h, 1000px);
    border: 0;                  /* brez obrob - brezšivno */
    margin: 0;
    background: transparent;
}
/* Cel zaslon (full-bleed) - iframe sega čez .marg do robov okna */
.pb-iframe--full .pb-iframe-wrap {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
/* Gumb, ki odpre iframe v popupu (celozaslonsko). Privzeto skrit; prikaže se v popup/mobilnem načinu. */
.pb-iframe-launch {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 26px;
    border: 0;
    border-radius: 10px;
    cursor: pointer;
    background: #53c0ac;
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: .02em;
    -webkit-tap-highlight-color: transparent;
    transition: background .2s ease;
}
.pb-iframe-launch:hover { background: #45a896; }
.pb-iframe-launch:active { background: #004d47; }
/* Velikosti gumba */
.pb-iframe-launch--small { padding: 9px 18px; font-size: .9rem; }
.pb-iframe-launch--large { padding: 18px 36px; font-size: 1.15rem; }
.pb-iframe-launchwrap { margin-top: 4px; }
/* Popup način (DA): na VSEH napravah gumb namesto vdelave */
.pb-iframe--popup .pb-iframe-wrap { display: none; }
.pb-iframe--popup .pb-iframe-launch { display: inline-flex; }
/* Celozaslonski sloj - rešuje "dvojni drsnik" / ujetje drsenja na telefonu */
.pb-iframe-overlay {
    position: fixed;
    inset: 0;
    z-index: 100000;
    background: #fff;
    display: none;
    flex-direction: column;
}
.pb-iframe-overlay.open { display: flex; }
.pb-iframe-overlay-bar {
    flex: 0 0 auto;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 0 0 16px;          /* desno brez paddinga - gumb sede v kot */
    border-bottom: 1px solid #ece4d8;
    background: #fff;
}
.pb-iframe-overlay-title { font-weight: 700; color: #2c2418; font-size: 15px; }
/* Zapiralni gumb: kvadraten, zelen (CGP), čez celo višino headerja, v kotu */
.pb-iframe-overlay-close {
    flex: 0 0 auto;
    align-self: stretch;          /* polna višina vrstice */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    border: none;
    border-radius: 0;             /* kvadraten */
    background: #53c0ac;          /* CGP zelena */
    color: #fff;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    transition: background .2s ease;
    -webkit-tap-highlight-color: transparent;
}
.pb-iframe-overlay-close:hover { background: #004d47; }
.pb-iframe-overlay-body { flex: 1 1 auto; min-height: 0; }
.pb-iframe-overlay-body iframe { width: 100%; height: 100%; border: 0; display: block; }
html.pb-iframe-lock, body.pb-iframe-lock { overflow: hidden !important; }

@media (max-width: 600px) {
    .pb-iframe-el { height: var(--pb-if-hm, var(--pb-if-h, 1000px)); }
    /* Celozaslonski način na telefonu: skrij vdelano okno (lazy iframe se NE naloži), pokaži gumb */
    .pb-iframe--m-fullscreen .pb-iframe-wrap { display: none; }
    .pb-iframe--m-fullscreen .pb-iframe-launch { display: inline-flex; }
    /* na telefonu je gumb poln po širini */
    .pb-iframe-launch { width: 100%; padding: 16px 22px; }
}

/* ── Gallery / Galerija ──────────────────────────────────── */
.pb-gallery {
    padding: 40px 0;
}
.pb-gallery-caption {
    text-align: center;
    font-size: 1rem;
    color: #7a6e5f;
    margin-bottom: 22px;
    font-style: italic;
}
.pb-gallery-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, 1fr);
}
.pb-gallery-grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
.pb-gallery-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
.pb-gallery-item {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    display: block;
    background: #e8e2da;
    cursor: pointer;
    -webkit-user-drag: none;
    user-select: none;
}
.pb-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.7s cubic-bezier(.2,.7,.2,1);
    -webkit-user-drag: none;   /* prepreci domorodni vlek slike (drag/dotik) */
    user-select: none;
    pointer-events: none;      /* klik/drag obravnava starsevski <a>, ne slika */
}
/* nezna zatemnitev + zoom ikona ob hoverju */
.pb-gallery-item::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(28,22,16,.45), rgba(28,22,16,0) 55%);
    opacity: 0;
    transition: opacity .45s ease;
}
.pb-gallery-zoom {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.85);
    border-radius: 50%;
    color: #fff;
    opacity: 0;
    transform: scale(.7);
    transition: opacity .4s ease, transform .4s cubic-bezier(.2,.7,.2,1);
    z-index: 2;
    pointer-events: none;
}
.pb-gallery-zoom svg { width: 18px; height: 18px; }
.pb-gallery-item:hover img { transform: scale(1.06); }
.pb-gallery-item:hover::after { opacity: 1; }
.pb-gallery-item:hover .pb-gallery-zoom { opacity: 1; transform: scale(1); }

/* ── Coverflow vrtiljak (lasten, brez knjiznice) ─────────── */
.pb-gallery > .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}
.pb-cf {
    position: relative;
    width: 100%;
    max-width: 1640px;
    min-height: 320px;
    margin: 18px auto 28px;
    overflow: hidden;
    perspective: 1600px;
    cursor: grab;
    touch-action: pan-y;       /* navpicni scroll ostane brskalniku, vodoravno = drag */
    user-select: none;
}
.pb-cf.dragging { cursor: grabbing; }
.pb-cf-track {
    position: absolute;
    inset: 0;
    transform-style: preserve-3d;
}
.pb-cf .pb-gallery-item {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: 0;
    aspect-ratio: 4 / 3;
    cursor: inherit;
    will-change: transform, opacity;
    box-shadow: 0 16px 36px rgba(20,16,12,.22);
    visibility: hidden;        /* JS prizge vidne slike */
}
/* na mobilu lazja senca -> bolj tekoce vrtenje/drsenje */
@media (max-width: 768px) {
    .pb-cf .pb-gallery-item { box-shadow: 0 6px 16px rgba(20,16,12,.18); }
}

/* ── TIP 2: MOZAIK (masonry / zidak) ─────────────────────── */
.pb-mozaik {
    width: 100%;
    max-width: 1280px;
    margin: 14px auto 26px;
    column-count: 3;
    column-gap: 14px;
}
.pb-mozaik.cols-2 { column-count: 2; }
.pb-mozaik.cols-4 { column-count: 4; }
.pb-mozaik .pb-gallery-item {
    width: 100%;
    margin: 0 0 14px;
    aspect-ratio: auto;              /* naravna visina -> mozaik ucinek */
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    box-shadow: 0 14px 30px rgba(20,16,12,.18);
}
.pb-mozaik .pb-gallery-item img { height: auto; }
.pb-mozaik .pb-gallery-label { font-size: 15px; padding: 24px 12px 12px; }
@media (max-width: 900px) {
    .pb-mozaik, .pb-mozaik.cols-4 { column-count: 2; }
}
@media (max-width: 560px) {
    .pb-mozaik, .pb-mozaik.cols-2, .pb-mozaik.cols-4 { column-count: 1; }
}

/* ── TIP 3: KEN BURNS diaprojekcija ──────────────────────── */
.pb-kb {
    width: 100%;
    max-width: 1640px;
    margin: 14px auto 26px;
}
.pb-kb-stage {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #100c08;
    box-shadow: 0 24px 60px rgba(20,16,12,.28);
}
.pb-kb-stage .pb-gallery-item {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    aspect-ratio: auto;
    opacity: 0;
    transition: opacity 1.4s ease;
    z-index: 1;
}
.pb-kb-stage .pb-gallery-item.is-active { opacity: 1; z-index: 2; }
.pb-kb-stage .pb-gallery-item.is-active img { animation: pbKenburns 7s ease-out forwards; }
.pb-kb-stage .pb-gallery-label { font-size: 20px; padding: 44px 18px 20px; }
@keyframes pbKenburns {
    from { transform: scale(1) translate(0, 0); }
    to   { transform: scale(1.12) translate(-1.6%, -1.6%); }
}
/* slicice (thumbnails) za preklop med slikami */
.pb-kb-thumbs {
    display: flex;
    gap: 8px;
    justify-content: center;
    overflow-x: auto;
    padding: 12px 4px 2px;
    scrollbar-width: thin;
}
.pb-kb-thumb {
    flex: 0 0 auto;
    width: 86px;
    height: 56px;
    padding: 0;
    margin: 0;
    border: 2px solid transparent;
    border-radius: 3px;
    background: none;
    cursor: pointer;
    overflow: hidden;
    opacity: .5;
    transition: opacity .25s ease, border-color .25s ease;
}
.pb-kb-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pb-kb-thumb:hover { opacity: .85; }
.pb-kb-thumb.is-active { opacity: 1; border-color: var(--color-cta, #C4A055); }
@media (max-width: 600px) {
    .pb-kb-thumb { width: 64px; height: 42px; }
}
/* napis (alt) - vedno nezno viden */
.pb-gallery-label {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 36px 16px 16px;
    font-family: var(--font-display, serif);
    font-size: 19px;
    letter-spacing: .015em;
    color: #fff;
    text-align: center;
    background: linear-gradient(to top, rgba(20,16,12,.6), rgba(20,16,12,0));
    opacity: .92;
    z-index: 2;
    pointer-events: none;
}

/* ── Lightbox (michelin) ─────────────────────────────────── */
.pb-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(20,16,12,.93);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    opacity: 0;
    visibility: hidden;
    transition: opacity .35s ease, visibility 0s linear .35s;
}
.pb-lightbox.open {
    opacity: 1;
    visibility: visible;
    transition: opacity .35s ease;
}
.pb-lb-stage {
    max-width: 88vw;
    max-height: 82vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pb-lb-img {
    max-width: 88vw;
    max-height: 82vh;
    object-fit: contain;
    box-shadow: 0 30px 80px rgba(0,0,0,.5);
    opacity: 0;
    transform: scale(.9);
    transition: opacity .4s ease, transform .45s cubic-bezier(.2,.7,.2,1);
}
.pb-lb-img.is-in { opacity: 1; transform: scale(1); }
.pb-lb-close,
.pb-lb-nav {
    position: absolute;
    background: none;
    border: none;
    color: #d8cdbb;
    cursor: pointer;
    transition: color .25s ease, transform .25s ease;
    z-index: 2;
    line-height: 1;
}
.pb-lb-close {
    top: 24px;
    right: 30px;
    font-size: 40px;
    font-weight: 300;
}
.pb-lb-close:hover { color: #fff; transform: rotate(90deg); }
.pb-lb-nav {
    top: 50%;
    transform: translateY(-50%);
    font-size: 56px;
    font-weight: 300;
    padding: 0 22px;
}
.pb-lb-prev { left: 8px; }
.pb-lb-next { right: 8px; }
.pb-lb-nav:hover { color: var(--color-cta, #C4A055); }
.pb-lightbox.single .pb-lb-nav { display: none; }
.pb-lb-bar {
    position: absolute;
    bottom: 26px;
    left: 0;
    right: 0;
    text-align: center;
    padding: 0 20px;
}
.pb-lb-count {
    display: block;
    font-family: var(--font-display, serif);
    font-size: 18px;
    letter-spacing: .12em;
    color: var(--color-cta, #C4A055);
    margin-bottom: 4px;
}
.pb-lb-caption {
    font-size: 14px;
    color: #d8cdbb;
    font-style: italic;
}
@media (max-width: 600px) {
    .pb-lb-close { top: 14px; right: 16px; font-size: 34px; }
    .pb-lb-nav { font-size: 40px; padding: 0 10px; }
}

/* ── CTA ─────────────────────────────────────────────────── */
.pb-cta {
    padding: 90px 0;
    text-align: center;
}
.pb-cta--dark {
    background: #2c2418;
}
.pb-cta--dark .pb-cta-heading,
.pb-cta--dark .pb-cta-desc {
    color: #f5ede0;
}
.pb-cta--light {
    background: #f5ede0;
}
.pb-cta--light .pb-cta-heading,
.pb-cta--light .pb-cta-desc {
    color: #2c2418;
}
.pb-cta--transparent {
    background: transparent;
}
.pb-cta-heading {
    font-size: clamp(1.6rem, 4vw, 2.4rem);
    font-weight: 400;
    letter-spacing: 0.05em;
    margin: 0 0 18px;
    line-height: 1.25;
}
.pb-cta-desc {
    font-size: 1.1rem;
    max-width: 560px;
    margin: 0 auto 38px;
    opacity: 0.85;
    line-height: 1.75;
}
.pb-cta .btn {
    font-size: 0.95rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 14px 36px;
}
.pb-cta--dark .btn {
    background: #f5ede0;
    color: #2c2418;
    border-color: #f5ede0;
}
.pb-cta--dark .btn:hover {
    background: transparent;
    color: #f5ede0;
}

/* ── Fleha / Ločnica ─────────────────────────────────────── */
.pb-fleha {
    line-height: 0;
    overflow: hidden;
}
.pb-fleha-wave svg {
    display: block;
    width: 100%;
    height: 55px;
    color: #f5ede0;
}
.pb-fleha-arrow {
    text-align: center;
    padding: 28px 0;
    color: #a0937f;
    font-size: 1.4rem;
    line-height: 1;
}
.pb-fleha-dots {
    text-align: center;
    padding: 36px 0;
    line-height: 1;
}
.pb-fleha-dots span {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #c5b49e;
    margin: 0 6px;
}
.pb-fleha-line {
    border: none;
    border-top: 1px solid #ddd6cc;
    margin: 0 auto;
    max-width: 320px;
    display: block;
}

/* ── Image + Text / Slika + besedilo ─────────────────────── */
.pb-image-text {
    padding: 65px 0;
}
.pb-image-text-inner {
    display: flex;
    align-items: center;
    gap: 65px;
}
.pb-image-text-inner.img-right {
    flex-direction: row-reverse;
}
.pb-image-text-img {
    flex: 0 0 46%;
}
.pb-image-text-img img {
    width: 100%;
    height: 440px;
    object-fit: cover;
    display: block;
}
.pb-image-text-body {
    flex: 1;
}
.pb-image-text-body h2 {
    font-size: clamp(1.5rem, 3vw, 2.1rem);
    font-weight: 400;
    color: #2c2418;
    margin: 0 0 22px;
    letter-spacing: 0.04em;
    line-height: 1.3;
}
.pb-image-text-body .user_style p {
    color: #4a3f35;
    line-height: 1.8;
    margin-bottom: 16px;
}

/* ── Video Cover ─────────────────────────────────────────── */
.pb-video-cover {
    position: relative;
    width: 100%;
    height: 100vh;
    min-height: 500px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Video / iframe v ozadju */
.pb-video-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
    pointer-events: none;
}
.pb-video-bg video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.pb-video-bg iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /* Zagotovi pokritje zaslona pri vseh razmerjih */
    width: max(100%, calc(100vh * 16 / 9));
    height: max(100%, calc(100vw * 9 / 16));
    border: none;
}

/* Temni overlay */
.pb-video-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    z-index: 2;
}

/* CTA vsebina */
.pb-video-cta {
    position: relative;
    z-index: 3;
    text-align: center;
    color: #fff;
    padding: 40px 20px;
    width: 100%;
}
.pb-video-cta-title {
    font-size: clamp(2rem, 5vw, 3.6rem);
    font-weight: 300;
    letter-spacing: 0.08em;
    line-height: 1.2;
    margin: 0 0 20px;
    text-shadow: 0 2px 20px rgba(0,0,0,0.3);
}
.pb-video-cta-sub {
    font-size: clamp(1rem, 2vw, 1.25rem);
    font-weight: 300;
    letter-spacing: 0.04em;
    opacity: 0.9;
    margin: 0 0 36px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.7;
}
.pb-video-cta-btn {
    position: relative;
    overflow: hidden;
    display: inline-block;
    padding: 15px 42px;
    border: 2px solid #fff;
    color: #fff !important;
    text-decoration: none;
    font-size: 0.9rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    font-weight: 600;
    background: transparent;
    transition: background .3s, color .3s;
    z-index: 0;
}
/* Resetiraj globalni .btn::before ki povzroča zlato animacijo */
.pb-video-cta-btn::before {
    display: none !important;
}
.pb-video-cta-btn:hover {
    background: #fff;
    color: #2c2418 !important;
}

/* ── Mute gumb ───────────────────────────────────────────── */
.pb-video-mute {
    position: absolute;
    bottom: 24px;
    right: 24px;
    z-index: 4;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: rgba(0,0,0,0.45);
    border: 1px solid rgba(255,255,255,0.35);
    color: #fff;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .2s;
    backdrop-filter: blur(4px);
}
.pb-video-mute:hover { background: rgba(0,0,0,0.7); }

@media (max-width: 768px) {
    .pb-video-cover { height: 80vh; }
}

/* ── Counters / Števci ───────────────────────────────────── */
.pb-counters {
    padding: 70px 0;
    background: #f5ede0;
    text-align: center;
}
.pb-counters-title {
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 400;
    color: #2c2418;
    margin: 0 0 10px;
    letter-spacing: 0.04em;
}
.pb-counters-sub {
    color: #7a6e5f;
    font-size: 1rem;
    margin: 0 0 50px;
}
.pb-counters-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px 60px;
}
.pb-counter-item {
    min-width: 120px;
}
.pb-counter-number {
    font-size: clamp(2.4rem, 6vw, 3.8rem);
    font-weight: 300;
    color: #2c2418;
    line-height: 1;
    letter-spacing: -0.01em;
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 3px;
}
.pb-counter-prefix,
.pb-counter-suffix {
    font-size: 0.55em;
    font-weight: 400;
    color: #a0937f;
}
.pb-counter-val {
    display: inline-block;
}
.pb-counter-label {
    margin: 10px 0 0;
    font-size: 0.88rem;
    color: #7a6e5f;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

/* ── FAQ / Harmonika ─────────────────────────────────────── */
.pb-faq {
    padding: 60px 0;
}
.pb-faq-title {
    text-align: center;
    font-size: clamp(1.5rem, 3vw, 2.1rem);
    font-weight: 400;
    color: #2c2418;
    margin: 0 0 40px;
    letter-spacing: 0.04em;
}
.pb-faq-list {
    max-width: 760px;
    margin: 0 auto;
}
.pb-faq-item {
    border-bottom: 1px solid #e8e2da;
}
.pb-faq-item:first-child {
    border-top: 1px solid #e8e2da;
}
.pb-faq-q {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    background: none;
    border: none;
    padding: 20px 4px;
    font-size: 1.05rem;
    font-family: inherit;
    color: #2c2418;
    cursor: pointer;
    text-align: left;
    gap: 16px;
    transition: color 0.15s;
}
.pb-faq-q:hover {
    color: #53c0ac;
}
/* Krožni gumb +/- (zaprto +, odprto -), zelen, animiran */
.pb-faq-ico {
    position: relative;
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #53c0ac;
    transition: background .25s ease, transform .3s ease;
}
.pb-faq-ico::before,
.pb-faq-ico::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transform: translate(-50%, -50%);
    transition: transform .3s ease, opacity .3s ease;
}
.pb-faq-ico::after { transform: translate(-50%, -50%) rotate(90deg); }   /* navpična crta -> skupaj plus */
.pb-faq-q:hover .pb-faq-ico { background: #45a896; }
.pb-faq-q[aria-expanded="true"] .pb-faq-ico { background: #004d47; transform: rotate(180deg); }
.pb-faq-q[aria-expanded="true"] .pb-faq-ico::after { opacity: 0; transform: translate(-50%, -50%) rotate(0); } /* skrij navpicno -> minus */
/* Odgovor - gladka animacija odpiranja (visina) */
.pb-faq-a {
    overflow: hidden;
    max-height: 0;
    transition: max-height .3s ease;
}
.pb-faq-a-inner {
    padding: 0 4px 22px;
    color: #4a3f35;
    line-height: 1.8;
    font-size: 0.97rem;
}

/* ── Cover / Hero ────────────────────────────────────────── */
.pb-cover {
    clear: both; /* header in .obvestilo sta float:left - brez clear se cover (prvi blok) sesede v belo */
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #16110c; /* temno ozadje - cover nikoli ni bel, tudi če slika/overlay odpoveta */
    color: #fff;
}
.pb-cover--full { min-height: 100vh; }
.pb-cover--half { min-height: 60vh; }

.pb-cover-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transform: scale(1.04);
    transition: transform 8s ease-out;
}
.pb-cover:hover .pb-cover-bg { transform: scale(1); }

.pb-cover-overlay {
    position: absolute;
    inset: 0;
    background: rgba(10, 8, 5, 0.52);
    background-image: radial-gradient(rgba(0,0,0,0.35) 1px, transparent 1px);
    background-size: 3px 3px;
}

.pb-cover-content {
    position: relative;
    z-index: 2;
    text-align: center;
    padding: 60px 24px;
    max-width: 820px;
    width: 100%;
}

.pb-cover-title {
    font-size: clamp(2.4rem, 7vw, 5.2rem);
    font-weight: 300;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #fff;
    margin: 0 0 20px;
    line-height: 1.15;
}
.pb-cover-subtitle {
    font-size: clamp(0.9rem, 2vw, 1.15rem);
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.72);
    margin: 0;
    font-weight: 300;
}

/* Fade-up entry animation */
@keyframes pbFadeUp {
    from { opacity: 0; transform: translateY(28px); }
    to   { opacity: 1; transform: translateY(0); }
}
.animate-fadeup {
    animation: pbFadeUp 1.1s cubic-bezier(0.22, 1, 0.36, 1) both;
}
.animate-delay { animation-delay: 0.35s; }

/* ── Blockquote - Michelin ────────────────────────────────── */
.user_style blockquote,
.pb-text blockquote,
.contentRead blockquote {
    position: relative;
    margin: 42px 0;
    padding: 28px 36px 28px 52px;
    border: none;
    background: transparent;
    font-style: italic;
    font-size: 1.13rem;
    line-height: 1.85;
    color: #3a3028;
}
.user_style blockquote::before,
.pb-text blockquote::before,
.contentRead blockquote::before {
    content: '\201C';
    position: absolute;
    left: 10px;
    top: 10px;
    font-size: 5rem;
    line-height: 1;
    color: #c5b49e;
    font-family: Georgia, serif;
    font-style: normal;
}
.user_style blockquote::after,
.pb-text blockquote::after,
.contentRead blockquote::after {
    content: '';
    display: block;
    width: 42px;
    height: 1px;
    background: #c5b49e;
    margin-top: 20px;
}

/* ── Responsive ──────────────────────────────────────────── */
@media (max-width: 900px) {
    .pb-image-text-inner,
    .pb-image-text-inner.img-right {
        flex-direction: column;
        gap: 30px;
    }
    .pb-image-text-img {
        flex: none;
        width: 100%;
    }
    .pb-image-text-img img {
        height: 280px;
    }
    .pb-gallery-grid.cols-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 600px) {
    .pb-gallery-grid.cols-3,
    .pb-gallery-grid.cols-4 {
        grid-template-columns: repeat(2, 1fr);
    }
    .pb-gallery-grid.cols-2 {
        grid-template-columns: 1fr;
    }
    .pb-cta {
        padding: 55px 0;
    }
    .pb-h1 {
        padding: 35px 0 15px;
    }
}

/* ── H1 ozadje variante ──────────────────────────────────── */
.pb-h1--gold {
    background: #c9a96e;
    padding: 60px 0 40px;
}
.pb-h1--gold .pb-heading,
.pb-h1--gold .pb-subtitle { color: #2c2418; }
.pb-h1--gold .pb-h1-line  { background: rgba(44,36,24,.25); }

.pb-h1--dark {
    background: #2c2418;
    padding: 60px 0 40px;
}
.pb-h1--dark .pb-heading,
.pb-h1--dark .pb-subtitle { color: #f5ede0; }
.pb-h1--dark .pb-h1-line  { background: rgba(245,237,224,.25); }

/* ── H1 dekorativne črte ─────────────────────────────────── */
.pb-h1-line-wrap {
    display: flex;
    align-items: center;
    gap: 24px;
    width: 100%;
    max-width: 900px;
    margin: 0 auto 14px;
}
.pb-h1-line {
    flex: 1;
    height: 1px;
    background: rgba(44,36,24,.18);
    display: block;
}
.pb-h1--gold .pb-h1-line { background: rgba(44,36,24,.22); }
.pb-h1--dark .pb-h1-line { background: rgba(245,237,224,.22); }

/* ── Slika blok ──────────────────────────────────────────── */
.pb-slika { padding: 40px 0; }
.pb-slika--full { padding: 0; }
.pb-slika-figure { margin: 0; }
.pb-slika-figure img {
    width: 100%;
    display: block;
    object-fit: cover;
}
.pb-slika--contained .pb-slika-figure img {
    border-radius: 10px;
    max-height: 620px;
}
.pb-slika-figure figcaption {
    text-align: center;
    font-size: 0.85rem;
    color: #7a6e5f;
    font-style: italic;
    padding: 10px 0 0;
}

/* ── Novice blok ─────────────────────────────────────────── */
.pb-novice { padding: 60px 0; }
.pb-novice-title {
    text-align: center;
    font-size: clamp(1.6rem, 3.5vw, 2.2rem);
    font-weight: 400;
    letter-spacing: 0.05em;
    color: #2c2418;
    margin: 0 0 42px;
}
.pb-novice-grid {
    display: grid;
    gap: 28px;
}
.pb-novice-cols-3 { grid-template-columns: repeat(3, 1fr); }
.pb-novice-cols-2 { grid-template-columns: repeat(2, 1fr); }

.pb-novice-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    text-decoration: none;
    border: 1px solid #e8e4df;
    transition: box-shadow .2s, transform .2s;
}
.pb-novice-card:hover {
    box-shadow: 0 8px 32px rgba(44,36,24,.12);
    transform: translateY(-3px);
}
.pb-novice-img {
    aspect-ratio: 16 / 9;
    overflow: hidden;
}
.pb-novice-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease;
    display: block;
}
.pb-novice-card:hover .pb-novice-img img { transform: scale(1.05); }
.pb-novice-body {
    padding: 20px 22px 24px;
    display: flex;
    flex-direction: column;
    flex: 1;
}
.pb-novice-tag {
    font-size: 0.72rem;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #a0937f;
    font-weight: 700;
    margin-bottom: 8px;
}
.pb-novice-heading {
    font-size: 1.05rem;
    font-weight: 600;
    color: #2c2418;
    line-height: 1.4;
    margin: 0 0 10px;
}
.pb-novice-desc {
    font-size: 0.9rem;
    color: #7a6e5f;
    line-height: 1.65;
    margin: 0 0 14px;
    flex: 1;
}
.pb-novice-date {
    font-size: 0.8rem;
    color: #a0937f;
    margin-top: auto;
}

/* ── Obvestilo (frontend bar) ────────────────────────────── */
.pb-obvestilo {
    background: #c9a96e;
    color: #2c2418;
    padding: 14px 28px;
    text-align: center;
    font-size: 0.95rem;
    font-weight: 600;
    position: relative;
    width: 100%;
}
.pb-obvestilo a { color: inherit; text-decoration: underline; }
.pb-obvestilo-close {
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    font-size: 20px;
    cursor: pointer;
    color: inherit;
    opacity: .6;
    line-height: 1;
}
.pb-obvestilo-close:hover { opacity: 1; }
.pb-obvestilo small { font-weight: 400; font-size: 0.85em; display: block; }

@media (max-width: 768px) {
    .pb-novice-cols-3 { grid-template-columns: 1fr; }
    .pb-novice-cols-2 { grid-template-columns: 1fr; }
    .pb-h1-line-wrap  { gap: 14px; }
}

/* ── Cover - dodatni elementi (eyebrow, tagline, opis, gumbi) ─ */
.pb-cover-eyebrow {
    display: inline-block;
    font-size: 0.8rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    font-weight: 700;
    color: #d8b977;
    margin: 0 0 18px;
}
.pb-cover-tagline {
    font-size: clamp(1.05rem, 2.2vw, 1.4rem);
    color: #d8b977;
    font-weight: 400;
    letter-spacing: 0.03em;
    margin: 0 0 18px;
    line-height: 1.5;
}
.pb-cover-body {
    font-size: clamp(0.95rem, 1.6vw, 1.1rem);
    color: rgba(255,255,255,0.88);
    line-height: 1.8;
    max-width: 620px;
    margin: 0 auto 34px;
}
.pb-cover-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: center;
    margin-top: 8px;
}
.pb-cover-btn {
    display: inline-block;
    padding: 14px 34px;
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-decoration: none;
    border-radius: 6px;
    border: 2px solid transparent;
    transition: background .25s ease, color .25s ease, border-color .25s ease;
}
.pb-cover-btn--solid {
    background: #c9a96e;
    color: #2c2418;
    border-color: #c9a96e;
}
.pb-cover-btn--solid:hover {
    background: #d8b977;
    border-color: #d8b977;
}
.pb-cover-btn--outline {
    background: transparent;
    color: #fff;
    border-color: rgba(255,255,255,0.65);
}
.pb-cover-btn--outline:hover {
    background: #fff;
    color: #2c2418;
    border-color: #fff;
}

/* ── Image+Text - ikona-značka ───────────────────────────── */
.pb-image-text-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #f5ede0;
    color: #a0937f;
    font-size: 1.5rem;
    margin-bottom: 22px;
}

/* ── Features - ikona + naslov + opis ────────────────────── */
.pb-features {
    padding: 70px 0;
}
.pb-features-layout {
    display: flex;
    gap: 60px;
    align-items: flex-start;
}
.pb-features-layout.no-intro {
    display: block;
}
.pb-features-intro {
    flex: 0 0 34%;
}
.pb-features-title {
    font-size: clamp(1.5rem, 3vw, 2.1rem);
    font-weight: 400;
    color: #2c2418;
    letter-spacing: 0.04em;
    line-height: 1.3;
    margin: 0 0 18px;
}
.pb-features-sub {
    color: #7a6e5f;
    line-height: 1.8;
    margin: 0;
}
.pb-features-grid {
    flex: 1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 38px 40px;
}
.pb-features-layout.no-intro .pb-features-grid {
    margin-top: 0;
}
.pb-feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 12px;
    background: #f5ede0;
    color: #a0937f;
    font-size: 1.3rem;
    margin-bottom: 16px;
}
.pb-feature-title {
    font-size: 1.05rem;
    font-weight: 600;
    color: #2c2418;
    margin: 0 0 8px;
    line-height: 1.4;
}
.pb-feature-text {
    font-size: 0.92rem;
    color: #7a6e5f;
    line-height: 1.7;
    margin: 0;
}
/* Postavka kot flex stolpec (za poravnavo in enako visoke okvirje v vrstici) */
.pb-feature-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;               /* prepreči "grid blowout" - da se stolpec ne razširi čez rob */
}
.pb-feature-title,
.pb-feature-text { overflow-wrap: break-word; }
/* Sredinska poravnava postavk */
.pb-features-grid--center .pb-feature-item { align-items: center; text-align: center; }
/* Okvir / kartica okoli postavke */
.pb-feature-item--card {
    background: #ffffff;
    border: 1px solid #ece4d8;
    border-radius: 14px;
    padding: 26px 24px;
}
/* Število stolpcev (privzeto 3) */
.pb-features-grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
.pb-features-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }

/* ── Cards - logotip + naslov + opis + povezava ──────────── */
.pb-cards {
    padding: 70px 0;
}
.pb-cards-title {
    text-align: center;
    font-size: clamp(1.5rem, 3vw, 2.1rem);
    font-weight: 400;
    color: #2c2418;
    letter-spacing: 0.04em;
    margin: 0 0 44px;
}
.pb-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}
.pb-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #e8e4df;
    border-radius: 12px;
    padding: 28px 26px 26px;
    transition: box-shadow .2s ease, transform .2s ease;
}
.pb-card:hover {
    box-shadow: 0 12px 36px rgba(44,36,24,.12);
    transform: translateY(-3px);
}
.pb-card-logo {
    height: 46px;
    margin-bottom: 18px;
    display: flex;
    align-items: center;
}
.pb-card-logo img {
    max-height: 46px;
    max-width: 160px;
    width: auto;
    object-fit: contain;
    display: block;
}
.pb-card-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2c2418;
    margin: 0 0 10px;
    line-height: 1.4;
}
.pb-card-text {
    font-size: 0.92rem;
    color: #7a6e5f;
    line-height: 1.7;
    margin: 0 0 18px;
    flex: 1;
}
.pb-card-link {
    align-self: flex-start;
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #a0937f;
    text-decoration: none;
    transition: color .2s ease, gap .2s ease;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: auto;
}
.pb-card-link:hover {
    color: #2c2418;
}
.pb-card-link i {
    font-size: 0.78rem;
    transition: transform .2s ease;
}
.pb-card-link:hover i {
    transform: translateX(3px);
}

/* ── Responsive - features / cards ───────────────────────── */
@media (max-width: 900px) {
    .pb-features-layout {
        flex-direction: column;
        gap: 34px;
    }
    .pb-features-intro { flex: none; width: 100%; }
    .pb-features-grid,
    .pb-features-grid.cols-3,
    .pb-features-grid.cols-4 { grid-template-columns: repeat(2, 1fr); }
    .pb-cards-grid     { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .pb-cards-grid { grid-template-columns: 1fr; }
    /* Prednosti na telefonu: kompaktna 2-stolpčna mreža - več ikon skupaj, vse vidne */
    .pb-features-grid,
    .pb-features-grid.cols-2,
    .pb-features-grid.cols-3,
    .pb-features-grid.cols-4 {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px 12px;
    }
    /* postavke centrirane in kompaktne - lepša, urejena mreža */
    .pb-features-grid .pb-feature-item { align-items: center; text-align: center; }
    .pb-features-grid .pb-feature-icon { width: 46px; height: 46px; font-size: 1.2rem; margin-bottom: 10px; }
    .pb-features-grid .pb-feature-title { font-size: 0.95rem; }
    .pb-features-grid .pb-feature-text  { font-size: 0.84rem; line-height: 1.5; }
    /* v okvirju (card) na telefonu malo manj paddinga */
    .pb-features-grid .pb-feature-item--card { padding: 18px 12px; }
    .pb-features,
    .pb-cards { padding: 50px 0; }
    .pb-cover-actions { flex-direction: column; }
    .pb-cover-btn { width: 100%; text-align: center; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   ENOTNI GUMBI BLOKOV  (pb_button() helper)
   Barva prek inline --pb-btn-c / --pb-btn-t · 4 animacije · ikona levo
   ═══════════════════════════════════════════════════════════════════════════ */
.pb-btn {
    --pb-btn-c: #e8c87a;            /* privzeta barva (zlata) - povozi inline ali kontekst */
    --pb-btn-t: #1a1410;            /* privzeto kontrastno besedilo */
    display: inline-flex;
    align-items: center;           /* ikona + besedilo navpično poravnana */
    justify-content: center;
    gap: 10px;                     /* razmik ikona ↔ besedilo */
    padding: 14px 30px;
    border-radius: 6px;
    border: 2px solid var(--pb-btn-c);
    font-weight: 600;
    font-size: 0.95rem;
    letter-spacing: .02em;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: transform .25s ease, box-shadow .25s ease, background-color .3s ease, color .3s ease, filter .3s ease;
    -webkit-tap-highlight-color: transparent;
}
.pb-btn-ico { font-size: .95em; line-height: 1; flex: 0 0 auto; position: relative; z-index: 1; }
.pb-btn-txt { position: relative; z-index: 1; }

/* variante */
.pb-btn--solid   { background: var(--pb-btn-c); color: var(--pb-btn-t); }
.pb-btn--outline { --pb-btn-c: currentColor; background: transparent; color: var(--pb-btn-c); }

/* ── Animacija: FILL (polnilo zdrsne) ── */
.pb-btn-anim-fill::before {
    content: ''; position: absolute; inset: 0; z-index: 0;
    transform: translateX(-101%); transition: transform .35s ease;
}
.pb-btn--solid.pb-btn-anim-fill::before   { background: rgba(0,0,0,.18); }
.pb-btn--outline.pb-btn-anim-fill::before { background: var(--pb-btn-c); }
.pb-btn-anim-fill:hover::before           { transform: translateX(0); }
.pb-btn--outline.pb-btn-anim-fill:hover   { color: var(--pb-btn-t); }

/* ── Animacija: SCALE (poveča + senca) ── */
.pb-btn-anim-scale:hover { transform: translateY(-2px) scale(1.03); box-shadow: 0 9px 24px rgba(0,0,0,.20); }

/* ── Animacija: SHINE (svetlobni preblisk) ── */
.pb-btn-anim-shine::after {
    content: ''; position: absolute; top: 0; left: -75%; width: 50%; height: 100%; z-index: 2;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,.55), transparent);
    transform: skewX(-20deg); pointer-events: none;
}
.pb-btn-anim-shine:hover::after { left: 130%; transition: left .7s ease; }
.pb-btn-anim-shine:hover        { transform: translateY(-1px); }

/* ── Animacija: BORDER (podčrtaj zraste) ── */
.pb-btn-anim-border::after {
    content: ''; position: absolute; left: 50%; bottom: 6px; width: 0; height: 2px; z-index: 2;
    background: currentColor; transform: translateX(-50%); transition: width .3s ease; pointer-events: none;
}
.pb-btn-anim-border:hover::after        { width: calc(100% - 36px); }
.pb-btn--solid.pb-btn-anim-border:hover { filter: brightness(1.08); }

/* Privzeti gumbi na TEMNIH blokih (cover/video) brez izbrane barve:
   solid = zlata, outline = bela - ohrani obstoječi videz; izbrana barva (inline) povozi. */
.pb-cover .pb-btn--solid:not([style]),
.pb-video-cover .pb-btn--solid:not([style])   { --pb-btn-c: #e8c87a; --pb-btn-t: #1a1410; }
.pb-cover .pb-btn--outline:not([style]),
.pb-video-cover .pb-btn--outline:not([style]) { --pb-btn-c: #ffffff; --pb-btn-t: #1a1410; }

@media (max-width: 600px) { .pb-btn { width: 100%; } }

/* ── Romb / diamantni rez cover medija ──────────────────────────────────────
   clip-path nanesemo SAMO na medijske plasti (slika + overlay), NE na vsebnik -
   tako ostane vsebina (naslov, gumbi, značke) cela. Globino krmili --pb-cut (inline). */
/* Oblika 1 - DIAMANT spodaj (konica navzdol, romb) */
.pb-cover--cut-diamond .pb-cover-img,
.pb-cover--cut-diamond .pb-cover-overlay {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--pb-cut, 70px)), 50% 100%, 0 calc(100% - var(--pb-cut, 70px)));
}
/* Oblika 2 - POŠEVNO spodaj (diagonalni rez) */
.pb-cover--cut-diag .pb-cover-img,
.pb-cover--cut-diag .pb-cover-overlay {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--pb-cut, 90px)));
}
/* Oblika 3 - NAVPIČNO desno (stranska konica, vertikalni rez) */
.pb-cover--cut-vert .pb-cover-img,
.pb-cover--cut-vert .pb-cover-overlay {
    clip-path: polygon(0 0, 100% 0, calc(100% - var(--pb-cut, 90px)) 50%, 100% 100%, 0 100%);
}
@media (max-width: 768px) {
    /* manjši rez na mobilu (~60 % izbrane globine) */
    .pb-cover--cut-diamond .pb-cover-img,
    .pb-cover--cut-diamond .pb-cover-overlay {
        clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--pb-cut, 70px) * 0.6), 50% 100%, 0 calc(100% - var(--pb-cut, 70px) * 0.6));
    }
    .pb-cover--cut-diag .pb-cover-img,
    .pb-cover--cut-diag .pb-cover-overlay {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--pb-cut, 90px) * 0.6));
    }
    .pb-cover--cut-vert .pb-cover-img,
    .pb-cover--cut-vert .pb-cover-overlay {
        clip-path: polygon(0 0, 100% 0, calc(100% - var(--pb-cut, 90px) * 0.6) 50%, 100% 100%, 0 100%);
    }
}

/* ── Značke (logotipi / priznanja) na cover + video ────────────────────────── */
.pb-znacke {
    display: flex;
    align-items: center;
    gap: 22px;
    flex-wrap: wrap;
    margin-top: 30px;
}
.pb-znacka {
    height: 58px;
    width: auto;
    display: block;
    filter: drop-shadow(0 6px 18px rgba(0,0,0,0.35));
}
.pb-video-cta .pb-znacke { margin-top: 26px; justify-content: center; }
/* Napis (Naslov) POD značko */
.pb-znacke--labeled { gap: 34px; align-items: flex-start; }
.pb-znacka-item { display: flex; flex-direction: column; align-items: center; gap: 9px; margin: 0; }
.pb-znacka-label {
    font-size: 0.85rem;
    line-height: 1.3;
    letter-spacing: 0.02em;
    color: #fff;
    max-width: 170px;
    text-align: center;
}
@media (max-width: 768px) {
    .pb-znacke--labeled { gap: 22px; }
    .pb-znacka-label { font-size: 0.74rem; max-width: 120px; }
}
/* Položaj značk zgoraj/spodaj - absolutno, VEDNO vodoravno centrirano */
.pb-znacke-pos {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 4;
    display: flex;
    justify-content: center;
    padding: 0 16px;
    pointer-events: none;
}
.pb-znacke-pos .pb-znacke { margin-top: 0; }
.pb-znacke-pos--top    { top: clamp(22px, 5vh, 56px); }
.pb-znacke-pos--bottom { bottom: clamp(22px, 5vh, 56px); }
@media (max-width: 768px) {
    .pb-znacke  { gap: 16px; margin-top: 22px; }
    .pb-znacka  { height: 44px; }
}

/* ── Galerija: LOGOTIPI (horizontalni auto-scroll trak, kot vrtiljak) ───────── */
.pb-logos {
    overflow: hidden;
    width: 100%;
    cursor: grab;
    touch-action: pan-y;
    -webkit-user-select: none;
    user-select: none;
}
.pb-logos.dragging { cursor: grabbing; }
.pb-logos-track {
    display: flex;
    align-items: center;
    gap: 64px;
    width: max-content;
    will-change: transform;
}
/* vsi logotipi enako visoki, širina samodejna (brez popačenja) */
.pb-logos-track .pb-logo {
    height: var(--pb-logo-h, 100px);
    width: auto;
    display: block;
    object-fit: contain;
    -webkit-user-drag: none;
    user-drag: none;
    pointer-events: none;
}
@media (max-width: 768px) { .pb-logos-track { gap: 42px; } }

/* ── Kratka poudarkna crta pod naslovom (vsi bloki) ────────── */
/* Ovoj naslov+crta: sirina = naslov (fit-content), poravnan levo/sredina/desno */
/* Naslov + crta imata povsod enak, standarden razmik do vsebine spodaj (brez izbire) */
.pb-thead { width: fit-content; max-width: 100%; margin-bottom: 22px; }
.pb-thead--left   { margin-right: auto; }
.pb-thead--center { margin-left: auto; margin-right: auto; }
.pb-thead--right  { margin-left: auto; }
/* naslov v ovoju: brez spodnjega roba, da je razmik do crte simetricen */
.pb-thead > h1, .pb-thead > h2, .pb-thead > h3 { margin-bottom: 0; }
/* Crta: relativna na sirino naslova; 4 opcije; simetricen razmik (zgoraj=spodaj) */
.pb-tline {
    display: block;
    height: 3px;
    width: 58px;
    border-radius: 2px;
    background: #e8c87a;
    margin: 12px 0;
}
.pb-tline--full   { width: 100%; }
.pb-tline--left   { margin-left: 0; margin-right: auto; }
.pb-tline--center { margin-left: auto; margin-right: auto; }
.pb-tline--right  { margin-left: auto; margin-right: 0; }
/* Velikost + italic naslova (nastavljivo, poenoteno cez bloke).
   !important: izrecna izbira velikosti VEDNO povozi privzeto velikost razreda naslova bloka. */
.pb-thead--size-sm h1, .pb-thead--size-sm h2, .pb-thead--size-sm h3, .pb-thead--size-sm p, .pb-thead--size-sm figcaption { font-size: 1.05rem !important; }
.pb-thead--size-md h1, .pb-thead--size-md h2, .pb-thead--size-md h3, .pb-thead--size-md p, .pb-thead--size-md figcaption { font-size: 1.6rem !important; }
.pb-thead--size-lg h1, .pb-thead--size-lg h2, .pb-thead--size-lg h3, .pb-thead--size-lg p, .pb-thead--size-lg figcaption { font-size: 2.2rem !important; }
.pb-thead--size-xl h1, .pb-thead--size-xl h2, .pb-thead--size-xl h3, .pb-thead--size-xl p, .pb-thead--size-xl figcaption { font-size: clamp(2.4rem, 5vw, 3.4rem) !important; }
.pb-thead--italic h1, .pb-thead--italic h2, .pb-thead--italic h3, .pb-thead--italic p, .pb-thead--italic figcaption { font-style: italic; }

/* ── Predogled: skrit (izklopljen) blok - vidno oznacen, na zivi strani ga ni ── */
.pb-preview-hidden { position: relative; outline: 2px dashed #c0392b; outline-offset: -2px; }
.pb-preview-hidden > * { opacity: .55; filter: grayscale(.35); }
.pb-preview-hidden::before {
    content: "SKRITO - ni vkljuceno (predogled)";
    position: absolute; top: 0; left: 0; z-index: 50;
    background: #c0392b; color: #fff;
    font: 700 11px/1 Arial, sans-serif; letter-spacing: .04em;
    padding: 6px 10px; border-bottom-right-radius: 6px;
    pointer-events: none;
}

/* ── Locilnica (fleha) - prenova: oblike + velikost + barva (currentColor) ── */
.pb-fleha-icons { display: flex; align-items: center; justify-content: center; color: #a0937f; }
.pb-fleha-dots  { display: flex; align-items: center; justify-content: center; color: #c5b49e; }
.pb-fleha-dots span { display: inline-block; border-radius: 50%; background: currentColor; margin: 0; }
.pb-fleha--small  .pb-fleha-icons { font-size: 1rem;    gap: 12px; padding: 18px 0; }
.pb-fleha--medium .pb-fleha-icons { font-size: 1.45rem; gap: 16px; padding: 28px 0; }
.pb-fleha--large  .pb-fleha-icons { font-size: 2.2rem;  gap: 22px; padding: 42px 0; }
.pb-fleha--small  .pb-fleha-dots  { gap: 8px;  padding: 20px 0; }
.pb-fleha--medium .pb-fleha-dots  { gap: 11px; padding: 32px 0; }
.pb-fleha--large  .pb-fleha-dots  { gap: 16px; padding: 44px 0; }
.pb-fleha--small  .pb-fleha-dots span { width: 6px;  height: 6px; }
.pb-fleha--medium .pb-fleha-dots span { width: 9px;  height: 9px; }
.pb-fleha--large  .pb-fleha-dots span { width: 13px; height: 13px; }
.pb-fleha--small  .pb-fleha-line { max-width: 220px; }
.pb-fleha--large  .pb-fleha-line { max-width: 480px; }
