﻿/* Public: Partners page styles */
.hero{ position: relative; isolation: isolate; min-height: 48dvh; display: grid; place-items: center; text-align: center; color:var(--white); background: url("../images/partners/default.jpg") center/cover no-repeat fixed; border-radius: 0; }
.hero::before{ content:""; position:absolute; inset:0; background: linear-gradient(180deg, color-mix(in srgb, var(--black) 45%, transparent), color-mix(in srgb, var(--black) 55%, transparent) 70%); z-index:0; }
.hero-content{ position: relative; z-index: 1; max-width: 70ch; padding: 16px; }
.hero h2{ color: var(--white); margin: 0 0 10px; }

.partner-grid{ display: grid; gap:12px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.partner-card{ background: var(--card); border: 1px solid var(--border); border-radius: 12px; box-shadow: var(--shadow-1); overflow: hidden; transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.partner-card:hover{ transform: translateY(-2px); box-shadow: var(--shadow-2); border-color: var(--accent); }
.partner-card a{ display:grid; grid-template-rows: auto 1fr; gap: 10px; padding: 12px; text-decoration: none; color: inherit; }
.partner-card .image{ aspect-ratio: 4 / 3; width: 100%; overflow: hidden; border-radius: 10px; }
.partner-card img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.partner-card h3{ font-size: 1.05rem; margin: 0; }
.partner-card p{ margin: 6px 0 0; color: var(--muted); font-size: .95rem; line-height: 1.35; }

/* Partners page: keep complete logos visible inside cards (no crop). */
.partner-grid .card-media{
     display:flex;
     align-items:center;
     justify-content:center;
     background:var(--white);
}
.partner-grid .card-media::after{
     display:none;
}
.partner-grid .card-media>img{
     position:static;
     inset:auto;
     width:auto;
     height:auto;
     max-width:100%;
     max-height:100%;
     object-fit:contain;
     padding:10px;
     transform:none !important;
}


