/*! Delving Instant - v1.10.6 - 2025-06-24
* https://github.com/delving/delving-instant
* Copyright (c) 2025 Delving B.V. info@delving.eu; Licensed MIT */
/* @link https://utopia.fyi/type/calculator?c=320,18,1.2,1400,20,1.25,5,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */

:root {
  /* Step -2: 12.5px → 12.8px */
  --step--2: clamp(0.7813rem, 0.7757rem + 0.0278vw, 0.8rem);
  /* Step -1: 15px → 16px */
  --step--1: clamp(0.9375rem, 0.919rem + 0.0926vw, 1rem);
  /* Step 0: 18px → 20px */
  --step-0: clamp(1.125rem, 1.088rem + 0.1852vw, 1.25rem);
  /* Step 1: 21.6px → 25px */
  --step-1: clamp(1.35rem, 1.287rem + 0.3148vw, 1.5625rem);
  /* Step 2: 25.92px → 31.25px */
  --step-2: clamp(1.62rem, 1.5213rem + 0.4935vw, 1.9531rem);
  /* Step 3: 31.104px → 39.0625px */
  --step-3: clamp(1.944rem, 1.7966rem + 0.7369vw, 2.4414rem);
  /* Step 4: 37.3248px → 48.8281px */
  --step-4: clamp(2.3328rem, 2.1198rem + 1.0651vw, 3.0518rem);
  /* Step 5: 44.7898px → 61.0352px */
  --step-5: clamp(2.7994rem, 2.4985rem + 1.5042vw, 3.8147rem);
}

/* Base spacing system */
:root {
  /* Extra small spacing (4px → 6px) */
  --diw-space-xs: clamp(0.25rem, 0.213rem + 0.1852vw, 0.375rem);
  
  /* Small spacing (8px → 12px) */
  --diw-space-sm: clamp(0.5rem, 0.4259rem + 0.3704vw, 0.75rem);
  
  /* Medium spacing (16px → 24px) */
  --diw-space-md: clamp(1rem, 0.8519rem + 0.7407vw, 1.5rem);
  
  /* Large spacing (24px → 36px) */
  --diw-space-lg: clamp(1.5rem, 1.2778rem + 1.1111vw, 2.25rem);
  
  /* Extra large spacing (32px → 48px) */
  --diw-space-xl: clamp(2rem, 1.7037rem + 1.4815vw, 3rem);
  
  /* 2x Extra large spacing (48px → 72px) */
  --diw-space-2xl: clamp(3rem, 2.5556rem + 2.2222vw, 4.5rem);
  
  /* 3x Extra large spacing (64px → 96px) */
  --diw-space-3xl: clamp(4rem, 3.4074rem + 2.963vw, 6rem);
  
  /* Tiny spacing for very small gaps (2px → 3px) */
  --diw-space-2xs: clamp(0.125rem, 0.1065rem + 0.0926vw, 0.1875rem);
}

/* Purpose-specific spacing variables */
:root {
  /* Gap spacing for grid and flex layouts */
  --diw-gap-2xs: var(--diw-space-2xs);
  --diw-gap-xs: var(--diw-space-xs);
  --diw-gap-sm: var(--diw-space-sm);
  --diw-gap-md: var(--diw-space-md);
  --diw-gap-lg: var(--diw-space-lg);
  --diw-gap-xl: var(--diw-space-xl);
  
  /* Margin spacing */
  --diw-margin-2xs: var(--diw-space-2xs);
  --diw-margin-xs: var(--diw-space-xs);
  --diw-margin-sm: var(--diw-space-sm);
  --diw-margin-md: var(--diw-space-md);
  --diw-margin-lg: var(--diw-space-lg);
  --diw-margin-xl: var(--diw-space-xl);
  
  /* Padding spacing */
  --diw-padding-2xs: var(--diw-space-2xs);
  --diw-padding-xs: var(--diw-space-xs);
  --diw-padding-sm: var(--diw-space-sm);
  --diw-padding-md: var(--diw-space-md);
  --diw-padding-lg: var(--diw-space-lg);
  --diw-padding-xl: var(--diw-space-xl);
  
  /* Preserve some of the previous variable names for backward compatibility */
  --diw-3xs: var(--diw-space-2xs);
  --diw-2xs: var(--diw-space-xs);
  --diw-xs: var(--diw-space-sm);
  --diw-s: var(--diw-space-md);
  --diw-m: var(--diw-space-lg);
  --diw-l: var(--diw-space-xl);
  --diw-xl: var(--diw-space-2xl);
  --diw-2xl: var(--diw-space-3xl);
  
  /* Paired spacing (for fluid spacing between min and max values) */
  --diw-3xs-2xs: clamp(0.125rem, 0.0694rem + 0.2778vw, 0.25rem);
  --diw-2xs-xs: clamp(0.25rem, 0.1852rem + 0.3241vw, 0.5rem);
  --diw-xs-sm: clamp(0.375rem, 0.2778rem + 0.4857vw, 0.75rem);
  --diw-sm-md: clamp(0.75rem, 0.5556rem + 0.9713vw, 1.5rem);
  --diw-md-lg: clamp(1rem, 0.7407rem + 1.2963vw, 2rem);
  --diw-lg-xl: clamp(1.5rem, 1.1111rem + 1.9424vw, 3rem);
  --diw-xl-2xl: clamp(2rem, 1.4815rem + 2.5928vw, 4rem);
}

/* Spacing specifically for form controls, buttons, etc. */
:root {
  --diw-form-padding-x: var(--diw-padding-sm);
  --diw-form-padding-y: var(--diw-padding-xs);
  --diw-button-padding-x: var(--diw-padding-sm);
  --diw-button-padding-y: var(--diw-padding-xs);
  --diw-input-padding-x: var(--diw-padding-sm);
  --diw-input-padding-y: var(--diw-padding-xs);
}

/* Common spacing values for specific utility cases */
:root {
  --diw-grid-gap: var(--diw-gap-md);
  --diw-stack-gap: var(--diw-gap-sm);
  --diw-section-spacing: var(--diw-margin-xl);
  --diw-component-spacing: var(--diw-margin-md);
}

/* Specific dimensional units (from the original) */
:root {
  /* Some specific dimensions using clamp */
  --diw-4-6: clamp(0.25rem, 0.213rem + 0.1852vw, 0.375rem);
  --diw-8-12: clamp(0.5rem, 0.4259rem + 0.3704vw, 0.75rem);
  --diw-8-16: clamp(0.5rem, 0.3519rem + 0.7407vw, 1rem);
  --diw-8-32: clamp(0.5rem, 0.0556rem + 2.2222vw, 2rem);
  --diw-16-16: clamp(1rem, 1rem + 0vw, 1rem);
  --diw-16-32: clamp(1rem, 0.7037rem + 1.4815vw, 2rem);
  --diw-16-48: clamp(1rem, 0.4074rem + 2.963vw, 3rem);
}

