:root { --header-offset: 120px; }
html { scroll-padding-top: var(--header-offset); }
.header-inner { gap:24px; }
.nav { gap:20px; margin-left:auto; }
.language-dropdown { position:relative; flex:none; z-index:12; }
.language-toggle { display:flex; align-items:center; gap:7px; padding:8px 10px; min-height:42px; border:1px solid rgba(231,193,106,.35); border-radius:6px; color:var(--gold); cursor:pointer; list-style:none; background:rgba(231,193,106,.04); transition:background .2s,border-color .2s; }
.language-toggle::-webkit-details-marker { display:none; }
.language-toggle::marker { content:''; }
.language-toggle:hover,.language-dropdown[open] .language-toggle { background:rgba(231,193,106,.1); border-color:rgba(231,193,106,.7); }
.language-current { font-size:10px; font-weight:700; letter-spacing:.8px; }
.language-chevron { width:9px; height:7px; flex:none; transition:transform .2s; }
.language-dropdown[open] .language-chevron { transform:rotate(180deg); }
.language-options { position:absolute; top:calc(100% + 12px); right:0; display:grid; gap:4px; width:190px; padding:8px; border:1px solid rgba(231,193,106,.38); border-radius:9px; background:#0b2117; box-shadow:0 16px 40px rgba(0,0,0,.4); }
.language-dropdown:not([open]) > .language-options { display:none; }
.language-tag { display:flex; align-items:center; gap:11px; padding:10px; border:1px solid transparent; border-radius:5px; color:#d6dece; font-size:11px; font-weight:600; line-height:1.1; transition:background .2s,border-color .2s,color .2s; }
.language-flag { display:block; width:36px; height:24px; object-fit:cover; border-radius:3px; flex:none; box-shadow:0 0 0 1px rgba(255,255,255,.12); }
.language-toggle .language-flag { width:32px; height:22px; }
.language-name { display:inline; }
.language-code { display:none; }
.language-tag:hover { color:var(--cream); border-color:rgba(231,193,106,.38); background:rgba(231,193,106,.06); }
.language-tag[aria-current="page"] { color:var(--gold); border-color:rgba(231,193,106,.65); background:rgba(231,193,106,.09); }
.language-tag[aria-current="page"]::after { content:'✓'; margin-left:auto; }
.language-toggle:focus-visible,.language-tag:focus-visible,.social-card:focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
.footer-top { grid-template-columns:1.05fr .7fr 1.4fr; gap:45px; }
.socials.social-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.social-card { min-width:0; min-height:76px; display:flex; align-items:center; gap:12px; padding:13px 12px; border:1px solid rgba(231,193,106,.16); border-radius:10px; background:linear-gradient(135deg,rgba(35,65,45,.42),rgba(12,31,22,.6)); transition:border-color .2s,background .2s,transform .2s; }
.social-card:hover { transform:translateY(-3px); border-color:rgba(231,193,106,.62); background:linear-gradient(135deg,rgba(40,75,49,.62),rgba(16,38,26,.8)); }
.social-icon { display:flex; align-items:center; justify-content:center; width:46px; height:46px; flex:0 0 46px; }
.social-icon img { display:block; width:30px; height:30px; object-fit:contain; }
.social-card--youtube .social-icon img { width:33px; }
.social-card--linkedin .social-icon img { width:33px; }
.social-card--x .social-icon img { width:27px; height:28px; }
.social-label { min-width:0; flex:1; }
.social-platform { display:block; font-size:12px; color:var(--cream); font-weight:600; letter-spacing:.1px; }
.social-handle { display:block; margin-top:4px; font-size:8px; color:#aebda6; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
.social-arrow { font-size:12px; color:var(--gold); flex:none; opacity:.6; transition:opacity .2s,transform .2s; }
.social-card:hover .social-arrow { opacity:1; transform:translate(1px,-1px); }
.social-caption { margin:-10px 0 19px; color:var(--muted); font-size:10px; line-height:1.7; }
@media(max-width:1080px) {
  .menu { display:block; margin-left:auto; }
  .nav { display:none; position:absolute; top:100%; left:0; width:100%; background:#07140f; padding:22px 32px 28px; flex-wrap:wrap; border-bottom:1px solid var(--line); gap:18px 26px; }
  .nav.open { display:flex; }
}
@media(max-width:1100px) {
  .footer-top { gap:28px; grid-template-columns:1fr .65fr 1.5fr; }
  .social-card { gap:7px; padding:10px 7px; }
  .social-icon { width:40px; height:40px; flex-basis:40px; }
}
@media(max-width:900px) {
  :root { --header-offset:104px; }
  .footer-top { grid-template-columns:1fr 1fr; gap:35px; }
  .footer-identity { grid-column:1/-1; }
  .social-card { min-height:76px; }
}
@media(max-width:600px) {
  :root { --header-offset:96px; }
  .header-inner { gap:8px; }
  .header-inner .brand { width:clamp(124px,39vw,180px); }
  .header-inner .menu { padding-inline:10px; }
  .language-toggle { padding:7px 8px; gap:5px; min-height:38px; }
  .language-toggle .language-flag { width:26px; height:18px; }
  .language-current { font-size:9px; }
  .language-chevron { width:8px; height:6px; }
  .language-options { top:calc(100% + 10px); }
  .footer-top { grid-template-columns:1fr; gap:34px; }
  .footer-identity { grid-column:auto; }
  .social-card { padding:12px 10px; gap:9px; }
  .social-icon { width:42px; height:42px; flex-basis:42px; }
  .social-platform { font-size:12px; }
  .social-handle { font-size:8px; }
}
@media(prefers-reduced-motion:reduce) {
  .language-tag,.language-toggle,.language-chevron,.social-card,.social-arrow { transition:none; }
  .social-card:hover,.social-card:hover .social-arrow { transform:none; }
}

/* Footer profile icons: one line in every language and at every breakpoint. */
.footer-social-links { min-width:0; }
.socials.social-cards.social-icons-only {
  display:flex; flex-wrap:nowrap; align-items:center; justify-content:flex-start;
  gap:clamp(3px,.8vw,10px); width:100%;
}
.social-icons-only .social-card {
  display:flex; align-items:center; justify-content:center; flex:0 1 48px;
  width:48px; max-width:48px; min-width:0; height:auto; min-height:0; aspect-ratio:1;
  padding:0; border:1px solid rgba(231,193,106,.22); border-radius:50%;
  background:linear-gradient(135deg,rgba(35,65,45,.42),rgba(12,31,22,.6));
  transition:border-color .2s,background .2s,transform .2s;
}
.social-icons-only .social-card:hover {
  transform:translateY(-3px); border-color:rgba(231,193,106,.7);
  background:linear-gradient(135deg,rgba(40,75,49,.62),rgba(16,38,26,.8));
}
.social-icons-only .social-card:focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
.social-icons-only .social-icon {
  display:flex; align-items:center; justify-content:center; flex:0 0 100%;
  width:100%; height:100%;
}
.social-icons-only .social-icon img { display:block; width:25px; height:25px; object-fit:contain; }
.social-icons-only .social-card--youtube .social-icon img,
.social-icons-only .social-card--linkedin .social-icon img { width:28px; height:28px; }
.social-icons-only .social-card--x .social-icon img { width:23px; height:24px; }
@media (prefers-reduced-motion:reduce) {
  .social-icons-only .social-card { transition:none; }
  .social-icons-only .social-card:hover { transform:none; }
}
