/* =========================================================
   BRAND THEME TOKENS (LIGHT) — Default
   ========================================================= */
:root {
  /* Brand Colors */
  --primary-color: #204592;          /* Primary */
  --secondary-color: #F36F28;        /* Secondary */
  --light-secondary-color: #FF955C;
  --light-orange-color: #FEF1EA;
  --dark-secondary-color: #FF600A;
  --light-color: #A5AFC2;            /* Light UI surfaces */
  --black-color: #1C1C1E;             /* Dark text/surfaces */
  --white-color: #ffffff;            /* White text/surfaces */
  --dark-grey-color: #636366;
  --grey-color: #D1D1D6;
  --light-grey-color: #F2F6FC;
  --text-grey-color: #8E8E93;

  /* Bootstrap color overrides (RGB, used across bg/text/border utilities) */
  --bs-primary-rgb: 32, 69, 146;     /* #204592 */
  --bs-secondary-rgb: 243, 111, 40;  /* #F36F28 */
  --bs-light-rgb: 245, 247, 252;     /* #F5F7FC */
  --bs-dark-rgb: 28, 28, 30;         /* #1C1C1E */
  --bs-secondary-color: 165, 175, 194; /* #A5AFC2 */

  /* Bootstrap typographic base */
  --bs-body-font-family: "Roboto", sans-serif;
  --bs-body-color: var(--black-color);

  /* Font variables */
  --font-intro-black: 'IntroBlack';
  --font-intro-bold: 'IntroBold';
  --font-intro-book: 'IntroBook';
  --font-roboto: "Roboto", sans-serif;

  /* Font Weights */
  --fw-300: 300;
  --fw-400: 400;
  --fw-500: 500;
  --fw-700: 700;
  --fw-900: 900;

  /* Font Size */
  --font-12: 12px;
  --font-14: 14px;
  --font-16: 16px;
  --font-20: 20px;
  --font-md: 24px;
  --font-lg: 32px;
  --font-xl: 48px;
  --font-xxl: 56px;


  /* Nav & Icons */
  --icon: var(--light-color);
  --icon-hover: var(--secondary-color);
  --nav-link: var(--black-color);
  --nav-link-active: var(--secondary-color);

  /*  Border Radius */
  --border-radius8: 8px;
  --border-radius16: 16px;

  /* Gutter Spacing mobile */
--mobile-gutter: 16px;   /* tweak to 20px if you want a bit more */
}

/* =========================================================
   BRAND THEME TOKENS (DARK) — Activated via: <html data-theme="dark">
   ========================================================= */
:root[data-theme="dark"] {
  
}

/* =========================================================
   FONT FACE DECLARATIONS
   ========================================================= */
@font-face {
    font-family:'IntroBlack';
    src: url('../fonts/IntroBlack.eot');
    src: url('../fonts/IntroBlack.eot?#iefix') format('embedded-opentype'),
    url('../fonts/IntroBlack.woff2') format('woff2'),
    url('../fonts/IntroBlack.woff') format('woff'),
    url('../fonts/IntroBlack.svg#IntroBlack') format('svg');
    font-weight: 900;
    font-style: normal;
    font-stretch: normal;
    unicode-range: U+0020-00FE;
}
@font-face {
    font-family:'IntroBook';
    /* Old IntroBoldAlt files - commented out
    src: url('../fonts/IntroBookAlt.eot');
    src: url('../fonts/IntroBookAlt.eot?#iefix') format('embedded-opentype'),
    url('../fonts/IntroBookAlt.woff2') format('woff2'),
    url('../fonts/IntroBookAlt.woff') format('woff'),
    url('../fonts/IntroBookAlt.svg#IntroBookAlt') format('svg'); */

    /* New Intro Book Regular font */
    src: url('../fonts/IntroBook.eot');
    src: url('../fonts/IntroBook.eot?#iefix') format('embedded-opentype'),
    url('../fonts/IntroBook.woff2') format('woff2'),
    url('../fonts/IntroBook.woff') format('woff'),
    url('../fonts/IntroBook.svg#IntroBook') format('svg');
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    unicode-range: U+0020-00FE;
}
@font-face {
    font-family:'IntroBold';
    /* Old IntroBoldAlt files - commented out
    src: url('../fonts/IntroBoldAlt.eot');
    src: url('../fonts/IntroBoldAlt.eot?#iefix') format('embedded-opentype'),
    url('../fonts/IntroBoldAlt.woff2') format('woff2'),
    url('../fonts/IntroBoldAlt.woff') format('woff'),
    url('../fonts/IntroBoldAlt.svg#IntroBoldAlt') format('svg'); */

    /* New IntroBoldRegular files */
    src: url('../fonts/IntroBoldRegular.eot');
    src: url('../fonts/IntroBoldRegular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/IntroBoldRegular.woff2') format('woff2'),
    url('../fonts/IntroBoldRegular.woff') format('woff'),
    url('../fonts/IntroBoldRegular.otf') format('opentype'),
    url('../fonts/IntroBoldRegular.svg#IntroBoldRegular') format('svg');
    font-weight: 700;
    font-style: normal;
    font-stretch: normal;
    unicode-range: U+0020-00FE;
}

/* Base Styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: var(--body-bg);
  color: var(--black-color);
  font-size: var(--font-14);
  font-weight: var(--fw-400);
  transition: background-color 0.3s, color 0.3s;
}

a{
  transition: 0.5s all;
  text-decoration: none;
  color: var(--primary-color);
}
a:hover{
  color: var(--secondary-color);
}
/* For Webkit browsers (Chrome, Safari, Edge) */
::-webkit-scrollbar {
  width: 8px; /* Set the width of the scroll bar */
  height: 8px; /* Set the height for horizontal scrollbar */
}

/* Track of the scrollbar (background) */
::-webkit-scrollbar-track {
  background-color: #f1f1f1; /* Light gray track */
  border-radius: 10px;
}

/* Handle of the scrollbar (the draggable part) */
::-webkit-scrollbar-thumb {
  background-color: var(--text-grey-color); /* color for the scroll thumb */
  border-radius: 10px;
  border: 2px solid #f1f1f1; /* Border around the thumb to make it more distinct */
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background-color: var(--primary-color); /* Darker blue when hovered */
}

/* =========================================================
   FONT UTILITIES
   ========================================================= */
