:root{
  --ink:#14202c;
  --ink-2:#45535f;
  --brass:#96773c;
  --paper:#f4f3f0;
  --line:#dcd9d2;

  /* only 4 font sizes used across the page */
  --fs-hero:44px;
  --fs-h2:28px;
  --fs-h3:18px;
  --fs-body:16px;
}
body{
  font-family:'Source Sans 3',system-ui,Arial,sans-serif;
  font-size:var(--fs-body); line-height:1.7; color:var(--ink-2);
  background:#fff; -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{color:var(--ink);font-weight:600;line-height:1.25;letter-spacing:-.01em}
h1{font-size:var(--fs-hero)}
h2{font-size:var(--fs-h2)}
h3,h4{font-size:var(--fs-h3)}
p{margin-bottom:1rem}
a{color:var(--brass);text-decoration:none}
a:hover{color:var(--ink)}
.section{padding:80px 0}
.section-alt{background:var(--paper)}
.lead-sm{max-width:60ch}
.rule{width:52px;height:2px;background:var(--brass);margin-bottom:22px}

.btn{border-radius:0;padding:10px 26px;font-size:var(--fs-body);font-weight:600}
.btn-ink{background:var(--ink);color:#fff;border:1px solid var(--ink)}
.btn-ink:hover{background:var(--brass);border-color:var(--brass);color:#fff}
.btn-brass{background:var(--brass);color:#fff;border:1px solid var(--brass) !important;padding: 10px 20px;
    font-size: 14px;
    font-weight: 600;}
.btn-brass:hover{background:#fff;color:var(--ink);border-color:#fff}
.btn-line{border:1px solid rgba(255,255,255,.55);color:#fff}
.btn-line:hover{background:#fff;color:var(--ink)}

/* header */
.topbar{background:var(--ink);color:#c5cdd6;font-size:14px;padding:8px 0}
.topbar a{color:#c5cdd6}.topbar a:hover{color:#fff}
.navbar{background:#fff;border-bottom:1px solid var(--line);padding:10px 0}
.navbar-brand img{width: 215px;}
.navbar-brand{color:var(--ink);font-weight:600;font-size:var(--fs-h3);line-height:1.2}
.navbar-brand small{display:block;font-size:12px;font-weight:400;color:var(--ink-2);letter-spacing:.08em}
.seal{width:40px;height:40px;border:1px solid var(--brass);border-radius:50%;display:grid;place-items:center;
  color:var(--brass);font-size:13px;font-weight:600;margin-right:12px;flex:0 0 40px}
.navbar .nav-link{color:var(--ink);padding:10px 14px!important;border-bottom:2px solid transparent}
.navbar .nav-link:hover,.navbar .nav-link:focus,.navbar .nav-item.show .nav-link{color:var(--brass);border-bottom-color:var(--brass)}
.dropdown-menu{border-radius:0;border:1px solid var(--line);box-shadow:0 10px 24px rgba(20,32,44,.08);padding:8px 0;margin-top:0}
.dropdown-item{font-size: 14px;
    padding: 8px 20px;color:var(--ink-2)}
.dropdown-item:hover{background:var(--paper);color:var(--brass)}
@media(min-width:992px){.dropdown:hover>.dropdown-menu{display:block}}

/* banner */
.banner{position:relative;color:#fff}

.bannerimg{
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.banner-inner{
      background: linear-gradient(45deg, black, transparent);
    position: relative;
    width: 100%;
    height: 100%;
    padding: 40px 0px 80px;
}
.banner h1{color:#fff;max-width:16ch}
.banner p{color:#d3dae1;max-width:54ch}
.banner .eyebrow{color:var(--brass);font-weight:600;margin-bottom:14px}
.courts-strip{background:rgba(255,255,255,.07);border-top:1px solid rgba(255,255,255,.14);
  position:absolute;bottom:0;left:0;right:0;padding:16px 0;color:#d3dae1;font-size:14px}

/* content blocks */
.why-item{border-left:2px solid var(--brass);padding-left:18px;height:100%}
.service{display:block;background:#fff;border:1px solid var(--line);padding:22px;height:100%;color:var(--ink-2)}
.service:hover{border-color:var(--brass);color:var(--ink-2)}
.service h3{margin-bottom:6px}
.service span{font-size:14px}

.member .ph,.member img{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--paper);
  border:1px solid var(--line);display:grid;place-items:center;color:#a9a69d;font-size:14px;text-align:center;padding:10px}
.member h3{margin:18px 0 2px}
.member .role{color:var(--brass);font-size:14px;margin-bottom:8px}

.band{background:var(--ink);color:#fff;padding:60px 0}
.band h2{color:#fff}
.band p{color:#b8c2cc;margin-bottom:0}

/* Testimonial Slider & Custom Arrows CSS */
.slider-btn {
  background: transparent;
  border: 1px solid var(--line);
  color: var(--ink);
  width: 44px;
  height: 44px;
  border-radius: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  margin-left: 8px;
  padding-top: 2px;
}
.slider-btn i{
  line-height: 0;
    font-size: larger;

}
.slider-btn:hover {
  background: var(--brass);
  border-color: var(--brass);
  color: #fff;
}
.testimonial-slider .slick-list {
  margin: 0 -12px; /* Compensate for slide padding */
}
.testimonial-slider .slide-item {
  padding: 0 12px; /* Gap between slides */
  height: auto;
}
/* Ensure equal height cards */
.testimonial-slider .slick-track {
  display: flex; 
}
.testimonial-slider .slick-slide {
  height: inherit;
}

.quote{background:#fff;border:1px solid var(--line);padding:28px;height:100%}
.quote .bi-star-fill{color:var(--brass);font-size:13px}
.quote .who{color:var(--ink);font-weight:600;margin:14px 0 0}
.quote .who small{display:block;font-weight:400;color:var(--ink-2);font-size:14px}

.post .ph,.post img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#fff;
  border:1px solid var(--line);display:grid;place-items:center;color:#a9a69d;font-size:14px}
.post .meta{font-size:14px;color:#8c897f;margin:14px 0 6px}
.post h3{color:var(--ink)}
.post:hover h3{color:var(--brass)}

.form-control,.form-select{border-radius:0;border:1px solid var(--line);padding:9px 14px;font-size:var(--fs-body)}
.form-control:focus,.form-select:focus{border-color:var(--brass);box-shadow:0 0 0 .15rem rgba(150,119,60,.18)}
.map-wrap iframe{width:100%;height:400px;border:1px solid var(--line);filter:grayscale(.35)}

/* FAQ */
.faq-item{border:1px solid var(--line);background:#fff;margin-bottom:12px}
.faq-q{width:100%;text-align:left;background:#fff;border:none;padding:18px 22px;
  display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;
  font-family:inherit;font-size:var(--fs-body);font-weight:600;color:var(--ink)}
.faq-q .bi{color:var(--brass);transition:transform .25s ease;flex:0 0 auto}
.faq-item.open .faq-q .bi{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-a p{padding:0 22px 20px;margin:0;color:var(--ink-2)}
.faq-item.open .faq-a{max-height:260px}

footer{background:var(--ink);color:#aab4be;padding:56px 0 0;font-size:15px}
footer h4{color:#fff;margin-bottom:16px}
footer a{color:#aab4be}footer a:hover{color:#fff}
footer a i{font-size: 12px;
    margin-right: 4px;}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin-bottom:8px}
.legal{border-top:1px solid #2b3c4d;margin-top:44px;padding:18px 0;font-size:13px;color:#7d8995}

:focus-visible{outline:2px solid var(--brass);outline-offset:2px}
.readmore {
  display: none;
}

.footerlogo{
  background-color: #fff;
    width: fit-content;
    border-radius: 6px;
    margin-bottom: 20px;
}

.social-media {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
}

.social-media a {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    transition: all 0.3s ease;
}

.social-media a:hover {
    background: var(--ink);
    color: #fff;
    border-color: var(--ink);
    transform: translateY(-3px);
}
.dropdown-menu {
   
    
    box-shadow: unset;
    padding: 0px 0;
    margin-top: 0;
}
/* about us */

/* page banner */
.page-banner{
  background:linear-gradient(rgba(14,24,34,.82),rgba(14,24,34,.68)),
             url('https://images.unsplash.com/photo-1505664194779-8beaceb93744?auto=format&fit=crop&w=1920&q=80') center/cover no-repeat;
  color:#fff;padding:96px 0}
.page-banner h1{color:#fff}
.page-banner .crumb{color:#c3ccd5;font-size:14px;margin:12px 0 0}
.page-banner .crumb a{color:var(--brass)}
.page-banner .crumb a:hover{color:#fff}

/* blocks */
.stat{border-left:2px solid var(--brass);padding-left:18px;height:100%}
.stat b{display:block;color:var(--ink);font-size:var(--fs-h2);font-weight:600;line-height:1.1}
.stat span{font-size:14px}

.panel-box{background:#fff;border:1px solid var(--line);padding:30px;height:100%}
.panel-box .bi{font-size:22px;color:var(--brass);display:block;margin-bottom:14px}

.why-item{border-left:2px solid var(--brass);padding-left:18px;height:100%}

.profile{border-top:1px solid var(--line);padding-top:44px;margin-top:44px}
.profile:first-of-type{border-top:0;padding-top:0;margin-top:0}
.profile .ph,.profile img{width:100%;aspect-ratio:3/4;object-fit:cover;background:var(--paper);
  border:1px solid var(--line);display:grid;place-items:center;color:#a9a69d;font-size:14px;text-align:center;padding:10px}
.profile .role{color:var(--brass);font-size:14px;margin:2px 0 14px}
.tags{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{border:1px solid var(--line);padding:6px 12px;font-size:14px;background:var(--paper)}

.court-list{list-style:none;padding:0;margin:0}
.court-list li{border-bottom:1px solid var(--line);padding:14px 0;display:flex;gap:12px;align-items:flex-start}
.court-list li:last-child{border-bottom:0}
.court-list .bi{color:var(--brass);margin-top:4px}




@media(max-width:991px){
  .navbar-collapse{border-top:1px solid var(--line);margin-top:12px;padding-top:8px}
  .navbar .nav-link{border-bottom:1px solid var(--line)}
  .dropdown-menu{border:0;box-shadow:none;padding-left:14px}
}
@media(max-width:767px){
  .container{padding: 0px 24px;}
  :root{--fs-hero:32px;--fs-h2:24px}
  .section{padding:45px 0}
  .banner{min-height:auto;}
  .banner-inner{padding: 40px 0px 130px;}
  .h-about .row{flex-direction: column-reverse;}
  .founder img{aspect-ratio: auto !important;}
  .map-wrap iframe {
   
    height: 250px;
  }
  .navbar-brand img{
    width: 180px;
  }
  .ofc{
    object-fit: cover;
  }
  .page-banner{padding:64px 0}
  .profile .ph,.profile img{max-width:280px;aspect-ratio:1/1}
}

/* ---------- floating enquiry form ---------- */
.floating-enquiry{
  position:fixed;top:59%;right:0;
  transform:translateY(-50%) translateX(362px);
  z-index:1055;
  transition:transform .35s ease;
}
.floating-enquiry.open{transform:translateY(-50%) translateX(0)}
.enquiry-toggle{
 writing-mode: vertical-rl;
    text-orientation: mixed;
    background: var(--brass);
    color: #fff;
    border: none;
    padding: 20px 7px;
    font-weight: 600;
    letter-spacing: .06em;
    font-size: 14px;
    cursor: pointer;
    box-shadow: -2px 0 10px rgba(0, 0, 0, .18);
    white-space: nowrap;
    position: absolute;
    left: -38px;
    top: 0;
    bottom: 0;
    height: fit-content;
    margin: auto;
}
.enquiry-toggle:hover{background:var(--ink)}
.floating-enquiry-panel{
  width:360px;max-width:82vw;background:#fff;
  border:1px solid var(--line);border-right:none;
  box-shadow:-10px 0 26px rgba(20,32,44,.14);
  padding:20px;max-height:90vh;overflow-y:auto;
}
.floating-enquiry-head{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:10px;
}
.floating-enquiry-head h3{margin:0}
.floating-enquiry-close{background:none;border:none;font-size:26px;line-height:1;color:var(--ink-2);cursor:pointer;padding:0}
.floating-enquiry-close:hover{color:var(--brass)}
.floating-enquiry-panel .field-group{margin-bottom:8px}
@media(max-width:576px){
  .floating-enquiry{transform:translateY(-50%) translateX(300px)}
  .floating-enquiry-panel{width:300px;padding:22px}
}