/* Nexora Alliance Group — shared styles */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Manrope:wght@400;500;600;700&display=swap');

:root{
  --bg:#0d0d0c;
  --surface:#161613;
  --surface-2:#1d1c18;
  --line:#332f26;
  --text:#f2efe8;
  --muted:#a39b8a;
  --bronze:#c9a15a;
  --bronze-soft:#c9a15a2b;
  --olive:#7a8064;
  --radius:10px;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Manrope',sans-serif;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{
  font-family:'Fraunces',serif;
  font-weight:600;
  letter-spacing:-0.01em;
  line-height:1.15;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.container{max-width:1180px;margin:0 auto;padding:0 24px;}
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-size:12.5px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--bronze);
}
.eyebrow::before{content:"";width:24px;height:1px;background:var(--bronze);display:inline-block;}

/* NAV */
header.nav{
  position:sticky;top:0;z-index:100;
  background:rgba(13,13,12,0.9);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  max-width:1180px;margin:0 auto;padding:20px 24px;
  display:flex;align-items:center;justify-content:space-between;
}
.logo{
  font-family:'Fraunces',serif;font-weight:600;font-size:20px;
  display:flex;align-items:center;gap:12px;letter-spacing:0.01em;
}
.logo-mark{
  width:30px;height:30px;border:1.5px solid var(--bronze);
  position:relative;flex-shrink:0;transform:rotate(45deg);
}
.logo-mark::after{content:"";position:absolute;inset:6px;border:1px solid var(--bronze);}
.nav-links{display:flex;gap:32px;align-items:center;}
.nav-links a{font-size:14px;font-weight:500;color:var(--muted);transition:color .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--text);}
.nav-cta{
  border:1px solid var(--bronze);color:var(--bronze);padding:10px 22px;
  font-weight:600;font-size:13.5px;letter-spacing:0.04em;
}
.nav-cta:hover{background:var(--bronze);color:#141310;}
.nav-toggle{display:none;background:none;border:none;color:var(--text);font-size:24px;cursor:pointer;}

@media(max-width:860px){
  .nav-links{
    position:fixed;top:68px;left:0;right:0;bottom:0;
    background:var(--bg);flex-direction:column;padding:32px 24px;
    display:none;gap:24px;
  }
  .nav-links.open{display:flex;}
  .nav-toggle{display:block;}
}

/* HERO */
.hero{position:relative;padding:120px 0 100px;overflow:hidden;border-bottom:1px solid var(--line);}
.hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:60px;align-items:center;}
.hero h1{font-size:54px;margin:20px 0 22px;font-weight:600;}
.hero p.lead{font-size:18px;color:var(--muted);max-width:520px;margin-bottom:34px;}
.btn-row{display:flex;gap:16px;flex-wrap:wrap;}
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:15px 30px;font-weight:600;font-size:14.5px;letter-spacing:0.02em;
  transition:transform .2s,background .2s,color .2s;border-radius:2px;
}
.btn-primary{background:var(--bronze);color:#141310;}
.btn-primary:hover{background:#dab470;}
.btn-ghost{border:1px solid var(--line);color:var(--text);}
.btn-ghost:hover{border-color:var(--bronze);color:var(--bronze);}

/* alliance visual: interlocking rings */
.alliance-visual{position:relative;height:380px;display:flex;align-items:center;justify-content:center;}
.ring{position:absolute;border:1px solid var(--bronze);border-radius:50%;opacity:0.75;}
.ring.r1{width:200px;height:200px;left:calc(50% - 220px);}
.ring.r2{width:200px;height:200px;left:calc(50% - 100px);border-color:var(--olive);}
.ring.r3{width:200px;height:200px;left:calc(50% + 20px);}

@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr;}
  .hero h1{font-size:38px;}
  .alliance-visual{height:220px;}
  .ring{width:130px;height:130px;}
  .ring.r1{left:calc(50% - 140px);}
  .ring.r2{left:calc(50% - 65px);}
  .ring.r3{left:calc(50% + 10px);}
}