.font-intro-black { 
  font-family: var(--font-intro-black); 
}
.font-intro-bold { 
  font-family: var(--font-intro-bold); 
}
.font-intro-regular { 
  font-family: var(--font-intro-regular), sans-serif;
}
.font-intro-book { 
  font-family: var(--font-intro-book);
}
.font-roboto { 
  font-family: var(--font-roboto);
}

/* =========================================================
   FONT WEIGHT
   ========================================================= */

.fw-regular { 
  font-weight: var(--fw-400); 
}
.fw-medium { 
  font-weight: var(--fw-500); 
}
.fw-bold { 
  font-weight: var(--fw-700); 
}
.fw-bolder { 
  font-weight: var(--fw-900); 
}
/* =========================================================
   FONT SIZES
   ========================================================= */
.text-xxl{
  font-size: var(--font-xxl);
}
.text-lg{
  font-size: var(--font-lg);
}
.text-xl{
  font-size: var(--font-xl);
}
.text-md{
  font-size: var(--font-md);
}
.fs-16{
  font-size: var(--font-16);
}
.fs-20{
  font-size: var(--font-20);
}
/* =========================================================
   TEXT COLORS
   ========================================================= */
   .text-muted{
    color: var(--dark-grey-color) !important;
   }
   .text-grey{
    color: var(--text-grey-color);
   }
/* =========================================================
   BORDER RADIUS
   ========================================================= */
  .border-radius-sm{
    border-radius: var(--border-radius8);
  }
  .border-radius-md{
    border-radius: var(--border-radius16);
  }
/* =========================================================
   Buttons
   ========================================================= */
.btn-outline-primary{
  border-color: var(--grey-color);
  color: var(--primary-color);
  font-weight: var(--fw-500);
}
.btn-outline-primary:hover{
  background-color: var(--secondary-color);
  border-color: var(--secondary-color);
}
.btn-outline-primary svg{
  fill: var(--primary-color);
  transition: fill 0.3s ease;
  margin-right: 0.8rem;
}
.btn-outline-primary:hover svg{
  fill: var(--white-color);
}

.btn-outline-secondary{
  border-color: var(--grey-color);
  background: var(--white-color);
  color: var(--secondary-color);
  border-radius: var(--border-radius8);
  font-family: var(--font-intro-bold);
  font-weight: var(--fw-700);
  transition: 0.5s all;
}
.btn-outline-secondary:hover, .btn-outline-secondary:focus, .btn-outline-secondary:active:focus-visible{
  background: var(--secondary-color);
  color: var(--white-color);
  border-color: var(--secondary-color);
}
.btn-primary{
  background: var(--primary-color);
  font-family: var(--font-intro-bold);
  font-weight: var(--fw-700);
  color: var(--white-color);
  border-radius: var(--border-radius8);
  transition: 0.5s all;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active:focus-visible{
  background: var(--secondary-color);
  transition: 0.5s all;
}
.btn-secondary {
  position: relative;
  border: none;
  overflow: hidden;
  background: var(--light-secondary-color); 
  background: linear-gradient(90deg,rgba(255, 149, 92, 1) 0%, rgba(255, 96, 10, 1) 62%);
  border-radius: var(--border-radius16);
  transition: 0.5s all;
  padding-top: 18px;
  padding-bottom: 18px;
}
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active:focus-visible{
  background: var(--secondary-color);
  transition: 0.5s all;
}
.btn-warning{
  background: var(--secondary-color);
  border-radius: var(--border-radius8);
  color: var(--white-color);
  font-family: var(--font-intro-bold);
  font-size: var(--font-16);
  font-weight: var(--fw-700);
  border: 0;
  transition: 0.5s all;
}
.btn-warning:hover, .btn-warning:focus, .btn-warning:active:focus-visible{
  background: var(--primary-color);
  color: var(--white-color);
  transition: 0.5s all;
}

/* Prevent yellow color on submit button click/active/loading state */
.btn-warning:active,
.btn-warning.active,
.btn-warning:active:focus,
.btn-warning:disabled,
.btn-warning.disabled {
  background: var(--primary-color) !important;
  color: var(--white-color) !important;
  border-color: var(--primary-color) !important;
}



.btn-light{
  background: rgba(255, 255, 255, 0.16);
  color: var(--white-color);
  border-radius: var(--border-radius16);
  border: none;
  font-family: var(--font-intro-bold);
  font-weight: var(--fw-700);
  font-size: var(--font-20);
}

.btn-bite{
  position: relative;
  border-radius: var(--border-radius16);
  position: relative;
  z-index: 2;
  /*background: url("../images/bulldog-adjusters-bite-button-icon.svg") no-repeat center center;*/
  padding-left: 0;
  padding-right: 80px;
  padding-top: 0;
  padding-bottom: 0;
  transition: 0.5s all;
  color: var(--primary-color);
}

.btn-bite span{
  position: relative;
  border-radius: var(--border-radius16) 0 0 var(--border-radius16);
  border: 1px solid var(--primary-color);
  border-right:none;
  display:block;
  padding-top: 18px;
  padding-left: 30px;
  padding-right: 15px;
  padding-bottom: 18px;
  background-color:var(--bs-white);
}

.btn-bite:after{
  content: "";
  position:absolute;
  top: 0;
  right: 18px;
  width: 62px;
  height: 74px;
  border-bottom-right-radius: var(--border-radius16);
  background: url("../images/btn-bite-shape.png") no-repeat top right / 100% 100%;
}
/*.btn-bite:hover:before, .btn-bite:focus:before{
  background-color:var(--primary-color);
}*/
.btn-bite:hover span, .btn-bite:focus span{
  background-color:var(--primary-color);
}
.btn-bite:hover, .btn-bite:focus{
  color: var(--white-color);
 /* background: url("../images/bulldog-adjusters-bite-button-icon-hover.svg") no-repeat center center;*/
}
.btn-bite:hover:after, .btn-bite:focus:after{
  background: url("../images/btn-bite-shape-h.png") no-repeat top right / 100% 100%; 
}

/* New bite button with image tags */
.btn-bite-new{
  border-radius: var(--border-radius16);
  position: relative;
  padding: 18px 80px 18px 30px;
  transition: 0.5s all;
  color: var(--primary-color);
  border: 0;
  background: transparent;
}
.btn-bite-new span{
  z-index: 8;
  text-align: center;
}
.btn-bite-new .bite-icon,
.btn-bite-new .bite-icon-hover {
  transition: opacity 0.3s ease;
  z-index: -1;
  position: absolute;
  left: 0;
  top: 0;
}

/* Show normal icon by default, hide hover icon */
.btn-bite-new .bite-icon {
  opacity: 1;
}

.btn-bite-new .bite-icon-hover {
  opacity: 0;
}

/* On hover, hide normal icon and show hover icon */
.btn-bite-new:hover .bite-icon,
.btn-bite-new:focus .bite-icon {
  opacity: 0;
}

.btn-bite-new:hover .bite-icon-hover,
.btn-bite-new:focus .bite-icon-hover {
  opacity: 1;
}

.btn-bite-new:hover span,
.btn-bite-new:focus span{
  color: var(--white-color);
}
/*---------------*/
.btn-check:checked+.btn:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible, .btn:first-child:active:focus-visible, :not(.btn-check)+.btn:active:focus-visible {
    box-shadow: none;
}
.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active{
  color: var(--white-color);
  border-color: transparent;
}
header .btn-check:checked+.btn, header .btn.active, header .btn.show, header .btn:first-child:active, :not(.btn-check)+ header .btn:active{
   color: var(--primary-color);
   background-color: transparent;
}

.btn-close{
  opacity: 1;
}
/* =========================================================
   HEADINGS
   ========================================================= */
  h2{
    font-family: var(--font-intro-bold);
    font-weight: var(--fw-700);
    font-size: var(--font-lg);
   }
  h2 span{
    font-family: var(--font-intro-book);
    font-weight: var(--fw-400);
    font-size: var(--font-20);
  }
  h3{
    font-size: var(--font-20);
    font-family: var(--font-intro-bold);
    font-weight: var(--fw-700);
  }
  h4{
    font-size: var(--font-md);
    font-family: var(--font-intro-book);
    font-weight: var(--fw-400);
  }
  h5{
     font-family: var(--font-roboto);
     font-size: var(--font-20);
     font-weight: var(--fw-400);
     color: var(--black-color);
  }
  h6 {
    font-family: var(--font-intro-bold);
    font-weight: var(--fw-700);
    font-size: var(--font-16);
    color: var(--black-color);
  }
  p{
    font-size: var(--font-16);
    font-family: var(--font-roboto);
    font-weight: var(--fw-400);
  }


/* ========================================
   Top Bar
======================================== */

.social-icon { 
  color: var(--icon); 
  transition: color .2s ease; 
}
.social-icon:hover { 
  color: var(--icon-hover); 
}

.logo-img{
  height: 32px;
}

.navbar-expand-lg .navbar-nav .nav-link { 
  color: var(--nav-link); 
  font-weight: var(--fw-400); 
  font-size: var(--font-16);
  padding-left: 1rem;
  padding-right: 1rem;

}
.navbar .nav-link:hover{ 
  color: var(--nav-link-active); 
}

header {
  position: sticky;
  top: 0;
  width: 100%;
  background-color: var(--white-color);
  z-index: 1000; /* Ensures header stays on top */
  transition: transform 0.3s ease; /* Smooth transition for hiding and showing */
}

header.sticky-header {
  transform: translateY(-100%); /* Hide header when scrolling up */
}

/* Style for Scroll-to-Top Button */
.scroll-to-top-btn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background-color: var(--primary-color);
  color: var(--white-color);
  border: none;
  border-radius: 50%;
  font-size: 18px;
  cursor: pointer;
  display: none;
  z-index: 1000;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
  transition: opacity 0.3s ease;
  width: 40px;
  height: 40px;
  line-height: 28px;
  font-size: 22px;
}

