/* =========================================================
   MODERN.CSS (CLEAN)
   - Desktop: center logo + split nav left/right
   - Mobile: no toggle, logo left, nav wraps on right (pills)
   - Gallery: CSS grid 3:2 tiles, no isotope gaps
   ========================================================= */

:root{
  --brand:#22c55e;
  --border:rgba(15,23,42,.12);
  --text:#6b7280;
  --text-strong:#0f172a;

  --nav-h: 92px;         /* desktop navbar height */
  --nav-h-mobile: 84px;  /* mobile navbar height */

  --radius:16px;
}

*{ box-sizing:border-box; }
img{ max-width:100%; display:block; }

/* ================= NAVBAR BASE ================= */
#topNav.navbar{
  position: sticky;
  top: 0;
  z-index: 1000;
  background:#fff;
  border-bottom:1px solid var(--border);
  min-height: var(--nav-h);
  overflow: visible;
}

/* Make brand not clip */
#topNav .navbar-brand{
  padding: 0 12px !important;
  height: var(--nav-h);
  display:flex !important;
  align-items:center;
  line-height: 1;
}

#topNav .navbar-brand img{
  height: 64px;
  width: auto;
}

/* IMPORTANT: since you removed toggle, force navbar-collapse visible */
#topNav .navbar-collapse{
  display:flex !important;
  width:100%;
  border:0;
  box-shadow:none;
}

/* Base link style */
#topNav .navbar-nav > li > a{
  position:relative;
  color: var(--text);
  font-weight:600;
  text-decoration:none !important;
  transition: color .18s ease, font-weight .18s ease;
}

/* Underline indicator (desktop + ipad) */
#topNav .navbar-nav > li > a::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:16px;
  width:0;
  height:2px;
  background:var(--brand);
  transform:translateX(-50%);
  transition: width .2s ease;
}

#topNav .navbar-nav > li > a:hover,
#topNav .navbar-nav > li > a:focus{
  color: var(--text-strong);
  font-weight:800;
}

#topNav .navbar-nav > li > a:hover::after{ width:60%; }

#topNav .navbar-nav > li.active > a{
  color: var(--text-strong);
  font-weight:800;
}
#topNav .navbar-nav > li.active > a::after{ width:60%; }

/* ================= DESKTOP / iPAD (split around centered logo) ================= */

.pull-left {
    margin:0 auto!important;
    
}
@media (min-width:768px){

  #topNav .container{
    position:relative;
    display:flex;
    align-items:center;
    min-height: var(--nav-h);
  }

  /* Center logo */
  #topNav .navbar-header{
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    float:none !important;
    display:flex;
    align-items:center;
    height: var(--nav-h);
    z-index:3;
  }

  /* Collapse becomes flex row */
  #topNav .navbar-collapse{
    align-items:center;
  }

  /* reset bootstrap floats */
  #topNav .navbar-nav{
    float:none !important;
    display:flex;
    align-items:center;
    margin:0;
  }

  /* spacing fits navbar height */
  #topNav .navbar-nav > li > a{
    padding: 34px 12px;
  }

  /* split groups (you already have 2 ULs) */
  #topNav .nav-left{ margin-right:auto; padding-right:120px; }
  #topNav .nav-right{ margin-left:auto; padding-left:120px; }
}

/* ================= MOBILE (no toggle, logo left, nav wraps right) ================= */
@media (max-width:767px){

  #topNav.navbar{
    min-height: var(--nav-h-mobile);
  }

  #topNav .container{
    display:flex;
    align-items:flex-start;
    padding-top: 8px;
    padding-bottom: 8px;
  }

  /* logo left */
  #topNav .navbar-header{
    position:static;
    transform:none;
    display:flex;
    align-items:flex-start;
    height:auto;
    margin:0;
    flex:0 0 auto;
  }

  #topNav .navbar-brand{
    height:auto;
    padding:0 8px !important;
  }

  #topNav .navbar-brand img{
    height: 80px;
  }

  /* nav on right */
  #topNav .navbar-collapse{
    justify-content:flex-end;
    align-items:flex-start;
  }

  /* combine both UL into a wrapping row */
  #topNav .navbar-nav{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:10px 10px;
    margin:0;
  }

  /* remove split padding on mobile */
  #topNav .nav-left,
  #topNav .nav-right{
    margin:0;
    padding:0;
  }

  /* make items compact (no dark full-width blocks) */
  #topNav .navbar-nav > li{
    float:none !important;
    display:block;
    margin:0;
  }

  #topNav .navbar-nav > li > a{
    padding:6px 10px;
    border:1px solid var(--border);
    border-radius:999px;
    background:#f8fafc;
    color:#374151;
    font-weight:700;
  }

  /* disable underline pseudo element on moble pills */
  #topNav .navbar-nav > li > a::after{ display:none; }

  #topNav .navbar-nav > li > a:hover,
  #topNav .navbar-nav > li > a:focus{
    background:#fff;
    color: var(--text-strong);
  }

  #topNav .navbar-nav > li.active > a{
    border-color: var(--brand);
  }
}

/* ================= SECTIONS (optional spacing) ================= */
.section-wrapper,
.about-sec,
.portfolio-section,
.clients-section{
  padding:64px 0;
}


/* =========================================================
   COMMITTEE MEMBERS 
   OWL CAROUSEL ADJUST
   ========================================================= */




/* Grid container */
.owl-carousel{
  width:100%;
}

/* iPad */
@media (max-width:1100px){
  .owl-carousel{
    width:78%;
  }
}

/* mobile */
@media (max-width:767px){
  .owl-carousel{
    width:80%;
  }
}



/* =========================================================
   PORTFOLIO / GALLERY GRID (NO GAPS)
   Desktop: 3 cols | iPad: 2 cols | Mobile: 1 col
   ========================================================= */

/* Kill legacy float layouts inside portfolio */
#portfolio .portfolio-item{
  float:none !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  position:relative;
}

/* Grid container */
#portfolio .portfolio-items{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:12px;
  margin:0;
  padding:0;
}

/* iPad */
@media (max-width:1100px){
  #portfolio .portfolio-items{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:10px;
  }
}

/* mobile */
@media (max-width:767px){
  #portfolio .portfolio-items{
    grid-template-columns:1fr;
    gap:10px;
  }
}

/* fixed tile ratio */
#portfolio .portfolio-item .thumb{
  width:100%;
  aspect-ratio:3 / 2;
  overflow:hidden;
  border-radius:var(--radius);
  background:#eef2f7;
}

/* image fills tile */
#portfolio .portfolio-item .thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* caption overlay */
#portfolio .portfolio-details-wrapper{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:8px 10px;
  border-radius:0 0 var(--radius) var(--radius);
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.65));
  color:#fff;
  font-weight:700;
  font-size:14px;
}