/* Font variables */
:root {
  /* Font families */
  --diw-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --diw-font-serif: Georgia, Cambria, "Times New Roman", Times, serif;
  --diw-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  
  /* Font sizing and metrics */
  --diw-body-font-family: var(--diw-font-sans-serif);
  --diw-body-font-size: inherit;
  --diw-line-height: 1.5rem;
  --diw-line-height-small: 0.75rem;
  
  /* Gradients */
  --diw-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
}
:root {
  /* block-header: COLORS */
  --diw-primary: #3498db;
  --diw-primary-darker: #157fc6;
  --diw-secondary: #2ecc71;
  --diw-secondary-darker: #19a855;
  --diw-tertiary: #ff8c10;
  --diw-tertiary-darker: #ed6f00;
  --diw-background-color: #ffffff;
  --diw-text-color: #333333;
  --diw-heading-color: #1a1a1a;
  --diw-border-color: #e0e0e0;
  --diw-link-color: #00408a;
  --diw-link-color-hover: #002d61;
  --diw-disabled-background: #aaaaaa;
  --diw-disabled-color: #cccccc;
  --diw-error-color: #e74c3c;
  --diw-warning-color: #f39c12;
  --diw-success-color: #009926;
  --diw-neutral: hsl(0, 0%, 95%);
  --diw-gray: #d9d9d9;
  --diw-gray-light: #efefef;
  --diw-gray-dark: #ababab;

  /* block-header: DIW CONTAINER */
  --diw-container-max-width: 1244px;
  --diw-container-bg: transparent; 
  --diw-container-text-color: var(--diw-text-color);
  
  /* block-header: ELEMENTS */
  --diw-border-radius: 0;
  --diw-border-radius-sm: .2rem;
  --diw-border-radius-lg: .3rem;
  --diw-border-width: 1px;
  --diw-padding-x: var(--diw-padding-sm);
  --diw-padding-y: var(--diw-padding-xs);
  --diw-padding-x-sm: var(--diw-padding-xs);
  --diw-padding-y-sm: var(--diw-padding-2xs);

  /* Forms and Form Inputs */
  --diw-input-padding-x: var(--diw-padding-x);
  --diw-input-padding-y: var(--diw-padding-y);
  --diw-input-padding-x-sm: var(--diw-padding-x-sm);
  --diw-input-padding-y-sm: var(--diw-padding-y-sm);
  --diw-input-border-radius: var(--diw-border-radius);
  --diw-input-border-width: var(--diw-border-width);
  --diw-input-border-color: var(--diw-border-color);
  --diw-input-focus-border-color: var(--diw-primary);
  --diw-input-background-color: var(--diw-background-color);
  --diw-input-text-color: var(--diw-text-color);
  --diw-input-placeholder-color: var(--diw-gray-dark);
  --diw-input-error-border-color: var(--diw-error-color);
  --diw-label-font-size: 14px;
  --diw-label-color: var(--diw-text-color);

  /* Buttons */
  --diw-button-padding-x: var(--diw-padding-x);
  --diw-button-padding-y: var(--diw-padding-y);
  --diw-button-padding-x-sm: var(--diw-padding-x-sm);
  --diw-button-padding-y-sm: var(--diw-padding-y-sm);
  --diw-button-border-radius: var(--diw-border-radius, 0);
  --diw-button-font-weight: 400;
  ----diw-pagination-item-bg: var(--diw-primary);
  --diw-button-primary-color: #ffffff;
  --diw-button-primary-border-color: var(----diw-pagination-item-bg);
  --diw-button-secondary-background-color: #2ecc71;
  --diw-button-secondary-color: #ffffff;
  --diw-button-secondary-border-color: var(--diw-button-secondary-background-color);
  --diw-button-disabled-background-color: var(--diw-disabled-color);
  --diw-button-disabled-border-color: var(--diw-button-disabled-background-color);
  --diw-button-hover-background-color: #2980b9;
  --diw-button-transition: all 0.3s ease-in-out;

  
  /* block-header: DIW COMPONENTS */

  --diw-component-background: var(--diw-neutral);
  /* Grid */
  --diw-grid-gap: var(--diw-gap-md);

  /* List/Grid View Switch ******************************************************/
  --diw-view-switch-color: var(--diw-link-color);


    /* Pagination */
    --diw-pagination-bg: var(--diw-neutral);
    --diw-pagination-bg-active: var(--diw-primary);
    --diw-pagination-bg-hover: var(--diw-gray);
    --diw-pagination-bg-disabled: var(--diw-neutral);

    --diw-pagination-color: var(--diw-link-color);
    --diw-pagination-color-active: var(--diw-neutral, #ffffff);
    --diw-pagination-color-hover: var(--diw-link-color-darker);
    --diw-pagination-color-disabled: var(--diw-disabled-color, #cccccc);

    --diw-pagination-border-color: #e0e0e0;
    --diw-pagination-border-color-active: var(--diw-gray-dark);
    --diw-pagination-border-color-hover: var(--diw-gray-light, var(--diw-gray-dark));
    --diw-pagination-border-color-disabled: var(--diw-border-color, #e0e0e0);
    --diw-pagination-border-width: 0px;

    --diw-pagination-padding: var(--diw-padding-y-sm) var(--diw-padding-x);
    --diw-pagination-border-radius: var(--diw-border-radius);
 
  /* facets *********************************************************************/
  --diw-facets-container-bg: transparent;
  --diw-facets-padding: 0;
  --diw-facets-inner-bg: transparent;
  --diw-facets-inner-padding: 0;
  --diw-facets-margin-bottom: var(--diw-margin-lg);
  --diw-mobile-facets-bg: var(--diw-neutral);
  
  /* results and related images **************************************************/
  /* results item container */
  --diw-results-container-gap: var(--diw-gap-xl);
  --diw-results-item-inner-bg: transparent;
  --diw-results-item-inner-padding: 0;
  /* the container */
  --diw-image-container-bg: var(--diw-neutral);
  --diw-image-container-border-width: 0px;
  --diw-image-container-border-style: solid;
  --diw-image-container-border-color: transparent;
  --diw-image-container-border-radius: var(--diw-border-radius);
  --diw-image-container-height: 177px;
  --diw-image-container-padding: 0;
  /* the image */
  --diw-image-container-img-border-radius: 0;
  --diw-image-container-img-position: flex-start; /* flex-start|center|flex-end */

}
/* sensible defaults */
button,
[type="button"],
[type="reset"],
[type="submit"],
[type="image"],
[type="checkbox"],
[type="radio"],
[type="link"],
summary {
	cursor: pointer;
}

/* Utility Classes */

.visuallyhidden,
.diw-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

@media only screen and (max-width: 768px) {
  .hide-on-small {
    display: none !important; 
  }
}

.diw-no-wrap {
  white-space: nowrap;
}


/* Spacing utilities */
.diw-m-0 { margin: 0; }
.diw-m-xs { margin: var(--diw-space-xs); }
.diw-m-sm { margin: var(--diw-space-sm); }
.diw-m-md { margin: var(--diw-space-md); }
.diw-m-lg { margin: var(--diw-space-lg); }
.diw-m-xl { margin: var(--diw-space-xl); }

.diw-mt-0 { margin-top: 0; }
.diw-mt-xs { margin-top: var(--diw-space-xs); }
.diw-mt-sm { margin-top: var(--diw-space-sm); }
.diw-mt-md { margin-top: var(--diw-space-md); }
.diw-mt-lg { margin-top: var(--diw-space-lg); }
.diw-mt-xl { margin-top: var(--diw-space-xl); }

.diw-mb-0 { margin-bottom: 0; }
.diw-mb-xs { margin-bottom: var(--diw-space-xs); }
.diw-mb-sm { margin-bottom: var(--diw-space-sm); }
.diw-mb-md { margin-bottom: var(--diw-space-md); }
.diw-mb-lg { margin-bottom: var(--diw-space-lg); }
.diw-mb-xl { margin-bottom: var(--diw-space-xl); }

.diw-mx-0 { margin-left: 0; margin-right: 0; }
.diw-mx-xs { margin-left: var(--diw-space-xs); margin-right: var(--diw-space-xs); }
.diw-mx-sm { margin-left: var(--diw-space-sm); margin-right: var(--diw-space-sm); }
.diw-mx-md { margin-left: var(--diw-space-md); margin-right: var(--diw-space-md); }
.diw-mx-lg { margin-left: var(--diw-space-lg); margin-right: var(--diw-space-lg); }
.diw-mx-xl { margin-left: var(--diw-space-xl); margin-right: var(--diw-space-xl); }

.diw-my-0 { margin-top: 0; margin-bottom: 0; }
.diw-my-xs { margin-top: var(--diw-space-xs); margin-bottom: var(--diw-space-xs); }
.diw-my-sm { margin-top: var(--diw-space-sm); margin-bottom: var(--diw-space-sm); }
.diw-my-md { margin-top: var(--diw-space-md); margin-bottom: var(--diw-space-md); }
.diw-my-lg { margin-top: var(--diw-space-lg); margin-bottom: var(--diw-space-lg); }
.diw-my-xl { margin-top: var(--diw-space-xl); margin-bottom: var(--diw-space-xl); }

.diw-p-0 { padding: 0; }
.diw-p-xs { padding: var(--diw-space-xs); }
.diw-p-sm { padding: var(--diw-space-sm); }
.diw-p-md { padding: var(--diw-space-md); }
.diw-p-lg { padding: var(--diw-space-lg); }
.diw-p-xl { padding: var(--diw-space-xl); }

.diw-pt-0 { padding-top: 0; }
.diw-pt-xs { padding-top: var(--diw-space-xs); }
.diw-pt-sm { padding-top: var(--diw-space-sm); }
.diw-pt-md { padding-top: var(--diw-space-md); }
.diw-pt-lg { padding-top: var(--diw-space-lg); }
.diw-pt-xl { padding-top: var(--diw-space-xl); }

.diw-pb-0 { padding-bottom: 0; }
.diw-pb-xs { padding-bottom: var(--diw-space-xs); }
.diw-pb-sm { padding-bottom: var(--diw-space-sm); }
.diw-pb-md { padding-bottom: var(--diw-space-md); }
.diw-pb-lg { padding-bottom: var(--diw-space-lg); }
.diw-pb-xl { padding-bottom: var(--diw-space-xl); }

.diw-px-0 { padding-left: 0; padding-right: 0; }
.diw-px-xs { padding-left: var(--diw-space-xs); padding-right: var(--diw-space-xs); }
.diw-px-sm { padding-left: var(--diw-space-sm); padding-right: var(--diw-space-sm); }
.diw-px-md { padding-left: var(--diw-space-md); padding-right: var(--diw-space-md); }
.diw-px-lg { padding-left: var(--diw-space-lg); padding-right: var(--diw-space-lg); }
.diw-px-xl { padding-left: var(--diw-space-xl); padding-right: var(--diw-space-xl); }

.diw-py-0 { padding-top: 0; padding-bottom: 0; }
.diw-py-xs { padding-top: var(--diw-space-xs); padding-bottom: var(--diw-space-xs); }
.diw-py-sm { padding-top: var(--diw-space-sm); padding-bottom: var(--diw-space-sm); }
.diw-py-md { padding-top: var(--diw-space-md); padding-bottom: var(--diw-space-md); }
.diw-py-lg { padding-top: var(--diw-space-lg); padding-bottom: var(--diw-space-lg); }
.diw-py-xl { padding-top: var(--diw-space-xl); padding-bottom: var(--diw-space-xl); }

/* Gap utilities for flex and grid */
.diw-gap-0 { gap: 0; }
.diw-gap-xs { gap: var(--diw-space-xs); }
.diw-gap-sm { gap: var(--diw-space-sm); }
.diw-gap-md { gap: var(--diw-space-md); }
.diw-gap-lg { gap: var(--diw-space-lg); }
.diw-gap-xl { gap: var(--diw-space-xl); }

/* collapsible panel ***********************/
/* .collapse {
  display: block;
  max-height: 0px;
  overflow: hidden;
  transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
}
.collapse.show {
  max-height: 99em;
}
.diw-alert {
    padding: var(--diw-padding-sm) var(--diw-padding-md);
    margin-bottom: var(--diw-space-md);
    border: 1px solid transparent;
    border-radius: var(--diw-border-radius, 0.25rem);
}

.diw-alert-success {
    color: #0f5132;
    background-color: #d1e7dd;
    border-color: #badbcc;
}

.diw-alert-danger {
    color: #842029;
    background-color: #f8d7da;
    border-color: #f5c2c7;
}

.diw-alert-warning {
    color: #664d03;
    background-color: #fff3cd;
    border-color: #ffecb5;
}

.diw-alert-info {
    color: #055160;
    background-color: #cff4fc;
    border-color: #b6effb;
}

.diw-alert-dismissible {
    padding-right: 3rem; /* Space for the close button */
    position: relative;
}

.diw-alert-dismissible .diw-btn-close {
    position: absolute;
    top: 0;
    right: 0;
    padding: var(--diw-padding-sm) var(--diw-padding-md);
    font-size: 1.5rem;
    color: inherit; /* Match text color of alert */
    border: none;
    background: none;
    cursor: pointer;
}
#diw-container button,
#diw-container .diw-button {
  white-space: nowrap;
  line-height: var(--diw-line-height);
  font-family:var(--diw-font-sans-serif);
  /* font-size: var(--diw-body-font-size); */
}

#diw-container button,
#diw-container a:link.diw-button,
#diw-container button.diw-button,
#diw-container select.diw-button,
#diw-container input[type="submit"] {
  background-color: var(--diw-primary-darker);
  border-radius: var(--diw-border-radius);
  border: 1px solid var(--diw-primary);
  box-shadow: none;
  color: var(--diw-button-primary-color);
  display: inline-block;
  font-size: var(--diw-body-font-size);
  font-weight: var(--diw-button-font-weight);
  line-height: var(--diw-line-height);
  padding: var(--diw-button-padding-y) var(--diw-button-padding-x);
  transition: none;
  text-shadow: none;
  text-decoration: none;
  white-space: nowrap;  
 
}