.scroll-to-top-btn:hover {
  background-color: var(--secondary-color);
}

/* ========================================
   Hero Section
======================================== */

.hero-section {
  min-height: calc(100vh - 120px);
  background: linear-gradient(128.79deg, rgba(50, 95, 211, 0.24) 3.39%, rgba(66, 113, 230, 0.12) 33.89%, rgba(255, 170, 131, 0.12) 63.15%, rgba(255, 125, 55, 0.22) 89.11%);
  position: relative;
  overflow: hidden;
  width: 100%;
  padding: 4% 0 10% 0;
  z-index: 0;
}

.hero-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(50% 50% at 50% 50%, rgba(31, 65, 152, 0.08) 0%, rgba(31, 65, 152, 0) 100%);
  pointer-events: none;
  z-index: 1;
}

.hero-section::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(31, 65, 152, 0.06) 0%, rgba(31, 65, 152, 0) 100%);
  pointer-events: none;
  z-index: 1;
}

.hero-right-section{
  width: 40%;
}
.hero-right-image {
  position: absolute;
  right: 0;
  z-index: -1;
  top: 10%;
  width: calc(100% - 60%);
}

/* ========================================
   Proven Experience Section
======================================== */

.orange-border-top-card{
    background: var(--white-color);
    position: relative;
    border-top: 3px solid var(--secondary-color);
    border-right: 1px solid var(--grey-color);
    border-bottom: 1px solid var(--grey-color);
    border-left: 1px solid var(--grey-color);
    border-radius: 0 0 var(--border-radius16) var(--border-radius16);
    padding: 30px 40px;
}
.proven-experience-section{
   margin-top: -120px;
}
.proven-experience-section p:first-letter{
  font-size: 80px;
   -webkit-initial-letter: 4;
  initial-letter: 2;
  font-weight: bold;
  margin-right: 10px;
}

/* ========================================
   Quick Highlights Section
======================================== */
.quick-highlight-img-card{
  width: 72px;
  height: 72px;
  border-radius: var(--border-radius8);
  padding: 16px;
  background: var(--white-color);
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.08);
}
.quick-highlight-img{
  width: 40px;
  height: 40px;
  object-fit: contain;
}

.quick-highlight-col{
  background-color: var(--light-grey-color);
}

.quick-highlight-row .col-lg-6:nth-child(1) .quick-highlight-col{
  border-top-left-radius: var(--border-radius16);
}

.quick-highlight-row .col-lg-6:nth-child(2) .quick-highlight-col{
  border-top-right-radius: var(--border-radius16);
}

