/* 
Theme Name: upgarden 
Description: Custom child theme for Kadence
Author: Lauren Blue Tucker
Template: kadence
Version: 1.0.0 
*/

/*------------------------------------------------------------------------------
---> BRANDING
------------------------------------------------------------------------------*/

/* 
--> UpGarden Logo Color Space Values
* CMYK: C=31 M=0 Y=99 K=0
* RGB: R=190 G=215 B=50
* Hexadecimal: #bed732
* Name: lime green (yellow-green)

--> Theme Colors
var(--global-palette1) #357523 rgb(53, 117, 35) // fern green
var(--global-palette2) #bee39e rgb(190, 227, 158) // pale pistachio
var(--global-palette3) #353E38 rgb(53, 62, 56) // charcoal moss (headings)
var(--global-palette4) #4F5752 rgb(79, 87, 82) // dark sage gray (text)
var(--global-palette5) #6B736E rgb(107, 115, 110) // sage gray
var(--global-palette6) #8B918C rgb(139, 145, 140) // light sage gray
var(--global-palette7) #F7EEE1 rgb(247, 238, 225) // linen cream
var(--global-palette8) #FCF8F0 rgb(252, 248, 240) // warm white
var(--global-palette9) #FFFFFF rgb(255, 255, 255) // white
var(--global-palette10) #8a3d5c rgb(138, 61, 92) // deep mulberry 

--> Typography
font-family: Fraunces, serif; // headings
font-weight: 700; // headings
font-size: 64px; line-height: 1.1; color: var(--global-palette3); // h1
font-size: 40px; line-height: 1.2; color: var(--global-palette3); // h2
font-size: 22px; line-height: 1.2; color: var(--global-palette3); // h3
font-size: 20px; line-height: 1.2; color: var(--global-palette4); // h4
font-size: 18px; line-height: 1.2; color: var(--global-palette4); // h5
font-size: 17px; line-height: 1.4; color: var(--global-palette5); // h6

font-family: "Plus Jakarta Sans", sans-serif; // body text
font-weight: 400; // body text
font-size: 17px; // body text

--> Images
border-radius: 7px;
font-size: 90%; // captions
line-height: 1.2; // captions
color: var(--global-palette4); // captions

--> Borders
border-width: 1px;
border-color: var(--global-palette4);

--> Buttons
font-family: "Plus Jakarta Sans", sans-serif;
font-weight: 700; // hero buttons
font-weight: 400; // body buttons
font-size: 0.9rem;
line-height: 1.2;
letter-spacing: 0.15rem;
text-transform: uppercase;
padding: 12px 24px 12px 24px;
border-radius: 5px;
background: var(--global-palette1);

--> Miscellaneous
border-color: #ddd; // text boxes, calendar
border-radius: 5px; // small items like buttons and thumbnails
border-radius: 7px; // large items like images
box-shadow: 0px 10px 12px 0px rgba(0, 0, 0, 0.2);
*/

/*------------------------------------------------------------------------------
---> UTILITY CLASSES
------------------------------------------------------------------------------*/

/* push flex item to end for tablet view */
@media (max-width: 1024px) {
  .push-item-to-end-tablet {
    order: 99;
  }
}

/* push flex item to end for mobile view */
@media (max-width: 767px) {
  .push-item-to-end-phone {
    order: 99;
  }
  .clear-float figure {
        float: none!important;
        display: block;
        max-width: 80%;
        margin: 0 auto!important;
    }
}

/* ROUNDED PHOTO CORNERS ON A KADENCE OVERLAY ROW
   The Kadence gradient makes the solid panel; its edge is straight.
   This ::after adds two 8px corner tiles (top and bottom) at that edge,
   each filled with the panel color except a transparent quarter circle,
   so the photo looks rounded.
*/

.full-width-picture-with-overlay-left .kt-row-layout-overlay.kt-row-overlay-gradient::after {
  content: "";
  position: absolute;
  left: 30%;
  width: 8px;
  top: 0;
  bottom: 0;
  background:
    radial-gradient(circle 7px at 100% 100%, transparent 7px, var(--global-palette8) 7px) 0 0 / 8px 8px no-repeat,
    radial-gradient(circle 7px at 100% 0, transparent 7px, var(--global-palette8) 7px) 0 100% / 8px 8px no-repeat;
}