#diw-container button:hover,
#diw-container a.diw-button:hover,
#diw-container button.diw-button:hover,
#diw-container select.diw-button:hover,
#diw-container input[type="submit"]:hover {
  /* box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.5); */
  /* color: white; */
  background-color: var(--diw-primary);
}

#diw-container a.diw-button:visited,
#diw-container button.diw-button:visited,
#diw-container select.diw-button:visited {
  color: white;
}

#diw-container a:link.diw-button.disabled,
#diw-container button.diw-button.disabled,
#diw-container select.diw-button.disabled,
#diw-container input[type="submit"].disabled {
  background-color:  var(--diw-button-disabled-background-color) !important; 
  border-color:  var(--diw-button-disabled-border-color) !important; 
  color: var(--diw-text-muted-color) !important;
  cursor: default;
}

#diw-container button.diw-secondary-button,
#diw-container a.diw-button.diw-secondary-button,
#diw-container button.diw-button.diw-secondary-button,
#diw-container select.diw-button.diw-secondary-button,
#diw-container input[type="submit"].diw-secondary-button {
  background-color: var(--diw-button-secondary-background-color);
  border: 1px solid var(--diw-button-secondary-border-color);
}

/* Button size variants */
#diw-container .diw-button-sm,
#diw-container button.diw-button-sm {
  padding: var(--diw-button-padding-y-sm) var(--diw-button-padding-x-sm);
  font-size: 0.875rem;
}