.quick-highlight-row .col-lg-6:nth-child(3) .quick-highlight-col{
  border-bottom-left-radius: var(--border-radius16);
}

.quick-highlight-row .col-lg-6:nth-child(4) .quick-highlight-col{
  border-bottom-right-radius: var(--border-radius16);
}

/* ========================================
   Bulldog Bite Section
======================================== */

.bulldog-bite-section{
  background: var(--primary-color);
  background: linear-gradient(90deg,rgba(43, 80, 163, 1) 0%, rgba(31, 39, 89, 1) 70%);
  position: relative;
  padding: 8% 0 2%;
  margin: 5% 0 0;
}
.bulldog-bite-section:before{
  background: url("../images/bulldog-adjusters-main-bulldog.png") no-repeat left bottom;
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: -55px;
  left: -50px;
  content: '';
}
.bulldog-bite-section:after{
  position: absolute;
  background: url("../images/bulldog-adjusters-bite-image.svg") no-repeat right top;
  width: 200px;
  height: 185px;
  top: 0;
  right: 0;
  content: '';
}
.scroll-wrapper {
  position: sticky;
  top: 100px; /* distance from top of viewport */
  z-index: 2;
  margin-bottom: 50px;
}
.bulldog-claim-process {
  position: relative;
  margin-left: 20px;
  padding-left: 40px;
}

.bulldog-claim-steps {
  position: relative;
  margin-bottom: 50px;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.bulldog-claim-steps.show {
  opacity: 1;
  transform: translateY(0);
}

.steps-number {
  background: var(--white-color);
  color: var(--secondary-color);
  font-weight: var(--fw-700);
  font-size: var(--font-md);
  font-family: var(--font-intro-bold);
  width: 36px;
  height: 36px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 3px 8px rgba(0,0,0,0.2);
  flex-shrink: 0;
  margin-right: 20px;
  position: relative;
  z-index: 2;
}

.steps-content {
  position: relative;
  flex-grow: 1;
}

/* vertical line */
.steps-content::after {
  content: '';
  position: absolute;
  left: -40px;
  top: 0;
  width: 3px;
  height: 100%;  /* exactly the height of the content */
  background: rgba(255, 255, 255, 0.4);

  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.8s ease;
  border-radius: var(--border-radius16);
}

.steps-content.show::after {
  transform: scaleY(1);
}
.bulldog-claim-steps:last-child .steps-content::after{
  display: none;
}

.steps-content h4 {
  font-family: var(--font-intro-bold);
  font-weight: var(--fw-700);
  color: var(--white-color);
  margin-bottom: 0;
}

.steps-content p {
  color: var(--white-color);
  margin-bottom: 0;
  line-height: 1.6;
  padding: 10px 0 0;
}


/* ========================================
   About Us Section
======================================== */
.about-us-section{
  margin-top: 3%;
}

.show-more-btn{
  display: none;
}
/* ========================================
   Our Track Records Section
======================================== */

.track-records-section{
  background: var(--light-grey-color);
  padding: 4% 0;
}
.track-records-col{
  min-width: 35%;
}
.track-records-col-img-card{
  width: 68px;
  height: 68px;
  border-radius: var(--border-radius8);
  padding: 16px;
  background: var(--light-grey-color);
}
.track-records-row .track-records-col:last-child{
  border-left: 1px solid var(--grey-color);
}
.track-records-row .track-records-col:last-child .track-records-col-img-card{
  background: var(--light-orange-color);
}
.track-records-img{
  width: 36px;
  height: 36px;
  object-fit: contain;
}

.carousel-item.active .col-md-4, .carousel-item .col-md-4 {
  max-width: 280px;
  flex: 0 0 280px;
}
.carousel-item.active .col-md-4:nth-child(1) .card{
  border-radius: var(--border-radius16) 0 0 var(--border-radius16);
  border-right: 0;
}
.carousel-item.active .col-md-4:nth-child(2) .card{
  border-radius: 0;
  border-right: 0;
}

.carousel-item.active .col-md-4:nth-child(3) .card{
  border-radius: 0 var(--border-radius16) var(--border-radius16) 0;
}

.res-scrollbar{
  overflow-x: auto;
  padding: 5px;
  flex-wrap: nowrap;
}
/* Modal */

.modal.show .modal-dialog {
    transform: translate(0, 25%);
}
.modal-header {
  position: sticky;
  top: 0;
  background-color: #fff; /* White background for header */
  z-index: 1050; /* Ensure the header stays on top */
  padding: 1rem; /* Adjust padding as needed */
  border-radius: var(--border-radius16) var(--border-radius16) 0 0;
}
/* Modal body should be scrollable */
.modal-body {
  max-height: 490px; /* Adjust this value based on the modal header/footer height */
  overflow-y: auto; /* Enable vertical scrolling */
}

.hero-banner-modal{max-height: 600px;}

/* Sticky pagination at the bottom */
.modal-footer {
  position: sticky;
  bottom: 0;
  background-color: white; /* To ensure the footer background is white */
  z-index: 1; /* Make sure the footer stays on top of content */
  padding: 15px 0 10px; /* Optional padding */
  border-top: 0;
  width: 100%;
  justify-content: center;
}
.modal-table th{
  border: 0;
  font-size: var(--font-12);
  color: var(--text-grey-color);
  font-family: var(--font-roboto);
  font-weight: var(--fw-700);
  text-transform: uppercase;
}

.modal-table td{
  font-size: var(--font-14);
  font-family: var(--font-roboto);
  color: var(--black-color);
  font-weight: var(--fw-400);
  vertical-align: middle;
}
.modal-table td svg, .modal-table td img{
  width: 24px;
  height: 24px;
  margin-right: 10px;
}
.page-item.disabled{
  opacity: 0.5;
}
.page-item:first-child .page-link{
  background: transparent;
  border: 0;
}

.page-item .page-link{
  border: transparent;
  border: 0;
  color: var(--black-color);
  font-family: var(--font-roboto);
  font-size: var(--font-14);
  transition: 0.5s all;
}
.page-item.active .page-link, .page-item .page-link:hover, .page-item .page-link:focus{
  background: var(--light-color);
  color: var(--white-color);
  border-radius: var(--border-radius8);
}

.page-item .page-link img{
  margin: 0 5px;
}

/* ========================================
   White Section
======================================== */

.damage-handle-row {
  gap: 5px;
  margin-bottom: 5px; 
}
.damage-handle-col{
  background-color: var(--light-grey-color);
  width: 100%;
}

/* Add border-radius to the first row's first and last columns */
.damage-handle-row .damage-handle-col:nth-child(1) {
  border-top-left-radius: var(--border-radius16);
}

.damage-handle-row .damage-handle-col:nth-child(5) {
  border-top-right-radius: var(--border-radius16);
}

/* Apply radius to the first and last column of the second row */
.damage-handle-row:nth-of-type(2) .damage-handle-col:nth-child(1) {
  border-bottom-left-radius: var(--border-radius16);
  border-top-left-radius: 0;
}

.damage-handle-row:nth-of-type(2) .damage-handle-col:nth-child(4) {
  border-bottom-right-radius: var(--border-radius16);
}


/* Frequently Asked Questions */

.eapps-faq-layout-accordion .eapps-faq-content-category-item-question-text{
  font-family: var(--font-intro-bold);
}
.eapps-faq-template-bg-border.eapps-faq-layout-accordion .eapps-faq-container .eapps-faq-inner .eapps-faq-content-category-items .eapps-faq-content-category-item:not(:last-child) {
    margin-bottom: 0 !important;
}
.eapps-faq-template-bg-border.eapps-faq-layout-accordion .eapps-faq-container .eapps-faq-inner .eapps-faq-content-category-item:before {
    border-top: 0 !important;
}

#eapps-faq-1.eapps-faq-layout-accordion .eapps-faq-content-category-item:not(.eapps-faq-content-category-item-active) .eapps-faq-content-category-item-question, #eapps-faq-2.eapps-faq-layout-accordion .eapps-faq-content-category-item:not(.eapps-faq-content-category-item-active) .eapps-faq-content-category-item-question {
    background-color: var(--light-grey-color)!important;
    color: rgb(17, 17, 17);
}

