
:root {
    --primary: hsl(352, 85%, 26%);
    --secondary: hsl(28, 49%, 41%);
    --light: #f5f5f5;
    --dark: #333333;
    --white: #ffffff;
    --gray: #f0f0f0;

    --font-family : "Kantumruy Pro", sans-serif;

    --fs-1: calc(2.7rem + 1.38vw);
    --fs-2: calc(2.6rem + .66vw);
    --fs-3: 2.2rem;
    --fs-4: 1.9rem;
    --fs-5: 1.8rem;
    --fs-6: 1.7rem;
    --fs-7: 1.5rem;
    --fs-8: 1.4rem;
    
    --fw-700: 700;
    --fw-600: 600;
    --fw-500: 500;
    --fw-400: 400;

    --shadow-1 : rgba(0, 0, 0, 0.10) 0px 25px 20px -20px;

    --transition-1: 0.25s ease;
    --transition-2: 0.5s ease;
    --transition-3: 0.3s ease-in-out;

    --radius-circle: 50%;
    --radius-pill: 100px;
    --radius-10: 10px;
    --radius-8: 8px;
    --radius-6: 6px;
    /* Small Device  */
    --section-small: 90px; 
    /* Large Device  */
    --section-large: 150px; 

  }
  
  * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  a,
img,
span,
input,
button,
ion-icon { display: block; }

a {
  color: inherit;
  text-decoration: none;
}

img { height: auto; }

input,
button {
  background: none;
  border: none;
  font: inherit;
}

input { width: 100%; }

button { cursor: pointer; }

ion-icon { pointer-events: none; }

address { font-style: normal; }

html {
  font-family: var(--font-family);
  font-size: 10px;
  scroll-behavior: smooth;
}


body.nav-active { overflow: hidden; }
::selection {
  background-color: var(--secondary);
  color: var(--white);
}

::-webkit-scrollbar { width: 10px; }

::-webkit-scrollbar-track { background-color: hsl(0, 0%, 98%); }

::-webkit-scrollbar-thumb { background-color: hsl(0, 0%, 80%); }