#diw-container .diw-button-lg,
#diw-container button.diw-button-lg {
  padding: var(--diw-padding-sm) var(--diw-padding-md);
  font-size: 1.125rem;
}

/* Button groups */
.diw-button-group {
  display: inline-flex;
  gap: var(--diw-space-2xs);
}

.diw-button-group.diw-button-group-tight {
  gap: 0;
}

.diw-button-group.diw-button-group-tight .diw-button:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  margin-left: -1px;
}

.diw-button-group.diw-button-group-tight .diw-button:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
/* CLUSTER ************************************/

.diw-cluster {
  /* display: flex;
   flex-wrap: wrap;
   gap: var(--space-s, .5rem); */
   /* justify-content: flex-start;
   align-items: center; */

   position: relative;
   display: flex;
   flex-wrap: wrap; 
   align-items: stretch;
   width: 100%;
   gap: var(--diw-gap-xs);
}

.diw-cluster-group {
 gap: 0px;
 display: flex;
 flex-wrap: nowrap;
}

.diw-cluster .diw-cluster-last {
   flex-grow: 1;
   align-self: auto;
   text-align: right;
}
/* The Containers */

.diw-container {
    max-width: var(--diw-container-max-width, 1244px);
    padding-right: var(--diw-padding-md, 1rem);
    padding-left: var(--diw-padding-md, 1rem);
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .diw-container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .diw-container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .diw-container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .diw-container {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
    .diw-container {
        max-width: 1320px;
    }
}

.diw-container-fluid {
    width: 100%;
    padding-right: var(--diw-padding-md, 1rem);
    padding-left: var(--diw-padding-md, 1rem);
    margin-right: auto;
    margin-left: auto;
}

.diw-container-sm {
    max-width: 540px;
    margin-right: auto;
    margin-left: auto;
    padding-right: var(--diw-padding-md, 1rem);
    padding-left: var(--diw-padding-md, 1rem);
}

.diw-container-md {
    max-width: 720px;
    margin-right: auto;
    margin-left: auto;
    padding-right: var(--diw-padding-md, 1rem);
    padding-left: var(--diw-padding-md, 1rem);
}

.diw-container-lg {
    max-width: 960px;
    margin-right: auto;
    margin-left: auto;
    padding-right: var(--diw-padding-md, 1rem);
    padding-left: var(--diw-padding-md, 1rem);
}

.diw-container-xl {
    max-width: 1140px;
    margin-right: auto;
    margin-left: auto;
    padding-right: var(--diw-padding-md, 1rem);
    padding-left: var(--diw-padding-md, 1rem);
}
#diw-container .diw-control {
    background-color: var(--diw-input-background-color);
    background-clip: padding-box;
    border-color: var(--diw-input-border-color);
    border-radius: var(--diw-input-border-radius);
    border-width: var(--diw-input-border-width);
    border-style:  solid;
    box-sizing: border-box;
    color: var(--diw-input-text-color);
    display: block;
    font-size: var(--diw-body-font-size);
    height: initial;
    line-height: var(--diw-line-height);
    min-height: initial;
    padding: var(--diw-input-padding-y) var(--diw-input-padding-x);
    width: 100%;
}

#diw-container .diw-control.diw-control-sm {
    line-height: var(--diw-line-height-small);
    font-size: smaller;
    padding: var(--diw-input-padding-y-sm) var(--diw-input-padding-x-sm);
}

#diw-container .diw-control[disabled],
#diw-container .diw-control.disabled {
    opacity: 0.5;
    filter: alpha(opacity=50);
    pointer-events: none;
}

#diw-container .diw-control.is-valid {
    border-color: var(--diw-success-color);
    border-width: 2px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="green"><path d="M9 19.4L3.3 13.7l1.4-1.4L9 16.6l10.3-10.3 1.4 1.4L9 19.4z"/></svg>');
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 20px 20px;
    padding-right: 40px;
}

#diw-container .diw-control.is-invalid {
    border-color: var(--diw-error-color);
    border-width: 2px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="red"><path d="M18.3 5.7L12 12l6.3 6.3-1.4 1.4L12 13.4 5.7 18.7 4.3 17.3 10.6 12 4.3 5.7 5.7 4.3 12 10.6 18.3 4.3l1.4 1.4z"/></svg>');
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 20px 20px;
    padding-right: 40px; 
}

#diw-container .diw-form-group {
    margin-bottom: var(--diw-space-sm);
}

#diw-container .diw-form-group label {
    display: block;
    margin-bottom: var(--diw-space-2xs);
    font-weight: 500;
}

#diw-container .diw-form-group .diw-form-text {
    margin-top: var(--diw-space-2xs);
    font-size: 0.875rem;
    color: var(--diw-gray-dark);
}

#diw-container .diw-form-row {
    display: flex;
    flex-wrap: wrap;
    gap: var(--diw-space-sm);
}

#diw-container .diw-form-col {
    flex: 1 0 0%;
    min-width: 0;
}

@media (max-width: 768px) {
    #diw-container .diw-form-row {
        flex-direction: column;
    }
}

#diw-container .diw-form-check {
    display: flex;
    align-items: center;
    gap: var(--diw-space-2xs);
    margin-bottom: var(--diw-space-xs);
}

#diw-container .diw-form-check input[type="checkbox"],
#diw-container .diw-form-check input[type="radio"] {
    flex-shrink: 0;
}

#diw-container .diw-form-check label {
    margin-bottom: 0;
}
/**
 * Grid Layout System
 *
 * A modern responsive grid system based on CSS Flexbox,
 * with consistent alignment across all screen sizes.
 * 
 * Uses existing gap variables:
 * --diw-gap-2xs, --diw-gap-xs, --diw-gap-sm, 
 * --diw-gap-md, --diw-gap-lg, --diw-gap-xl
 */