#eapps-faq-1.eapps-faq-layout-accordion .eapps-faq-content-category-items,
#eapps-faq-2.eapps-faq-layout-accordion .eapps-faq-content-category-items{
  border-radius: 12px!important;
  overflow: hidden;
}


.eapps-faq-template-bg-border.eapps-faq-layout-accordion .eapps-faq-container .eapps-faq-inner .eapps-faq-content-category-items .eapps-faq-content-category-item:first-child, .eapps-faq-layout-accordion.eapps-faq-template-bg-border .eapps-faq-content-category-item:first-child:before{
  border-top: 1px solid var(--grey-color);
  border-top-left-radius: var(--border-radius16);
  border-top-right-radius: var(--border-radius16);
}

.eapps-faq-template-bg-border.eapps-faq-layout-accordion .eapps-faq-container .eapps-faq-inner .eapps-faq-content-category-items .eapps-faq-content-category-item:last-child, .eapps-faq-layout-accordion.eapps-faq-template-bg-border .eapps-faq-content-category-item:last-child:before, #elfsight-faq-widget .eapps-faq-layout-accordion.eapps-faq-template-bg-border .eapps-faq-content-category-item:nth-child(4):before{
  border-bottom-left-radius: var(--border-radius16);
  border-bottom-right-radius: var(--border-radius16);
}
.eapps-faq-layout-accordion .eapps-faq-content-category-item-active .eapps-faq-content-category-item-question{
  background: transparent;
}
.eapps-faq-layout-accordion .eapps-faq-content-category-item-question-icon{
  opacity: 0.5;
}
.eapps-faq-accordion-icon-arrow.eapps-faq-layout-accordion .eapps-faq-content-category-item-active .eapps-faq-content-category-item-question-icon{
  opacity: 1;
}
#elfsight-faq-widget .eapps-faq-content-category-item:nth-child(n+5) {
  display: none;
}
.modal-dialog .eapps-faq-layout-accordion .eapps-faq-content-category {
    margin-top: 12px;
}

a.ReviewLinkContainer__Link-sc-ba7cff79-0.gzeCQa.es-review-link-container.ReviewSource__SourceBottomContainer-sc-a206463b-6.jinycJ.es-review-source-source-bottom-container.Classic__StyledSource-sc-965ddf02-1.rRcA-d {
    display: none;
}

/* Success Stories & Testimonials */

#elfsight-google-review-widget .rpfyV {
  background: transparent;
}
#elfsight-google-review-widget .HeaderInfoContainer__Info-sc-eae7c90d-0.jCgCoq.es-header-info.HeaderStyle1__Info-sc-8e169032-0.doAQna{
  display: none;
}
#elfsight-google-review-widget .HeaderWriteReviewButton__Component-sc-275e4878-0.mrXQz.es-header-write-review-button-container {
    position: absolute;
    right: 0;
    top: -85px;
}
button.ButtonBase__ButtonContainer-sc-2b567eb2-3.daLTkD.HeaderWriteReviewButton__WriteReviewButton-sc-275e4878-1.jcSCgO.es-header-write-review-button{
  background: transparent !important;
  border-radius: var(--border-radius16) !important;
  color: var(--secondary-color) !important;
  border-color: var(--grey-color) !important;
  padding: 8px 12px !important;
  border-width: 1px !important;
  font-family: var(--font-intro-bold) !important;
  font-size: var(--font-20) !important;
  transition: 0.5s all;
}
button.ButtonBase__ButtonContainer-sc-2b567eb2-3.daLTkD.HeaderWriteReviewButton__WriteReviewButton-sc-275e4878-1.jcSCgO.es-header-write-review-button:hover{
  background: var(--secondary-color) !important;
  color: var(--white-color) !important;
}
span.ButtonBase__Overlay-sc-2b567eb2-4.heqffG{
  background: transparent !important;
}
.HeaderComponent__Top-sc-82145d0b-2.dvcvsm.es-header-component-top{
  margin-bottom: 0 !important;
}