::-webkit-scrollbar-thumb:hover { background-color: hsl(0, 0%, 70%); }

  body {
    font-family: var(--font-family);
    font-size: var(--fs-7);
    color: var(--dark);
    line-height: 1.6;
  }
  
  .container {
    width: 100%;
    margin-inline:  auto;
    padding-inline: 15px;
  }

  .social-list {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
  }
  .social-list li{
    list-style: none;
  }
  .social-link {
    font-size: 2rem;
    transition: var(--transition-1);
  }
  
  .social-link:is(:hover, :focus-visible) { transform: translateY(-3px); }
  
  .section { padding-block: var(--section-small); }
  
  .has-bg-image {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
  
  .h1,
  .h2,
  .h3,
  .h4,
  .h5 {
    color: var(--charcoal);
    font-weight: var(--fw-700);
    line-height: 1.3;
  }
  
  .h1 { font-size: var(--fs-1); }
  
  .h2 { font-size: var(--fs-2); }
  
  .h3 { font-size: var(--fs-3); }
  
  .h4 { font-size: var(--fs-4); }
  
  .h5 { font-size: var(--fs-6); }

  /* Input Fiel  */
  .input-field{
    background-color: var(--white);
    color: var(--dark);
    font-size: var(--fs-7);
    padding: 12px 16px;
    border: 1px solid var(--dark);
    border-radius: var(--radius-6);
    box-shadow: var(--shadow-1);
    outline: none;
  } 

  /* Button  */
  .btn {
    cursor: pointer;
    color: var(--white);
    font-size: var(--fs-6);
    font-weight: var(--fw-400);
    border: 2px solid transparent;
    max-width: max-content;
    padding: 4px 20px;
    display: flex;
    align-items: center;
    border-radius: var(--radius-pill);
    transition: var(--transition-1);
    will-change: transform;
  }
  .btn-info{
    border: none;
    display: flex;
    justify-content: center;
    padding: 0.75rem 1.5rem;
    background-color: var(--primary);
    color: var(--white);
    font-size: var(--fs-6);
    font-weight: var(--fw-400);
    cursor: pointer;
    text-align: center;
    text-transform: uppercase;
    vertical-align: middle;
    align-items: center;
    border-radius: 0.5rem;
    user-select: none;
    gap: 0.75rem;
    transition: all 0.6s ease;
  }
  .btn-info:is(:hover, :focus-visible, :active){
    opacity: 0.85;
    box-shadow: none;
  }

  .btn:is(:hover, :focus-visible) {  background-color: var(--white); }
  
  .btn-primary,
  .btn-outline:is(:hover, :focus-visible) {
    background-color: var(--white);
    color: var(--secondary);
  }
  .btn-secondary{border: 1px solid var(--secondary); }

  .btn > svg{width: 34px;  margin-left: 10px; transition: transform 0.3s ease-in-out;}
  .btn:hover svg{transform: translateX(5px);}
  .img-holder {
    aspect-ratio: var(--width) / var(--height);
    background-color: var(--gray);
    overflow: hidden;
    margin: 0;
  }
  /* category card */ 
.card {
  width: calc(50% - 10px);
  /* height: 254px; */
  background: var(--gray);
  padding: 15px;
  border-radius: 10px;
  overflow: hidden;
  transition: all 0.3s;
  position: relative;
}
.wrapper {
  height: fit-content;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 15px;
}
.card-image {
  width: 100%;
  height: 170px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 5em;
  font-weight: 900;
  transition: all 0.3s;
}
.card-content {
  height: fit-content;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
.title {
  font-size: var(--fs-8);
  text-transform: uppercase;
  font-weight: 500;
  color: var(--primary);
}
.price {
  font-size: 1em;
  font-weight: 700;
}
.old-price {
  font-size: 0.7em;
  text-decoration: line-through;
  color: #adadad;
}
.card-btn {
  margin-top: 10px;
  width: 100%;
  height: 40px;
  background-color: rgb(24, 24, 24);
  border: none;
  border-radius: 40px;
  color: white;
  transition: all 0.3s;
  cursor: pointer;
  font-weight: 500;
}
.card:hover .card-image {
  height: 120px;
}
.card:hover .card-btn {
  margin-top: 0;
}
.card-btn:hover {
  background-color: var(--secondary);
  color: var(--white);
}
.card:hover {
  background-color: var(--light);
}

.tag {
  position: absolute;
  background-color: var(--primary);
  color: var(--white);
  left: 12px;
  top: 12px;
  padding: 6px 12px;
  border-radius: 15px;
  font-size: 0.75em;
  font-weight: 500;
}
  .img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .section-seperator {
    text-align: center;
    font-size: var(--fs-2);
    margin-block: 2rem;
  }
  .section-seperator img, .section-seperator i{
    position: relative;
    z-index: 1;
    margin-inline: auto;
    background-color: var(--light);
    padding-inline: 10px;
  }
  .section-seperator::after{
    content: "";
    display: block;
    margin-top: -21px;
    height: 1px;
    width: 400px;
    margin-inline: auto;
    background-color: var(--secondary);
  }
  
  .section-subtitle {
    font-size: var(--fs-7);
    text-transform: uppercase;
    color: var(--primary);
    font-weight: var(--fw-700);
    margin-block-end: 16px;
  }
  
  .grid-list {
    display: grid;
    gap: 25px;
  }
  
  .w-100 { width: 100%; }


/*-----------------------------------*\
  #HEADER
\*-----------------------------------*/
.logged-in.admin-bar .header{margin-block-start: 32px;}
.header .btn { display: none; }

.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  box-shadow: var(--shadow-1);
  background-color: var(--white);
  z-index: 4;
}
.header-top{background-color: var(--gray);}
.header .header-content{
  display: none;
  color: var(--secondary);
}
.header-content .header-title{font-size: var(--fs-4); color: var(--primary);}
.header .header-content .social-media{display: flex; gap: 10px; font-size: 1.5rem;}
.header .header-content .social-media .icon{
  font-size: var(--fs-3);
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: space-between;
}
.header .header-bottom{
  background-color: var(--white);
}
.header .header-content .header-block{
  display: flex;
  flex-direction: column;
  border-right: 1px solid #ccc;
  padding-right: 15px;
}

.header.active {
  background-color: var(--white);
  position: fixed;
  animation: slideIn 0.5s ease forwards;
}

@keyframes slideIn {
  0% { transform: translateY(-100%); }
  100% { transform: translateY(0); }
}

.header .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.header .logo-light { display: block; }
.header .logo-dark{ display: none;}

.header.active .logo-light { display: block; }

.header.active .header-top{ display: none;}
.nav-open-btn {
  font-size: 1.5rem;
  color: var(--primary);
  background-color: transparent;
  border: 0;
}

.header.active .nav-open-btn { color: var(--primary); }

.navbar {
  position: fixed;
  top: 0;
  left: -300px;
  background-color: var(--white);
  color: var(--secondary);
  max-width: 300px;
  width: 100%;
  height: 100vh;
  padding: 30px;
  padding-block-end: 40px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  z-index: 2;
  visibility: hidden;
  transition: var(--transition-3);
}

.navbar.active {
  visibility: visible;
  transform: translateX(300px);
}

.navbar-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.nav-close-btn {
  background-color: var(--secondary);
  color: var(--white);
  font-size: 2rem;
  padding: 4px 13.13px;
  border-radius: var(--radius-circle);
  transition: var(--transition-1);
}

/* Second Level */
.navbar-list li .sub-menu {display:block;} 
.dropdown-menu li{ list-style: disc !important;}
.navbar-list li ul li a {width:115px;}
.navbar-list li:hover ul {display:block; margin: 0; padding: 10px; background-color: var(--white); position:absolute; top:100px;}

/* Third Level */

.navbar-list li ul li ul li a {font-size:11px; color:var(--secondary)}

.header.active .navbar-list li:hover ul{top: 50px;} 

.nav-close-btn:is(:hover, :focus-visible) { background-color: var(--primary); }

.navbar-list { margin: 0; }
.navbar-list li, a {list-style: none; text-decoration: none;line-height: 1.5;}
.navbar-list li.active .navbar-link{color: var(--primary);}
.navbar-link {padding-block: 6px; font-size: var(--fs-7); font-weight: var(--fw-500);}

.contact-link { transition: var(--transition-1); font-size: var(--fs-7); }

.contact-link:is(:hover, :focus-visible) { color: var(--white); }

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: var(--raisin-black);
  pointer-events: none;
  opacity: 0;
  transition: var(--transition-1);
}