/* Grid Container */
.diw-grid {
    display: flex;
    flex-wrap: wrap;
    margin: calc(-1 * var(--diw-grid-gap, var(--diw-gap-md))) 0 0 calc(-1 * var(--diw-grid-gap, var(--diw-gap-md)));
    width: calc(100% + var(--diw-grid-gap, var(--diw-gap-md)));
  }
  
  /* Grid Items */
  .diw-grid-item {
    box-sizing: border-box;
    padding: var(--diw-grid-gap, var(--diw-gap-md)) 0 0 var(--diw-grid-gap, var(--diw-gap-md));
    flex: 1 1 100%; /* Default to full width for mobile */
    min-width: 0;
  }
  
  /* Small screens (500px to 899px) */
  @media (min-width: 500px) and (max-width: 899px) {
    .diw-grid {
      margin: calc(-1 * var(--diw-grid-gap-sm, var(--diw-gap-sm))) 0 0 calc(-1 * var(--diw-grid-gap-sm, var(--diw-gap-sm)));
      width: calc(100% + var(--diw-grid-gap-sm, var(--diw-gap-sm)));
    }
    
    .diw-grid-item {
      padding: var(--diw-grid-gap-sm, var(--diw-gap-sm)) 0 0 var(--diw-grid-gap-sm, var(--diw-gap-sm));
      flex: 1 1 50%;
    }
  }
  
  /* Large screens (900px and above) */
  @media (min-width: 900px) {
    .diw-grid {
      margin: calc(-1 * var(--diw-grid-gap-lg, var(--diw-gap-lg))) 0 0 calc(-1 * var(--diw-grid-gap-lg, var(--diw-gap-lg)));
      width: calc(100% + var(--diw-grid-gap-lg, var(--diw-gap-lg)));
    }
    
    .diw-grid-item {
      padding: var(--diw-grid-gap-lg, var(--diw-gap-lg)) 0 0 var(--diw-grid-gap-lg, var(--diw-gap-lg));
      flex: 1 1 33.333%; /* Default to third width */
    }
    
    /* Responsive classes */
    .diw-grid-item.one-half {
      flex: 0 1 50%;
    }
    
    .diw-grid-item.one-third {
      flex: 0 1 33.333%;
    }
    
    .diw-grid-item.two-thirds {
      flex: 0 1 66.666%;
    }
    
    .diw-grid-item.one-quarter {
      flex: 0 1 25%;
    }
    
    .diw-grid-item.three-quarters {
      flex: 0 1 75%;
    }
  }

/* PAGINATION *************/
#diw-container .diw-pagination-container,
#diw-container .diw-item-nav-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 1rem 0;
}

#diw-container .diw-pagination-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

/* Style the list items */
#diw-container .diw-pagination-list li {
  margin: 0 var(--diw-space-xs) 0 0;
}

/* Style the links/buttons inside the list items */
#diw-container .diw-pagination-list a,
#diw-container .diw-pagination-list span {
  background-color: var(--diw-pagination-bg, #f1f1f1);
  border: var(--diw-pagination-border-width) solid var(--diw-pagination-border-color);
  border-radius: var(--diw-pagination-border-radius);
  color: var(--diw-pagination-color);
  display: inline-block;
  padding: var(--diw-pagination-padding);
  text-decoration: none !important;
  line-height: var(--diw-line-height);
}

/* Hover state for links */
#diw-container .diw-pagination-list a:hover:not(.current) {
  background-color: var(--diw-pagination-bg-hover);
  border-color: var(--diw-pagination-border-color-hover);
  color: var(--diw-pagination-color-hover);
}

/* Active/current page - apply to the anchor */
#diw-container .diw-pagination-list a.current {
  background-color: var(--diw-pagination-bg-active);
  border-color: var(--diw-pagination-border-color-active);
  color: var(--diw-pagination-color-active);
  font-weight: 500;
}

/* Disabled state */
#diw-container .diw-pagination-list li.disabled a,
#diw-container .diw-pagination-list li.disabled span {
  background-color: var(--diw-pagination-bg-disabled);
  border-color: var(--diw-pagination-border-color-disabled);
  color: var(--diw-pagination-color-disabled) !important;
  cursor: not-allowed !important;
  opacity: 0.5;
}

#diw-container .diw-pagination-list li.disabled:hover a,
#diw-container .diw-pagination-list li.disabled:hover a.diw-link,
#diw-container .diw-pagination-list li.disabled:hover span {
  background-color: var(--diw-pagination-bg-disabled);
  border-color: var(--diw-pagination-border-color-disabled);
}

/* Navigation in item view */
#diw-container .diw-item-nav-container {
  display: flex;
  justify-content: center;
}

/* Right panel styling */
#diw-container #diw-pagination-sidepanel-right {
  margin-left: auto;
}

/* Responsive adjustments */
@media only screen and (max-width: 768px) {
  #diw-container .diw-pagination-container {
    flex-direction: column;
    gap: 0.5rem;
  }
  
  #diw-container #diw-pagination-sidepanel-right {
    margin-left: 0;
  }
  
  #diw-container .diw-pagination.top .diw-button,
  #diw-container .diw-pagination.top .diw-pagination-list.diw-item-nav li a {
    width: 100%;
    text-align: center;
    margin-bottom: var(--diw-space-2xs);
  }
  
  #diw-container .diw-item-nav-container {
    display: block;
    width: 100%;
  }
  
  #diw-container .diw-pagination-list.diw-item-nav {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
}
/* STACK *********************************/

.diw-stack,
.diw-stack-lg,
.diw-stack-sm,
.diw-stack-xs {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.diw-stack>*,
.diw-stack-lg>*,
.diw-stack-sm>*,
.diw-stack-xs>* {
    margin-block: 0;
}

.diw-stack>*+* {
    margin-block-start: var(--diw-space-md);
}

.diw-stack-lg>*+* {
    margin-block-start: var(--diw-space-xl);
}

.diw-stack-sm>*+* {
    margin-block-start: var(--diw-space-sm);
}

.diw-stack-xs>*+* {
    margin-block-start: var(--diw-space-xs);
}
#diw-container {
  color: var(--diw-text-color);
  padding-top: var(--diw-space-md);
}

#diw-container a:link, 
#diw-container a:visited {
  color: var(--diw-link-color);
  text-decoration: underline;
}

#diw-container a:hover {
  color: var(--diw-link-color-hover);
}

/* Scroll to top button */
#diw-scroll-to-top {
  position: fixed;
  right: var(--diw-space-md);
  bottom: var(--diw-space-md);
  background-color: var(--diw-primary);
}
#diw-scroll-to-top a {
  color: var(--diw-button-primary-color);
  text-decoration: none;
  padding: var(--diw-button-padding-y) var(--diw-button-padding-x) 0 var(--diw-button-padding-x);
  border-radius: var(--diw-button-border-radius);
}

#diw-set-filter, .diw-facets-done {
    display: none !important;
}

@media only screen and (max-width: 768px) {
    #diw-set-filter, .diw-facets-done {
      display: block !important;
    }
}

/* views *******************************************/
#diw-container {
  background-color: var(--diw-container-bg);
  color: var(--diw-container-text-color, #212529);
  padding-bottom: var(--diw-space-md);
}

.diw-search #diw-item-media,
.diw-search #diw-item-data,
.diw-search #diw-item-reladed {
  display: none;
}

.diw-detail #diw-facets,
.diw-detail #diw-results {
  display: none;
}

/* search forms ***********************************/

.diw-search-input {
  display: flex;
  align-items: center;
}

/* search form toggles and svg icons */

#diw-as-toggle {
  margin-left: var(--diw-space-2xs);
}

#diw-as-toggle[disabled=true],
#diw-geo-toggle[disabled=true] {
  opacity: 0.5;
  filter: alpha(opacity=50);
  pointer-events: none;
}

.diw-geo-search-icon .marker {
  fill: rgb(186, 2, 2); 
}

#diw-geo-toggle,
#diw-search-help-toggle {
  margin-left: var(--diw-space-sm);
}

#diw-geo-search {
  display: none;
  overflow-y: hidden;
  max-height: 0;
  transition-property: all;
  transition-duration: 0.5s;
}

#diw-geo-search.open {
  max-height: 500px;
  transition-property: all;
  transition-duration: 0.5s;
}

#diw-geo-search button {
  background-color: var(--diw-gray-light);
}