.full-width-picture-with-overlay-right .kt-row-layout-overlay.kt-row-overlay-gradient::after {
  content: "";
  position: absolute;
  right: 30%;
  width: 8px;
  top: 0;
  bottom: 0;
  background:
    radial-gradient(circle 7px at 0 100%, transparent 7px, var(--global-palette8) 7px) 100% 0 / 8px 8px no-repeat,
    radial-gradient(circle 7px at 0 0, transparent 7px, var(--global-palette8) 7px) 100% 100% / 8px 8px no-repeat;
}

/*------------------------------------------------------------------------------
---> GLOBAL
------------------------------------------------------------------------------*/

/* Link hover effect for text (adv) outside of paragraphs */
.entry-content .wp-block-kadence-advancedheading a:hover {
  background-color: var(--global-palette-highlight);
  color: #fff;
}

/*------------------------------------------------------------------------------
---> HEADER: LAYOUT
------------------------------------------------------------------------------*/
.site-header {
  z-index: 9999!important;
}

/* more breathing space for logo and nav on tablet */
@media (max-width: 1024px) {
  #main-header .site-main-header-wrap .site-header-row-container-inner > .site-container {
    padding: 0px 20px 0px 20px!important;
  }
}

/* no idea why there is not a kadence setting for mobile drop shadow */
@media (max-width: 767px) {
  #mobile-header {
    box-shadow: 0px 2px 8px 0px #718096;
  }
}

/*------------------------------------------------------------------------------
---> HEADER: LOGO
------------------------------------------------------------------------------*/

/* oversized logo for transparent header - spilling out of box effect*/
@media (min-width: 768px) {
  .site-brand-logo-only {
    position: relative;
    overflow: visible;
  }

  .kadence-transparent-logo {
    position: absolute;
    left: 0;
    top: -20px;
    z-index: 25;
  }
}

@media (max-width: 1024px) {
  .transparent-header #main-header .site-branding .kadence-transparent-logo {
    max-width: 175px;
  }
}

/*------------------------------------------------------------------------------
---> CONTENT: PAGE TITLE
------------------------------------------------------------------------------*/

@media (min-width: 768px) {
  .transparent-header .entry-hero .entry-hero-container-inner {
      padding-top: 60px;
    }
}

/*------------------------------------------------------------------------------
---> CONTENT: CALENDARS
------------------------------------------------------------------------------*/

/* calendar detail modals to the top of stack */
.column-with-modals {
  z-index: 9999999!important;
}

.fc-list-day-cushion.fc-cell-shaded {
  background-color: var(--global-palette9);
}

.fc-list-day-text,
.fc-list-day-side-text,
.fc-list-day-text:hover,
.fc-list-day-side-text:hover {
  color: var(--global-palette3);
}

.fc-list-event-graphic {
  display: none;
}

.hycal-container .fc-listUpcoming-view {
  border-radius: 7px;
  overflow: clip;
  background-color: var(--global-palette8);
}

.hycal-container .fc-listUpcoming-view:has(.fc-list-empty) {
  background: #fff;
}

.hycal-container .fc-list-empty-cushion {
  margin: 0;
  padding: 1.5rem 1.25rem;
  text-align: center;
  font-weight: 700;
  font-family: var(--global-heading-font-family);
  background-color: var(--global-palette9);
}

/*------------------------------------------------------------------------------
---> CONTENT: VIDEOS
------------------------------------------------------------------------------*/

.wp-block-kadence-videopopup .kadence-video-popup-wrap {
  border-radius: 7px;
}

/*------------------------------------------------------------------------------
---> CONTENT: POINT OF INTEREST MAP
------------------------------------------------------------------------------*/
.garden-map svg a * {
  fill: rgba(138,61,92,.10);
  stroke: #8a3d5c;
  stroke-width: 2;
  stroke-dasharray: 5 3;
  vector-effect: non-scaling-stroke;
  cursor: pointer;
  transition: fill .2s;
}
.garden-map svg a:hover *, .garden-map svg a:focus * {
  fill: rgba(138,61,92,.30);
  stroke-dasharray: none;
  stroke-width: 3;
}

.garden-modal {
  width: min(92vw, 640px);
  max-height: 85vh;
  padding: 0;
  border: 0;
  border-radius: 7px;
  box-shadow: 0 10px 40px rgba(0,0,0,.35);
  overflow: hidden;
}
.garden-modal[open] { display: flex; flex-direction: column; }
.garden-modal::backdrop { background: rgba(0,0,0,.75); }