/* SECTIONS */
section{padding:96px 0;}
.section-head{max-width:640px;margin-bottom:56px;}
.section-head h2{font-size:36px;margin-top:16px;font-weight:600;}
.section-head p{color:var(--muted);font-size:16.5px;margin-top:16px;}
.alt{background:var(--surface);}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.card{
  background:var(--bg);padding:40px 34px;
  transition:background .25s;
}
.card:hover{background:var(--surface-2);}
.card .num{font-family:'Fraunces',serif;font-size:14px;color:var(--bronze);font-weight:600;}
.card h3{font-size:21px;margin:16px 0 12px;font-weight:600;}
.card p{color:var(--muted);font-size:15px;}
.card-icon{
  width:40px;height:40px;border:1px solid var(--bronze);
  display:flex;align-items:center;justify-content:center;color:var(--bronze);
  font-size:18px;margin-bottom:18px;
}
.alt .card{background:var(--surface);}
.alt .card:hover{background:var(--surface-2);}

.stats-bar{
  display:grid;grid-template-columns:repeat(4,1fr);gap:24px;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  padding:50px 0;
}
.stat h3{font-size:42px;color:var(--bronze);font-weight:600;}
.stat p{color:var(--muted);font-size:13.5px;margin-top:8px;letter-spacing:0.03em;text-transform:uppercase;}

.testimonial{
  background:var(--surface);border:1px solid var(--line);
  padding:38px;
}
.testimonial p.quote{font-size:19px;line-height:1.7;margin-bottom:24px;font-family:'Fraunces',serif;font-weight:500;}
.testimonial .who{display:flex;align-items:center;gap:14px;}
.avatar{width:42px;height:42px;border:1px solid var(--bronze);}
.who h4{font-size:14.5px;font-family:'Manrope',sans-serif;font-weight:700;}
.who span{color:var(--muted);font-size:13px;}

.cta{
  background:var(--surface);border:1px solid var(--line);
  padding:70px;text-align:center;position:relative;
}
.cta h2{font-size:36px;margin-bottom:18px;font-weight:600;}
.cta p{color:var(--muted);margin-bottom:32px;font-size:16.5px;}

footer{border-top:1px solid var(--line);padding:70px 0 34px;background:var(--bg);}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:52px;}
.footer-grid h4{font-size:13px;margin-bottom:20px;color:var(--bronze);letter-spacing:0.06em;text-transform:uppercase;}
.footer-grid p{color:var(--muted);font-size:14px;max-width:280px;}
.footer-grid ul{list-style:none;}
.footer-grid li{margin-bottom:13px;}
.footer-grid a{color:var(--muted);font-size:14px;transition:color .2s;}
.footer-grid a:hover{color:var(--bronze);}
.footer-bottom{
  border-top:1px solid var(--line);padding-top:28px;
  display:flex;justify-content:space-between;color:var(--muted);font-size:13px;flex-wrap:wrap;gap:12px;
}

@media(max-width:860px){
  .grid-3,.grid-4{grid-template-columns:1fr;}
  .grid-2{grid-template-columns:1fr;}
  .stats-bar{grid-template-columns:1fr 1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .cta{padding:44px 26px;}
  .section-head h2{font-size:28px;}
}

.page-hero{padding:76px 0 54px;border-bottom:1px solid var(--line);}
.page-hero h1{font-size:44px;margin-top:16px;font-weight:600;}
.page-hero p{color:var(--muted);font-size:17px;max-width:600px;margin-top:16px;}

.breadcrumb{color:var(--muted);font-size:13px;margin-bottom:20px;letter-spacing:0.02em;}
.breadcrumb a:hover{color:var(--bronze);}

.tag{
  display:inline-block;padding:5px 14px;
  border:1px solid var(--line);
  font-size:12px;color:var(--olive);margin-right:8px;margin-bottom:8px;letter-spacing:0.04em;text-transform:uppercase;
}

table{width:100%;border-collapse:collapse;}
table th,table td{padding:18px;text-align:left;border-bottom:1px solid var(--line);font-size:14.5px;}
table th{color:var(--bronze);font-family:'Fraunces',serif;font-weight:600;}

.form-field{margin-bottom:22px;}
.form-field label{display:block;font-size:13px;margin-bottom:10px;color:var(--muted);letter-spacing:0.03em;}
.form-field input,.form-field textarea,.form-field select{
  width:100%;padding:14px 16px;background:var(--surface-2);
  border:1px solid var(--line);color:var(--text);font-family:'Manrope',sans-serif;font-size:14.5px;
}
.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--bronze);}