.diw-search-help-toggle-icon {
  font-size: 150%;
  text-decoration: none !important;
}

/* advanced search form ****************************/

#diw-advanced-search-form {
  background-color: var(--diw-neutral);
  padding: var(--diw-space-md);
  margin-top: var(--diw-space-md);
}

.diw-as-field-container {
  --fluid-grid-column-count: 12;
  --fluid-grid-gutter-width: var(--diw-space-md);
  display: grid;
  -ms-grid-columns: 8.33% 8.33% 8.33% 8.33% 8.33% 8.33% 8.33% 8.33% 8.33% 8.33% 8.33% 8.33%;
  grid-template-columns: repeat(var(--fluid-grid-column-count), 1fr);
  gap: var(--fluid-grid-gutter-width);
}

.diw-as-field-container .diw-as-block {
  -ms-grid-column-span: 4;
  grid-column: span 4;
}

.diw-as-actions {
  display: flex;
  justify-content: center;
  gap: var(--diw-space-sm);
}

#diw-as-submit {
  align-self: flex-end;
}

@media (max-width: 768px){
  .diw-as-field-container .diw-as-block {
    grid-column: span 12;
  } 
}

/* query info *************************************/
#diw-query-info .nr-of-results {
  font-weight: bold;
}

/* Query breadcrumbs *****************************/
#diw-breadcrumbs {
  background-color: var(--diw-neutral);
  border-radius: var(--diw-border-radius);
  display: flex;
  align-items: center;
}

.diw-breadcrumb {
  line-height: var(--diw-line-height);
  margin: 0;
  list-style-type: none;
  width: 100%;
}

.diw-breadcrumb > li {
  padding: var(--diw-padding-y) var(--diw-padding-x);
  display: inline-block;
  vertical-align: middle;
}

.diw-breadcrumb > li + li:before {
  color: var(--diw-gray-dark);
  content: "/ ";
  padding-right: var(--diw-space-2xs);
}

/* List/grid view switcher **********************/
.diw-view-switcher {
  display: inline-block;
  white-space: nowrap;
  text-align: right;
  list-style-type: none;
  margin: 0;
  padding: 0;
  height: 32px;
}

.diw-view-switcher li {
  display: inline-block;
}

.diw-view-switcher li:first-of-type {
  margin-right: var(--diw-space-xs);
}

.diw-view-switch {
  font-size: var(--step-2);
  padding-right: 0px !important;
  opacity: 0.35;
  filter: alpha(opacity=30);
}

.diw-view-switch.active {
  opacity: 1;
  filter: alpha(opacity=100);
}

.diw-view-switch-svg rect {
  fill: var(--diw-view-switch-color);
}

/* Facets ***************************************/
#diw-facets {
  display: block;
}

#diw-mobile-facets-menu {
  display: none;
}

.diw-facet-container {
  background-color: var(--diw-facets-container-bg, transparent);
  border-radius: var(--diw-border-radius, 0px);
  padding: var(--diw-facets-padding, 0px);
  margin-bottom: var(--diw-facets-margin-bottom, 0px);
}

.diw-facet-container .header {
  font-weight: normal;
  font-size: 1.2rem;
  padding: .5rem 1rem .5rem 0;
}

.diw-facet-container .header.toggle {
  cursor: pointer;
}

.diw-facet-container .inner {
  background-color: var(--diw-facets-inner-bg);
  border-radius: var(--diw-border-radius);
  padding: var(--diw-facets-inner-padding, 0px);
}

.diw-facet-container .diw-facet-list {
  max-height: 235px;
  overflow-x: hidden;
  overflow-y: auto;
  margin: 0;
  padding: 0;
}

.diw-facet-container .diw-facet-list li {
  display: block;
  margin: 0;
}

.diw-facet-container .diw-facet-facet {
  display: flex;
  align-items: center;
}

.diw-facet-container .facet-link {
  padding-left: var(--diw-space-sm);
}

.diw-facet-container .facet-tools {
  padding-bottom: var(--diw-space-2xs);
}

.diw-facet-container .facet-tools .sort,
.diw-facet-container .facet-tools .explode {
  background: var(--diw-gray-light);
  font-size: smaller;
  padding: var(--diw-padding-2xs) var(--diw-padding-xs);
  white-space: nowrap;
}

.collapsible .diw-facet-container .dir-indicator {
  border: solid black;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 3px;
  float: right;
  margin-top: 0.5rem;
  margin-right: 1rem;
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

.collapsible .diw-facet-container.closed .inner {
  display: none;
}

.collapsible .diw-facet-container.closed .dir-indicator {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

#diw-set-filter, .diw-facets-done {
  display: none !important;
}

.facet-filter-form {
  margin: var(--diw-space-xs) 0;
}

.diw-facet-container .facet-filter-input {
  width: 100%;
  margin: 0;
  box-shadow: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0 var(--diw-padding-xs) 0 var(--diw-padding-xs);
  border: 1px solid var(--diw-gray-light);
  border-radius: var(--diw-border-radius);
}

@media only screen and (max-width: 768px) {
  #diw-set-filter, .diw-facets-done {
    display: block !important;
  }
  
  .diw-detail #diw-set-filter {
    display: none !important;
  }
  
  #diw-facets {
    display: none;
  }
  
  .diw-show-facets #diw-facets {
    display: flex;
    flex-direction: column;
    background-color: var(--diw-mobile-facets-bg);
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    max-width: unset;
    z-index: 10000;
    padding: var(--diw-space-sm);
  }
  
  .diw-show-facets #diw-facets-lid {
    overflow: auto;
    flex: auto;
    overscroll-behavior: none;
  }
  
  body.diw-show-facets {
    overflow: hidden;
    overscroll-behavior: none;
  }
}

/* results image *******************************/

.diw-image-container {
  box-sizing: border-box;
  display: flex;
  width: 100%;
  height: var(--diw-image-container-height, 250px);
  overflow: hidden;
  background-color: var(--diw-image-container-bg);
  border-color: var(--diw-image-container-border-color, #e1e1e1);
  border-radius: var(--diw-image-container-border-radius, 5px);
  border-style: var(--diw-image-container-border-style, solid);
  border-width: var(--diw-image-container-border-width, 1px);
  padding: var(--diw-image-container-padding, 5px);
  justify-content: center;
  align-items: var(--diw-image-container-img-position);
}

.diw-image-container a {
  display: flex;
  justify-content: center;
  align-items: var(--diw-image-container-img-position);
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.diw-image-container img,
.diw-image-container a img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  border-radius: var(--diw-image-container-img-border-radius, 0px);
}

.diw-image-container img.resized {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
} 

/* Results Layout ******************************/

.diw-results-items {
  margin-bottom: var(--diw-space-md);
}

.diw-search #diw-item-container {
  display: none;
}

.diw-results-list .diw-results-item .diw-results-item-inner .diw-image-container {
  flex-shrink: 0;
}

#diw-results-container {
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  column-gap: var(--diw-results-container-gap, 3rem);
}

#diw-results-container.facets-right {
  flex-direction: row;
}

.diw-results-item-inner {
  background-color: var(--diw-results-item-inner-bg);
  padding: var(--diw-results-item-inner-padding);
}

.diw-results-item h1 {
  font-size: 130%;
}

.diw-results-item h2 {
  font-size: 125%;
}

.diw-results-item h3 {
  font-size: 120%;
}

.diw-results-item h4 {
  font-size: 110%;
}