.ReviewBackground__Container-sc-f3f0ac28-0.blBcmp.es-review-background-container{
  background: var(--light-grey-color); 
}
.Icon__IconContainer-sc-1013a803-0.fVeDXq.es-source-image.ReviewSource__SourceLogo-sc-a206463b-4.gmQZKB.es-review-source-source-bottom-logo.es-google-logo{
  display: none;
}
.ShortenedText__ShortenedTextComponent-sc-f0604435-1.csZRus.es-text-shortener{
    font-family: var(--font-roboto);
    font-size: var(--font-14);
    line-height: 1.5;
    margin-bottom: 10px;
    margin-top: 10px;
}
#elfsight-google-review-widget button.ButtonBase__ButtonContainer-sc-2b567eb2-3.daLTkD.es-load-more-button{
  background: transparent !important;
  border: 1px solid var(--grey-color) !important;
  color: var(--primary-color) !important;
  font-size: var(--font-20) !important;
  font-family: var(--font-intro-bold) !important;
  font-weight: var(--fw-700) !important;
  border-radius: var(--border-radius16) !important;
  padding: 8px 12px !important;
  margin-top: 15px !important;
  transition: 0.5s all !important;
}

#elfsight-google-review-widget button.ButtonBase__ButtonContainer-sc-2b567eb2-3.daLTkD.es-load-more-button:hover{
  background: var(--primary-color) !important;
  color: var(--white-color) !important;
}
.TextControl__BaseControl-sc-4babbde5-0.jWHopK.es-text-shortener-control.es-text-shortener-control-open, .TextControl__BaseControl-sc-4babbde5-0.jWHopK.es-text-shortener-control.es-text-shortener-control-hide{
  font-size: var(--font-14);
}

/* new css for this section Success Stories & Testimonials */

/* Style for the "View More" button */
#elfsight-google-review-widget button.es-load-more-button {
    background: transparent !important;
    border: 1px solid var(--grey-color) !important;
    color: var(--primary-color) !important;
    font-size: var(--font-20) !important;
    font-family: var(--font-intro-bold) !important;
    font-weight: var(--fw-700) !important;
    border-radius: var(--border-radius16) !important;
    padding: 8px 12px !important;
    margin-top: 15px !important;
    transition: 0.5s all !important;
}

#elfsight-google-review-widget button.es-load-more-button:hover {
    background: var(--primary-color) !important;
    color: var(--white-color) !important;
}
/* Updated: General background setting */
#elfsight-google-review-widget .rpfyV {
  background: transparent;
}


/* Updated: Style for 'Review us' button */
#elfsight-google-review-widget button.es-header-write-review-button {
  background: transparent !important;
  border-radius: var(--border-radius16) !important;
  color: var(--secondary-color) !important;
  border-color: var(--grey-color) !important;
  padding: 8px 12px !important;
  border-width: 1px !important;
  font-family: var(--font-intro-bold) !important;
  font-size: var(--font-20) !important;
  transition: 0.5s all;
}

/* Updated: Hover style for 'Review us' button */
#elfsight-google-review-widget button.es-header-write-review-button:hover {
  background: var(--secondary-color) !important;
  color: var(--white-color) !important;
}

/* Updated: Transparent overlay for buttons */
#elfsight-google-review-widget .es-button-base-container > span {
  background: transparent !important;
}


/* Licensed Coverage Map */

.map-wrap { 
  position: relative;
  width: 100%;
  overflow: visible; /* Ensure nothing gets clipped */
}

#usMapHolder {
  width: 100%;
  overflow: visible;
}

#usMapHolder svg { 
  width: 100%;
  height: auto;
  display: block;
  overflow: visible;
}
#usMapHolder {
  padding: 10px;
  box-sizing: border-box;
}


.state-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px 12px;
}
.state-tags .tag{
  background: var(--light-orange-color);
  color:var(--black-color);
  border:0;
  border-radius: var(--border-radius8);
  padding:8px 12px;
  cursor:pointer;
  font-family: var(--font-roboto);
  font-size: var(--font-16);
  color: var(--black-color);
  font-weight: var(--fw-400);
  transition:background .2s ease, color .2s ease, transform .12s ease;
}
.state-tags .tag:hover,
.state-tags .tag.active{
  background: var(--secondary-color);
  color: var(--white-color);
  transform:translateY(-1px);
}

/* ---- Tooltip ---- */
.map-tooltip{
  position:absolute;
  display:none;
  padding: 7px 10px 5px;
  background: var(--white-color);
  color: var(--black-color);
  font-family: var(--font-roboto);
  font-size: var(--font-16);
  font-weight: var(--fw-400);
  border-radius:var(--border-radius8);
  box-shadow:0 8px 22px rgba(0,0,0,.15);
  transform: translate(-50%, 10%); /* center over anchor, slightly above */
  pointer-events:none;
  white-space:nowrap;
  z-index:10;
}
.map-tooltip::after{
  content: "";
  position: absolute;
  left: 50%;
  top: -5px;
  transform: translateX(-50%);
  border-top-color: var(--white-color);
  border-style: solid;
  border-width: 0 5px 8px 5px;
  border-color: transparent transparent var(--white-color); transparent;
}

/* hide alaska and hawaii and seperator */

path.ak, path.hi, path.separator1 {display: none;}

/* ========================================
   Footer Section
======================================== */
footer{
  background: var(--primary-color);
  background: linear-gradient(145deg, rgba(35, 79, 161, 1) 0%, rgb(32 49 107) 60%);
  position: relative;
  padding: 3% 0 3%;
  overflow-y: hidden;
}
footer:before{
  background: url("../images/bulldog-adjusters-main-bulldog.png") no-repeat left bottom;
  position: absolute;
  width: 60%;
  height: 100%;
  bottom: -55px;
  left: -50px;
  content: '';
  z-index: 1;
}
footer .border-bottom{
  border-color: rgba(255, 255, 255, 0.32);
}
.footer-logo {
  width: 50%;
}
.footer-contact-section{
  padding: 3% 0;
  position: relative;
  z-index: 9;
}
.contact-details{
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  z-index: 5;
}
.contact-details li{
  font-family: var(--font-roboto);
  font-size: var(--font-16);
  font-weight: var(--fw-400);
  color: var(--white-color);
  margin: 10px 0;
  display: flex;
  justify-content: space-between;
}
.contact-details li a{
  color: var(--white-color);
  text-decoration: none;
}
.contact-details li a:hover{
  color: var(--secondary-color);
}
.bottom-form p {margin: 0;}

