/* Logo and introductory copy stay on the left; stage lighting stays visible. */
.hero.has-image .hero-slideshow { background-image: none; }
.hero-slide { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; opacity: 0; z-index: 0; transition: opacity 1400ms ease-in-out; }
.hero-slide.is-previous { opacity: 1; z-index: 1; }
.hero-slide.is-current { opacity: 1; z-index: 2; }
.hero-bottom { align-items: center; }
.hero-controls { display: flex; gap: 18px; align-items: center; }
.slideshow-toggle { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid #ffffff30; border-radius: 50%; color: #bdc8db; background: #080a0e70; padding: 8px; }
.slideshow-toggle[hidden] { display: none; }
.slideshow-toggle:hover { border-color: #8eabdf; color: white; }
.slideshow-toggle svg { width: 18px; height: 18px; }
.slideshow-toggle .play-icon, .slideshow-toggle.is-paused .pause-icon { display: none; }
.slideshow-toggle.is-paused .play-icon { display: block; }
@media (max-width: 700px) {
  .hero-slide { object-position: 63% center; }
  .hero-bottom { align-items: center; gap: 10px; }
  .hero-controls { margin-left: auto; }
  .slideshow-toggle { width: 44px; height: 44px; }
}
.brands-top h2 { letter-spacing: 0; }
.header-inner { height: 78px; justify-content: flex-end; gap: 28px; }
.header-home { color: #bdc2cc; font-size: 14px; padding: 15px 0; }
.header-home:hover { color: white; }
.hero { min-height: 660px; }
.hero-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 36px;
  padding-block: 20px 48px;
  flex: 1;
}
.hero-logo { width: min(100%, 277.5px); margin: 0; line-height: 1; }
.hero-logo img { width: 100%; height: auto; }
.hero-copy { min-width: 0; max-width: 455px; text-align: left; }
.hero-description { max-width: 455px; }
.hero-shade {
  background: linear-gradient(90deg, rgba(8,10,14,.94), rgba(8,10,14,.73) 34%, rgba(8,10,14,.12) 72%), linear-gradient(0deg,#080a0e,transparent 35%);
}
details[data-expanded="true"] > summary > span { transform: rotate(45deg); }
details[data-expanded="false"] > summary > span { transform: rotate(0); }
.service-grid { align-items: start; }
.service-card { min-height: 372px; }
@media (min-width: 1600px) {
  .hero { min-height: 730px; }
  .hero-logo { width: 307.5px; }
}
@media (max-width: 1000px) {
  .hero-content { gap: 36px; }
  .hero-description .desktop-break { display: none; }
  .hero-actions { flex-wrap: wrap; }
}
@media (max-width: 700px) {
  .header-inner { height: 68px; }
  nav { top: 68px; }
  .hero { min-height: 0; }
  .hero-content { gap: 32px; padding-block: 38px 42px; }
  .hero-logo { width: min(100%, 225px); }
  .hero-description { margin-inline: 0; }
  .hero-actions { justify-content: flex-start; }
  .hero-bottom { justify-content: flex-start; }
  .hero-shade { background: linear-gradient(90deg,rgba(8,10,14,.88),rgba(8,10,14,.5)),linear-gradient(0deg,#080a0e,transparent 40%); }
  .service-card { min-height: 0; }
}
@media (max-width: 360px) {
  .contact h2 { font-size: 46px; letter-spacing: -2.3px; }
}
.language-switch { display: flex; align-items: center; gap: 2px; padding-left: 20px; border-left: 1px solid var(--line); flex-shrink: 0; }
.language-switch a { display: grid; place-items: center; min-width: 38px; min-height: 42px; color: var(--muted); font-size: 12px; font-weight: 600; border-radius: 4px; }
.language-switch a:hover { color: white; background: #ffffff0a; }
.language-switch a[aria-current="page"] { color: #a9c4ff; background: #3975ff20; }
@media (min-width: 701px) and (max-width: 1000px) {
  .header-inner { gap: 16px; }
  #navigation { gap: 17px; }
  .nav-contact { padding: 12px 15px; }
  .language-switch { padding-left: 12px; }
}
@media (max-width: 850px) and (min-width: 701px) {
  .header-inner { width: calc(100% - 40px); gap: 10px; }
  #navigation { gap: 12px; font-size: 13px; }
  .header-home { font-size: 13px; }
  .nav-contact { padding-inline: 10px; }
  .language-switch { padding-left: 8px; }
  .language-switch a { min-width: 32px; }
}
@media (max-width: 700px) {
  .header-inner { gap: 16px; }
  .language-switch { border: 0; padding: 0; }
  .language-switch a { min-width: 40px; min-height: 44px; }
  #navigation .header-home { padding: 17px 12px; font-size: 16px; }
  .hero-bottom { flex-wrap: wrap; }
  .hero-bottom > span { line-height: 1.6; }
  h2, h3 { overflow-wrap: anywhere; }
}