.garden-modal-header {
  display: flex;
  justify-content: flex-end;
  padding: 12px 12px 0;
  flex: 0 0 auto;
}

.garden-modal .garden-modal-close {
  width: 35px !important;
  height: 35px !important;
  padding: 0 !important;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,.75) !important;
  border: 0 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  color: #fff;
  cursor: pointer;
  opacity: .7;
  transition: opacity .2s, background .2s;
}

.garden-modal .garden-modal-close:hover,
.garden-modal .garden-modal-close:focus-visible {
  background: rgba(0,0,0,.85) !important;
  opacity: 1;
}

.garden-modal .garden-modal-close svg { width: 14px; height: 14px; fill: #fff; display: block; }

.garden-modal-body { padding: 8px 28px; overflow-y: auto; flex: 1 1 auto; }
.garden-modal-body img { max-width: 100%; height: auto; }

.garden-modal .garden-modal-more a {
  color: var(--global-palette-highlight);
  text-decoration: none;
  background-image: linear-gradient(var(--global-palette-highlight), var(--global-palette-highlight));
  background-repeat: no-repeat;
  background-size: 100% 1px; /* Initial thin line thickness at bottom */
  background-position: 0 100%;  /* Locks it to the bottom */
  text-underline-offset: .1em;
  transition: all .1s linear;
}

/* Hover state that rolls the background color up */
.garden-modal .garden-modal-more a:hover {
  background-size: 100% 100%;
  color: #fff; /* Expands to full height */
}

.garden-modal-more { display: block; padding: 0px 28px 20px; flex: 0 0 auto; }

@media (max-width: 767px) {
  .garden-map { overflow: hidden; border-radius: 7px; touch-action: pan-y; }
  .garden-map.is-zoomed { touch-action: none; }
  .garden-map-inner { transform-origin: 0 0; will-change: transform; }
  .garden-zoom-controls {
    position: absolute; top: 10px; right: 10px; z-index: 2;
    display: flex; flex-direction: column; gap: 6px;
  }
  .garden-map .garden-zoom-controls button {
    width: 35px !important; height: 35px !important; padding: 0 !important; margin: 0;
    display: flex; align-items: center; justify-content: center;
    background: rgba(0,0,0,.75) !important; color: #fff !important;
    border: 0 !important; border-radius: 4px !important; box-shadow: none !important;
    font-size: 20px !important; line-height: 1 !important; letter-spacing: 0 !important;
    cursor: pointer; opacity: .8;
  }
  .garden-map .garden-zoom-controls button:hover,
  .garden-map .garden-zoom-controls button:focus-visible { opacity: 1; background: rgba(0,0,0,.9) !important; }
}
@media (min-width: 768px) {
  .garden-zoom-controls { display: none; }
}

/*------------------------------------------------------------------------------
---> FOOTER: CONTACT FORM
------------------------------------------------------------------------------*/

/* field borders */
.kb-advanced-form .kb-adv-form-field .kb-field,
.kb-advanced-form .wp-block-kadence-advanced-form-checkbox,
.kb-advanced-form .kb-adv-form-field select {
    border: 2px solid var(--global-palette4);
}

/* newsletter checkboxes */
.wp-block-kadence-advanced-form-checkbox {
  padding: 8px;
  background-color: white;
}

.wp-block-kadence-advanced-form-checkbox legend {
  padding-bottom: 1rem!important;
}

.wp-block-kadence-advanced-form-checkbox .kb-radio-check-item {
  padding-bottom: 1rem;
}

.wp-block-kadence-advanced-form-checkbox .kb-radio-check-item:last-child {
  padding-bottom: 0;
}

.wp-block-kadence-advanced-form-checkbox .kb-adv-form-label {
  font-size: 1rem!important;
  text-align: left;
  padding-top: 0!important;
}

.wp-block-kadence-advanced-form.kb-adv-form-label-style-infield .kb-text-field,
.wp-block-kadence-advanced-form.kb-adv-form-label-style-infield .kb-email-field {
  padding-top:1.6rem!important;
}

.wp-block-kadence-advanced-form.kb-adv-form-label-style-infield textarea {
  padding-top:2rem!important;
}

.wp-block-kadence-advanced-form.kb-adv-form-label-style-infield textarea {
  min-height: 100px;
  resize: vertical;
}

.wp-block-kadence-advanced-form .wp-block-kadence-advanced-form-textarea .kb-adv-form-label {
  background-color: #fff;
  border-top: 2px solid var(--global-palette4);
  border-left: 2px solid var(--global-palette4);
  border-right: 2px solid var(--global-palette4);
  width: 100%;
  text-align: left;
  padding-bottom: 4px!important;
}

.wp-block-kadence-advanced-form-checkbox .kb-radio-check-item label {
  text-align: left;
}
.wp-block-kadence-advanced-form .kb-adv-form-field {
  border-radius: 3px!important;
}
.kb-form-basic-style input[type="checkbox"]:checked {
  border-color: var(--global-palette1)!important;
  background: var(--global-palette1)!important;
}

/* newsletter radio buttons */
.kb-form-basic-style .footer-radio-buttons .kb-adv-form-label {
    margin-bottom: 0.5rem;
    font-size: 80%!important;
}
.kb-form-basic-style .footer-radio-buttons .kb-radio-check-item label {
    margin-bottom: 1rem;
}
.kb-form-basic-style .footer-radio-buttons input[type="radio"] {
    /* hide native input styling */
    appearance: none; /* Removes default browser styling */
    -webkit-appearance: none;
    margin: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    
    /* custom input styling */
    border: 2px solid var(--global-palette4);
    background-color: #fff;
    cursor: pointer;
    vertical-align: middle;
}
.kb-form-basic-style .footer-radio-buttons input[type="radio"]:checked {
    background-color: var(--global-palette1); /* Fills the center */
    border-color: var(--global-palette1);
}

.wp-block-kadence-advanced-form .kb-adv-form-field.kb-adv-form-text-type-input label {
  padding-top: 8px!important;
}

.kb-adv-form-field-errors .kb-adv-form-error-link {
  color: #fff;
  text-decoration: none!important;
}

.kb-adv-form-field-errors .kb-adv-form-error-link:hover {
  color: #fff;
  text-decoration: underline!important;
}

/*------------------------------------------------------------------------------
---> FOOTER: MAP
------------------------------------------------------------------------------*/

/* map container full width */
.site-footer .site-middle-footer-wrap .site-container {
  padding: 0;
}


/* svg shape on top edge of map */
#block-29 {
position: absolute;
  top: 0;
  height: 100px;
  width: 100vw;
}