.footer-social{
  order: 2;
  margin-top: 10px;
}
.footer-social .social-icon{
  font-size: var(--font-20);
  color: var(--white-color);
  z-index: 9;
  margin: 0 15px 0 0;
}
.footer-social .social-icon:hover{
  color: var(--secondary-color);
}
.footer-links{
  padding: 0;
  margin: 0;
  list-style: none;
}
.footer-links li{
  font-size: var(--font-16);
  margin-right: 18px;
  position: relative;
}
.footer-links li:after{
  position: absolute;
  content: '';
  border-right: 1px solid var(--light-grey-color);
  width: 2px;
  height: 16px;
  top: 3px;
  right: -10px;
}
.footer-links li:last-child:after{
  display: none;
}
.footer-links li a{
  color: var(--white-color);
}
.footer-links li a:hover{
  color: var(--secondary-color);
}

.form-card{
  position: relative;
  z-index: 5;
}
.form-card:after{
  content: '';
  position: absolute;
  right: 38px;
  top: 0;
  background: url("../images/bulldog-adjusters-bottom-blue-bite.svg") no-repeat right top;
  width: 115px;
  height: 55px;
}
.form-card label{
  font-family: var(--font-roboto);
  font-size: var(--font-16);
  font-weight: var(--fw-400);
}
.modal .form-card:after{
  display: none;
}
.modal .cf7-toggle-switch p{
  margin: 0;
}


/* Form Fields */

.knob,
.btn-bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.toggle {
  position: relative;
  top: 50%;
  width: 100px;
  height: 36px;
  margin:  0 0 0 20px;
  overflow: hidden;
}
.toggle.btn-pill,
.toggle.btn-pill > .btn-bg {
  border-radius: 100px;
}

.checkbox-toggle {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  opacity: 0;
  cursor: pointer;
  z-index: 3;
}

.knob {
  z-index: 2;
}

.btn-bg {
  width: 100%;
  background-color: #ebf7fc;
  transition: 0.3s ease all;
  z-index: 1;
  border: 1px solid var(--grey-color);
  border-radius: var(--border-radius8);
}

.toggle-switch .knob:before,
.toggle-switch .knob:after,
.toggle-switch .knob span,
.toggle-switch .knob span:before,
.toggle-switch .knob span:after {
  position: absolute;
  top: 0;
  font-size: var(--font-16);
  font-weight: var(--fw-400);
  font-family: var(--font-roboto);
  text-align: center;
  line-height: 1;
  border-radius: 2px;
  transition: 0.3s ease all;
}

.toggle-switch .knob:before {
  content: "YES";
  left: 0;
}

.toggle-switch .knob:after {
  content: "NO";
  right: 0;
}

.toggle-switch .knob:before,
.toggle-switch .knob:after {
  width: 45px;
  height: 36px;
  color: var(--black-color);
  padding: 0;
  z-index: 0;
  line-height: 38px;
}

.toggle-switch .knob span {
  display: inline-block;
  z-index: 2;
}

.toggle-switch .knob span,
.toggle-switch .knob span:before,
.toggle-switch .knob span:after {
  width: 45px;
  height: 35px;
  padding: 9px 4px;
  border-radius: var(--border-radius8);
}


.toggle-switch .knob span:before {
  content: "YES";
  top: 0;
  color: white;
}

.toggle-switch .knob span:after {
  content: "NO";
  top: 0;
  color: white;
}

/* For yes */
.toggle-switch .knob span:before {
  left: -50px;
  /* background-color: var(--secondary-color); */
  background-color: var(--primary-color);
}

/* For no */
.toggle-switch .knob span:after {
  right: -55px;
  background-color: var(--primary-color);
}

.toggle-switch .checkbox-toggle:checked + .knob span:before {
  left: 0;
}

.toggle-switch .checkbox-toggle:checked + .knob span:after {
  right: -100px;
}

.toggle-switch .checkbox-toggle:checked ~ .btn-bg {
  background-color: #EFF4FE;
  border: 1px solid var(--grey-color);
}
.checkbox-toggle:checked + .toggle-switch .knob:before{
  color: var(--white-color);
}
.checkbox-toggle:checked + .toggle-switch .knob:after{
  color: var(--white-color);
}

.footer-contact-section .cf7-toggle-switch p{
  margin: 0;
}
.codedropz-upload-handler {
    border: 2px dashed var(--secondary-color)!important;
    background: var(--light-orange-color);
    border-radius: var(--border-radius8) !important;
}
.codedropz-upload-inner h3, .codedropz-upload-inner span, span.dnd-upload-counter, .dnd-upload-status .dnd-upload-details .name em {
    display: none;
}
.codedropz-btn-wrap i {
    color: var(--secondary-color);
    font-size: var(--font-20);
    margin-right: 12px;
}
.codedropz-upload-inner .codedropz-btn-wrap a.cd-upload-btn {
    color: var(--black-color);
}
.dnd-upload-status .dnd-upload-image{
    border: none!important;
}
.dnd-upload-status .dnd-upload-image span.file {
    background: url("../images/bulldog-adjusters-pdf-icon.png")!important;
    background-repeat: no-repeat!important;
    background-size: 100%!important;
    height: 21px!important;
    width: 22px!important;
    display: block!important;
    position: absolute!important;
    left: 50%!important;
    top: 50%!important;
    transform: translate(-50%, -50%)!important;
    -moz-transform: translate(-50%, -50%)!important;
    -webkit-transform: translate(-50%, -50%)!important;
}
.dnd-upload-status span {
    color: var(--black-color);
    font-size: var(--font-16);
    font-family: var(--font-roboto); 
}
.dnd-upload-status .dnd-upload-details .dnd-progress-bar span{
    background: var(--primary-color)!important;
}

.dnd-upload-status .dnd-upload-details .remove-file{right: 20px !important;;}

.dnd-upload-status .dnd-upload-details .name{padding: 0!important;}

.dnd-upload-status .dnd-upload-image{width: 30px!important; height: 30px!important;}

.dnd-upload-status {
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: var(--border-radius8);
    padding: 10px!important;
}

.dnd-upload-status .dnd-upload-details .remove-file span:after {
    content: '\f1f8'!important;
    font-family: 'Font Awesome 6 Free'; 
    font-weight: var(--fw-900);
    font-size: var(--font-16);
    background-image: none!important;
    line-height: 15px;
    color: var(--primary-color);
}
.form-control::placeholder {
    color: var(--text-grey-color);
    font-family: var(--font-roboto); 
}
.form-control {
    border-radius: var(--border-radius8);
    font-family: var(--font-roboto);
    font-size: var(--font-16);
	  color: var(--black-color);
}