.diw-results-item blockquote {
  border-left: 4px solid var(--diw-gray-light);
  padding-left: var(--diw-space-md);
}

.diw-scroll .diw-pagination.bottom {
  margin-bottom: var(--diw-space-2xl);
}

.diw-highlight {
  background-color: var(--diw-highlightColor, #ffee22);
}

.diw-results-item .diw-results-item-inner .diw-data {
  word-wrap: break-word;
  word-break: normal;
  width: 100%;
}

.diw-data mark {
  padding: 0;
}

.diw-data p:only-child {
  display: inline-block;
  margin-bottom: 0px;
}

.diw-field-list {
  margin-bottom: 0px;
}

.diw-field-list.dl-horizontal dd + dt,
.diw-field-list.dl-horizontal dt + dd {
  margin-top: 0px;
  margin-bottom: var(--diw-space-xs);
}

.diw-field-list.dl-horizontal dt {
  float: left;
  width: 180px;
  clear: left;
  font-weight: 600;
  text-align: right;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.diw-field-list.dl-horizontal dd {
  margin-left: 200px;
}

.diw-field-list.dl-related-items {
  margin-top: 0px;
}

.diw-block {
  margin-bottom: var(--diw-space-sm);
}

.diw-block h3 {
  background-color: var(--diw-gray-light);
  padding: var(--diw-padding-2xs) var(--diw-padding-xs);
}

.diw-block label {
  color: var(--diw-text-muted-color, #9facb9);
}

/* diw panel ***********************/
.diw-panel {
  display: none;
  background-color: #222;
  position: fixed;
  top: 0px;
  right: 0px;
  height: 100vh;
  max-height: 100vh;
  width: 80%;
  z-index: 10000;
  color: #fff;
  overflow: auto;
  overflow-y: scroll;
  margin-top: 0px !important;
}

.diw-panel a {
  color: var(--diw-link-color);
}

.diw-panel.diw-panel-open {
  display: block;
}

.diw-panel .diw-panel-header {
  height: 52px;
}

.diw-panel .diw-panel-header .diw-panel-close {
  position: absolute;
  left: var(--diw-space-sm);
  top: var(--diw-space-sm);
  width: 32px;
  height: 32px;
  opacity: 0.5;
}

.diw-panel .diw-panel-header .diw-panel-close:hover {
  opacity: 1;
  cursor: pointer;
}

.diw-panel .diw-panel-header .diw-panel-close:before,
.diw-panel .diw-panel-header .diw-panel-close:after {
  position: absolute;
  left: 15px;
  content: " ";
  height: 33px;
  width: 2px;
  background-color: #fff;
}

.diw-panel .diw-panel-header .diw-panel-close:before {
  transform: rotate(45deg);
}

.diw-panel .diw-panel-header .diw-panel-close:after {
  transform: rotate(-45deg);
}

/* Item Panel */
#diw-item-panel {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%888888' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E");
}

#diw-item-panel #diw-panel-media {
  position: relative;
  margin-top: var(--diw-space-sm);
  border-bottom: 1px solid #444;
}

#diw-item-panel #diw-panel-data {
  margin: var(--diw-space-md);
  padding: 0px;
}

#diw-item-panel .diw-panel-footer {
  margin: var(--diw-space-md);
}

#diw-item-panel .diw-panel-footer .diw-button {
  width: 100%;
}

#diw-item-panel #diw-thumbnail-nav {
  background: transparent;
}

/** SIDEPANEL **/
/** DIW SEARCH HELP *******************/
#diw-help-panel {
  background-color: var(--diw-neutral, #ccc);
  opacity: 100;
  color: var(--diw-text-color);
  text-align: left;
}

#diw-help-panel .diw-panel-close:before,
#diw-help-panel .diw-panel-close:after {
  background-color: var(--diw-neutral);
}

#diw-help-panel .diw-panel-header {
  background-color: var(--diw-primary-color);
}

#diw-help-panel .diw-help-item {
  margin-top: var(--diw-space-md);
  padding-bottom: var(--diw-space-sm);
}

#diw-help-panel .diw-help-title {
  font-weight: bold;
  font-size: var(--step-4);
}

#diw-help-panel .diw-help-item .diw-help-title {
  font-weight: bold;
  font-size: var(--step-1);
}

#diw-help-panel .diw-panel-content {
  padding: var(--diw-space-md);
}

#diw-help-panel .diw-help-img {
  max-width: 100%;
}

#diw-help-panel .diw-help-img:hover {
  transform: scale(1.75);
}

@media only screen and (max-width: 768px) {
  .diw-help-item {
    display: block;
  }
  
  .diw-help-item .diw-help-body,
  .diw-help-item .diw-help-img {
    float: none !important;
    display: block;
    max-width: 100% !important;
  }
  
  .diw-help-img-col:hover img {
    transform: scale(5);
  }
}

/* detail item view ***************************/

.diw-detail #diw-results-container,
.diw-detail .diw-pagination.bottom {
  display: none;
}

.diw-item-nav {
  display: inline-block;
}

#button-image-download,
#button-feedback-toggle,
#button-original-context {
  float: right;
  margin-left: var(--diw-space-2xs);
}

#diw-carousel {
  padding: var(--diw-space-sm);
}

.diw-zoom-viewer {
  background: var(--diw-neutral);
  margin-bottom: var(--diw-space-sm);
  padding: var(--diw-space-sm);
}

#diw-zoom-toolbar {
  background-color: var(--diw-gray-light);
  clear: both;
  display: block;
  width: 100%;
  height: 38px;
}

.diw-zoom-link.active img,
.diw-carousel-link.active img {
  border-bottom: 2px solid var(--diw-primary-color);
}

#pdfPageNumberInput {
  min-width: 120px;
  background-color: var(--diw-gray-light);
  border-color: var(--diw-gray-light);
  color: var(--diw-text-color);
}

#pdfZoomSelect {
  min-width: 90px;
}

#btn-download-pdf,
#btn-fullview-pdf {
  margin-left: var(--diw-space-xs);
}

.pdf-toolbar,
.pdf-page-viewer {
  background-color: var(--diw-neutral);
}

#diw-item-geo {
  display: none;
  width: 100%;
  height: 250px;
  position: relative;
}

#map-container {
  background-color: transparent;
  position: absolute;
  z-index: 1000;
  right: 0;
  bottom: 0;
  width: 200px;
  height: 200px;
  transition: width 0.5s ease-out;
}

#map-container.full-size {
  transition: height 0.5s ease-out;
  transform: scaleY(1);
  transform-origin: bottom;
  width: 100% !important;
  height: 100% !important;
}

#map-toggle {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 0px;
  right: 0px;
  z-index: 10001;
  background-color: #fff;
  margin: var(--diw-space-sm);
}

#map-toggle:hover {
  cursor: pointer;
}

#map-toggle.expand {
  background-image: url(../images/expand.svg);
  background-position: center center;
  background-repeat: no-repeat;
}

#map-toggle.collapse {
  background-image: url(../images/collapse.svg);
  background-position: center center;
  background-repeat: no-repeat;
  display: block;
}

.grow {
  animation: grow 500ms;
}

@keyframes shrink {
  from {
    transform: scale(4);
  }
  to {
    transform: scale(1);
  }
}

.shrink {
  animation: shrink 500ms;
}

#diw-carousel {
  background: var(--diw-gray-light);
}

