
/* Clear Software - minimal modern styling */
:root{
  --brand:#0ea5e9;
  --brand-dark:#0369a1;
  --text:#0f172a;
  --muted:#475569;
  --light:#f8fafc;
  --bg-overlay: rgba(0,0,0,0.45);
}
html, body {
  height:100%;
  scroll-behavior:smooth;
}
body{
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  color: var(--text);
  background: #0b1020;
}
.hero{
  min-height: 100vh;
  background: linear-gradient(var(--bg-overlay), var(--bg-overlay)), url('../img/background.jpg') center/cover no-repeat fixed;
  display:flex;
  align-items:center;
  color:#fff;
}
.navbar-brand img{ height:40px; }
.tagline{
  font-size:1.25rem;
  color:#e2e8f0;
}
.btn-brand{
  background:var(--brand);
  border:none;
}
.btn-brand:hover{
  background:var(--brand-dark);
}
.section{
  padding: 5rem 0;
  background:#fff;
}
.section.alt{
  background:#f1f5f9;
}
.card{
  border:0;
  border-radius:1rem;
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}
.icon-badge{
  width:3rem;height:3rem;border-radius:0.75rem;display:flex;align-items:center;justify-content:center;background:#e0f2fe;margin-bottom:1rem;font-weight:700;
}
.partner-logo{
  max-height:48px;filter: grayscale(1) contrast(1.1) opacity(0.85); transition: .2s;
}
.partner-logo:hover{filter:none;transform:translateY(-2px)}
footer{
  background:#0b1020;color:#cbd5e1;padding:2rem 0;
}
.lang-switch .dropdown-menu .dropdown-item{ cursor:pointer; }
#profilePhoto{ width:140px; height:140px; object-fit:cover; border-radius:50%; box-shadow: 0 10px 20px rgba(0,0,0,.35); border:4px solid rgba(255,255,255,.7); }
.small-muted{ color:#64748b; font-size:.95rem; }
a.link-muted{ color:#0ea5e9; text-decoration: none; }
a.link-muted:hover{ text-decoration: underline; }


.navbar {
  background: rgba(255, 255, 255, 0.40) !important;
  backdrop-filter: blur(6px);
  box-shadow: 0 2px 6px rgba(0,0,0,0.35);
}
.navbar .nav-link {
  color: #0f172a !important;
  font-weight: 500;
}
.navbar .nav-link:hover {
  color: #0ea5e9 !important;
}
.navbar .navbar-brand span {
  color: #0f172a !important;
}

.bi { color: var(--brand); }

.navbar-toggler {
  border-color: var(--brand);
}
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%230ea5e9' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Animated icons */
.bi{
  color: var(--brand);
  display:inline-block;
  transition: transform .2s ease, filter .2s ease, color .2s ease;
  vertical-align: -0.125em;
}
h2:hover .bi, h5:hover .bi, .card:hover .bi{
  transform: translateY(-1px) scale(1.08);
  filter: drop-shadow(0 4px 8px rgba(14,165,233,.25));
}


/* Partners scroller: shows 4 at a time */
.partners-scroller{
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  gap: 2rem;
  padding: 0.5rem 0.25rem 0.75rem;
}
.text-brand {
  color: var(--brand) !important;
}

.partners-scroller::-webkit-scrollbar{ height:8px }
.partners-scroller::-webkit-scrollbar-thumb{ background: #e2e8f0; border-radius: 8px }
.partner-item{
  flex: 0 0 25%;
  display:flex; align-items:center; justify-content:center;
  scroll-snap-align:center;
}
@media (max-width: 768px){
  .partner-item{ flex-basis:50%; }
}
.partners-nav{
  position:absolute; top:50%; transform: translateY(-50%);
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
  border-radius: 999px;
  width: 40px; height: 40px;
  display:flex; align-items:center; justify-content:center;
}
.partners-nav.left{ left: -10px; }
.partners-nav.right{ right: -10px; }
@media (max-width: 576px){
  .partners-nav{ display:none; }
}


/* Partners carousel tweaks */
#partnersCarousel .carousel-indicators [data-bs-target]{
  background-color: var(--brand);
}
#partnersCarousel .carousel-control-prev-icon,
#partnersCarousel .carousel-control-next-icon{
  filter: invert(0) grayscale(1);
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  background-color: white;
  border-radius: 50%;
  padding: 15px;
  filter: invert(0) !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

#langSwitcher {
  border: 2px solid var(--brand);
  color: #0f172a;
  font-weight: 600;
  border-radius: 8px;
  padding: 6px 14px;
  background-color: #ffffff0a;
}
#langSwitcher i {
  color: var(--brand) !important;
}
#langSwitcher:hover {
  background-color: var(--brand);
  color: #fff;
}
@media (max-width: 768px) {
  #langSwitcher span { display: none; }
}
