@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700&display=swap');

/* ============================================= */
/* NINA'S RECIPE CARDS — EQUAL CARD HEIGHTS      */
/* ============================================= */

/* DESKTOP */
@media (min-width: 783px) {

    .wp-block-group.is-layout-grid {
        display: grid;
        gap: 28px;
        align-items: stretch;
    }

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

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

    .wp-block-group.is-layout-grid > .wp-block-group {
        position: relative;
        display: flex;
        flex-direction: column;
        height: 100%;
        min-height: 480px;
        background: #fff;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 10px 25px rgba(0,0,0,0.08),
                    0 4px 10px rgba(0,0,0,0.04);
        transition: transform 0.25s ease, box-shadow 0.25s ease;
    }

    .wp-block-group.is-layout-grid > .wp-block-group:hover {
        transform: translateY(-6px);
        box-shadow: 0 18px 40px rgba(0,0,0,0.12);
    }

    .wp-block-group.is-layout-grid > .wp-block-group > * {
        margin: 0 !important;
    }

    .wp-block-group.is-layout-grid .wp-block-image {
        position: relative;
        z-index: 2;
        width: 100%;
        padding-bottom: 150%;
        overflow: hidden;
        flex-shrink: 0;
        margin: 0 0 8px 0 !important;
    }

    .wp-block-group.is-layout-grid .wp-block-image img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform 0.5s ease;
    }

    .wp-block-group.is-layout-grid > .wp-block-group:hover .wp-block-image img {
        transform: scale(1.08);
    }

    .wp-block-group.is-layout-grid h2,
    .wp-block-group.is-layout-grid h3 {
        position: relative;
        z-index: 2;
        padding: 0 20px;
        margin: 0 0 14px 0 !important;
        line-height: 1.25;
        min-height: 96px;
    }

    .wp-block-group.is-layout-grid p:not(.card-label) {
        position: relative;
        z-index: 2;
        padding: 0 20px;
        margin: 0 0 14px 0 !important;
    }

    .card-label,
    .wp-block-group.is-layout-grid p.card-label {
        position: relative;
        z-index: 2;
        margin-top: auto !important;
        background: #b7ae8a;
        color: #fff !important;
        padding: 14px 20px;
        border-radius: 0 0 12px 12px;
        line-height: 1.2;
    }

    .card-label a,
    .wp-block-group.is-layout-grid p.card-label a,
    .card-label a:link,
    .card-label a:visited,
    .card-label a:hover,
    .card-label a:focus,
    .card-label a:active,
    .wp-block-group.is-layout-grid p.card-label a:link,
    .wp-block-group.is-layout-grid p.card-label a:visited,
    .wp-block-group.is-layout-grid p.card-label a:hover,
    .wp-block-group.is-layout-grid p.card-label a:focus,
    .wp-block-group.is-layout-grid p.card-label a:active {
        display: inline !important;
        color: #fff !important;
        font: inherit !important;
        font-family: inherit !important;
        font-size: inherit !important;
        font-weight: inherit !important;
        font-style: inherit !important;
        line-height: inherit !important;
        letter-spacing: inherit !important;
        text-decoration: none !important;
        background: none !important;
        border: 0 !important;
        box-shadow: none !important;
    }
}