.diw-carousel {
  position: relative;
  overflow: hidden;
  margin: auto;
}

.diw-carousel-inner {
  display: flex;
  transition: transform 0.5s ease;
}

.diw-carousel-item {
  min-width: 100%;
  box-sizing: border-box;
}

.diw-carousel-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--diw-gray-dark);
  color: white;
  border: none;
  padding: var(--diw-space-xs) var(--diw-space-sm);
  cursor: pointer;
  font-size: var(--step-0);
  z-index: 2000;
}

.diw-carousel-control.diw-prev {
  left: var(--diw-space-sm);
}

.diw-carousel-control.diw-next {
  right: var(--diw-space-sm);
}

.diw-carousel-nav {
  display: flex;
  justify-content: center;
  margin-top: var(--diw-space-sm);
}

.diw-carousel-link {
  margin: 0 var(--diw-space-xs);
}

.diw-thumb-mini {
  max-width: 50px;
  max-height: 50px;
  cursor: pointer;
}

.diw-carousel-link.active .diw-thumb-mini {
  border: 2px solid var(--diw-text-color);
}

#diw-item-media {
  text-align: center;
  min-height: 35vw !important;
}

#diw-item-media #diw-carousel .diw-img {
  height: 35vw;
  max-height: calc(35vw - var(--diw-space-md));
}

#diw-item-media #mediaPlayer {
  outline: none;
  width: 100%;
  height: 100%;
  padding: var(--diw-space-sm);
}

#diw-item-media #diw-zoom-viewer {
  height: 35vw;
}

@media (orientation: portrait) {
  #diw-item-media #diw-carousel .diw-img {
    height: 35vh;
    max-height: calc(35vh - var(--diw-space-md));
  }

  #diw-item-media #diw-zoom-viewer {
    height: 35vh;
  }

  #diw-item-media .pdf-page-viewer {
    height: 35vh;
  }
}


.diw-item-media-fixed-height {
  height: 35vw;
}

#diw-thumbnail-nav {
  background: var(--diw-gray-light);
  text-align: center;
}

@media only screen and (max-width: 768px) {
  #diw-thumbnail-nav {
    background: black;
    text-align: center;
  }
}

.diw-thumb-mini {
  height: 100px;
  margin: var(--diw-space-sm) var(--diw-space-xs);
}

#diw-item-data {
  clear: both;
}

/* pdf toolbar and viewer *********************/
.diw-pdf-toolbar,
.diw-pdf-page-viewer {
  background-color: var(--diw-neutral);
}

.diw-pdf-toolbar {
  display: flex;
  justify-content: space-between;
  padding: var(--diw-padding-2xs);
}

#diw-item-media .diw-pdf-page-viewer canvas {
  height: auto !important;
}

.diw-pdf-toolbar .page-number {
  -moz-appearance: textfield;
  border: none;
  min-width: 16px;
  text-align: right;
  padding: 0 var(--diw-padding-xs);
  width: 40px;
}

#pdf-load-indicator {
  margin-top: 25%;
  margin-right: 47%;
  margin-bottom: auto;
  margin-left: 47%;
}

/* media: audio/video viewer ******************/
/* related items ******************************/
#diw-related-items {
  margin-bottom: var(--diw-space-sm);
}

.diw-data-related {
  padding-top: var(--diw-space-sm);
}

ul.related-item-fields {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

ul.related-item-fields .diw-field {
  font-size: smaller;
}

ul.related-item-fields .field-label {
  font-weight: bold;
}

/* feedback form ******************************/
#diw-feedback-form {
  background-color: var(--diw-neutral);
  margin-block-start: var(--diw-space-2xs);
}

#diw-feedback-form.open {
  padding: var(--diw-space-sm);
}

#diw-feedback-form label {
  font-weight: bold;
}

#diw-feedback-status {
  display: none;
}

#button-feedback-toggle[aria-expanded=true] {
  padding-right: 2.25rem;
  background-repeat: no-repeat;
  background-position: center right 0.5625rem;
  background-size: 1.125rem 1.125rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23FFFFFF' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23FFFFFF' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
}

/** SPINNER ***********************************/
.diw-spinner {
  animation-play-state: running;
  opacity: 1;
  position: relative;
  text-align: center;
  height: 100px;
  width: 100%;
}

.diw-spinner.-paused {
  animation-play-state: paused;
  opacity: 0.2;
  transition: opacity linear 0.1s;
}

.diw-spinner::before {
  animation: 1.5s linear infinite spinner;
  animation-play-state: inherit;
  border: solid 3px var(--diw-gray-light);
  border-bottom-color: var(--diw-primary-color);
  border-radius: 50%;
  content: "";
  height: 40px;
  left: 50%;
  opacity: inherit;
  position: absolute;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: 40px;
  will-change: transform;
}

.facet-tools .spinner-border {
  height: 20px;
  width: 20px;
}

/** ERROR HANDLING ********************/
.diw-error-actions {
  margin-top: var(--diw-space-md);
  display: flex;
  gap: var(--diw-space-sm);
  flex-wrap: wrap;
  justify-content: center;
}

.diw-error-actions .diw-button {
  margin-right: 0; /* Override any margin from button styles */
}

/** DIW DEBUG HELP ********************/
#diw-config-help {
  font-size: smaller;
  background: var(--diw-gray-light);
  position: absolute;
  top: 0px;
  right: 0px;
  width: 250px;
  z-index: 100000;
  padding: var(--diw-space-sm);
  margin-top: 0px;
}

#diw-config-help .error {
  background: var(--diw-error-color);
  color: white;
  margin-bottom: 1px;
  padding: var(--diw-padding-xs);
}

#diw-config-help .header {
  background: #fff;
  cursor: move;
  margin: 0;
  padding: var(--diw-padding-xs);
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#diw-config-help .header small {
  display: block;
}

#diw-config-help #show-help .caret {
  float: right;
  width: 0;
  height: 0;
  margin: 7px 0 0 10px;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 7px solid var(--diw-text-color);
  border-bottom: none;
}

#diw-config-help #show-help.open .caret {
  float: right;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid var(--diw-text-color);
  border-top: none;
}

#diw-config-help .badge {
  background: var(--diw-primary-color);
  color: #fff;
  display: inline-block;
  margin-top: var(--diw-space-sm);
}

#diw-config-help p {
  margin-top: var(--diw-space-sm);
}

#diw-config-help section {
  display: none;
}

#diw-config-help ul {
  margin: 0 0 0 var(--diw-space-sm);
  padding: 0;
}

/* with-sidebar */
.diw-with-sidebar {
  display: flex;
  flex-wrap: wrap;
  gap: var(--diw-space-md);
}

.diw-with-sidebar > :last-child {
  flex-grow: 1;
}

.diw-with-sidebar > :first-child {
  flex-basis: 250px;
  flex-grow: 999;
  min-inline-size: 50%;
}

/* DIW collapse ****/
.diw-collapse-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  padding: 0; /* Ensure padding collapses as well */
  margin-block-start: 0;
  margin-block-end: 0;
}

.diw-collapse-content.open {
  max-height: 1000px; /* Large enough to accommodate content */
}

@keyframes spinner {
  0% {
    transform: translate3d(-50%, -50%, 0) rotate(0deg);
  }
  100% {
    transform: translate3d(-50%, -50%, 0) rotate(360deg);
  }
}