@font-face {
    font-family: 'vito';
    src: url('../fonts/vblk.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'vito';
    src: url('../fonts/vbld.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'vito';
    src: url('../fonts/vreg.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}

.banner img {
  object-fit: cover!important;
  object-position: top center!important;
  width: 100%;
  height: 100%;
}

a.advanced-search, form.sorting {
display:none!important;
}

div.main-search-container {
padding:0px;
margin:20px 0px 50px 0px;
}

input[type=text], input[type=email], input[type=url], input[type=password], input[type=search], input[type=number], input[type=tel], input[type=range], input[type=date], input[type=month], input[type=week], input[type=time], input[type=datetime], input[type=datetime-local], input[type=color], textarea, select {
    border: 1px solid #000;
    border-radius: 0px;
}

button {
border-radius:0px;}

div.resource__meta a, div.description {
color:#000!important;
margin-bottom:0px!important;
}

div.resource__content, div.resource__meta {
padding:5px 0px 5px 0px!important;
}

li.item {
border:none!important;
}

body {
    font-family: 'vito', sans-serif;
    font-weight: 400;
font-size:16px;
line-height:1.4em;
color:#000;
}

p {
margin-bottom:10px;
}

strong em, em strong {
    font-weight: 700;
}

div.property dt, span.tag-label {
text-transform:uppercase;
font-size:0.9em;
}

div#main-content a, span.resource-name {
text-decoration:none;
color:var(--primary);
}

div.main-footer__top {
display:none;
}

span.title {
text-transform:uppercase;
}

h1 {
font-family: 'vito', sans-serif;
font-weight:900;
font-size:23px;
padding-top:0.1em;
padding-left:0.2em;
margin-bottom:10px;
}

h1 span.title, span.title {
font-family: 'vito', sans-serif;
font-weight:900;
font-size:23px;
padding:inherit!important;
margin-bottom:10px;
}

.title::after {display:none;}

.title {
    border-bottom: none;
}

h2, div.resource__meta a {
font-family: 'vito', sans-serif;
font-weight:900;
font-size:18px;
line-height:1.4em;
text-transform:uppercase;
margin-bottom:10px;
}

h1, h1 span.title, span.title {
color:#fff;
background-color:#000;
padding-top:0.1em!important;
padding-left:0.2em!important;
margin-bottom:10px!important;
}

h3, h4 {
font-family: 'vito', sans-serif;
font-weight:900;
}

div#main-content nav.sub-menu {
display:none;
}

.resource-grid .resource, .field, fieldset  {
box-shadow:none;
border:#ccc 1px solid;
}



/* Objekt Detailseite zweispaltig */

/* Two Column Layout für Omeka S Items */

.two-column-layout {
    display: flex;
    gap: 2rem;
    margin: 2rem 0;
    align-items: flex-start;
}

.image-column {
    flex: 1;
    max-width: 50%;
}

.content-column {
    flex: 1;
    max-width: 50%;
}

.item-image {
    width: 100%;
    height: auto;
}

.item-image {
    position: relative;
    display: inline-block;
    overflow: hidden;
}

.item-image img {
    display: block;
    width: 100%;
    height: auto;
}

.item-image .overlay {
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.5); /* schwarzes halbtransparentes Overlay */
    opacity: 0;
    transition: opacity 0.3s ease;
}

.item-image:hover .overlay {
    opacity: 1;
}


.no-image-placeholder {
    background: #f8f9fa;
    border: 2px dashed #dee2e6;
    border-radius: 8px;
    padding: 2rem;
    text-align: center;
    color: #6c757d;
}

.additional-media {
    margin-top: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.additional-media img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    cursor: pointer;
}

.additional-media img:hover {
}

.item-metadata {
    background: white;
    padding: 1.5rem;
}

.metadata-group {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e9ecef;
}

.metadata-group:last-child {
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 0;
}

.property-label {
    font-weight: 600;
    color: #333;
    margin-bottom: 0.5rem;
    display: block;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.property-value {
    color: #666;
    line-height: 1.4;
    font-size: 1rem;
}

.property-value a {
    color: #007bff;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: border-color 0.3s ease;
}

.property-value a:hover {
    border-bottom-color: #007bff;
}

/* Responsive Design */
@media (max-width: 768px) {
    .two-column-layout {
        flex-direction: column;
        gap: 1.5rem;
        margin: 1rem 0;
    }
    
    .image-column,
    .content-column {
        max-width: 100%;
    }
    
    .item-metadata {
        padding: 1rem;
    }
    
    .additional-media img {
        width: 60px;
        height: 60px;
    }
}

@media (max-width: 480px) {
    .two-column-layout {
        gap: 1rem;
    }
    
    .item-metadata {
        padding: 0.75rem;
    }
    
    .property-label {
        font-size: 0.8rem;
    }
    
    .property-value {
        font-size: 0.9rem;
    }
}

/* Print Styles */
@media print {
    .two-column-layout {
        gap: 1rem;
    }
    
    .item-image {
        box-shadow: none;
        border: 1px solid #ccc;
    }
    
    .item-metadata {
        background: white;
        box-shadow: none;
        border: 1px solid #ccc;
    }
    
    .additional-media {
        display: none;
    }
}


.metadata-table {
    width: 100%;
    border-collapse: collapse;
}

.metadata-table td {
    border-bottom: 1px solid #ddd;
    padding: 8px;
    vertical-align: top;
}

.metadata-table td:first-child {
    font-weight: bold;
    width: 30%;
}



/* Suche auf Übersichtsseite */

/* Main Search Form Styles */
.main-search-container {
    text-align: center;
    margin: 2rem 0 3rem 0;
    padding: 2rem 1rem;
}

.main-search-form {
    display: inline-flex;
    align-items: center;
    max-width: 600px;
    width: 100%;
    background: white;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.main-search-form:focus-within {
}

.main-search-input {
    flex: 1;
    border: none;
    padding: 1rem 1.5rem;
margin-top:0.5rem;
margin-right:1rem;
    font-size: 1.1rem;
    outline: none;
    background: transparent;
}

.main-search-input::placeholder {
    color: #6c757d;
}

.main-search-button {
    background: var(--primary);
    border: none;
    padding: 0.9rem 1.5rem;
    color: white;
    cursor: pointer;
    transition: background-color 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main-search-button:hover {
    background: var(--primary);
}

.main-search-button i {
    font-size: 1.2rem;
}

/* Responsive Design */
@media (max-width: 768px) {
    .main-search-container {
        margin: 1rem 0 2rem 0;
        padding: 1.5rem 1rem;
    }
    
    .main-search-form {
        max-width: 100%;
    }
    
    .main-search-input {
        padding: 0.75rem 1rem;
        font-size: 1rem;
    }
    
    .main-search-button {
        padding: 0.75rem 1rem;
margin-bottom:1em;
    }
}




/* Banner standardmäßig ausblenden */
.banner.alignfull {
    display: none;
}

/* Banner nur auf der Welcome-Seite (Startseite) anzeigen */
body.site-page-welcome .banner.alignfull {
    display: block;
}




/* Gleiche Höhen für Grid-Layout - Korrigierte Version */
.resource-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    align-items: stretch;
    list-style: none; /* Entfernt Standard-Listen-Styling */
    padding: 0;
    margin: 0;
}

.resource-grid .item.resource {
    display: flex;
    flex-direction: column;
    border: 1px solid #ddd; /* Optional: Rahmen für bessere Sichtbarkeit */
    overflow: hidden;
    margin: 0; /* Wichtig: Entfernt Standard-Margins */
}

.resource-grid .resource__thumbnail {
    flex-shrink: 0; /* Thumbnail behält seine Größe */
}

.resource-grid .resource__content {
    display: flex;
    flex-direction: column;
    flex-grow: 1; /* Nimmt den verfügbaren Platz ein */
    padding: 15px;
}

.resource-grid .resource__meta {
    flex-grow: 1; /* Dehnt sich aus, um verfügbaren Platz zu füllen */
    display: flex;
    flex-direction: column;
}

.resource-grid .description {
    margin-top: auto; /* Drückt die Beschreibung nach unten */
}

/* Alternative: Flexbox-Lösung (sicherer für bestehende Layouts) */
.resource-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.resource-grid .item.resource {
    flex: 1 1 calc(33.333% - 20px); /* 3 Spalten */
    min-width: 300px;
    max-width: calc(33.333% - 20px);
    display: flex;
    flex-direction: column;
    border: 1px solid #ddd;
    overflow: hidden;
    margin: 0;
}

/* Responsive Anpassungen - Korrigiert */
@media (max-width: 768px) {
    .resource-grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
        gap: 15px;
    }
    
    /* Flexbox-Alternative */
    .resource-grid .item.resource {
        flex: 1 1 calc(50% - 15px); /* 2 Spalten auf Tablets */
        max-width: calc(50% - 15px);
        min-width: 250px;
    }
}

@media (max-width: 480px) {
    .resource-grid {
        grid-template-columns: 1fr; /* 1 Spalte auf Handys */
        gap: 10px;
    }
    
    /* Flexbox-Alternative */
    .resource-grid .item.resource {
        flex: 1 1 100%; /* 1 Spalte auf Handys */
        max-width: 100%;
        min-width: auto;
    }
}

/* Zusätzliche Verbesserungen für Thumbnails mit Zoom-Effekt */
.resource-grid .resource__thumbnail {
    overflow: hidden; /* Wichtig: Verhindert, dass das gezoomte Bild über den Rahmen hinausragt */
    position: relative;
}

.resource-grid .resource__thumbnail img {
    width: 100%;
    height: 200px; /* Feste Höhe für alle Thumbnails */
    object-fit: cover; /* Behält Seitenverhältnis bei und schneidet zu */
    display: block;
    transform: scale(1.1); /* 10% Zoom */
    transition: transform 0.3s ease; /* Sanfte Animation bei Hover */
}

/* Für bessere Textverteilung */
.resource-grid .resource__meta h3,
.resource-grid .resource__meta h4 {
    margin-top: 0;
    margin-bottom: 10px;
}

.resource-grid .description {
    font-size: 14px;
    line-height: 1.4;
    color: #666;
}

div.main-header__top-bar {
display:none;
}