/* MOBILE */
@media (max-width: 782px) {

    .wp-block-group.is-layout-grid {
        display: flex;
        flex-direction: column;
        gap: 32px;
    }

    .wp-block-group.is-layout-grid > .wp-block-group {
        position: relative;
        display: flex;
        flex-direction: column;
        background: #fff;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 8px 18px rgba(0,0,0,0.06);
    }

    .wp-block-group.is-layout-grid > .wp-block-group > * {
        margin: 0 !important;
    }

    .wp-block-group.is-layout-grid .wp-block-image {
        position: relative;
        z-index: 2;
        margin: 0 0 7px 0 !important;
    }

    .wp-block-group.is-layout-grid .wp-block-image img {
        width: 100%;
        height: auto;
        position: static;
        display: block;
    }

    .wp-block-group.is-layout-grid h2,
    .wp-block-group.is-layout-grid h3 {
        position: relative;
        z-index: 2;
        padding: 0 18px;
        margin: 0 0 12px 0 !important;
        line-height: 1.25;
        min-height: auto;
    }

    .wp-block-group.is-layout-grid p:not(.card-label) {
        position: relative;
        z-index: 2;
        padding: 0 18px;
        margin: 0 0 12px 0 !important;
    }

    .card-label,
    .wp-block-group.is-layout-grid p.card-label {
        position: relative;
        z-index: 2;
        margin-top: auto !important;
        background: #b7ae8a;
        color: #fff !important;
        padding: 14px 18px;
        border-radius: 0 0 12px 12px;
        line-height: 1.2;
    }

    .card-label a,
    .wp-block-group.is-layout-grid p.card-label a,
    .card-label a:link,
    .card-label a:visited,
    .card-label a:hover,
    .card-label a:focus,
    .card-label a:active,
    .wp-block-group.is-layout-grid p.card-label a:link,
    .wp-block-group.is-layout-grid p.card-label a:visited,
    .wp-block-group.is-layout-grid p.card-label a:hover,
    .wp-block-group.is-layout-grid p.card-label a:focus,
    .wp-block-group.is-layout-grid p.card-label a:active {
        display: inline !important;
        color: #fff !important;
        font: inherit !important;
        font-family: inherit !important;
        font-size: inherit !important;
        font-weight: inherit !important;
        font-style: inherit !important;
        line-height: inherit !important;
        letter-spacing: inherit !important;
        text-decoration: none !important;
        background: none !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    /* ========================================= */
    /* NOVO: GRID-4 NA MOBILE = 2 KOLONI (2 x 2) */
    /* ========================================= */

    .wp-block-group.is-layout-grid.grid-4 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
        align-items: stretch;
    }

    .wp-block-group.is-layout-grid.grid-4 > .wp-block-group {
        height: 100%;
        min-width: 0;
        border-radius: 10px;
        box-shadow: 0 6px 14px rgba(0,0,0,0.07);
    }

    /* slika: enaka razmerja pri vseh karticah */
    .wp-block-group.is-layout-grid.grid-4 .wp-block-image {
        margin: 0 !important;
        width: 100%;
    }

    .wp-block-group.is-layout-grid.grid-4 .wp-block-image img {
        width: 100%;
        height: auto;
        aspect-ratio: 3 / 4;
        object-fit: cover;
        display: block;
    }

    /* odstrani prazen prostor nad oznako */
    .wp-block-group.is-layout-grid.grid-4 > .wp-block-group > *:empty {
        display: none !important;
    }

    .wp-block-group.is-layout-grid.grid-4 h2,
    .wp-block-group.is-layout-grid.grid-4 h3 {
        padding: 0 10px;
        margin: 8px 0 8px 0 !important;
        font-size: 15px !important;
        line-height: 1.25;
    }

    .wp-block-group.is-layout-grid.grid-4 p:not(.card-label) {
        padding: 0 10px;
        margin: 0 0 8px 0 !important;
        font-size: 13px !important;
    }

    /* manjša oznaka (Plant-Based, Vegetarian, ...) */
    .wp-block-group.is-layout-grid.grid-4 .card-label,
    .wp-block-group.is-layout-grid.grid-4 p.card-label {
        padding: 10px 10px !important;
        border-radius: 0 0 10px 10px;
        font-size: clamp(13px, 3.8vw, 16px) !important;
        line-height: 1.2;
        text-align: center;
        overflow-wrap: anywhere;
    }
}

@media (max-width: 768px) {
  .site-header,
  #masthead,
  #site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 9999;
    background: #fff;
  }

  body {
    padding-top: 70px;
  }
}

/* MOBILE HOME BUTTON */
.mobile-only-home-btn {
  display: none !important;
}