.form-control:not([type="date"])::placeholder-shown { color: var(--text-grey-color); }

/* Date input - grey when empty, black when has value (controlled by JavaScript) */
input[type="date"].form-control {
  color: var(--text-grey-color);
}

/* When date has a value (JavaScript adds 'has-date-value' class), make it black */
input[type="date"].form-control.has-date-value {
  color: var(--black-color);
}

.selected-dial-code {
    display: none!important;
}
.intl-tel-input.separate-dial-code.allow-dropdown .selected-flag {
    width: 55px!important;
    background: transparent!important;
    border-right: var(--bs-border-width) solid var(--bs-border-color)!important;
}
.intl-tel-input ul.country-list{z-index: 9;}
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input, .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input[type=tel], .intl-tel-input.separate-dial-code.allow-dropdown input[type=text] {
    padding-left: 66px!important;
}
textarea.form-control {
    height: 80px;
}

/* Basic styling for date input field */
.date-wrapper {
  position: relative;
}

/* Floating label styling */
.floating-label {
  position: absolute;
    top: -5%;
    left: 10px;
    transform: translateY(-50%);
    color: var(--text-grey-color);
    font-size: 12px;
    pointer-events: none;
    transition: 0.3s ease;
    z-index: 9;
    background: var(--white-color);
    z-index: 1;
    padding: 0 5px;
}

/* ========================================
   Date Input - Make entire field clickable to open calendar
   ======================================== */
/* Expand the calendar icon clickable area to cover the entire input field */
/* This makes clicking anywhere on the date field open the calendar while keeping icon visible */
.date-wrapper {
  position: relative;
}

/* Add Font Awesome calendar icon using ::after on the wrapper */
.date-wrapper::after {
  content: '\f073'; /* Font Awesome calendar icon */
  font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  right: 12px;
  top: 20px; /* Fixed position - centers within a 40px input field */
  transform: translateY(-50%);
  color: var(--primary-color);
  font-size: 16px;
  pointer-events: none; /* Allow clicks to pass through */
  z-index: 1;
}

input[type="date"] {
  position: relative;
  cursor: pointer;
  /* background-image: not used - using Font Awesome icon instead via .date-wrapper::after */
}

input[type="date"]::-webkit-calendar-picker-indicator {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  cursor: pointer;
  opacity: 0; /* Make the expanded clickable area invisible */
  z-index: 2; /* Place above the custom icon */
}

div#testimonials .WidgetTitle__Container-sc-9c92769d-0.lfCQiA.es-widget-title-container {
    display: none;
}

/* Other pages css */

.inner-banner-section{
	/* background:var(--grey-color); */
	background: linear-gradient(128.79deg, rgba(50, 95, 211, 0.24) 3.39%, rgba(66, 113, 230, 0.12) 33.89%, rgba(255, 170, 131, 0.12) 63.15%, rgba(255, 125, 55, 0.22) 89.11%);
}
.inner-content-section ol.wp-block-list {
    padding: 15px 0 0 20px;
    font-size: var(--font-16);
    font-family: var(--font-intro-bold);
}
 
.inner-content-section p {
    line-height: 1.7;
    margin-bottom: 10px;
}
.inner-content-section ul.wp-block-list {
    padding: 0 0 0 38px;
    font-size: 16px;
}
.inner-content-section ul.wp-block-list li {
    margin: 0 0 10px;
    list-style: square;
}

.img-404{
	width: 100%;
    margin-bottom: -94px;
}

.comment-meta{
	background:none;
}
.comment-form label{
	display:block;
}
.comment-form textarea{
	width:50%;
	height: 80px;
	resize: none;
	background-color: var(--bs-body-bg);
	border: var(--bs-border-width) solid var(--bs-border-color);
	border-radius: var(--border-radius8);
}

.comment-form .submit{
	background: var(--secondary-color);
	border-radius: var(--border-radius8);
	color: var(--white-color);
	font-family: var(--font-intro-bold);
	font-size: var(--font-16);
	font-weight: var(--fw-700);
	border: 0;
	padding: 0.5rem 1.5rem;
	transition: 0.5s all;
}
.comment-form .submit:hover{
    background: var(--primary-color);
    color: var(--white-color);
    transition: 0.5s all;
}

/* ========================================
   Default Radio Button Contact Form 7
======================================== */

/* Radio button container */
.wpcf7-form-control.wpcf7-radio {
    display: flex;
    gap: 20px;
    align-items: center;
}

/* Individual radio button item */
.wpcf7-list-item {
    margin: 0 !important;
}

/* Radio button label */
.wpcf7-list-item label {
    display: flex;
    align-items: center;
    cursor: pointer;
    padding: 5px 10px;
    border-radius: var(--border-radius8);
    border: 2px solid var(--grey-color);
    transition: all 0.3s ease;
    background-color: var(--white-color);
}

/* Hover effect on label */
.wpcf7-list-item label:hover {
    background-color: var(--light-grey-color);
    border-color: var(--primary-color);
}

/* Radio button input */
.wpcf7-list-item input[type="radio"] {
    width: 18px;
    height: 18px;
    margin-right: 8px;
    cursor: pointer;
    accent-color: var(--primary-color);
    flex-shrink: 0;
}

/* Radio button label text */
.wpcf7-list-item-label {
    font-size: var(--font-16);
    font-family: var(--font-roboto);
    font-weight: var(--fw-400);
    color: var(--black-color);
    user-select: none;
}

/* Checked state styling */
.wpcf7-list-item input[type="radio"]:checked + .wpcf7-list-item-label {
    color: var(--primary-color);
    font-weight: var(--fw-500);
}

/* Enhanced checked state for the entire label */
.wpcf7-list-item input[type="radio"]:checked ~ * {
    color: var(--primary-color);
}

.wpcf7-list-item label:has(input[type="radio"]:checked) {
    background-color: var(--light-grey-color);
    border-color: var(--primary-color);
    border-width: 2px;
}

/* Question label styling */
label[for="claim-filed"] {
    font-weight: var(--fw-500);
    color: var(--black-color);
    font-family: var(--font-roboto);
    font-size: var(--font-16);
}
