/* stil.css — comhstíl CS Mac Dara: ceanntásc, nav, roghchlár anuas, buntásc.
   Athraigh anseo é agus athraíonn sé ar chuile leathanach. */
:root {
  --dubh: #111210; --dubh2: #171815; --line: #2a2b28; --line2: #3a3b37;
  --uachtar: #F3EDE2; --dearg: #A9333A; --liath: #8f9089; --liath2: #b9bab2; --uisce: #1b2f38;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--dubh); color: var(--uachtar);
  font-family: "Archivo", -apple-system, sans-serif; line-height: 1.6; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; height: auto; }
header { position: sticky; top: 0; z-index: 50; background: var(--dubh); border-bottom: 0.5px solid var(--line); }
.ct { max-width: 1140px; margin: 0 auto; padding: 0.8rem 1.6rem;
  display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.branda { display: flex; align-items: center; gap: 0.8rem; }
.branda img { width: 46px; height: 46px; border-radius: 50%; }
.branda span { font-weight: 800; font-size: 0.85rem; letter-spacing: 0.16em; text-transform: uppercase; }
.nav-cnaipe { display: none; margin-left: auto; font-size: 1.5rem; cursor: pointer; }
#nav-t { display: none; }
nav { margin-left: auto; display: flex; align-items: center; gap: 1.4rem; }
nav a { font-size: 0.82rem; letter-spacing: 0.07em; color: var(--liath2); position: relative; padding: 0.3rem 0; }
nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 0; height: 2px; background: var(--dearg); transition: right 0.25s; }
nav a:hover { color: var(--uachtar); }
nav a:hover::after, nav a[aria-current]::after { right: 0; }
nav a[aria-current] { color: var(--uachtar); }
nav a.teanga { border: 0.5px solid var(--line2); padding: 0.1rem 0.55rem; border-radius: 3px; font-weight: 500; }
nav a.teanga::after { display: none; }
.fo-nasc { position: relative; display: flex; align-items: center; }
.fo-liosta { position: absolute; top: calc(100% + 0.55rem); left: 50%; transform: translateX(-50%);
  background: var(--dubh2); border: 0.5px solid var(--line2); border-radius: 4px;
  padding: 0.4rem 0; min-width: 170px; display: none; flex-direction: column; z-index: 60; }
.fo-liosta::before { content: ""; position: absolute; top: -0.7rem; left: 0; right: 0; height: 0.7rem; }
.fo-nasc:hover .fo-liosta, .fo-nasc:focus-within .fo-liosta { display: flex; }
.fo-liosta a { padding: 0.4rem 1.1rem; font-size: 0.8rem; color: var(--liath2); white-space: nowrap; }
.fo-liosta a::after { display: none; }
.fo-liosta a:hover { color: var(--uachtar); background: rgba(255,255,255,0.05); }
.mion { color: var(--liath); font-size: 0.85rem; }
footer { border-top: 0.5px solid var(--line); }
.bun { max-width: 1140px; margin: 0 auto; padding: 2.2rem 1.6rem;
  display: flex; gap: 2rem; flex-wrap: wrap; justify-content: space-between; align-items: center; }
footer a { color: var(--liath2); font-size: 0.85rem; }
footer a:hover { color: var(--uachtar); }
footer .mion { margin: 0.3rem 0 0; }
.sois { display: inline-flex; align-items: center; gap: 0.45rem; }
.sois svg { width: 21px; height: 21px; fill: currentColor; }
@media (max-width: 860px) {
  .fo-liosta { display: none !important; }
  .fo-nasc { width: 100%; }
  .nav-cnaipe { display: block; }
  nav { display: none; width: 100%; flex-direction: column; align-items: flex-start; gap: 0.3rem; padding-bottom: 0.6rem; }
  #nav-t:checked ~ nav { display: flex; }
}