.overlay.active {
  pointer-events: all;
  opacity: 0.8;
}

/* Dictionary Page Styles */
.search-filter-container {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
#search-filter-form {
  width: calc(100% - 20px);
}
.search-content {
  display: flex;
  gap: 5px;
  margin-block-end: 1rem;
}
#search-input, #clear-filter {
  padding: 10px;
  font-size: 13px;
  border: 1px solid #ccc;

}

#search-input {
  width: 100%;
  /* max-width: 300px; */
}

.title-list-container {
  max-width: 400px;
  max-height: 200px; /* Limit height for scroll */
  overflow-y: auto;

}

#title-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

#title-list li {
  padding: 10px;
  cursor: pointer;
  border-bottom: 1px solid #eee;
}

#title-list li:last-child {
  border-bottom: none;
}


#clear-filter {
  background-color: var(--primary);
  color: white;
  cursor: pointer;
}

#clear-filter:hover {
  background-color: #c82333;
}

#search-results {
  width: calc(100% - 20px);
  background-color: var(--gray);
  display: grid;
  gap: 10px;
}

.search-result-item {
  padding: 10px;

}
#title-list li.active {
  color: var(--secondary);
}

.loading {
  text-align: center;
  color: #666;
}
  
  /* Service Categories */
  .service-categories {
    padding: 50px 0;
    background-color: var(--white);
  }
  
  .service-categories .container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
  }
  
  .service-category {
    text-align: center;
    flex: 1;
    min-width: 150px;
  }
  
  .service-category img {
    width: 60px;
    height: 60px;
    margin-bottom: 15px;
  }
  
  .service-category h3 {
    font-size: 16px;
    margin-bottom: 10px;
  }
  
  /* Toughest Defense Section */
  .toughest-defense {
    padding: 50px 0;
    background-color: var(--light);
  }
  
  .section-title {
    text-align: center;
    margin-bottom: 40px;
  }
  
  .section-title h2 {
    font-size: var(--fs-2);
    color: var(--primary);
    margin-bottom: 10px;
  }
  
  .section-title p {
    color: var(--dark);
    font-size: var(--fs-6);
    margin-inline: auto;
  }
  
  .services {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  
  .service {
    list-style: none;
    background-color: var(--white);
    border-radius: 5px;
    overflow: hidden;
    width: calc(50% - 5px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  }
  
  .service img {
    width: 100%;
    height: 180px;
    object-fit: cover;
  }
  
  .service-content {
    padding: 20px;
  }
  
  .service-content h3 {
    font-size: 18px;
    margin-bottom: 10px;
  }
  
  .service-content p {
    font-size: 14px;
    margin-bottom: 15px;
  }
  .video-play {
    position: absolute;
    top: 165px;
    right: 15px;
    display: flex;
    justify-content: center;
    color: #fff;
    width: 28px;
    height: 28px;
    padding: 8px;
    border-radius: 100%;
    background: linear-gradient(30deg, rgb(255, 130, 0) 20%, rgb(255, 38, 0) 80%);
    transition: all 0.3s ease-in-out 0s;
    box-shadow: rgba(193, 244, 246, 0.698) 0px 0px 0px 0px;
    align-items: center;
    border: 0;
  }
  
  .video-play:is(:hover, :focus) {
    transform: scale(1.2);
  }
  
  /* Case Results */
  .case-results {
    padding: 50px 0;
    background-color: var(--primary);
    color: var(--white);
  }
  
  .case-results .container {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
  
  .case-result {
    flex: 1;
    padding: 30px;
    position: relative;
  }
  
  .case-result:first-child {
    background-color: rgba(0, 0, 0, 0.3);
  }
  
  .case-result:last-child {
    background-color: var(--secondary);
  }
  
  .case-result h3 {
    font-size: 36px;
    margin-bottom: 15px;
  }
  
  .case-result p {
    font-size: 16px;
    margin-bottom: 20px;
  }
  /* CTA Section  */
  .cta .container{
    position: relative;
    padding-block: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
  }
  .cta .h3{
    text-align: center;
  }
  .triangle{
    position: absolute;
    bottom: -15px;
    border-top: 16px solid var(--white);
    border-bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    width: 0;
    height: 0;
    border-left: 16px solid transparent !important;
    border-right: 16px solid transparent !important;
    z-index: 100;
  }
  
  /* BOOK LIBRARY  */
  .section.library {
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: flex-start;
    }
  .library .heading .head-content{
    display: flex;
    justify-content: space-between;
    gap: 10px;
  }
  .book-lists{
    position: relative;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
  }
  .book-item{
    position: relative;
    min-width: 235px;
    padding: 10px;
    margin: 0;
    list-style: none;
    width: calc(100% - 10px);
    overflow: hidden;
    border-radius: var(--radius-10);
    color: var(--dark);
    background-color: var(--white);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    text-align: center;
  }
  .book-item .h5{
    margin-block: 4px;
  }
  .book-item .img-holder ,.book-item .img-cover{
    margin-block: 0;
    border-radius: var(--radius-10);
    overflow: hidden;
  }
  .book-price {
    font-size: var(--fs-4);
    color: var(--white);
    position: absolute;
    top: 6px;
    left: 10px;
    padding: 6px 12px;
    border-top-left-radius: 10px;
    background-color: var(--secondary);
  }
  
  /* Book Paginations  */
  .library .pagination{
    display: flex;
    gap: 10px;
    margin-block: 2rem;
  }
  .pagination .page-link{
    font-size: var(--fs-6);
    color: var(--dark);
    background-color: var(--gray);
    font-weight: var(--fw-600);
    padding: 10px 18px;
    line-height: 1.5;
    border-radius: var(--radius-6);
  }
  .pagination .page-link.active{color: var(--white);background-color: var(--primary);}
    /* Filter Button */
.filter-btn {
  display: block;
  padding: 6px 10px;
  /* background: #007bff; */
  color: var(--primary);
  text-align: center;
  border: none;
  cursor: pointer;
  font-size: 16px;
  margin-bottom: 10px;
}
.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: opacity 0.3s ease;
}
.modal.hidden {
  display: none;
}

.modal-content {
  background: #fff;
  padding: 20px;
  border-radius: 8px;
  width: 80%;
  max-width: 400px;
  position: relative;
}

.modal .group-btn{
  display: flex;
  justify-content: space-around;
  margin-block: 10px;
  gap: 20px;
}
.close-btn {
  color: var(--primary);
  background-color: var(--gray);
  border-radius: var(--radius-circle);
  position: absolute;
  padding: 2px 12px;
  right: 10px;
  font-size: 20px;
  cursor: pointer;
}

/* BLOG  */
.blog .page-header{
  color: var(--primary);
  font-size: var(--fs-4);
  font-weight: var(--fw-600);
  margin-block-end: 2rem;
}
.blog-content{
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.section.single-post .container{
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.single-post .article{
  width: calc(100% - 0px);
}
.single-post .sidebar{
  width: calc(100%);
}
.single-post .widget{
  position: relative;
}
.single-post .widget-icon{
  font-size: 24px;
  background-color: var(--primary);
  margin-inline: auto;
  text-align: center;
  width: 50px;
  height: 50px;
  padding: 10px;
  color: var(--white);
  position: absolute;
  top: -2rem;
  border-radius: var(--radius-circle);
  overflow: hidden;
  left: 0;
  right: 0;
}
.single-post .widget-header{
  text-align: center;
  color: var(--white);
  background-color: var(--secondary);
  padding: 30px 10px 20px;
  border-bottom: 3px solid var(--primary);
}
.single-post .widget-content{
  background-color: var(--gray);
  padding: 15px;
}
.single-post .widget-content .wpcf7-text, .widget-content .wpcf7-textarea{
  background-color: var(--white);
  border: 1px solid var(--light);
  width: 100%;
  color: var(--dark);
  font-size: var(--fs-8);
  padding: 12px 14px;
  margin-bottom: 11px;
}
.widget ul{margin: 0;}
.widget li{list-style: none;}
.widget .widget-title{margin-block:2rem;color: var(--primary);}
.widget-content .wpcf7-textarea{height: 80px;}
.widget-content .wpcf7-submit{
  padding: 10px;
  color: var(--white);
  background-color: var(--primary);
  cursor: pointer;
}
.widget-post-list {
  margin-block-end: 15px;
  display: flex;
  gap: 10px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
.widget-post-list .widget-post-image{
  position: relative;
}
.widget-post-image .img-holder{margin: 0;}
.widget-post-list .widget-post-date{
  color: var(--white);
  background-color: rgba(0,0,0,.6);
  position: absolute;
  text-align: center;
  top: 0;
  left: 0;
  right: 0;
  padding-block: 15px;
}
.widget-post-list:hover .widget-post-date{
  display: none;
  background-color: red;
}
/* Single Book  */
.section.single-book .container{
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.single-book .book-cover{
  border-radius: var(--radius-10);
  width: calc(100% - 20px);
}
.book-content{
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: calc(100% - 20px);
}
.book-content .h4 {
  color: var(--dark);
}
.book-content .h4 span{
  display: inline;
  color: var(--secondary);
}
  /* Attorneys Section */
  .attorneys {
    padding: 70px 0;
    background-color: var(--white);
  }
  
  .attorneys-title {
    margin-bottom: 50px;
  }
  
  .attorneys-title h2 {
    font-size: 32px;
    color: var(--primary);
    margin-bottom: 10px;
  }
  
  .attorneys-title h3 {
    font-size: 24px;
    color: var(--secondary);
  }
  
  .attorney-profiles {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
  }
  
  .attorney {
    width: calc(25% - 30px);
    min-width: 220px;
    text-align: center;
  }
  
  .attorney img {
    width: 100%;
    border-radius: 5px;
    margin-bottom: 15px;
  }
  
  .attorney h4 {
    font-size: 18px;
    margin-bottom: 5px;
    color: var(--primary);
  }
  
  .attorney p {
    font-size: 14px;
    color: var(--secondary);
  }
  
  /* Corporate Lawsuits */
  .corporate-lawsuits {
    padding: 50px 0;
    background-image: url("assets/images/corporate-bg.jpg");
    background-size: cover;
    background-position: center;
    color: var(--white);
    position: relative;
  }
  
  .corporate-lawsuits::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
  }
  
  .corporate-lawsuits .container {
    position: relative;
    z-index: 1;
  }
  
  .corporate-lawsuits h2 {
    font-size: 32px;
    margin-bottom: 20px;
  }
  
  .corporate-lawsuits ul {
    list-style: none;
    margin-bottom: 30px;
  }
  
  .corporate-lawsuits ul li {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
  }
  
  .corporate-lawsuits ul li::before {
    content: "•";
    margin-right: 10px;
    color: var(--secondary);
  }
  
  /* Join with us */
  .join {
    padding: 70px 0;
    background-color: var(--light);
  }
  
  .join-container {
    flex-direction: column;
    display: flex;
    gap: 30px;
  }
  
  .join-content {
    flex: 1;
  }
  
  .join-content h2 {
    font-size: 32px;
    color: var(--primary);
    margin-bottom: 30px;
  }
  
  .join-slider {
    flex: 1;
    position: relative;
    overflow-x: hidden;
  }
  
  .join-slide {
    background-color: var(--white);
    padding: 30px;
    border-radius: 5px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  }
  
  .join-text {
    font-style: italic;
    margin-bottom: 20px;
  }
  
  .join-author {
    display: flex;
    align-items: center;
  }
  
  .join-author img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin-right: 15px;
  }
  
  .join-author-info h4 {
    font-size: 16px;
    margin-bottom: 5px;
  }
  
  .join-author-info p {
    font-size: 14px;
    color: #777;
  }
  
  /* Publication */
  .publication {
    padding-block: 70px;
    background-color: var(--white);
  }

  
  
  /* Blog Section */
  .blog-section {
    padding: 70px 0;
    background-color: var(--gray);
    color: var(--white);
  }
  
  .blog-container {
    flex-direction: column;
    display: flex;
    gap: 30px;
  }
  
  .blog-header {
    color: var(--primary);
    flex: 1;
  }
  
  .blog-header h2 {
    font-size: 32px;
    margin-bottom: 20px;
  }
  
  .blog-header p {
    margin-bottom: 30px;
  }
  
  .blog-posts {
    flex: 1;
  }
  
  .blog-post {
    color: var(--dark);
    background-color: var(--white);
    padding: 20px;
    border-radius: 5px;
    margin-bottom: 20px;
  }
  
  .blog-post h3 {
    font-size: 18px;
    margin-bottom: 10px;
  }
  
  .blog-post p {
    font-size: 14px;
    margin-bottom: 10px;
  }
  
  .blog-post a {
    color: var(--secondary);
    text-decoration: none;
  }
  
  /* Service Range */
  .service-range {
    padding: 70px 0;
    background-color: var(--light);
  }
  
  .service-range-title {
    text-align: center;
    margin-bottom: 50px;
  }
  
  .service-range-title h2 {
    font-size: 32px;
    color: var(--primary);
    margin-bottom: 10px;
  }
  
  .service-range-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
  }
  
  .service-item {
    width: calc(25% - 30px);
    min-width: 220px;
    text-align: center;
  }
  
  .service-item img {
    width: 80px;
    height: 80px;
    margin-bottom: 20px;
  }
  
  .service-item h3 {
    font-size: 18px;
    margin-bottom: 10px;
    color: var(--primary);
  }
  
  .service-item p {
    font-size: 14px;
  }
  
  /* Media Mentions */
  .media-mentions {
    padding: 50px 0;
    background-color: var(--white);
  }
  
  .media-mentions-title {
    text-align: center;
    margin-bottom: 40px;
  }
  
  .media-mentions-title h2 {
    font-size: 28px;
    color: var(--primary);
    margin-bottom: 10px;
  }
  
  .media-logos {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
  }
  
  .media-logo {
    max-width: 120px;
    filter: grayscale(100%);
    opacity: 0.7;
    transition: all 0.3s;
  }
  
  .media-logo:hover {
    filter: grayscale(0);
    opacity: 1;
  }

  /* Contact Us  */
  .contact-container{
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}
.contact-info{
    width: calc(100% - 20px);
}
.contact-form {
        width: calc(100% - 20px);
        background-color: white;
        border-radius: 10px;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        padding: 40px;
    }

    .contact-header {
        margin-bottom: 30px;
    }
    .wpcf7-form-control-wrap{
        margin-block: 1rem;
    }

    .wpcf7-text, .wpcf7-textarea {
        width: 100%;
        padding: 10px;
        border: 1px solid #ddd;
        border-radius: 5px;
        font-size: 1em;
    }

    .wpcf7-textarea {
        resize: vertical;
        min-height: 100px;
    }

    .wpcf7-submit {
        background-color: var(--primary);
        color: white;
        border: none;
        padding: 12px 20px;
        border-radius: 5px;
        cursor: pointer;
        font-size: 1em;
        transition: background-color 0.3s ease;
    }

    .wpcf7-submit:hover {
        background-color:  var(--secondary);
    }  
  /* Footer */
  .footer {

    background-color: var(--primary);
    color: var(--gray);
    padding: 70px 0 0;
  }
  
  .footer-top {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 50px;
  }
  
  .footer-column {
    flex: 1;
    min-width: 250px;
  }
  
  .footer-column h3 {
    font-size: 18px;
    margin-bottom: 20px;
    color: var(--white);
  }
  
  .footer-column ul {
    margin: 0;
    list-style: none;
  }
  
  .footer-column ul li {
    margin-bottom: 10px;
  }
  
  .footer-column ul li a {
    color: var(--white);
    text-decoration: none;
    transition: color 0.3s;
  }
  
  .footer-column ul li a:hover {
    color: var(--secondary);
  }
  
  .footer-bottom {
    background-color: rgba(0, 0, 0, 0.2);
    padding: 20px 0;
    text-align: center;
  }
  
  .footer-bottom p {
    font-size: 14px;
  }

  /*-----------------------------------*\
  #RESPONSIVE
  \*-----------------------------------*/
  @media (min-width: 575px){

    .service,
    .attorney,
    .practice-area,
    .service-item {
      width: 100%;
    }

  }

  @media (min-width: 768px){

    .container{
      max-width: 750px;
      margin-inline: auto;
    }
    .navbar-list {
      gap: 10px;
    }
    .navbar-list li .sub-menu {display:none;} 
    .dropdown-menu li{list-style: none !important;}

    .header .btn {
      background-color: var(--primary);
      border-color: var(--primary);
      color: var(--white);
      display: flex;
      margin-inline-start: auto;
      padding: 4px 20px;
    }
    .header .header-content{
      display: flex;
      gap: 15px;
    }
    .header .logo-light{ display: none;}
    .header .logo-dark{ display: block;}
  
    .header.active .btn {
      background-color: var(--primary);
      border-color: var(--primary);
      color: var(--white);
    }
    .section{padding-block: var(--section-large);}
    .hero{
      margin-block-start: 12rem;
    }
    .hero h1 {
      font-size: 36px;
    }
    .hero-slider{
      margin-top: 120px;
    }
    .slide{
      height: 500px;
    }
    .card{
      width: calc(20% - 16px);
      height: 254px;
    }
    .cta .h3{
      text-align: center;
    }
    #search-filter-form {
      width: calc(40% - 20px);
    }
    #search-results {
      width: calc(60% - 20px);
    }
    .section.library { flex-direction: row;}
    .book-item{width: calc(50% - 20px);}
    .modal.hidden {
      display: block;
    }
    .modal .modal-title{
      display: none;
    }
    .modal{
      position: inherit;
      background: none;
      width: 100%;
    }
    .modal-content{
      display: flex;
      flex-direction: column;
      gap: 20px;
      width: 350px;
      padding: 0;
    }
    .head-content .filter-btn{
      display: none;
    }
    .modal .close-btn{
      display: none;
    }
    .single-post .article {
      width: calc(75% - 20px);
  }
  .single-post .sidebar{
    width: calc(25%);
  }
  .single-book .book-cover{
    width: calc(25% - 20px);
  }
  .book-content{
    width: calc(75% - 20px);
  }
  .contact-info{width: calc(50% - 20px);}
  .contact-form {width: calc(50% - 20px);}
    .service,
    .attorney,
    .practice-area,
    .service-item {
      width: calc(50% - 20px);
    }
    .join-container,
    .blog-container {
      flex-direction: row;
    }

  }

  @media(min-width: 992px){

    .container{max-width: 980px;}

    .nav-open-btn,
    .navbar > *:not(.navbar-list),
    .overlay { display: none; }

    .navbar,
    .navbar.active {
      all: unset;
      display: block;
      margin-inline: auto;
      margin-left: 0px;
    }

    .navbar-list {
      display: flex;
      gap: 15px;
      padding-block: 1rem;
    }
    .header.active .navbar-list{gap: 9px;}

    .navbar-link {
      font-size: 1.3rem;
      color: var(--secondary);
      transition: var(--transition-1);
    }

    .navbar-link:is(:hover, :focus-visible) { color: var(--primary); }

    .navbar-list li ul li a {
      width: 120px;
    }

    .header .btn { margin-inline-start: 0; }
    .book-item{width: calc(25% - 20px); }
    .service,
    .attorney,
    .practice-area,
    .service-item {
      width: calc(25% - 20px);
    }
    .cta .container{ flex-direction: row; }
    .case-results .container,
    .join-container,
    .blog-container {
      flex-direction: row;
    }

  }

  @media (min-width: 1200px){
    .container{max-width: 1150px;}
    .navbar-link{font-size: var(--fs-7);}

  }