@media (max-width: 1024px) {
  .mobile-only-home-btn,
  .mobile-only-home-btn *,
  .mobile-only-home-btn a,
  .mobile-only-home-btn .wp-block-button__link {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 12px 0 0 !important;
    color: #222 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .mobile-only-home-btn:hover,
  .mobile-only-home-btn:focus,
  .mobile-only-home-btn:active,
  .mobile-only-home-btn a:hover,
  .mobile-only-home-btn a:focus,
  .mobile-only-home-btn a:active,
  .mobile-only-home-btn .wp-block-button__link:hover,
  .mobile-only-home-btn .wp-block-button__link:focus,
  .mobile-only-home-btn .wp-block-button__link:active {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    color: #222 !important;
    text-decoration: none !important;
  }
}

@media (min-width: 1025px) {
  .mobile-only-home-btn,
  .mobile-only-home-btn *,
  .mobile-only-home-btn a,
  .mobile-only-home-btn .wp-block-button__link {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
}

/* ADDTOANY — MINIMAL */
@media (max-width: 1024px) {
  .addtoany_shortcode .a2a_kit_size_34.addtoany_list {
    display: inline-flex !important;
    gap: 8px !important;
  }

  .addtoany_shortcode .a2a_kit_size_34.addtoany_list > a {
    display: inline-flex !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
  }

  .addtoany_shortcode .a2a_kit_size_34.addtoany_list > a svg,
  .addtoany_shortcode .a2a_kit_size_34.addtoany_list > a span.a2a_svg {
    display: block !important;
    width: 34px !important;
    height: 34px !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .addtoany_shortcode .a2a_kit_size_34.addtoany_list > a svg path {
    fill: currentColor !important;
    opacity: 1 !important;
  }
}

/* HOME samo – manjši razmak med "Latest Recipes" in grid blokom */
.home .wp-block-post-content > p + .wp-block-group.is-layout-grid,
.home .wp-block-post-content > .wp-block-paragraph + .wp-block-group.is-layout-grid {
  margin-top: 10px !important;
}

/* če theme dodaja velik gap med vsemi bloki */
.home .wp-block-post-content > * + * {
  margin-block-start: 10px;
}
.home .latest-recipes-title {
  margin-bottom: 40px !important;
  padding-bottom: 0 !important;
}

.home .latest-recipes-title + * {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.home .wp-block-post-content > .latest-recipes-title {
  margin-bottom: 40px !important;
}

.home .wp-block-post-content > .latest-recipes-title + * {
  margin-block-start: 0 !important;
  margin-top: 0 !important;
}
@media (max-width: 768px) {
  #trp-floater-ls,
  body #trp-floater-ls,
  body #trp-floater-ls.trp-bottom-right {
    right: 40px !important;
    left: auto !important;
    bottom: 20px !important;
  }
}
/* DESKTOP HEADER FIXED */
@media (min-width: 1025px) {
  .site-header,
  #masthead,
  #site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 9999;
    background: #fff;
  }

  body {
    padding-top: 90px;
  }
}
@media (max-width: 768px) {
  .home .wp-block-post-content {
    gap: 0 !important;
  }

  .home .home-hero-title {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .home .home-hero-title + * {
    margin-block-start: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .home .home-hero-title + .wp-block-image,
  .home .home-hero-title + figure,
  .home .home-hero-title + .wp-block-group,
  .home .home-hero-title + .wp-block-cover,
  .home .home-hero-title + .wp-block-spacer {
    margin-block-start: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* ============================================= */
/* HOME HERO TITLE — REAL FOOD for REAL FAMILIES */
/* ============================================= */

.home-hero-mixed {
  text-align: center;
  margin: 0 0 10px 0;
  line-height: 1.1;
  white-space: nowrap;
  font-size: 35px;
  font-family: 'Figtree', sans-serif;
}

.hero-line-1 {
  color: #111;
  font-family: 'Figtree', sans-serif;
  margin-right: 6px;
}

.hero-line-2 {
  color: #ccb46d;
  font-family: 'Figtree', sans-serif;
  margin-left: -2px;
}

@media (max-width: 768px) {
  .home-hero-mixed {
    font-size: 16px;
  }
}
/* HOME HERO SPACING FIX */
.home-hero-mixed,
p.home-hero-mixed {
  font-size: 22px;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.home .home-hero-mixed + .wp-block-image,
.home .home-hero-mixed + figure,
.home .home-hero-mixed + .wp-block-group,
.home .home-hero-mixed + .wp-block-cover,
.home .home-hero-mixed + .wp-block-spacer {
  margin-top: 6px !important;
}
/* EQUAL SPACE ABOVE AND BELOW HERO TITLE */
.home .home-hero-mixed,
.home p.home-hero-mixed {
  margin-top: 6px !important;
  margin-bottom: 6px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 1 !important;
}
/* HOME TOP SPACE FIX */
@media (min-width: 1025px) {
  body.home {
    padding-top: 52px !important;
  }

  .home .wp-block-post-content,
  .home .entry-content,
  .home main {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .home .home-hero-mixed,
  .home p.home-hero-mixed {
    margin-top: 0 !important;
    padding-top: 0 !important;
    line-height: 1 !important;
  }
}

.home-hero-mixed {
  margin: 0;
  text-align: center;
  line-height: 1;
  white-space: nowrap;
  font-family: 'Figtree', sans-serif;
  font-size: 22px;
}

.hero-line-1 {
  color: #111;
  font-family: 'Figtree', sans-serif;
  margin-right: 6px;
}

.hero-line-2 {
  color: #ccb46d;
  font-family: 'Figtree', sans-serif;
  margin-left: -2px;
}

@media (max-width: 768px) {
  .home-hero-mixed {
    font-size: 16px;
  }
}

.hero-food,
.hero-families {
  display: inline-block;
  font-family: 'Figtree', sans-serif !important;
  font-size: 22px !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: middle;
}

.hero-food {
  color: #111 !important;
  margin-right: 6px !important;
}

.hero-families {
  color: #ccb46d !important;
  margin-left: -2px !important;
}

@media (max-width: 768px) {
  .hero-food,
  .hero-families {
    font-size: 16px !important;
  }
}
.single-post .has-small-font-size,
.single-post p[style*="font-size:14px"],
.single-post li[style*="font-size:14px"] {
  font-size: 16px !important;
}

/* ============================================================= */
/* MOBILE: GRID S 4 KARTICAMI = 2 x 2 (mora biti na koncu datoteke) */
/* Samodejno za Grid s 4 skupinami, ki NI takoj za odstavkom        */
/* (torej ne za "Latest Recipes"), ali za razred "mobile-2col"      */
/* ============================================================= */
@media (max-width: 782px) {

  body .wp-block-group.is-layout-grid.mobile-2col,
  body .wp-block-group.is-layout-grid:has(> .wp-block-group:nth-child(4):last-child):not(p + *):not(.wp-block-paragraph + *) {
    display: grid !important;
    flex-direction: row !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important;
  }

  body .wp-block-group.is-layout-grid.mobile-2col > .wp-block-group,
  body .wp-block-group.is-layout-grid:has(> .wp-block-group:nth-child(4):last-child):not(p + *):not(.wp-block-paragraph + *) > .wp-block-group {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    gap: 0 !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 14px rgba(0,0,0,0.07) !important;
  }

  body .wp-block-group.is-layout-grid.mobile-2col .wp-block-image,
  body .wp-block-group.is-layout-grid:has(> .wp-block-group:nth-child(4):last-child):not(p + *):not(.wp-block-paragraph + *) .wp-block-image {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }

  body .wp-block-group.is-layout-grid.mobile-2col .wp-block-image img,
  body .wp-block-group.is-layout-grid:has(> .wp-block-group:nth-child(4):last-child):not(p + *):not(.wp-block-paragraph + *) .wp-block-image img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 4 !important;
    object-fit: cover !important;
    display: block !important;
  }

  body .wp-block-group.is-layout-grid.mobile-2col > .wp-block-group > *:empty,
  body .wp-block-group.is-layout-grid:has(> .wp-block-group:nth-child(4):last-child):not(p + *):not(.wp-block-paragraph + *) > .wp-block-group > *:empty {
    display: none !important;
  }

  body .wp-block-group.is-layout-grid.mobile-2col p.card-label,
  body .wp-block-group.is-layout-grid:has(> .wp-block-group:nth-child(4):last-child):not(p + *):not(.wp-block-paragraph + *) p.card-label {
    padding: 10px 8px !important;
    border-radius: 0 0 10px 10px !important;
    font-size: clamp(13px, 3.8vw, 16px) !important;
    line-height: 1.2 !important;
    text-align: center !important;
    margin-top: auto !important;
    overflow-wrap: anywhere;
  }
}

/* ============================================================= */
/* MOBILE: FIKSNA SLIKA V OZADJU (header + footer slika na HOME)  */
/* Posnema desktop "parallax": slika miruje, vsebina drsi čez njo */
/* ============================================================= */
@media (max-width: 1024px) {

  .home .wp-block-cover.has-parallax,
  .home [style*="background-attachment: fixed"],
  .home [style*="background-attachment:fixed"] {
    position: relative !important;
    background-attachment: scroll !important;
    clip-path: inset(0) !important;
    overflow: hidden;
  }

  .home .wp-block-cover.has-parallax::before,
  .home [style*="background-attachment: fixed"]::before,
  .home [style*="background-attachment:fixed"]::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    height: 100lvh;
    background-image: inherit;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    z-index: 0;
    pointer-events: none;
  }

  /* barvni overlay in vsebina ostaneta nad sliko */
  .home .wp-block-cover.has-parallax > .wp-block-cover__background,
  .home .wp-block-cover.has-parallax > .wp-block-cover__gradient-background {
    z-index: 1 !important;
  }

  .home .wp-block-cover.has-parallax > .wp-block-cover__inner-container {
    position: relative;
    z-index: 2;
  }
}

/* ============================================================= */
/* MOBILE: FIKSNA SLIKA ZA SPECTRA CONTAINER BLOKE                */
/* Velja za bloka 5a9fdddd, 5bd66836 + vsak blok z razredom "fixed-bg-mobile" */
/* ============================================================= */
@media (max-width: 1024px) {

  .home .uagb-block-5a9fdddd,

  .home .uagb-block-5bd66836,
  .home .fixed-bg-mobile {
    position: relative !important;
    background-attachment: scroll !important;
    clip-path: inset(0) !important;
  }

  /* fiksna slika (prevzame sliko, velikost in pozicijo bloka) */
  .home .uagb-block-5a9fdddd::after,
  .home .uagb-block-5bd66836::after,
  .home .fixed-bg-mobile::after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    height: 100lvh;
    background-image: inherit;
    background-size: cover;
    background-position: inherit;
    background-repeat: no-repeat;
    z-index: 0;
    pointer-events: none;
  }

  /* Spectra overlay (::before) ostane nad sliko */
  .home .uagb-block-5a9fdddd::before,
  .home .uagb-block-5bd66836::before,
  .home .fixed-bg-mobile::before {
    z-index: 1 !important;
  }

  /* vsebina nad vsem */
  .home .uagb-block-5a9fdddd > *,
  .home .uagb-block-5bd66836 > *,
  .home .fixed-bg-mobile > * {
    position: relative;
    z-index: 2;
  }
}

/* ============================================================= */
/* ZGORNJA SLIKA (blok 5a9fdddd): manjši zoom, da se vidi več slike */
/* Prilagodi: "58lvh" -> manj = več slike vidne, več = bolj zoom    */
/* ============================================================= */
@media (max-width: 1024px) {

  .home .uagb-block-5a9fdddd {
    background-image: none !important;
    background-color: var(--ast-global-color-7);
  }

  .home .uagb-block-5a9fdddd::after {
    background-image: url("https://ninasfamilykitchen.com/wp-content/uploads/2026/10/2N8A4963.jpg") !important;
    background-size: auto 58vh !important;
    background-size: auto 58lvh !important;
    background-position: 55% 25% !important;
    background-repeat: no-repeat !important;
    -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 4%, #000 88%, transparent 100%);
    mask-image: linear-gradient(to bottom, transparent 0, #000 4%, #000 88%, transparent 100%);
  }
}

/* ============================================================= */
/* TABLET (600-1024 px): zgornja slika brez praznih robov         */
/* ============================================================= */
@media (min-width: 600px) and (max-width: 1024px) {

  .home .uagb-block-5a9fdddd::after {
    background-size: cover !important;
    background-position: 55% 48% !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }
}