/* Antranova Website – V2.7.3
   layout.css
   Purpose: page shell + layout primitives (container, header, nav, grid, footer)
*/

.container{
  max-width: var(--container-max);
  margin: 0 auto;
  padding-inline: var(--padx);
}

main{ padding: 28px 0 44px; }

/* Header */
header{
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.9);
  backdrop-filter: blur(8px);
  position: sticky;
  top: 0;
  z-index: 10;
}

.header-inner{
  display: flex;
  align-items: flex-start; /* consistent baseline for SV/EN */
  justify-content: space-between;
  gap: var(--sp-3);
  padding-block: 14px; /* do not override container horizontal padding */
}

.brand{
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  gap: 10px;
}
.brand-text{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap: 2px;
  min-width: 0;
}
.brand-mark{
  width:80px;
  height:80px;
  display:block;
  flex:0 0 80px;
  margin-top:0px;
}
.brand .name{
  font-weight:800;
  letter-spacing:.2px;
  line-height:1.15;
  color: var(--brand);
  white-space: nowrap;
}
.brand .tagline{
  color:var(--muted);
  font-size:.92rem;
  margin-top:0;
}

/* Nav */
nav ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  gap: 10px;
  align-items:center;
  /* Keep header stable on desktop (avoid wrapping due to scrollbars).
     Wrapping is enabled at smaller widths via media query. */
  flex-wrap:nowrap;
}
nav a{
  display:inline-block;
  padding: 8px 10px;
  border-radius: 12px;
  color: var(--text);
  font-weight: 600;
  font-size: .95rem;
}
nav a:hover{
  background: var(--soft);
  text-decoration:none;
}
nav a[aria-current="page"]{
  background: var(--soft);
  border: 1px solid var(--line);
}

nav li{ display:flex; align-items:center; }

.lang-switch{
  margin-left:auto;
  font-size:0.9rem;
  white-space:nowrap;
}


/* Grid primitive (12-col), used by cards on Home and others */
.grid{
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 14px;
  margin-top: 16px;
}

/* Footer */
footer{
  border-top:1px solid var(--line);
  padding: 18px 0;
  color: var(--muted);
}
.footer-inner{
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  font-size:.95rem;
}

/* Responsive */
@media (max-width: 980px){
  nav ul{ flex-wrap:wrap; }
  .lang-switch{ margin-left:0; }
}

@media (max-width: 820px){
  .header-inner{ flex-direction:column; align-items:flex-start; }
}


/* Language switch: keep plain text links (not pills) */
.lang-switch a{
  padding: 0;
  border-radius: 0;
  font-weight: 700;
}
.lang-switch a:hover{
  background: transparent;
  text-decoration: underline;
}
