@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=Inter:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap');

:root{
  --navy-deep: #14213A;
  --navy: #1E3A5F;
  --blue-light: #4A90C2;
  --ochre: #C97C4C;
  --ochre-soft: #E3B98C;
  --cream: #F7F4EE;
  --paper: #FBFAF7;
  --ink: #1A1A1A;
  --ink-soft: #4B5563;
  --line: rgba(20,33,58,0.12);
  --font-display: 'Fraunces', Georgia, serif;
  --font-body: 'Inter', -apple-system, sans-serif;
  --font-mono: 'IBM Plex Mono', monospace;
}

[data-theme="dark"]{
  --paper: #0F1826;
  --cream: #16233A;
  --ink: #F2F0EA;
  --ink-soft: #B8C0CC;
  --line: rgba(247,244,238,0.12);
  --navy-deep: #0A1220;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family: var(--font-body);
  color: var(--ink);
  background: var(--paper);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  transition: background .3s ease, color .3s ease;
}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
.container{max-width:1180px;margin:0 auto;padding:0 32px;}

header{
  position:sticky;top:0;z-index:100;
  background:var(--paper);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 32px;max-width:1180px;margin:0 auto;
}
.logo{
  font-family:var(--font-display);
  font-weight:600;font-size:21px;color:var(--navy-deep);
  display:flex;align-items:baseline;gap:8px;
}
[data-theme="dark"] .logo{color:var(--cream);}
.logo span{
  font-family:var(--font-mono);font-size:10px;letter-spacing:0.14em;
  color:var(--ochre);text-transform:uppercase;font-weight:500;
}
nav ul{list-style:none;display:flex;gap:28px;flex-wrap:wrap;}
nav a{
  font-size:14px;font-weight:500;color:var(--ink);
  position:relative;padding:4px 0;white-space:nowrap;
}
nav a::after{
  content:'';position:absolute;left:0;bottom:-2px;width:0;height:2px;
  background:var(--ochre);transition:width .25s ease;
}
nav a:hover::after, nav a.active::after{width:100%;}
nav a.active{color:var(--ochre);}
.nav-right{display:flex;align-items:center;gap:14px;}
.icon-btn{
  background:none;border:1px solid var(--line);border-radius:6px;
  width:36px;height:36px;display:flex;align-items:center;justify-content:center;
  cursor:pointer;color:var(--ink);font-size:13px;font-weight:600;
  font-family: var(--font-mono);
}
.btn-primary{
  background:var(--navy-deep);color:var(--cream);
  padding:9px 20px;border-radius:2px;font-size:13.5px;font-weight:600;
}
[data-theme="dark"] .btn-primary{background:var(--ochre);color:var(--navy-deep);}
.menu-toggle{display:none;background:none;border:none;cursor:pointer;font-size:22px;color:var(--ink);}

.page-hero{
  background:var(--navy-deep);color:var(--cream);
  padding:88px 0 72px;position:relative;overflow:hidden;
}
.page-hero .eyebrow{color:var(--ochre-soft);}
.page-hero h1{
  font-family:var(--font-display);font-size:clamp(32px,4.5vw,52px);
  font-weight:600;max-width:760px;line-height:1.15;
}
.page-hero p{margin-top:18px;max-width:600px;font-size:17px;color:rgba(247,244,238,0.78);}

.eyebrow{
  font-family:var(--font-mono);font-size:12px;letter-spacing:0.16em;
  text-transform:uppercase;color:var(--ochre);margin-bottom:18px;
  display:flex;align-items:center;gap:10px;
}
.eyebrow::before{content:'';width:28px;height:1px;background:currentColor;}

section{padding:90px 0;}
.section-alt{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
h2.section-title{
  font-family:var(--font-display);font-size:34px;font-weight:600;
  color:var(--navy-deep);line-height:1.2;
}
[data-theme="dark"] h2.section-title{color:var(--cream);}

footer{background:var(--paper);padding:70px 0 30px;border-top:1px solid var(--line);}
.footer-grid{
  display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:44px;
  padding-bottom:48px;border-bottom:1px solid var(--line);
}
.footer-brand p{color:var(--ink-soft);font-size:14.5px;max-width:280px;line-height:1.65;margin-top:14px;}
.footer-col h5{
  font-family:var(--font-mono);font-size:11.5px;letter-spacing:0.1em;
  text-transform:uppercase;color:var(--ochre);margin-bottom:18px;
}
.footer-col ul{list-style:none;}
.footer-col li{margin-bottom:11px;}
.footer-col a{font-size:14px;color:var(--ink-soft);}
.footer-col a:hover{color:var(--ochre);}
.footer-bottom{
  display:flex;justify-content:space-between;align-items:center;
  padding-top:24px;flex-wrap:wrap;gap:14px;font-size:13px;color:var(--ink-soft);
}

.btn-ochre{
  background:var(--ochre);color:var(--navy-deep);
  padding:13px 26px;border-radius:2px;font-weight:600;font-size:14.5px;
  display:inline-block;
}
.btn-outline{
  border:1px solid rgba(247,244,238,0.35);color:var(--cream);
  padding:13px 26px;border-radius:2px;font-weight:600;font-size:14.5px;
  display:inline-block;
}
.btn-navy{
  background:var(--navy-deep);color:var(--paper);
  padding:13px 26px;border-radius:2px;font-weight:600;font-size:14.5px;
  display:inline-block;border:none;cursor:pointer;
}

@media (max-width: 860px){
  nav ul{display:none;}
  .menu-toggle{display:block;}
  .footer-grid{grid-template-columns:1fr 1fr;}
}

[lang-content="so"]{display:none;}
[data-lang="so"] [lang-content="en"]{display:none;}
[data-lang="so"] [lang-content="so"]{display:block;}