/*------------------------------------------------------------------------------
---> GLOBAL LAYOUT
------------------------------------------------------------------------------*/

/* prevent space between wave separator and footer */
#primary {
  margin-bottom: 0;
}

#primary .kt-row-layout-bottom-sep {
  z-index: 99;
}

/*------------------------------------------------------------------------------
---> GALLERIES
------------------------------------------------------------------------------*/

/* AUTOBUILT GALLERY (Home Page) */

/* Grid */
.single-content ul.latest-photos {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1rem;
  padding: 0;
  list-style: none;
}

/* Thumbnails */
.latest-photos a {
  display: block;
}
.latest-photos img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 5px;
}

/* iPad: 4 across */
@media (max-width: 1024px) {
  .single-content ul.latest-photos {
    grid-template-columns: repeat(4, 1fr);
  }
}

/* Phone: 2 across */
@media (max-width: 767px) {
  .single-content ul.latest-photos {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Lightbox */
.glightbox-container {
  --glightbox-main-color: #000;
  --glightbox-main-overlay: rgba(0, 0, 0, 0.75);
  --glightbox-nav-bg-color: rgba(0, 0, 0, 0.75);
  --glightbox-nav-bg-hover-color: rgba(0, 0, 0, 0.85);
  --glightbox-nav-color: #fff;
  --glightbox-text-color: #fff;
  --glightbox-image-shadow: 1px 2px 9px 0 rgba(0, 0, 0, 0.65);
}

/* caption text, from the computed styles on the Virtual Garden page */
.glightbox-container .gslide-desc {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 14.625px;
  line-height: 23.4px;
  color: #fff;
}

/* */

.hover-zoom .kadence-blocks-gallery-item {
    overflow: hidden;
}

.hover-zoom .kadence-blocks-gallery-item img {
    transition: transform 0.4s ease !important;
}

.hover-zoom .kadence-blocks-gallery-item:hover img {
    transform: scale(1.1);
}

/* 35mm FILM STRIP GALLERY (Virtual Garden) */

.film-strip {
  --strip: 40px;                 /* sprocket band height */
  --text-h: 23px;                /* text band height (about 5px above and below the words) */
  --pull: 6px;                   /* how far the sprockets move toward the text (max 8) */
  --step: 330px;                 /* image width + gutter */
  position: relative;
  background: var(--global-palette3);
  padding: calc(var(--strip) + var(--text-h) - var(--pull)) 0;
  overflow: hidden;
}

.film-strip::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;

  /* layers: top text, top sprockets, bottom sprockets, bottom text (upside down) */
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 330 23'%3E%3Ctext x='45' y='18' font-family='Courier New,Courier,monospace' font-size='22' font-weight='bold' fill='%23FBF6EF' textLength='240' lengthAdjust='spacing'%3EBOUNTIFUL HARVEST%3C/text%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 66 40' preserveAspectRatio='none'%3E%3Crect x='15' y='8' width='36' height='24' rx='6' fill='%23f4f1ea'/%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 66 40' preserveAspectRatio='none'%3E%3Crect x='15' y='8' width='36' height='24' rx='6' fill='%23f4f1ea'/%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 330 23'%3E%3Cg transform='rotate(180 165 11.5)'%3E%3Ctext x='45' y='18' font-family='Courier New,Courier,monospace' font-size='22' font-weight='bold' fill='%23FBF6EF' textLength='240' lengthAdjust='spacing'%3EBOUNTIFUL HARVEST%3C/text%3E%3C/g%3E%3C/svg%3E");

  background-repeat: repeat-x;
  background-size:
    var(--step) var(--text-h),
    calc(var(--step) / 5) var(--strip),
    calc(var(--step) / 5) var(--strip),
    var(--step) var(--text-h);
  background-position-y:
    0,
    calc(var(--text-h) - var(--pull)),
    calc(100% - var(--text-h) + var(--pull)),
    100%;
  background-position-x:
    var(--film-x, 0px), var(--film-x, 0px),
    var(--film-x, 0px), var(--film-x, 0px);
    transition: background-position-x var(--film-dur, 0s) var(--film-ease, ease);
}

.film-strip .splide__slide {
  width: 300px;                /* picture width: 330px step minus your 30px gutter */
}

.film-strip .splide__slide img {
  display: block;
  width: 100%;
  aspect-ratio: 3/4;   
  object-fit: cover;           /* crops to fill the frame instead of squishing */
  object-position: center;     /* which part of the photo stays visible */
}

/* FLIPBOOK GALLERY (Plan Your Visit, #Apiary */

/* Target Advanced Gallery carousels inside the .flipbook wrapper */
.flipbook .kb-gallery-type-carousel .kb-gallery-figure {
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    position: relative;
}

/* Restrict image wrapper to 50% width */
.flipbook .kb-gallery-type-carousel .kb-gallery-figure .kb-gal-image-radius {
    flex: 0 0 50%;
    max-width: 50%;
    width: 50%;
}

/* Reset and float caption to the right */
.flipbook .kb-gallery-type-carousel .kb-gallery-figure figcaption.kadence-blocks-gallery-item__caption {
    position: relative !important;
    bottom: auto !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    flex: 1;
    width: auto;
    padding: 0 0 0 1.5rem;
    background: transparent !important;
    color: inherit;
}

/* Responsive mobile stack */
@media (max-width: 767px) {
    .flipbook .kb-gallery-type-carousel .kb-gallery-figure {
        flex-direction: column !important;
    }
    .flipbook .kb-gallery-type-carousel .kb-gallery-figure .kb-gal-image-radius {
        flex: 0 0 100%;
        max-width: 100%;
        width: 100%;
    }
    .flipbook .kb-gallery-type-carousel .kb-gallery-figure figcaption.kadence-blocks-gallery-item__caption {
        padding: 1rem 0 0 0;
    }
}

/* Enable text selection and cursor interaction on captions */
.flipbook .kb-gallery-type-carousel .kb-gallery-figure figcaption.kadence-blocks-gallery-item__caption {
    pointer-events: auto !important;
    user-select: text !important;
    -webkit-user-select: text !important;
}

/* Ensure headings and paragraph text inherit selection capabilities */
.flipbook .kb-gallery-type-carousel .kb-gallery-figure figcaption.kadence-blocks-gallery-item__caption * {
    pointer-events: auto !important;
    user-select: text !important;
    -webkit-user-select: text !important;
}

/* Override default Kadence 13px white centered caption styles inside .flipbook */
.flipbook .kb-gallery-type-carousel .kb-gallery-ul .kadence-blocks-gallery-item .kadence-blocks-gallery-item-inner .kadence-blocks-gallery-item__caption,
.flipbook .kb-gallery-type-carousel .kb-gallery-figure figcaption.kadence-blocks-gallery-item__caption {
    font-size: var(--global-kb-font-size, 1rem) !important;
    color: var(--global-palette4, inherit) !important; /* Theme default body text color */
    text-align: left !important;
    font-family: inherit !important;
    line-height: var(--global-body-line-height, 1.6) !important;
}

/* Ensure headings inside captions use theme heading colors and sizes */
.flipbook .kb-gallery-type-carousel figcaption.kadence-blocks-gallery-item__caption h1,
.flipbook .kb-gallery-type-carousel figcaption.kadence-blocks-gallery-item__caption h2,
.flipbook .kb-gallery-type-carousel figcaption.kadence-blocks-gallery-item__caption h3,
.flipbook .kb-gallery-type-carousel figcaption.kadence-blocks-gallery-item__caption h4 {
    color: var(--global-palette3, inherit) !important; /* Theme default heading color */
    margin-top: 0;
    margin-bottom: 0.5rem;
    text-align: left !important;
}

/* Reset paragraph margins and text alignment */
.flipbook .kb-gallery-type-carousel figcaption.kadence-blocks-gallery-item__caption p {
    color: inherit !important;
    font-size: inherit !important;
    text-align: left !important;
    margin-bottom: 0.5rem;
}


.flipbook .kb-gallery-type-carousel .kb-gallery-figure {
  align-items: stretch!important;
}

/* Caption background, padding, and border radius */
.flipbook .kb-gallery-type-carousel .kb-gallery-ul .kadence-blocks-gallery-item .kadence-blocks-gallery-item-inner .kadence-blocks-gallery-item__caption,
.flipbook .kb-gallery-type-carousel .kb-gallery-figure figcaption.kadence-blocks-gallery-item__caption {
    background-color: var(--global-palette9) !important;
    padding: 1.5rem 3rem 1.5rem 1.5rem!important; /* Internal spacing so text doesn't touch edges */
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    
    /* Rounded corners: top-right and bottom-right on desktop */
    border-radius: 0 7px 7px 0 !important;
    
    /* Typography & alignment resets */
    font-size: var(--global-kb-font-size, 1rem) !important;
    color: var(--global-palette4, inherit) !important;
    text-align: left !important;
    font-family: inherit !important;
    line-height: var(--global-body-line-height, 1.6) !important;
}

/* Mobile responsive corner adjustment (when stacked vertically below image) */
@media (max-width: 767px) {
    .flipbook .kb-gallery-type-carousel .kb-gallery-ul .kadence-blocks-gallery-item .kadence-blocks-gallery-item-inner .kadence-blocks-gallery-item__caption,
    .flipbook .kb-gallery-type-carousel .kb-gallery-figure figcaption.kadence-blocks-gallery-item__caption {
        /* Rounded corners: bottom-left and bottom-right on mobile */
        border-radius: 0 0 7px 7px !important;
        margin-top: 0;
    }
}

/*------------------------------------------------------------------------------
---> CUSTOM PAGES
------------------------------------------------------------------------------*/

/* Hide Kadence's native archive banner; the custom one replaces it */
.custom-template .entry-hero.-archive-hero-section {
    display: none !important;
}

/* Banner image: same on every custom-template page */
body.custom-template .entry-hero .entry-hero-container-inner {
    background-image: url('../../uploads/2026/10/hot-peppers-upgarden-page-banner.jpeg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: scroll;
}

/* Overlay color */
body.custom-template .entry-hero .hero-section-overlay {
    background-color: rgba(195, 59, 68, 0.75);
}

/* Title */
body.custom-template .entry-hero .page-title h1,
body.custom-template .entry-hero h1.entry-title {
    font-style: normal;
    font-size: 3em;
    text-transform: capitalize;
    color: var(--global-palette7);
}

.custom-template .quick-links {
    padding-bottom: 6rem;
}

.custom-template .error {
  padding-bottom: 6rem;
}

mark.search-highlight {
    background: #bee39e;
    color: inherit;
    padding: 0 2px;
    border-radius: 2px;
}
