/**
 * File: styles.css
 * Description : Contains all necessary styling for the Reddrop Buddies - Blood Donation Campaign & Multi-Concept Activism Template
 * Author: xenioushk
 * URL: https://themeforest.net/user/xenioushk
 * Project: Reddrop Buddies - Blood Donation Campaign & Multi-Concept Activism Template
 * Version: 1.0.1
 * Last Update: 21-11-2017
 **/
/*========================================================================*/
/*   TABLE OF CONTENT
/*========================================================================*/
/*
/*      01. GENERAL STYLING
/*      02. HEADER
/*      03. MAIN NAVIGATION MENU
/*      04. HOME PAGE
/*      05. BLOG LAYOUT
/*      06. BLOG SINGLE PAGE
/*      07. EVENTS/CAMPAIGN PAGE
/*      08. ABOUT US PAGE
/*      09. GALLERY PAGE
/*      10. SERVICE PAGE
/*      11. 404 PAGE
/*      12. FOOTER
/*      13. SIDEBAR & WIDGETS
/*      14. RESPONSIVE STYLING
/*
/*========================================================================*/
@import url('https://fonts.googleapis.com/css?family=Montserrat:400,500,600,700|Poppins:300,400');
/**
 * html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)
 * v1.6.1 2010-09-17 | Authors: Eric Meyer & Richard Clark
 * html5doctor.com/html-5-reset-stylesheet/
 */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
del {
  text-decoration: line-through;
}
abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
input,
select {
  vertical-align: middle;
}
/* Remove margins for navigation lists */
nav ul,
nav li {
  margin: 0;
  list-style: none;
  list-style-image: none;
}
small {
  font-size: 85%;
}
strong,
th {
  font-weight: bold;
}
td {
  vertical-align: top;
}
textarea {
  overflow: auto;
}
/* www.sitepoint.com/blogs/2010/08/20/ie-remove-textarea-scrollbars/ */
/* Align checkboxes, radios, text inputs with their label by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css ; */
input[type="radio"] {
  vertical-align: text-bottom;
}
input[type="checkbox"] {
  vertical-align: bottom;
}
.ie7 input[type="checkbox"] {
  vertical-align: baseline;
}
.ie6 input {
  vertical-align: text-bottom;
}
/* Webkit browsers add a 2px margin outside the chrome of form elements */
button,
input,
select,
textarea {
  margin: 0;
}
/***********************************************************************************************/
/* 01. GENERAL STYLING  */
/***********************************************************************************************/
body {
  font: 16px/28px 'Poppins', sans-serif;
  color: #333333;
  font-style: normal;
  font-weight: 400;
  position: relative;
}
img {
  max-width: 100%;
}
a {
  color: #4E4E4E;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
a:hover,
a:focus {
  color: #ad170e;
  text-decoration: none;
}
blockquote {
  font: 'Poppins', sans-serif;
  color: #333333;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Montserrat', sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #555555;
  line-height: 36px;
  margin: 0 0 16px 0;
}
h1 {
  font-size: 56px;
}
h2 {
  font-size: 48px;
}
h2 + p {
  margin-top: 12px;
}
h3 {
  font-size: 36px;
}
h3 + p {
  margin-top: 12px;
}
h4 {
  font-size: 24px;
}
h4 + p {
  margin-top: 12px;
}
h5 {
  font-size: 20px;
}
h6 {
  font-size: 16px;
}
* + p {
  margin-top: 12px;
}
p {
  font: 16px/28px 'Poppins', sans-serif;
  color: #333333;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.01em;
  margin: 0 0 12px;
  padding: 0;
}
ul,
li {
  list-style-type: none;
}
input[type=text],
input[type=password],
input[type=submit],
input[type=button],
textarea {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}
input[type=text]:focus,
input[type=password]:focus,
input[type=submit]:focus,
input[type=button]:focus,
textarea:focus {
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}
strong {
  font-weight: 600;
}
#preloader {
  background: #ffffff;
  height: 100%;
  position: fixed;
  width: 100%;
  z-index: 9999;
}
#preloader span {
  left: 50%;
  margin-left: -15px;
  margin-top: -15px;
  position: absolute;
  top: 50%;
}
#backTop {
  width: 16px;
  height: 16px;
  padding: 10px;
  border-radius: 0px;
  text-indent: -9999px;
  cursor: pointer;
  z-index: 999999999;
  display: none;
  box-sizing: content-box;
  -webkit-box-sizing: content-box;
  opacity: 1;
  -webkit-transition: opacity 0.2s ease-out;
  -moz-transition: opacity 0.2s ease-out;
  -o-transition: opacity 0.2s ease-out;
  transition: opacity 0.2s ease-out;
}
#backTop:hover {
  opacity: 1;
}
#backTop:after {
  position: absolute;
  content: '-';
  width: 16px;
  height: 16px;
  text-align: center;
  top: 0;
  left: 0;
  color: #FFF;
}
#backTop.custom {
  background-color: #EF3D32;
  background-image: url('../images/uparr-48-b.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border: 0px solid #f69791;
  -webkit-transition: 0.2s 0.2s ease-out;
  -moz-transition: 0.2s 0.2s ease-out;
  -o-transition: 0.2s 0.2s ease-out;
  transition: 0.2s 0.2s ease-out;
}
#backTop.custom:hover {
  background-color: #ffffff;
  border: 0px solid #ad170e;
}
blockquote {
  padding: 12px 26px 26px 42px;
  margin: 0 0 20px;
  font-size: 14px;
  font-family: 'Poppins', sans-serif;
  background: #FFFFFF;
  position: relative;
  border: 1px solid #CCCCCC;
  border-left: 4px solid #4d4d4d;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
blockquote:hover {
  border: 1px solid #a6a6a6;
  border-left: 4px solid #4d4d4d;
}
blockquote p {
  font-size: 14px;
  line-height: 24px;
}
blockquote:before {
  display: block;
  position: absolute;
  left: 12px;
  top: 14px;
  content: "\f10d";
  font-family: 'FontAwesome';
  font-size: 15px;
  color: #d6d6d6;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
blockquote.testimonial {
  background: #FFFFFF;
  border-top: 1px solid #CCCCCC;
  border-right: 1px solid #CCCCCC;
  border-bottom: 1px solid #CCCCCC;
  margin-bottom: 0;
}
cite {
  text-align: right;
  display: block;
}
cite:before {
  margin-right: 4px;
}
.bq-author {
  padding: 16px 0 0 110px;
  position: relative;
}
.bq-author:before {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: 69px;
  width: 0;
  height: 0;
  border-left: 22px solid transparent;
  border-right: 0 solid transparent;
  border-top: 22px solid #dcdcdc;
  z-index: 2;
}
.bq-author:after {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: 70px;
  width: 0;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 0 solid transparent;
  border-top: 20px solid #fff;
  z-index: 3;
}
.bq-author h6 {
  margin-bottom: 6px;
}
.bq-author .bq-author-info {
  font-size: 12px;
}
ol li {
  padding: 0;
  margin: 0 0 10px 25px;
  list-style-type: decimal;
}
.accordion .panel {
  margin-bottom: 3px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
}
.accordion .panel .panel-title a {
  display: block;
}
span.label {
  margin-right: 1px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
  font-size: 100%;
}
/*-----  BUTTONS ----*/
#btn,
.btn {
  text-align: center;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
#btn:hover,
.btn:hover {
  color: #000000;
}
.btn-custom {
  text-transform: uppercase;
  text-align: center;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
  border: 1px solid #CCCCCC;
  background: #EF3D32;
  color: #FFFFFF;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  padding: 12px 14px;
}
.btn-custom:hover {
  border-color: #a6a6a6;
  color: #EF3D32;
  background: #FFFFFF;
}
.btn-custom-inverse {
  text-align: center;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
  border: 1px solid #CCCCCC;
  color: #EF3D32;
  background: #FFFFFF;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  padding: 12px 14px;
}
.btn-custom-inverse:hover {
  background: #EF3D32;
  color: #FFFFFF;
}
a.btn-load-more {
  margin-bottom: -36px;
  margin-top: 48px;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  background: transparent;
  color: #EF3D32;
  background: #FFFFFF;
  border: 1px solid #EF3D32;
  padding: 12px 24px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
a.btn-load-more:hover {
  color: #FFFFFF;
  background: #EF3D32;
  border: 1px solid #EF3D32;
}
.btn-theme {
  border: 0px;
  background: #EF3D32;
  color: #FFFFFF;
  display: inline-block;
  line-height: 32px;
  font-size: 18px;
  font-weight: 600;
  padding: 16px 36px;
  position: relative;
  text-transform: uppercase;
  -webkit-transition: 'all' '0.5s' ease-out;
  -moz-transition: 'all' '0.5s' ease-out;
  -o-transition: 'all' '0.5s' ease-out;
  transition: 'all' '0.5s' ease-out;
  margin-bottom: 0;
  letter-spacing: 0em;
  overflow: hidden;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.btn-theme:hover {
  color: #FFFFFF;
  background-color: #4E4E4E;
}
/*End BTN Style*/
.btn-theme-invert {
  color: #FFFFFF;
  background-color: #4E4E4E;
}
.btn-theme-invert:hover {
  background: #1b1b1b;
  color: #FFFFFF;
}
.btn-capitalize {
  text-transform: capitalize !important;
}
.btn-rounded {
  -webkit-border-radius: 32px;
  -moz-border-radius: 32px;
  border-radius: 32px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.button {
  display: inline-block;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  color: white;
  font-weight: bold;
  height: 3em;
  line-height: 1em;
  padding: 1em;
}
.small-button {
  display: inline-block;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  color: #000000;
  font-weight: bold;
  height: 0;
  line-height: 0;
  padding: 1em 1em;
  margin: 6px 0;
  width: 100%;
}
.text-highlighter {
  color: #EF3D32;
}
.text-highlighter-white {
  color: #FFFFFF;
}
#comment_btn {
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  text-align: center;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
  border: 1px solid #CCCCCC;
  -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
  background: transparent;
  color: #333333;
  padding: 6px 12px;
}
#comment_btn:hover {
  border: 1px solid #EF3D32;
  color: #EF3D32;
  background: transparent;
}
/*-----  BOX SHADOW----*/
.theme-custom-box-shadow {
  border: 0px solid transparent;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.07);
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.theme-custom-box-shadow:hover {
  border: 0px solid transparent;
  box-shadow: 0px 10px 25px rgba(0, 0, 0, 0.05);
}
.theme-custom-box-animation {
  position: relative;
  top: 0;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.theme-custom-box-animation:hover {
  top: -5px;
}
#contact-form .p-errors label {
  color: lightcoral;
}
#contact-form .p-errors input[type="text"],
#contact-form .p-errors input[type="email"],
#contact-form .p-errors textarea {
  border-color: lightcoral;
}
.wp-caption {
  text-align: center;
}
.wp-caption .wp-caption-text {
  margin-bottom: 0px;
  font-size: 12px;
  font-style: italic;
  line-height: 34px;
}
.sticky {
  margin-bottom: 21px;
  background: #FFFFFF;
}
/*------------------------------ Gallery Caption  ---------------------------------*/
/*------------------------------ By Post Author ---------------------------------*/
/***********************************************************************************************/
/* 02. HEADER */
/***********************************************************************************************/
.main-header {
  height: auto;
  left: 0;
  position: relative;
  /*position: relative;*/
  top: 0;
  width: 100%;
  z-index: 1000;
}
.sticky-wrapper {
  background: #ffffff;
}
.navgiation-wrapper {
  background: #ffffff;
}
.top-bar {
  background: #EF3D32;
  line-height: 42px;
  color: #FFFFFF;
  font-size: 14px;
}
.top-bar i {
  color: #FFFFFF;
  margin-right: 5px;
  display: inline-block;
}
.top-bar a {
  color: #FFFFFF;
}
.top-bar p {
  margin-top: 10px;
  color: #FFFFFF;
}
.top-bar-social {
  float: right;
  margin-right: 12px;
  color: #FFFFFF;
  font-size: 16px;
  margin-top: 5px;
  border: 0px solid #FFF;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.top-bar-social a {
  display: inline-block;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.top-bar-social a i.fa {
  width: 24px;
  height: 24px;
  text-align: center;
  color: #666;
  background: #fafafa;
  line-height: 24px;
  font-size: 14px;
  position: relative;
  top: -2px;
}
.top-bar-social a:hover i.fa {
  color: #EF3D32;
  background: #fafafa;
}
.sticky-header {
  height: auto;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1000;
}
.sticky-header .top-bar {
  background: rgba(254, 60, 71, 0.9);
}
.sticky-header .navgiation-wrapper {
  background: rgba(255, 255, 255, 0.97);
}
.sticky-header .sticky-wrapper {
  background: transparent !important;
}
.stuck {
  position: fixed;
  top: 0;
  left: 0px;
  right: 0px;
  z-index: 99;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -o-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
  background: rgba(255, 255, 255, 0.97);
  border-bottom: 1px solid #ebebeb;
  width: 100%;
  padding: 0px;
  margin: 0 !important;
  -webkit-box-shadow: 0px 0px 5px 10px rgba(0, 0, 0, 0.03);
  -moz-box-shadow: 0px 0px 5px 10px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 5px 10px rgba(0, 0, 0, 0.03);
}
.logo {
  margin-top: 32px;
  margin-bottom: 0;
}
.header-container {
  border-bottom: 0px solid #EEEEEE;
  padding-bottom: 0px;
  box-shadow: 0px 0px 2px -4px rgba(0, 0, 0, 0.2);
  -webkit-transition: 0.2s 0.2s ease-out;
  -moz-transition: 0.2s 0.2s ease-out;
  -o-transition: 0.2s 0.2s ease-out;
  transition: 0.2s 0.2s ease-out;
}
/***********************************************************************************************/
/* 03. MAIN NAVIGATION MENU */
/***********************************************************************************************/
a.logo {
  margin-top: 10px;
  display: inline-block;
}
a.logo img {
  display: block;
}
.navbar-default {
  border: none;
  background: transparent;
  margin-bottom: 0px;
  padding: 12px 0;
}
.navbar-default .navbar-nav {
  margin-top: 10px;
}
.navbar-default .navbar-nav > li {
  margin-left: 10px;
}
.navbar-default .navbar-nav > li > a {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #333333;
  text-transform: uppercase;
  padding-bottom: 24px;
}
.navbar-default .navbar-nav > li > a:hover {
  color: #000000;
}
.navbar-default .navbar-nav li.drop {
  position: relative;
}
.navbar-default .navbar-nav li ul.drop-down {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 71px;
  left: 0;
  width: 190px;
  visibility: hidden;
  opacity: 0;
  z-index: 3;
  text-align: left;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.navbar-default .navbar-nav li ul.drop-down li {
  list-style: none;
  display: block;
  margin: 0;
}
.navbar-default .navbar-nav li ul.drop-down li ul.drop-down.level3 {
  -webkit-transform: rotateX(0deg);
  -moz-transform: rotateX(0deg);
  -ms-transform: rotateX(0deg);
  -o-transform: rotateX(0deg);
  transform: rotateX(0deg);
  -webkit-transform: rotateX(-90deg);
  -moz-transform: rotateX(-90deg);
  -ms-transform: rotateX(-90deg);
  -o-transform: rotateX(-90deg);
  transform: rotateX(-90deg);
  top: 0px;
  left: 100%;
  border-bottom: none;
}
.navbar-default .navbar-nav li ul.drop-down li a {
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  font-size: 15px;
  display: inline-block;
  text-decoration: none;
  display: block;
  color: #000000;
  padding: 12px 20px;
  text-transform: uppercase;
  background: rgba(255, 255, 255, 0.9);
  margin: 0;
  border: none;
}
.navbar-default .navbar-nav li ul.drop-down li a:hover {
  background: rgba(0, 0, 0, 0.9);
  color: #FFFFFF;
}
.navbar-default .navbar-nav li ul.drop-down li:hover ul.drop-down.level3 {
  -webkit-transform: rotateX(0deg);
  -moz-transform: rotateX(0deg);
  -ms-transform: rotateX(0deg);
  -o-transform: rotateX(0deg);
  transform: rotateX(0deg);
}
.navbar-default .navbar-nav li ul.drop-down li:last-child {
  border-bottom: none;
}
.navbar-default .navbar-nav li:hover > ul.drop-down {
  visibility: visible;
  opacity: 1;
}
header.one-page .navbar-nav > li {
  margin-left: 0;
}
header.one-page .navbar-nav > li > a span {
  color: #EF3D32;
}
.menu-container {
  border: 5px solid rgba(0, 0, 0, 0.5);
  background: rgba(0, 0, 0, 0.8);
  margin-top: 20px;
  padding: 0px 20px;
}
.menu-container .navbar-nav li ul.drop-down {
  top: 66px;
}
/***********************************************************************************************/
/* 04. HOME PAGE */
/***********************************************************************************************/
.section-content-block {
  padding: 100px 0 100px 0;
  background: #FFFFFF;
}
.section-heading-wrapper {
  margin-bottom: 32px;
  /*-----  Left Alignment ----*/
  /*-----  Right Alignment ----*/
}
.section-heading-wrapper h2 {
  text-align: center;
  position: relative;
  font-size: 42px;
  line-height: 42px;
  margin-bottom: 20px;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0em;
  font-weight: 700;
  color: #555555;
}
.section-heading-wrapper h2:after {
  background-image: url('../images/separator.png');
  background-position: center center;
  background-repeat: no-repeat;
  content: "";
  height: 24px;
  left: 50%;
  margin-left: -75px;
  position: absolute;
  top: 55px;
  width: 150px;
}
.section-heading-wrapper p,
.section-heading-wrapper h4 {
  text-align: center;
  font-size: 22px;
  line-height: 32px;
  font-weight: 400;
  font-family: 'Montserrat', sans-serif;
  color: #484848;
  margin-bottom: 24px;
  padding: 30px 0 0 0px;
  word-spacing: 0em;
}
.section-heading-wrapper span.heading-separator {
  display: inline-block;
  width: 2px;
  height: 32px;
  background: #EF3D32;
  margin-top: 12px;
}
.section-heading-wrapper span.heading-separator-horizontal {
  width: 72px;
  height: 2px;
  margin-top: 0px;
  position: relative;
  top: -3px;
}
.section-heading-wrapper .no-img-separator {
  clear: both;
}
.section-heading-wrapper .no-img-separator h2 {
  margin-bottom: 0px;
}
.section-heading-wrapper .no-img-separator h2:after {
  display: none;
}
.section-heading-wrapper .no-img-separator h4 {
  padding: 0px;
  margin: 0;
}
.section-heading-wrapper .text-left h2 {
  text-align: left;
  clear: both;
}
.section-heading-wrapper .text-left h2:after {
  left: 0;
  margin-left: 0px;
}
.section-heading-wrapper .text-left p,
.section-heading-wrapper .text-left h4 {
  text-align: left;
}
.section-heading-wrapper .text-right h2 {
  text-align: right;
  clear: both;
}
.section-heading-wrapper .text-right h2:after {
  left: initial;
  right: 0;
  margin-left: 0;
  margin-right: 0;
}
.section-heading-wrapper .text-right p,
.section-heading-wrapper .text-right h4 {
  text-align: right;
}
.section-heading-wrapper h2 + h4 {
  margin-top: 16px !important;
}
.section-heading-wrapper h4 + h2 {
  margin-top: 16px !important;
}
.section-heading-wrapper-alt {
  margin-bottom: 32px;
}
.section-heading-wrapper-alt h2 {
  font-size: 48px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 48px;
  position: relative;
  color: #FFFFFF;
}
.section-heading-wrapper-alt p,
.section-heading-wrapper-alt h4 {
  font-size: 22px;
  line-height: 32px;
  font-weight: 400;
  margin-bottom: 0px;
  color: #FFFFFF;
}
.section-heading-wrapper-alt span.heading-separator {
  display: inline-block;
  width: 2px;
  height: 16px;
  background: #EF3D32;
  margin-top: 8px;
}
.section-heading-wrapper-alt span.heading-separator-horizontal {
  background: #EF3D32;
  width: 72px;
  height: 2px;
  margin-top: 0px;
  position: relative;
  top: -4px;
}
.section-heading-wrapper-alt h2 + h4 {
  margin-top: 16px !important;
}
.section-heading-wrapper-alt h4 + h2 {
  margin-top: 16px !important;
}
.section-custom-bg-extra-padding {
  padding: 200px 0;
}
.section-pure-white-bg {
  background: #FFFFFF !important;
}
.section-pure-black-bg {
  background: #000000 !important;
}
.section-secondary-bg {
  background: #F9FAFB !important;
}
/*----- SECTION SLIDER ----*/
.slider-wrap {
  clear: both;
}
#slider_1 {
  text-align: center;
}
#slider_1 .item img {
  display: block;
  width: 100%;
  height: auto;
}
#slider_1 .slider_item_container {
  position: relative;
  text-align: center;
  width: 100%;
  min-height: 800px;
  background-repeat: no-repeat;
  background-size: cover;
  background: #000000;
}
#slider_1 .slider-content {
  position: absolute;
  top: 50%;
  transform: translateY(-55%);
  width: 100%;
}
#slider_1 .slider-content h2 {
  font-size: 60px;
  line-height: 66px;
  font-weight: 900;
  margin: 0px 0 0;
  color: #FFFFFF;
  font-family: 'Montserrat', sans-serif;
}
#slider_1 .slider-content h2 span {
  color: #EF3D32;
  background: none;
  padding: 0px;
}
#slider_1 .slider-content h3 {
  font-weight: 400;
  font-size: 32px;
  line-height: 48px;
  letter-spacing: 0.01em;
  margin: 16px 0;
  color: #FFFFFF;
  font-family: 'Montserrat', sans-serif;
}
#slider_1 .slider-content a.btn-slider {
  font-size: 16px;
  margin-top: 36px;
  background: #EF3D32;
  border: 0px solid #EF3D32;
  color: #FFFFFF;
  line-height: 48px;
  padding-left: 42px;
  padding-right: 42px;
  font-weight: 600;
  text-align: left;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
#slider_1 .slider-content a.btn-slider:hover {
  background: #4E4E4E;
  border: 0px solid #EF3D32;
  color: #FFFFFF;
}
#slider_1 .slider-contents-info {
  background: rgba(255, 255, 255, 0.9);
  padding: 42px 42px 60px;
  display: block;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
#slider_1 .slider-contents-info h2,
#slider_1 .slider-contents-info h3 {
  color: #333333;
}
#slider_1 .slider-contents-info:before,
#slider_1 .slider-contents-info:after {
  content: "";
  width: 130px;
  height: 130px;
  background: transparent;
  border: 5px solid #EF3D32;
  position: absolute;
  z-index: -1;
}
#slider_1 .slider-contents-info:before {
  bottom: 0px;
  left: 0;
  border-top: 0px;
  border-right: 0px;
}
#slider_1 .slider-contents-info:after {
  top: 0px;
  right: 0;
  border-left: 0px;
  border-bottom: 0px;
}
#slider_1 a.btn + a.btn {
  margin-left: 12px;
}
#slider_1 .owl-nav {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  opacity: 0;
  margin: 0;
  z-index: 1;
}
#slider_1 .owl-nav [class*="owl-"] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #d6d6d6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}
#slider_1 .owl-nav .owl-prev {
  left: 3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 80px;
  color: #FFFFFF;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: center;
}
#slider_1 .owl-nav .owl-prev:hover {
  background: transparent;
  color: #EF3D32;
}
#slider_1 .owl-nav .owl-next {
  right: 3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 80px;
  color: #FFFFFF;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: center;
}
#slider_1 .owl-nav .owl-next:hover {
  background: transparent;
  color: #EF3D32;
}
#slider_1 .owl-dots {
  margin: 0;
  position: absolute;
  bottom: 24px;
  left: 50%;
  margin-left: -50px;
  width: 100px;
  text-align: center;
}
#slider_1 .owl-dots .owl-dot {
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  display: inline-block;
  padding: 2px;
  width: 16px;
  height: 8px;
  background: #FAFAFA;
  margin: 0 4px;
}
#slider_1 .owl-dots .owl-dot span {
  display: none;
}
#slider_1 .owl-dots .active {
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  width: 24px;
  background: #EF3D32;
}
#slider_1 .owl-dots .active span {
  display: none;
}
#slider_1:hover .owl-nav {
  opacity: 1;
}
#slider_1:hover .owl-nav .owl-prev {
  left: 0%;
}
#slider_1:hover .owl-nav .owl-next {
  right: 0%;
}
.slide-bg {
  height: 100%;
  width: 100%;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
  background-position: center center;
  background-origin: initial;
  background-repeat: no-repeat;
  -webkit-transition: all 5s ease-out;
  -moz-transition: all 5s ease-out;
  -o-transition: all 5s ease-out;
  transition: all 5s ease-out;
  transform: rotate(0deg) scale(1);
}
.slidezoom {
  transform: rotateY(2deg) scale(1.1);
}
.owl-carousel .owl-item {
  overflow: hidden !important;
}
/*-----  SECTION BANNER----*/
.section-banner {
  background-image: url("../images/home_1_slider_1.jpg");
  padding: 250px 0px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  overflow: hidden;
}
.section-banner .banner-content {
  width: 100%;
}
.section-banner .banner-content h2 {
  font-family: 'Montserrat', sans-serif;
  font-size: 50px;
  line-height: 60px;
  font-weight: 700;
  margin: 12px 0 0;
  color: #FFFFFF;
  text-transform: uppercase;
}
.section-banner .banner-content h2 span {
  padding: 0 3px;
  font-weight: 400;
}
.section-banner .banner-content h3 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0.02em;
  margin: 16px 0 0;
  color: #FFFFFF;
}
.section-banner .banner-content a.btn-slider {
  font-size: 16px;
  margin-top: 24px;
  background: #EF3D32;
  border: 2px solid #EF3D32;
  color: #FFFFFF;
  line-height: 32px;
  padding-left: 24px;
  padding-right: 24px;
  font-weight: 500;
  text-align: center;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.section-banner .banner-content a.btn-slider:hover {
  background: #dd1d11;
  border: 2px solid #EF3D32;
  color: #FFFFFF;
}
/*-----  SECTION P\ROCESS ----*/
.section-process {
  position: relative;
  overflow: hidden;
}
.process-layout {
  margin: 0px 0 32px 0;
  text-align: left;
  position: relative;
  padding: 0;
  background: #F8F9FA;
}
.process-layout .process-img {
  position: relative;
}
.process-layout .process-img img {
  vertical-align: middle;
  width: 100%;
}
.process-layout .process-img .step h3 {
  color: #FFFFFF;
  bottom: 15px;
  font-family: 'Poppins', sans-serif;
  font-size: 64px;
  position: absolute;
  right: 30px;
  text-align: center;
  z-index: 9999;
}
.process-layout .process-img .step:after {
  background: #EF3D32;
  bottom: 0;
  content: "";
  height: 100px;
  opacity: 0.7;
  position: absolute;
  right: 0;
  width: 100px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.process-layout h2 {
  font-size: 28px;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.01em;
  font-weight: 600;
  text-transform: uppercase;
  position: relative;
  color: #1A1A1A;
}
.process-layout:hover .process-img .step:after {
  opacity: 1;
}
.process-info {
  padding: 32px 16px;
  text-align: left;
}
/*-----  SECTION BLOG ----*/
.section-home-blog {
  background: #F9FAFB;
}
.latest-news-container {
  margin-bottom: 24px;
  background: #f9f9f9;
  border: 0px solid #CCCCCC;
}
.latest-news-container figure {
  display: block;
  position: relative;
  overflow: hidden;
}
.latest-news-container figure img {
  display: block;
  position: relative;
  width: 1000%;
}
.latest-news-container figure:after {
  font-family: FontAwesome;
  content: '+';
  position: absolute;
  right: 150%;
  margin-left: -30px;
  bottom: -64px;
  background: #FFFFFF;
  color: #EF3D32;
  text-align: center;
  width: 60px;
  height: 60px;
  font-size: 30px;
  line-height: 60px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.latest-news-container .news-content {
  padding: 15px 25px 35px;
}
.latest-news-container .news-content h3 {
  color: #1A1A1A;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.03em;
  line-height: 32px;
  margin-bottom: 6px;
  text-transform: uppercase;
  margin-top: 12px;
}
.latest-news-container .news-content h3 a {
  display: block;
}
.latest-news-container .news-content p {
  color: #333333;
}
.latest-news-container .news-content .news-meta-info {
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 12px;
}
.latest-news-container .news-content .news-meta-info i {
  color: #EF3D32;
}
.latest-news-container:hover figure:after {
  opacity: 1;
  top: 50%;
  left: 50%;
  margin-top: -30px;
}
/*----- SECTION HIGHLIGHT ----*/
.highlight-layout-1 {
  margin: 24px 0;
  background: transparent;
  padding: 0px;
  position: relative;
}
.highlight-layout-1 figure {
  margin-bottom: 20px;
}
.highlight-layout-1 figure img {
  width: auto !important;
  display: inline-block !important;
  clear: both;
}
.highlight-layout-1 h5 {
  color: #333333;
  font-weight: 600;
  margin-bottom: 12px;
  font-size: 22px;
}
.highlight-layout-1 p {
  color: #333333;
}
.highlight-layout-1:hover figure img {
  clear: both;
}
.animate-icon-rotate-up {
  clear: both;
}
.animate-icon-rotate-up img {
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  position: relative;
  top: 0px;
  transform: rotateY(0deg);
  width: auto !important;
  display: inline-block !important;
}
.animate-icon-rotate-up:hover img {
  position: relative;
  top: -10px;
  transform: rotateY(360deg);
}
.highlight-carousel {
  clear: both;
}
.highlight-carousel [class^="col-"] {
  width: 100%;
}
.highlight-carousel .owl-nav {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  opacity: 0.6;
  margin: 0;
  z-index: 1;
}
.highlight-carousel .owl-nav [class*="owl-"] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #d6d6d6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}
.highlight-carousel .owl-nav .owl-prev {
  left: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 48px;
  color: #EF3D32;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: left;
}
.highlight-carousel .owl-nav .owl-prev:hover {
  color: #9b9b9b;
}
.highlight-carousel .owl-nav .owl-next {
  right: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 48px;
  color: #EF3D32;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: right;
}
.highlight-carousel .owl-nav .owl-next:hover {
  color: #9b9b9b;
}
.highlight-carousel .owl-dots {
  margin: 24px 0 0 0;
  text-align: center;
}
.highlight-carousel .owl-dots .owl-dot {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  display: inline-block;
  padding: 4px;
  width: 18px;
  height: 18px;
  background: transparent;
  border: 1px solid #CCCCCC;
  margin: 0 4px;
}
.highlight-carousel .owl-dots .owl-dot span {
  display: block;
  background: #4E4E4E;
}
.highlight-carousel .owl-dots .active span {
  padding: 0px;
  width: 8px;
  height: 8px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  background: #f36a61;
}
.highlight-carousel:hover .owl-nav {
  opacity: 1;
}
/*----- SECTION SERVICE ----*/
.service-layout-1 {
  margin-top: 0px;
  margin-bottom: 42px;
  background: #fafafa;
  position: relative;
  padding: 0;
}
.service-layout-1 .service-img-box {
  display: block;
  overflow: hidden;
  position: relative;
}
.service-layout-1 .service-img-box .service-img {
  display: block;
  position: relative;
  max-width: 100%;
  padding: 0px;
}
.service-layout-1 .service-img-box .service-img:before {
  background: #4E4E4E;
  width: 100%;
  height: 0px;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.service-layout-1 .service-img-box .service-img:after {
  font-family: FontAwesome;
  content: '\f0c1';
  position: absolute;
  right: 150%;
  margin-left: -21px;
  bottom: -64px;
  background: #FFFFFF;
  color: #EF3D32;
  text-align: center;
  width: 42px;
  height: 42px;
  line-height: 42px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-transition: all 0.7s ease-out;
  -moz-transition: all 0.7s ease-out;
  -o-transition: all 0.7s ease-out;
  transition: all 0.7s ease-out;
}
.service-layout-1 .service-img-box .service-img img {
  width: 100%;
  max-width: 100%;
  display: block;
  opacity: 1;
  -webkit-transition: all 0.8s ease-out;
  -moz-transition: all 0.8s ease-out;
  -o-transition: all 0.8s ease-out;
  transition: all 0.8s ease-out;
}
.service-layout-1 .service-img-box:hover .service-img:before {
  background: #EF3D32;
  width: 100%;
  height: 1500px;
}
.service-layout-1 .service-img-box:hover .service-img:after {
  opacity: 1;
  top: 50%;
  left: 50%;
  margin-top: -24px;
}
.service-layout-1 .service-img-box:hover .service-img img {
  opacity: 0.5;
  -webkit-transform: scale(1.1) rotate(5deg);
  -moz-transform: scale(1.1) rotate(5deg);
  transform: scale(1.1) rotate(5deg);
}
.service-layout-1 .service-img-box:hover .service-img figcaption {
  bottom: 0px;
  left: 0;
}
.service-layout-1 h2 {
  font-size: 20px;
  color: #333333;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.03em;
  font-weight: 700;
  text-transform: capitalize;
  position: relative;
}
.service-layout-1 h2:after {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  position: absolute;
  content: '';
  bottom: -12px;
  left: 0;
  display: block;
  width: 60px;
  height: 1px;
  margin-left: 0px;
  background: #EF3D32;
}
.service-layout-1 p {
  margin-top: 24px;
}
.service-layout-1 a.service_read_more {
  font-weight: 400;
  text-transform: capitalize;
  position: relative;
  color: #EF3D32;
  display: inline-block;
}
.service-layout-1 i.fa {
  -webkit-transition: all 0.7s ease-out;
  -moz-transition: all 0.7s ease-out;
  -o-transition: all 0.7s ease-out;
  transition: all 0.7s ease-out;
  font-size: 48px;
  position: absolute;
  right: 24px;
  bottom: 20px;
  color: #EF3D32;
  opacity: 1;
}
.service-layout-1:hover .icon {
  color: #EF3D32;
  top: 60px;
  opacity: 1;
}
.service-layout-1:hover h2:after {
  background: #4E4E4E;
  width: 100px;
  height: 1px;
}
.service-carousel {
  clear: both;
}
.service-carousel [class^="col-"] {
  width: 100%;
}
.service-carousel .owl-nav {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  opacity: 0.6;
  margin: 0;
  z-index: 1;
}
.service-carousel .owl-nav [class*="owl-"] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #d6d6d6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}
.service-carousel .owl-nav .owl-prev {
  left: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 48px;
  color: #EF3D32;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: left;
}
.service-carousel .owl-nav .owl-prev:hover {
  color: #4E4E4E;
}
.service-carousel .owl-nav .owl-next {
  right: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 48px;
  color: #EF3D32;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: right;
}
.service-carousel .owl-nav .owl-next:hover {
  color: #4E4E4E;
}
.service-carousel .owl-dots {
  margin: 24px 0 0 0;
  text-align: center;
}
.service-carousel .owl-dots .owl-dot {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  display: inline-block;
  padding: 4px;
  width: 18px;
  height: 18px;
  background: transparent;
  border: 1px solid #CCCCCC;
  margin: 0 4px;
}
.service-carousel .owl-dots .owl-dot span {
  display: block;
  background: #4E4E4E;
}
.service-carousel .owl-dots .active span {
  padding: 0px;
  width: 8px;
  height: 8px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  background: #f36a61;
}
.service-carousel:hover .owl-nav {
  opacity: 1;
}
.service-info {
  padding: 12px 24px;
}
/*----- SECTION TEAM ----*/
.section-our-team {
  clear: both;
}
.section-our-team .team-centered {
  text-align: center !important;
}
.team-layout-1 {
  margin-bottom: 24px;
  text-align: center;
  position: relative;
  overflow: hidden;
  border: 1px solid #EEE;
}
.team-layout-1 .team-member img {
  vertical-align: middle;
  width: 100%;
}
.team-layout-1 .team-info {
  background: #fcfcfc;
  padding: 5px 12px;
  text-align: center;
}
.team-layout-1 .team-info h3 {
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  margin: 15px 0 0 0;
  font-size: 22px;
  letter-spacing: 0.03em;
  font-weight: 700;
  color: #1A1A1A;
}
.team-layout-1 .team-info h4 {
  font-family: 'Montserrat', sans-serif;
  color: #808080;
  text-transform: uppercase;
  font-size: 18px;
  letter-spacing: 0.03em;
  font-weight: 600;
}
.team-layout-1 .team-content {
  background: #F8F9FA;
}
.team-layout-1 .team-content .team-social-share {
  border-top: 1px solid #EEE;
  margin: 0px 0px;
  padding: 15px;
}
.team-layout-1 .team-content .team-social-share a {
  display: inline-block;
  height: 40px;
  line-height: 40px;
  margin: 0 2px;
  text-align: center;
  width: 40px;
  color: #EF3D32;
  border: 1px solid #EEE;
  background: #FFFFFF;
}
.team-layout-1 .team-content .team-social-share a:hover {
  color: #ad170e;
}
.team-layout-1.team-minimal-layout {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.team-layout-1.team-minimal-layout .team-info,
.team-layout-1.team-minimal-layout .team-content {
  opacity: 0;
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
}
.team-layout-1.team-minimal-layout .team-info {
  bottom: 0px;
}
.team-layout-1.team-minimal-layout:hover .team-info,
.team-layout-1.team-minimal-layout:hover .team-content {
  opacity: 1;
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
}
.team-layout-1.team-minimal-layout:hover .team-info {
  bottom: 54px;
}
.team-carousel {
  clear: both;
}
.team-carousel [class^="col-"] {
  width: 100%;
}
.team-carousel .owl-nav {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  opacity: 1;
  margin: 0;
  z-index: 1;
}
.team-carousel .owl-nav [class*="owl-"] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #d6d6d6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}
.team-carousel .owl-nav .owl-prev {
  left: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 60px;
  color: #EF3D32;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: left;
}
.team-carousel .owl-nav .owl-prev:hover {
  color: #4E4E4E;
}
.team-carousel .owl-nav .owl-next {
  right: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 60px;
  color: #EF3D32;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: right;
}
.team-carousel .owl-nav .owl-next:hover {
  color: #4E4E4E;
}
.team-carousel .owl-dots {
  margin: 24px 0 0 0;
  text-align: center;
}
.team-carousel .owl-dots .owl-dot {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  display: inline-block;
  padding: 4px;
  width: 18px;
  height: 18px;
  background: transparent;
  border: 1px solid #CCCCCC;
  margin: 0 4px;
}
.team-carousel .owl-dots .owl-dot span {
  display: block;
  background: #4E4E4E;
}
.team-carousel .owl-dots .active span {
  padding: 0px;
  width: 8px;
  height: 8px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  background: #f36a61;
}
.team-carousel:hover .owl-nav {
  opacity: 1;
}
/*----- SECTION CTA  ----*/
.cta-section-1 {
  background: #F8F9FA;
  padding: 40px 0;
  color: #333333;
}
.cta-section-1 h2 {
  font-size: 32px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-weight: 700;
}
.cta-section-1 p {
  margin-bottom: 0;
  color: #777777;
}
a.btn-cta-1 {
  background: #EF3D32;
  color: #FFFFFF;
  border: 3px solid #EF3D32;
  font-size: 18px;
  font-weight: 600;
  height: 60px;
  line-height: 42px;
  margin-bottom: 6px;
  margin-top: 24px;
  padding-left: 28px;
  padding-right: 28px;
  position: relative;
  text-transform: uppercase;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  transition: all 0.3s ease-out 0.2s;
}
a.btn-cta-1:hover {
  background: transparent;
  color: #1A1A1A;
}
.cta-section-2 {
  padding: 64px 0;
  background: transparent;
  background-image: url('../images/pattern_1.png');
  background-repeat: repeat;
  background-position: center center;
  background-size: initial;
  background-attachment: fixed;
  display: block;
  clear: both;
  position: relative;
  overflow: hidden;
  text-align: center;
}
.cta-section-2:before {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #EF3D32;
  opacity: 0.95;
  top: 0;
  left: 0;
  content: '';
}
.cta-section-2 h2 {
  font-size: 32px;
  line-height: 42px;
  color: #FFFFFF;
  font-weight: 700;
  margin: 0;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.cta-section-2 p {
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.004em;
  color: #FFFFFF;
}
a.btn-cta-2 {
  background: #FAFAFA;
  color: #EF3D32;
  border: 2px solid #CCCCCC;
  font-size: 22px;
  font-weight: 600;
  height: 60px;
  line-height: 42px;
  margin-bottom: 6px;
  margin-top: 24px;
  padding-left: 28px;
  padding-right: 28px;
  position: relative;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  transition: all 0.3s ease-out 0.2s;
}
a.btn-cta-2:hover {
  background: #EF3D32;
  color: #FFFFFF;
}
.cta-section-3 {
  background: transparent;
  background-image: url('../images/cta-bg-img.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-attachment: fixed;
  color: #FFFFFF;
  display: block;
  clear: both;
  position: relative;
  overflow: hidden;
}
.cta-section-3:before {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  top: 0;
  left: 0;
  content: '';
}
.cta-section-3 .cta-content {
  color: #FFFFFF;
}
.cta-section-3 .cta-content h2 {
  font-size: 60px;
  color: #FFFFFF;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 65px;
  font-weight: 700;
}
a.btn-cta-3 {
  background: #EF3D32;
  border: 2px solid #EF3D32;
  color: #FFFFFF;
  display: inline-block;
  font-size: 20px;
  font-weight: 600;
  padding: 12px 25px;
  position: relative;
  text-transform: uppercase;
  transition: all 0.3s ease-out 0s;
  margin-top: 25px;
}
a.btn-cta-3:hover {
  background-color: #dd1d11;
}
.cta-video-icon {
  border: 5px solid #212121;
  color: #EF3D32;
  width: 120px;
  height: 120px;
  font-size: 48px;
  line-height: 110px;
  text-align: center;
  margin: 0 auto 24px;
  display: inline-block;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.cta-video-icon > i {
  margin-left: 6px;
}
.cta-video-icon:hover {
  color: #1A1A1A;
  border: 5px solid #EF3D32;
}
.cta-video-icon-invert {
  color: #FFFFFF;
  border: 5px solid #EF3D32;
}
.cta-video-icon-invert:hover {
  border: 5px solid #CCCCCC;
  color: #EF3D32;
}
/*----- SECTION FAQ ----*/
.section-faq {
  position: relative;
  overflow: hidden;
}
.section-faq .panel {
  box-shadow: none;
}
.section-faq .panel-default {
  border: 1px solid #EEE;
  padding: 0;
  background: #F9FAFB;
  border-radius: 0;
  margin-top: 24px;
}
.section-faq .faq-box .panel-heading {
  background: #EF3D32;
  border: 0 none;
  display: block;
  padding: 10px 15px;
}
.section-faq .faq-box .panel-title {
  color: #FFFFFF;
  font-size: 18px;
  letter-spacing: 0.02em;
  margin-bottom: 0;
  margin-top: 0;
  font-weight: 600;
  display: block;
}
.section-faq .faq-box .panel-title > a {
  display: block;
  color: #FFFFFF;
}
.section-faq .faq-box .panel-title > a:hover,
.section-faq .faq-box .panel-title > a:focus {
  outline: none;
  color: #FFFFFF;
}
.section-faq .faq-box .panel-body {
  padding: 10px 15px;
}
.section-faq .faq-box .panel-heading [data-toggle="collapse"]:after {
  font-family: FontAwesome;
  content: "\f106";
  float: left;
  color: #FFFFFF;
  font-size: 18px;
  margin-right: 10px;
}
.section-faq .faq-box .panel-heading [data-toggle="collapse"].collapsed:after {
  color: #FFFFFF;
  content: "\f107";
}
/*-----  SECTION TESTIMOIANL ----*/
.testimony-layout-1 {
  position: relative;
  padding: 0 32px;
}
.testimony-layout-1 .people-quote {
  margin-top: 24px;
  font-size: 32px;
  font-weight: 700;
  text-transform: uppercase;
  color: #EF3D32;
  margin-bottom: 24px;
}
.testimony-layout-1 h6 {
  margin: 0;
  font-size: 20px;
  font-weight: 500;
  text-transform: uppercase;
  color: #404040;
}
.testimony-layout-1 span {
  font-size: 15px;
  text-transform: uppercase;
  color: #4d4d4d;
}
.testimony-layout-1 img {
  width: 60px !important;
  height: 60px !important;
  border-radius: 32px;
  display: inline-block !important;
  margin-bottom: 12px;
}
.testimony-layout-1 .testimony-text {
  position: relative;
  font-family: 'Poppins', sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 32px;
  margin: 0 0 42px 0;
  padding-top: 24px;
  color: #333333;
}
.testimony-layout-1 .testimony-text i {
  color: #808080;
  font-style: normal;
  opacity: 0.4;
}
.testimonial-container.owl-carousel [class^="col-"] {
  width: 100%;
}
.testimonial-container {
  padding: 80px 0px;
  clear: both;
}
.testimonial-container .owl-nav {
  clear: both;
  color: #000000;
  font-size: 22px;
  line-height: 42px;
  opacity: 0;
  position: absolute;
  top: 50%;
  width: 100%;
  margin-top: -21px;
  z-index: 1;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.testimonial-container .owl-nav div.owl-prev {
  text-align: center;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  position: relative;
  left: -8px;
  width: 42px;
  height: 42px;
  line-height: 42px;
  font-size: 24px;
  background: #EF3D32;
  color: #ededed;
  float: left;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.testimonial-container .owl-nav div.owl-next {
  text-align: center;
  float: right;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  position: relative;
  right: -8px;
  width: 42px;
  height: 42px;
  line-height: 42px;
  font-size: 24px;
  background: #EF3D32;
  color: #ededed;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.testimonial-container .owl-nav:hover {
  opacity: 0.8;
}
.testimonial-container .owl-dots {
  margin: 42px 0 0 0;
  text-align: center;
}
.testimonial-container .owl-dots .owl-dot {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  display: inline-block;
  padding: 4px;
  width: 18px;
  height: 18px;
  background: transparent;
  border: 1px solid #CCCCCC;
  margin: 0 4px;
}
.testimonial-container .owl-dots .owl-dot span {
  display: block;
  background: #4E4E4E;
}
.testimonial-container .owl-dots .active span {
  padding: 0px;
  width: 8px;
  height: 8px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  background: #f36a61;
}
.testimonial-container.text-left .owl-dots {
  text-align: left;
  padding-left: 48px;
}
.testimonial-container:hover .owl-nav {
  opacity: 1;
}
.btn-cta {
  width: 200px;
  font-weight: bold;
  text-transform: uppercase;
}
/*----- SECTION COUNTER ----*/
/*----- COUNTER LAYOUT 01  ----*/
.counter-block-1 {
  margin: 32px 0;
  background: #FFFFFF;
  padding: 24px 24px;
}
.counter-block-1 h4 {
  margin-top: 15px;
  font-weight: 500;
  font-size: 24px;
  text-transform: uppercase;
  color: #000000;
  letter-spacing: 0.02em;
  position: relative;
}
.counter-block-1 .counter {
  display: block;
  margin-top: 12px;
  font-size: 32px;
  color: #EF3D32;
  font-weight: 600;
}
.counter-block-1 .icon {
  border-radius: 0;
  font-size: 48px;
  line-height: 50px;
  margin: 20px 0;
  color: #333333;
  top: 0px;
  position: relative;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.counter-block-1:hover {
  clear: both;
}
.counter-block-1:hover .icon {
  color: #EF3D32;
  top: -5px;
}
/*----- SECTION EVENTS ----*/
.ce_event_wrap,
.default_width {
  float: left;
  position: relative;
  width: 100%;
}
.ce_event_wrap .event-img,
.default_width .event-img {
  position: relative;
  width: 100%;
}
.ce_event_wrap .event-img img,
.default_width .event-img img {
  height: auto;
  width: 100%;
}
.ce_event_wrap .event-img .ce_event_date,
.default_width .event-img .ce_event_date {
  border: 1px solid #CCCCCC;
  color: #333333;
  background-color: #FFFFFF;
  float: left;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 500;
  left: 2px;
  padding: 6px;
  position: absolute;
  text-align: center;
  bottom: 12px;
  width: 200px;
  opacity: 0.9;
  -webkit-transition: all 0.8s ease-out;
  -moz-transition: all 0.8s ease-out;
  -o-transition: all 0.8s ease-out;
  transition: all 0.8s ease-out;
}
.ce_event_wrap .event-img .ce_event_date:hover,
.default_width .event-img .ce_event_date:hover {
  opacity: none;
}
.ce_event_wrap .ce_event_des_wrap,
.default_width .ce_event_des_wrap {
  position: relative;
  padding: 0px;
}
.ce_event_wrap .ce_event_des_wrap .ce_event_new_des,
.default_width .ce_event_des_wrap .ce_event_new_des {
  float: none;
  padding: 0px;
  width: auto;
}
.ce_event_wrap .ce_event_des_wrap .ce_event_new_des h5 a,
.default_width .ce_event_des_wrap .ce_event_new_des h5 a {
  letter-spacing: 0.06em;
  font-weight: 500;
  color: #EF3D32;
  text-transform: capitalize;
  display: block;
  margin: 15px 0 0px;
}
.ce_event_wrap .ce_event_des_wrap .ce_event_new_des h5 a:hover,
.default_width .ce_event_des_wrap .ce_event_new_des h5 a:hover {
  color: #555555;
}
.ce_event_wrap .ce_event_des_wrap .ce_event_new_des ul,
.default_width .ce_event_des_wrap .ce_event_new_des ul {
  text-transform: uppercase;
  float: left;
  margin: 0 0 10px;
  width: 100%;
}
.ce_event_wrap .ce_event_des_wrap .ce_event_new_des ul li,
.default_width .ce_event_des_wrap .ce_event_new_des ul li {
  color: #555555;
  display: inline-block;
  font-size: 14px;
  padding: 0 10px;
  position: relative;
  list-style: outside none none;
}
.ce_event_wrap .ce_event_des_wrap .ce_event_new_des ul li:first-child,
.default_width .ce_event_des_wrap .ce_event_new_des ul li:first-child {
  padding-left: 0;
}
.ce_event_wrap .ce_event_des_wrap .ce_event_new_des ul li a,
.default_width .ce_event_des_wrap .ce_event_new_des ul li a {
  color: #555555;
  display: inline-block;
  font-weight: 300;
}
.ce_event_wrap .ce_event_des_wrap .ce_event_new_des ul li i,
.default_width .ce_event_des_wrap .ce_event_new_des ul li i {
  margin-right: 5px;
}
.event_wrapper .event-img {
  position: relative;
  display: block;
  clear: both;
  overflow: hidden;
  margin: -1px -1px 0px -1px;
}
.event_wrapper .event-img img {
  display: block;
  clear: both;
  text-align: center;
  opacity: 1;
  -webkit-transition: all 0.8s ease-out;
  -moz-transition: all 0.8s ease-out;
  -o-transition: all 0.8s ease-out;
  transition: all 0.8s ease-out;
  max-width: 100%;
}
.event_wrapper .event-img .ce_event_date {
  background-color: #EF3D32;
  color: #FFFFFF;
  text-transform: uppercase;
  float: left;
  font-size: 15px;
  font-weight: 700;
  left: 5px;
  padding: 5px 10px;
  position: absolute;
  text-align: center;
  bottom: 5px;
  transition: all 0.2s ease-out 0s;
}
.event_wrapper .single-event {
  background: #EF3D32;
  bottom: 0;
  color: #FFFFFF;
  left: 0;
  overflow: hidden;
  padding: 10px 25px 30px;
  position: absolute;
  width: 100%;
  opacity: 0.9;
}
.event_wrapper .single-event h5 {
  font-family: 'Montserrat', sans-serif;
  color: #FFFFFF;
  font-size: 20px;
  display: block;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.03em;
  margin: 15px 0 0px;
}
.event_wrapper .single-event ul li {
  display: inline-block;
  font-size: 15px;
  font-weight: 400;
  list-style: outside none none;
  position: relative;
  padding: 0 12px 0 0;
}
.event_wrapper .single-event ul li i {
  color: #FFFFFF;
}
.event_wrapper .single-event ul li a {
  color: #FFFFFF;
}
.event_wrapper .sidebar-event {
  position: relative;
  padding-left: 120px;
  display: block;
  margin: -10px 0 45px;
}
.event_wrapper .sidebar-event:last-child {
  margin-bottom: 0;
}
.event_wrapper .sidebar-event .event-date {
  background: #EF3D32;
  border: 2px solid #f36a61;
  color: #FFFFFF;
  font-size: 12px;
  height: 110px;
  left: 0;
  padding: 17px 10px;
  position: absolute;
  text-align: center;
  top: 10px;
  width: 90px;
  text-transform: uppercase;
}
.event_wrapper .sidebar-event .event-date .day {
  border-bottom: 2px solid #FFFFFF;
  font-size: 30px;
}
.event_wrapper .sidebar-event .event-date .year {
  color: #FFFFFF;
}
.event_wrapper .sidebar-event ul li {
  display: inline-block;
  font-size: 15px;
  font-weight: 400;
  list-style: outside none none;
  margin: 0px 0 0;
  padding: 0 12px 0 0;
  position: relative;
}
.event_wrapper .sidebar-event ul li a {
  color: #555555;
}
.event_wrapper .sidebar-event h3 {
  font-family: 'Montserrat', sans-serif;
  margin: 0;
  color: #333333;
  letter-spacing: 0.03em;
  font-size: 20px;
  display: block;
  text-transform: uppercase;
  font-weight: 500;
  transition: all 0.3s ease-out 0s;
}
.event_wrapper .sidebar-event h3:hover {
  color: #EF3D32;
}
.event_wrapper:hover h5 a {
  color: #EF3D32;
}
.event_wrapper:hover a.event_read_more {
  background: #dd1d11;
}
/*----- SECTION APPOINTMENT ----*/
.section-appointment {
  position: relative;
  overflow: hidden;
}
.appointment-img {
  height: 650px;
  position: fixed;
  bottom: 0;
  left: 0;
}
.appointment-img img {
  display: table;
  position: relative;
}
.appointment-form-wrapper {
  margin-top: 70px;
  margin-bottom: 70px;
  background: #eaedf1;
  padding: 0px 5px 28px;
}
.appointment-form-wrapper h3 {
  font-size: 28px;
  font-weight: 700;
  color: #FFFFFF;
  background: #EF3D32;
  padding: 30px;
  letter-spacing: 0.03em;
  margin: 0 -5px 50px;
  text-transform: uppercase;
  position: relative;
}
.appointment-form-wrapper h3.join-heading-alt {
  background: #4E4E4E;
}
.appoinment-form {
  padding: 0 12px;
}
.appoinment-form .form-control {
  font-size: 16px;
}
.appoinment-form .form-group {
  margin-bottom: 0;
}
.appoinment-form input[type=text],
.appoinment-form input[type=email],
.appoinment-form input[type=url],
.appoinment-form input[type=password] {
  border: 0px;
  border: 1px solid #EEE;
  line-height: 42px;
  height: 42px;
  margin-bottom: 24px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
.appoinment-form input[type=text]:focus,
.appoinment-form input[type=email]:focus,
.appoinment-form input[type=url]:focus,
.appoinment-form input[type=password]:focus {
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  border: 1px solid #EEE;
}
.appoinment-form textarea {
  border: 0px;
  border: 1px solid #EEE;
  padding-left: 2px;
  margin-bottom: 24px;
  padding: 6px 12px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
.appoinment-form textarea:focus {
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  border: 1px solid #EEE;
}
.appoinment-form .select-style {
  position: relative;
}
.appoinment-form .select-style select.form-control {
  border: 1px solid #EEE;
  -moz-appearance: none;
  position: relative;
  background-image: url("../images/down_arrow.png");
  background-position: 100% 4px;
  background-repeat: no-repeat;
  cursor: pointer;
  box-shadow: none;
  color: #999;
  padding: 6px 12px;
  height: 42px;
  line-height: 42px;
  margin-bottom: 24px;
}
.appoinment-form .select-style select.form-control:focus {
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  border: 1px solid #EEE;
  box-shadow: none;
}
.appoinment-form .btn-submit {
  background: #EF3D32;
  border: 2px solid #EF3D32;
  color: #FFFFFF;
  display: inline-block;
  font-weight: 400;
  padding: 5px 10px;
  position: relative;
  text-transform: uppercase;
  transition: all 0.3s ease-out 0s;
}
.appoinment-form .btn-submit:hover {
  background-color: #dd1d11;
}
/*-----  SECTION LOGO ----*/
.section-client-logo {
  padding: 50px 0px;
}
.logo-layout-1 .client-logo {
  padding: 0 6px;
}
.logo-layout-1 .client-logo img {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  width: 100%;
  margin: 0;
  border: 0px solid #CCCCCC;
  display: block;
  opacity: 0.7;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.logo-layout-1 .client-logo:hover img {
  border: 0px dotted #f36a61;
  opacity: 1;
}
.logo-layout-2 .logo {
  background: #FFFFFF;
}
.logo-layout-2 .logo img {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  width: 100%;
  margin: 0 auto 24px auto;
  border: 1px solid #CCCCCC;
  display: block;
  padding: 12px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.logo-layout-2 .logo:hover img {
  border: 1px solid #f36a61;
  opacity: 1;
}
.no-border-logo-layout .client-logo {
  border: 0px solid transparent;
}
.no-border-logo-layout .client-logo:hover {
  border: 0px solid transparent;
}
.logo-items {
  clear: both;
}
.logo-items [class^="col-"] {
  width: 100%;
}
.logo-items .client-logo {
  margin-bottom: 0;
}
.logo-items .owl-nav {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  opacity: 1;
  margin: 0;
  z-index: 1;
}
.logo-items .owl-nav [class*="owl-"] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #d6d6d6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}
.logo-items .owl-nav .owl-prev {
  left: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 42px;
  color: #EF3D32;
  background: transparent;
  margin-top: -24px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: left;
}
.logo-items .owl-nav .owl-prev:hover {
  color: #4E4E4E;
}
.logo-items .owl-nav .owl-next {
  right: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 42px;
  color: #EF3D32;
  background: transparent;
  margin-top: -24px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: right;
}
.logo-items .owl-nav .owl-next:hover {
  color: #4E4E4E;
}
.logo-items .owl-dots {
  margin: 24px 0 0 0;
  text-align: center;
}
.logo-items .owl-dots .owl-dot {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  display: inline-block;
  padding: 4px;
  width: 18px;
  height: 18px;
  background: transparent;
  border: 1px solid #CCCCCC;
  margin: 0 4px;
}
.logo-items .owl-dots .owl-dot span {
  display: block;
  background: #4E4E4E;
}
.logo-items .owl-dots .active span {
  padding: 0px;
  width: 8px;
  height: 8px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  background: #f36a61;
}
.logo-items:hover .owl-nav {
  opacity: 1;
}

/***********************************************************************************************/
/* MAIN CONTENT */
/***********************************************************************************************/
.main-content {
  margin: 48px 0;
}
/***********************************************************************************************/
/* 05. BLOG LAYOUT */
/***********************************************************************************************/
.page-header {
  margin: 0;
  padding: 100px 0 100px;
  position: relative;
  overflow: hidden;
  z-index: 1;
  background-attachment: scroll;
  background-color: transparent;
  background-image: url('../images/header-bg.jpg');
  background-repeat: repeat;
  background-size: initial;
  border: 0px solid #FFF;
}
.page-header:before {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  content: '';
  z-index: -1;
}
.page-header h3 {
  color: #FFFFFF;
  text-align: center;
  font-size: 36px;
  line-height: 24px;
  font-weight: 700;
  font-family: 'Montserrat', sans-serif;
  margin: 24px 0;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.page-header .page-breadcrumb {
  font-size: 16px;
  color: #FFFFFF;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.01em;
}
.page-header .page-breadcrumb a {
  color: #FFFFFF;
}
.page-header .page-breadcrumb a:hover {
  color: #EF3D32;
}
.single-post {
  margin-bottom: 50px;
}
.single-post p {
  line-height: 30px;
}
.single-post .single-post-content {
  margin-bottom: 30px;
  padding: 6px;
  background: #F9FAFB;
}
.single-post .single-post-title {
  line-height: 24px;
}
.single-post .single-post-title h2 {
  font-size: 28px;
  line-height: 32px;
  line-height: 30px;
  font-weight: 500;
}
.single-post .single-post-title .single-post-meta {
  font-size: 15px;
}
.readmore {
  border: 0px;
  background: #EF3D32;
  color: #FFFFFF;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  padding: 12px 24px;
}
.readmore-sm {
  border: 0px;
  background: #EF3D32;
  color: #FFFFFF;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  padding: 6px 12px;
}
/***********************************************************************************************/
/* 06. BLOG SINGLE PAGE */
/***********************************************************************************************/
.single-post-inner {
  background: #F9FAFB;
  padding: 30px;
}
.post-inner-featured-content {
  display: block;
}
.post-inner-featured-content img {
  display: block;
  width: 100%;
  text-align: center;
}
.single-post-inner-title {
  margin-bottom: 24px;
}
.single-post-inner-title h2 {
  font-size: 32px;
  margin: 32px 0 24px 0;
}
.single-post-inner-meta h2 {
  font-size: 24px;
}
.single-post-inner-meta .tag-list a {
  display: inline-block;
  padding: 4px 12px;
  margin-right: 3px;
  background: #EF3D32;
  color: #FFFFFF;
}
.custom-post-info {
  margin: 0;
  padding: 0;
}
.custom-post-thumb-small {
  width: 70px;
  height: 70px;
}
.custom-post-thumb-medium {
  width: 350px;
  height: 120px;
}
.single-post-container {
  margin: 0 0 24px 0;
}
.single-post-container h3 {
  margin: 24px 0 12px 0;
  font-size: 18px;
  text-transform: capitalize;
}
.single-post-container h3 a {
  color: #555555;
}
.single-post-container h3 a:hover {
  color: #333333;
}
.single-post-container .custom-breadcrumb {
  font-size: 18px;
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid #CCCCCC;
}
.single-post-container .article-meta-extra {
  border-top: 1px solid #CCCCCC;
  border-bottom: 1px solid #CCCCCC;
  padding: 6px 0;
  margin-bottom: 12px;
}
.single-post-container .article-meta-extra span {
  margin-right: 5px;
}
.single-post-container .article-meta-extra span:last-child {
  margin-right: 0px;
}
.single-post-container .article-meta-extra i {
  color: #555555;
  margin-right: 3px;
}
.single-post-container h2 + p {
  margin-top: 12px;
}
.single-post-content h1 {
  margin: 12px 0;
}
.single-post-content h2 {
  margin: 12px 0;
}
.single-post-content h3 {
  margin: 12px 0;
}
.single-post-content h4 {
  margin: 12px 0;
}
.single-post-content h5 {
  margin: 12px 0;
}
.single-post-content h6 {
  margin: 12px 0;
}
.single-post-content a {
  clear: both;
}
.single-post-content a img {
  display: block;
}
.articles-nav {
  margin-top: -1.5em;
  margin-bottom: 1.5em;
  padding: 0 2.4em;
}
.articles-nav .articles-nav-prev {
  float: left;
}
.articles-nav .articles-nav-next {
  float: right;
}
.aligncenter,
.alignleft,
.alignright,
.alignnone {
  margin: 12px 0 24px 0;
  max-width: 100%;
  height: auto;
}
.aligncenter,
img.centered {
  display: block;
  margin: 12px auto;
}
.alignleft {
  float: left;
}
.alignright {
  float: right;
}
.alignnone {
  clear: both;
}
.wp-caption {
  text-align: center;
}
.wp-caption img {
  max-width: 100%;
  max-height: auto;
}
.wp-caption .wp-cap {
  margin-bottom: 0px;
  font-size: 12px;
}
.post-navigation {
  text-align: center;
  clear: both;
}
.post-navigation p {
  text-transform: uppercase;
}
.post-navigation p a {
  position: relative;
  padding-left: 24px;
  margin-right: 5px;
}
.post-navigation p a:before {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  top: 4px;
  left: 3px;
  background: transparent;
  border: 1px solid #CCCCCC;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
.post-navigation p a:hover:before {
  background: #EF3D32;
  border: 1px solid #333333;
}
.post-navigation p a:first-child {
  margin-right: 0px;
}
.comments-nav-section,
.post-nav-section {
  margin: 24px 0 0 0;
}
.comments-nav-section p,
.post-nav-section p {
  margin-bottom: 0px;
}
.comments-nav-section a,
.post-nav-section a {
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  text-align: center;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
  border: 1px solid #CCCCCC;
  -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0);
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0);
  background: transparent;
  color: #333333;
  padding: 6px 12px;
}
.comments-nav-section a:hover,
.post-nav-section a:hover {
  border: 1px solid #EF3D32;
  color: #EF3D32;
  background: transparent;
}
.article-share-section {
  margin: 24px 0 0 0;
  border: 1px solid #CCCCCC;
  border-left: 0px;
  border-right: 0px;
  padding: 14px 0 10px 0;
}
.article-author {
  margin-top: 24px;
  background: #F9FAFB;
  padding: 30px;
  min-height: 100px;
  padding-bottom: 24px;
}
.article-author .author-avatar img {
  width: 100px;
  max-width: 100%;
  max-height: auto;
  float: right;
  border: 1px solid #CCCCCC;
  padding: 3px;
  margin-top: 0px;
  margin-left: 12px;
}
.article-author .about_author {
  margin-bottom: 24px;
}
.article-author .social-icons a {
  display: inline-block;
  text-align: center;
  border: 1px solid #CCCCCC;
  color: #333333;
  margin-right: 3px;
}
.article-author .social-icons a:hover {
  color: #EF3D32;
}
.related-post {
  margin-top: 24px;
  background: #F9FAFB;
  padding: 30px;
}
.related-post ul li {
  margin: 5px 0;
}
.related-post ul li a {
  position: relative;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
  color: #333333;
}
.related-post ul li a:hover {
  color: #EF3D32;
}
ul.pagination li a {
  color: #EF3D32;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  padding: 6px 12px;
  border: 0px;
  margin: 0 2px;
}
ul.pagination li a:hover {
  background: #000 !important;
}
ul.pagination li a.current {
  background: #EF3D32;
  color: #FFFFFF;
  border: 0px;
}
ul.pagination li:first-child {
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
ul.pagination li:last-child {
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.comments-area {
  margin-top: 24px;
  background: #F9FAFB;
  padding: 30px;
}
.article-add-comments {
  float: right;
  display: inline-block;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  color: #555555;
  border: 1px solid #CCCCCC;
  background: #FFFFFF;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
.article-add-comments:hover {
  border: 1px solid #EF3D32;
  color: #EF3D32;
}
.commentslist {
  margin-top: 24px;
  counter-reset: comment-id;
}
.commentslist li {
  list-style-type: none;
  margin-left: 0px;
}
.commentslist li:first-child {
  margin-top: 24px;
}
.commentslist li + li {
  margin-top: 24px;
}
.commentslist li ol,
.commentslist li ul {
  padding-left: 3em;
  margin-left: 3em;
  border-left: 1px dotted #CCCCCC;
  list-style-type: none;
}
.commentslist li ol li,
.commentslist li ul li {
  position: relative;
}
.commentslist li ol li::before,
.commentslist li ul li::before {
  content: '';
  width: 2em;
  height: 1px;
  border-bottom: 1px dotted #CCCCCC;
  position: absolute;
  left: -3em;
  top: 2em;
}
.commentslist li article {
  background: #FFFFFF;
  padding: 12px;
}
.commentslist li article header {
  border-bottom: 1px solid #CCCCCC;
  font-size: 12px;
  margin-bottom: 1.5em;
  position: relative;
}
.commentslist li article header span {
  color: #808080;
}
.commentslist li article header::before {
  counter-increment: comment-id;
  content: counter(comment-id);
  position: absolute;
  right: 5px;
  top: 15px;
  color: #F8F8F8;
  font-size: 32px;
  font-family: 'Montserrat', sans-serif;
}
.commentslist li article header h5 {
  margin-bottom: 12px;
  text-transform: capitalize;
  color: #555555;
}
.commentslist li article header h5 a {
  color: #555555;
}
.commentslist li article header h5 a:hover {
  color: #333333;
}
.commentslist li article header h5 span {
  font-size: 12px;
  background: #000000;
  color: #FFFFFF;
  padding: 3px 5px;
  font-style: normal;
  margin-right: .5em;
}
.commentslist li article .comment_text {
  padding-right: 24px;
}
.comment-avatar img {
  width: 64px;
  height: 64px;
  float: right;
  background: #FFFFFF;
  margin: 2px;
  border: 1px solid #CCCCCC;
  padding: 2px;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
.comment-avatar img:hover {
  border-color: #a6a6a6;
}
.waiting-moderation {
  color: #808080;
}
.comments-nav-section {
  margin: 48px 0;
}
.comments-nav-section .btn-primary {
  background: #FFFFFF;
}
.comments-nav-section .btn-primary:hover {
  background: #FFFFFF;
}
#comment-form label {
  margin-bottom: 12px;
}
#comment-form input[type=text],
#comment-form input[type=email],
#comment-form input[type=url],
#comment-form input[type=password] {
  border: 0px;
  border-bottom: 1px solid #EEE;
  line-height: 42px;
  height: 42px;
  margin-bottom: 24px;
  padding: 0 12px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
#comment-form input[type=text]:focus,
#comment-form input[type=email]:focus,
#comment-form input[type=url]:focus,
#comment-form input[type=password]:focus {
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid #a1a1a1;
}
#comment-form textarea {
  border: 0px;
  border-bottom: 1px solid #EEE;
  padding: 12px;
  margin-bottom: 24px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
#comment-form textarea:focus {
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 0 0 rgba(0, 0, 0, 0.2);
  border: 0px;
  border-bottom: 1px solid #a1a1a1;
}
/***********************************************************************************************/
/* 07. EVENTS/CAMPAIGN PAGE */
/***********************************************************************************************/
.event-layout-1 {
  clear: both;
  padding: 0;
  margin-bottom: 32px;
  background: #F8F9FA;
}
.event-layout-1 .event-img {
  float: left;
  margin: 0;
  width: 40%;
}
.event-layout-1 .event-img a {
  clear: both;
}
.event-layout-1 .event-img a img {
  display: block;
}
.event-layout-1 .event-info {
  margin-top: 0;
  overflow: hidden;
  padding: 24px 24px;
}
.event-layout-1 .event-info i {
  color: #EF3D32;
  margin-right: 5px;
  font-size: 18px;
}
.event-layout-1 .event-info h4 {
  margin: 12px 0 12px 0;
  font-weight: 500;
}
.event-layout-1 .event-info .event-date {
  margin-top: 24px;
  font-size: 14px;
}
.event-layout-1 .event-info .event-time {
  margin-top: 24px;
  font-size: 14px;
}
.event-layout-1 .event-info .event-time a {
  margin-right: 12px;
}
.event-layout-1 .event-info .event-time a:last-child {
  margin-right: 0;
}
.event-carousel {
  clear: both;
}
.event-carousel [class^="col-"] {
  width: 100%;
}
.event-carousel .owl-nav {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  opacity: 0.6;
  margin: 0;
  z-index: 1;
}
.event-carousel .owl-nav [class*="owl-"] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #d6d6d6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}
.event-carousel .owl-nav .owl-prev {
  left: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 48px;
  color: #EF3D32;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: left;
}
.event-carousel .owl-nav .owl-prev:hover {
  color: #9b9b9b;
}
.event-carousel .owl-nav .owl-next {
  right: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 48px;
  color: #EF3D32;
  background: transparent;
  margin-top: -42px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: right;
}
.event-carousel .owl-nav .owl-next:hover {
  color: #9b9b9b;
}
.event-carousel .owl-dots {
  margin: 24px 0 0 0;
  text-align: center;
}
.event-carousel .owl-dots .owl-dot {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  display: inline-block;
  padding: 4px;
  width: 18px;
  height: 18px;
  background: transparent;
  border: 1px solid #CCCCCC;
  margin: 0 4px;
}
.event-carousel .owl-dots .owl-dot span {
  display: block;
  background: #4E4E4E;
}
.event-carousel .owl-dots .active span {
  padding: 0px;
  width: 8px;
  height: 8px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  background: #f36a61;
}
.event-carousel:hover .owl-nav {
  opacity: 1;
}
.event-search-box {
  margin-bottom: 48px;
  padding: 24px;
  background: #FAFAFA;
  border: 1px solid #CCCCCC;
}
.event-search-box input {
  border: 0px;
  border-bottom: 1px dotted #999999;
}
.event-search-box input:focus {
  border-bottom: 1px dotted #4d4d4d;
}
.event-search-box button {
  border-radius: 0px;
}
.event-search-box .btn-event-search {
  background-color: #EF3D32;
  border-color: #EF3D32;
  color: #fff;
}
.event-search-box .btn-event-search:hover {
  background-color: #dd1d11;
}
.event-content-title {
  font-size: 24px;
  border-bottom: 3px solid #eeeeee;
  color: #5c5c5c;
  padding-bottom: 15px;
  position: relative;
}
.event-content-title:after {
  bottom: -3px;
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  width: 32px;
  background: #EF3D32;
}
.event-sub-content-title {
  margin-top: 12px;
  font-weight: bold;
  display: block;
}
.event-sub-content-title em.date {
  font-weight: normal;
  border-bottom: 1px dashed #b3b3b3;
  cursor: help;
}
.event-content-info {
  font-size: 14px;
}
.event-latest {
  background: #F8F9FA;
  position: relative;
  margin-top: 32px;
}
.event-latest .event-latest-thumbnail a {
  display: block;
}
.event-latest .event-latest-thumbnail a img {
  vertical-align: middle;
}
.event-latest .latest-date {
  border: 0px solid #333333;
  border-radius: 0px;
  background: #333333;
  color: #FFFFFF;
  display: inline-block;
  font-size: 14px;
  letter-spacing: 0.5px;
  margin-bottom: 12px;
  padding: 0px 12px;
  line-height: 32px;
  text-decoration: none;
  margin-top: 16px;
}
.event-latest .event-details {
  padding: 10px 15px 0 0;
}
.event-latest .event-latest-title {
  font-weight: 500;
  margin-bottom: 12px;
  font-size: 24px;
  text-transform: uppercase;
}
.event-latest .event-latest-details {
  font-size: 14px;
  margin-bottom: 12px;
}
.event-latest .event-latest-details i {
  color: #EF3D32;
  margin-right: 5px;
  font-size: 18px;
}
.event-latest .event-latest-details a {
  color: #6e6e6e;
  display: inline-block;
  line-height: 14px;
  margin-right: 5px;
  padding-right: 8px;
  transition: all 0.3s ease 0s;
}
.event-latest .event-latest-details a:last-child {
  border-right: medium none;
  margin-right: 0;
  padding-right: 0;
}
.event-latest .event-latest-details a:hover {
  color: #212121;
}
.article-event {
  margin-top: 24px;
  background: #F9FAFB;
  padding: 30px;
  min-height: 100px;
  border-bottom: 0px solid #CCCCCC;
  padding-bottom: 24px;
}
.article-event .single-post-inner {
  padding: 12px 0px;
}
/***********************************************************************************************/
/* 07. ABOUT US PAGE */
/***********************************************************************************************/
.about-us-full-width {
  background: #F9FAFB;
  padding: 0;
}
.about-featured-image-block {
  background: transparent;
  background-image: none;
  background-repeat: repeat;
  background-position-x: 0%;
  background-position-y: 0%;
  background-size: auto auto;
  background-image: url('../images/about_us_bg.jpg');
  background-repeat: no-repeat;
  background-position: center right;
  background-size: cover;
  height: 720px;
}
.about-us-info-block {
  padding: 52px 0 52px 52px;
}
.about-us-info {
  margin-top: 72px;
  margin-bottom: 60px;
}
.about-us-bg {
  background-image: url("../images/about_us_bg.jpg");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
  position: relative;
  overflow: hidden;
  background-color: #e0e6eb;
}
.section-about-us {
  clear: both;
}
.about-us-slogan {
  font-size: 28px;
  letter-spacing: 0.03em;
  line-height: 42px;
  margin-bottom: 48px;
  position: relative;
}
.about-us-slogan:after {
  content: "";
  height: 3px;
  left: 0;
  background: #EF3D32;
  position: absolute;
  bottom: -36px;
  width: 72px;
}
.about-us-slogan-bold {
  font-weight: 800;
  font-size: 60px;
  line-height: 72px;
  letter-spacing: 0.01em;
}
.about-us-slogan-bold span {
  font-weight: 500;
  font-size: 24px;
}
.about-us-slogan-alt {
  font-size: 28px;
  letter-spacing: 0.03em;
  line-height: 42px;
  margin-bottom: 32px;
}
/*------------------------------  NEW ABOUT LAYOUT---------------------------------*/
.section-feat-about-us {
  position: relative;
  padding: 0;
}
.feat-img-side-bg {
  left: 0;
  padding: 0;
  position: absolute !important;
  top: 0px;
  height: 100%;
  overflow: hidden;
  z-index: 100;
}
.feat-img-side-bg.img {
  position: absolute;
  top: -30px;
  left: 0;
  max-width: 100%;
}
.service-lists {
  position: relative;
  float: left;
  display: block;
  padding-top: 24px;
  clear: both;
}
.service-lists.custom-service {
  background: #EEEEEE;
  padding-left: 24px;
}
.service-lists.custom-service:before {
  top: 0;
  right: 0;
  content: '';
  width: 100px;
  height: 100px;
  background: yellow;
}
.service-lists li {
  width: 50%;
  float: left;
  margin: 16px 0;
}
.service-lists li .service-item {
  padding-left: 84px;
  position: relative;
}
.service-lists li .service-icon {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  background: #FFFFFF;
  color: #EF3D32;
  border: 2px solid #CCCCCC;
  height: 60px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  line-height: 54px;
  left: 0px;
  position: absolute;
  top: 8px;
  width: 60px;
  text-align: center;
  font-size: 24px;
}
.service-lists li .service-icon:hover {
  color: #4E4E4E;
  background: #fafafa;
  border-color: #EF3D32;
}
.service-lists li .service-text {
  position: relative;
}
.service-lists li .service-text span {
  position: relative;
  display: block;
  padding-top: 6px;
  margin-bottom: 16px;
  font-size: 24px;
  font-weight: 600;
}
.service-lists li .service-text span:after {
  position: absolute;
  bottom: -12px;
  left: 0;
  width: 32px;
  height: 1px;
  background: #CCCCCC;
  content: '';
}
.service-lists li .service-text p {
  color: #737373;
}
.about-us-img img {
  display: block;
}
.about-us-layout-2 {
  display: block;
  padding: 12px 0px 0px;
}
.about-us-layout-2 .about-us-img-2 {
  overflow: hidden;
  position: relative;
}
.about-us-layout-2 .about-us-img-2:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 3000px;
  background: rgba(0, 0, 0, 0.2);
  top: 0;
  left: 0;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.about-us-layout-2 .about-us-img-2:after {
  color: #343434;
  position: absolute;
  font-family: FontAwesome;
  content: '\f04b';
  width: 80px;
  height: 80px;
  line-height: 80px;
  font-size: 40px;
  top: 50%;
  left: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: rgba(255, 255, 255, 0.7);
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  text-align: center;
  text-indent: 5px;
  box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.6);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.about-us-layout-2 .about-us-img-2 img {
  display: block;
  width: 100%;
}
.about-us-layout-2 .about-us-img-2:hover:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 3000px;
  background: rgba(0, 0, 0, 0.1);
  top: 0;
  left: 0;
}
.about-us-layout-2 .about-us-img-2:hover:after {
  color: #1A1A1A;
  background: rgba(255, 255, 255, 0.7);
  box-shadow: 0 0 0 6px rgba(237, 19, 93, 0.7);
}
.full-width-video-box {
  display: block;
  margin: 24px 0 48px 0;
  padding: 0px;
}
.full-width-video-box .video-box-img-container {
  overflow: hidden;
  position: relative;
}
.full-width-video-box .video-box-img-container:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 3000px;
  background: rgba(0, 0, 0, 0.2);
  top: 0;
  left: 0;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.full-width-video-box .video-box-img-container:after {
  color: #343434;
  position: absolute;
  font-family: FontAwesome;
  content: '\f04b';
  width: 110px;
  height: 110px;
  line-height: 110px;
  font-size: 42px;
  top: 50%;
  left: 50%;
  margin-left: -55px;
  margin-top: -55px;
  background: rgba(255, 255, 255, 0.5);
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  text-align: center;
  text-indent: 5px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  animation: pulse-effect 3s infinite;
}
.full-width-video-box .video-box-img-container img {
  display: block;
  width: 100%;
}
.full-width-video-box .video-box-img-container:hover:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 3000px;
  background: rgba(0, 0, 0, 0.1);
  top: 0;
  left: 0;
}
.full-width-video-box .video-box-img-container:hover:after {
  color: #EF3D32;
  background: rgba(255, 255, 255, 0.7);
  box-shadow: 0 0 0 0px #4E4E4E;
}
/*-----  ABOUT US VIDEO BLOCK ----*/
.about-us-container {
  background: #F9FAFB;
  position: relative;
  width: 632px;
  z-index: 2;
  padding: 42px 36px 32px;
  margin-top: 42px;
}
.about-details {
  clear: both;
}
.about-details .about-heading {
  position: relative;
  font-size: 32px;
  margin-bottom: 25px;
  text-transform: uppercase;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.03em;
  font-weight: 700;
  color: #555555;
}
ul.custom-bullet-list {
  list-style-type: none;
  margin-bottom: 16px;
}
ul.custom-bullet-list li {
  padding-left: 26px;
  line-height: 36px;
  position: relative;
}
ul.custom-bullet-list li:before {
  content: '';
  display: inline-block;
  width: 8px;
  background: transparent;
  border: 1px solid #EF3D32;
  margin: 0 11px 0 0;
  height: 8px;
  position: absolute;
  top: 15px;
  left: 6px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.about-img {
  position: relative;
  overflow: hidden;
}
.about-img img {
  vertical-align: middle;
}
.about-img:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 3000px;
  background: rgba(0, 0, 0, 0.1);
  top: 0;
  left: 0;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.about-img a {
  background: rgba(0, 0, 0, 0.5);
  border: 5px solid #e6e6e6;
  border-radius: 100%;
  color: #EF3D32;
  font-size: 40px;
  height: 100px;
  left: 50%;
  line-height: 70px;
  padding: 10px;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 100px;
  margin-left: -50px;
  margin-top: -50px;
}
.about-img a > i {
  margin-left: 8px;
}
.about-img a:hover {
  background: rgba(0, 0, 0, 0.8);
  border: 5px solid #EF3D32;
  color: #e6e6e6;
}
/***********************************************************************************************/
/* 09. GALLERY PAGE */
/***********************************************************************************************/
.section-gallery-block-parallax {
  background-attachment: scroll;
  background-color: transparent;
  background-image: url('../images/bg-geometry.png');
  background-repeat: repeat;
  background-size: initial;
}
.section-gallery-block {
  clear: both;
}
.gallery-container {
  padding: 12px;
  margin: 0;
}
.no-padding-gallery .gallery-container {
  padding: 0px;
  margin: 0;
}
.no-bottom-padding {
  padding-bottom: 0px;
}
.gallery-light-box {
  display: block;
  overflow: hidden;
  position: relative;
}
.gallery-light-box .gallery-img {
  display: block;
  position: relative;
  max-width: 100%;
  padding: 5px;
}
.gallery-light-box .gallery-img:before {
  background: #EF3D32;
  opacity: 0.3;
  width: 100%;
  height: 0px;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.gallery-light-box .gallery-img:after {
  font-family: FontAwesome;
  content: '\f1c5';
  position: absolute;
  right: 150%;
  margin-left: -21px;
  bottom: -64px;
  background: #FFFFFF;
  color: #EF3D32;
  text-align: center;
  width: 42px;
  height: 42px;
  line-height: 42px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.gallery-light-box .gallery-img img {
  width: 100%;
  max-width: 100%;
  display: block;
  opacity: 1;
  -webkit-transition: all 0.7s ease-out;
  -moz-transition: all 0.7s ease-out;
  -o-transition: all 0.7s ease-out;
  transition: all 0.7s ease-out;
}
.gallery-light-box:hover .gallery-img:before {
  background: #EF3D32;
  opacity: 0.5;
  width: 100%;
  height: 1500px;
}
.gallery-light-box:hover .gallery-img:after {
  opacity: 1;
  top: 50%;
  left: 50%;
  margin-top: -24px;
}
.gallery-light-box:hover .gallery-img img {
  opacity: 0.4;
}
.gallery-light-box:hover .gallery-img figcaption {
  bottom: 0px;
  left: 0;
}
.gallery-carousel {
  clear: both;
}
.gallery-carousel [class^="col-"] {
  width: 100%;
}
.gallery-carousel .owl-nav {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  opacity: 1;
  margin: 0;
  z-index: 1;
}
.gallery-carousel .owl-nav [class*="owl-"] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #d6d6d6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}
.gallery-carousel .owl-nav .owl-prev {
  left: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 60px;
  color: #EF3D32;
  background: transparent;
  margin-top: -36px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: left;
}
.gallery-carousel .owl-nav .owl-prev:hover {
  color: #4E4E4E;
}
.gallery-carousel .owl-nav .owl-next {
  right: -3%;
  position: absolute;
  padding: 0;
  top: 50%;
  width: 42px;
  font-size: 60px;
  color: #EF3D32;
  background: transparent;
  margin-top: -36px;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  text-align: right;
}
.gallery-carousel .owl-nav .owl-next:hover {
  color: #4E4E4E;
}
.gallery-carousel .owl-dots {
  margin: 24px 0 0 0;
  text-align: center;
}
.gallery-carousel .owl-dots .owl-dot {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  display: inline-block;
  padding: 4px;
  width: 18px;
  height: 18px;
  background: transparent;
  border: 1px solid #CCCCCC;
  margin: 0 4px;
}
.gallery-carousel .owl-dots .owl-dot span {
  display: block;
  background: #4E4E4E;
}
.gallery-carousel .owl-dots .active span {
  padding: 0px;
  width: 8px;
  height: 8px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  background: #f36a61;
}
.gallery-carousel:hover .owl-nav {
  opacity: 1;
}
/*----- NEWSLETTER LAYOUT 01 ----*/
.horizontal-newsletter {
  position: relative;
  overflow: hidden;
  margin-top: 0px;
  margin-bottom: 12px;
}
.horizontal-newsletter .news-subscription input {
  background: #FFFFFF;
  border: 2px solid #CCCCCC;
  -webkit-border-radius: 32px;
  -moz-border-radius: 32px;
  border-radius: 32px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  color: #333333;
  height: 55px;
  padding-left: 13px;
  width: 100%;
}
.horizontal-newsletter .news-subscription button {
  background: #EF3D32;
  border: 0 none;
  -webkit-border-radius: 32px;
  -moz-border-radius: 32px;
  border-radius: 32px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  color: #FFFFFF;
  font-size: 18px;
  font-weight: 500;
  text-transform: uppercase;
  height: 55px;
  width: 160px;
  position: absolute;
  right: 0;
}
.horizontal-newsletter .news-subscription button:hover {
  background: #ad170e;
}
.horizontal-newsletter .news-subscription button:hover:before {
  background: #ad170e;
}
/***********************************************************************************************/
/* 11. 404 PAGE */
/***********************************************************************************************/
.section-404 {
  background: #F9FAFB;
}
.message-container-404 {
  margin: 48px 0;
}
.message-container-404 .text-404 {
  font-size: 170px;
  font-weight: 600;
  letter-spacing: 0.1em;
  font-family: 'Montserrat', sans-serif;
  text-align: center;
  margin: 80px 0;
  color: #EF3D32;
}
.message-container-404 .text-404 span {
  color: #dd1d11;
}
.message-container-404 .search-form-404 {
  margin: 0 auto;
  padding: 5px 5px;
  width: 40%;
}
.message-container-404 .message-text-404 {
  padding: 24px 160px;
  display: block;
  text-align: center;
}

/***********************************************************************************************/
/* 13. SIDEBAR & WIDGETS */
/***********************************************************************************************/
.widget {
  background: #F9FAFB;
  margin-bottom: 30px;
  padding: 20px;
}
.widget-title {
  position: relative;
  font-size: 24px;
  margin-bottom: 24px;
  text-transform: capitalize;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.03em;
  font-weight: 500;
  display: inline-block;
  color: #1A1A1A;
}
.widget-title span {
  font-style: 400;
  color: #555555;
}
.widget ul {
  list-style: outside none none;
  margin: 0;
  padding: 0;
}
.widget ul li {
  padding: 5px 0;
}
.widget ul li a {
  color: #333333;
}
.widget ul li a:hover {
  color: #EF3D32;
}
.search-form {
  margin: 0 0 12px 0;
}
.search-form span.input-group-addon {
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  background: #EF3D32;
  border-right: 0px;
  color: #FFFFFF;
  font-weight: bold;
  width: 10%;
  padding: 0 20px;
}
.search-form input[type="text"] {
  box-shadow: 0;
  margin-bottom: 0;
  font-size: 14px;
  padding-left: 5px;
  height: 42px;
  border: 0px;
  box-shadow: none;
  border-bottom: 1px solid #EEE;
  width: 100%;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
.search-form input[type="text"]:focus {
  box-shadow: none;
  border-bottom: 1px solid #d5d5d5;
}
.widget-post-category {
  margin: 11px auto;
}
.widget-post-category li {
  margin: 5px 0;
  padding: 0;
  text-transform: capitalize;
}
.widget-post-category li a {
  font-size: 15px;
  position: relative;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
.single-recent-post {
  margin-bottom: 26px;
  overflow: hidden;
}
.single-recent-post a {
  color: #333333;
  margin-bottom: 8px;
  display: block;
}
.single-recent-post a:hover {
  color: #EF3D32;
}
.single-recent-post span {
  font-size: 14px;
  display: block;
  color: #EF3D32;
  padding-left: 2px;
}
.single-recent-post span i {
  font-size: 16px;
}
.single-post-thumb {
  float: left;
  margin-bottom: 10px;
  margin-right: 20px;
  margin-top: 5px;
  width: 100px;
}
.widget-recent-tags {
  margin: 0 auto;
}
.widget-recent-tags li {
  margin: 0px 5px 7px 0px;
  float: left;
}
.widget-recent-tags li a {
  padding: 3px 7px;
  text-transform: capitalize;
  text-align: center;
  border: 1px solid #EF3D32;
  display: block;
  background: transparent;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.widget-recent-tags li a:hover,
.widget-recent-tags li a:active {
  background: transparent;
  border: 1px solid #EF3D32;
  background: #FFFFFF;
}
/***********************************************************************************************/
/* Widget Link Color */
/***********************************************************************************************/
.sidebar-widget a {
  color: #333333;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
.sidebar-widget a:hover {
  color: #EF3D32;
}
/***********************************************************************************************/
/* CALENDAR WIDGET */
/***********************************************************************************************/
#calendar_wrap {
  margin: 0 auto 5px auto;
}
#calendar_wrap #wp-calendar {
  width: 100%;
  border: 1px solid #CCCCCC;
  padding: 2px;
}
#calendar_wrap #wp-calendar caption {
  border-color: #CCCCCC;
  border-image: none;
  border-style: solid solid none;
  border-width: 1px 1px medium;
  font-weight: bold;
  padding: 10px 0;
  text-align: center;
  text-transform: uppercase;
}
#calendar_wrap #wp-calendar thead {
  border-right: 1px solid #CCCCCC;
}
#calendar_wrap #wp-calendar thead th {
  border-right: 1px solid #CCCCCC;
}
#calendar_wrap #wp-calendar th {
  background: none repeat scroll 0 0 #F9F9F9;
  border-bottom: 1px solid #CCCCCC;
  border-right: 1px solid #CCCCCC;
}
#calendar_wrap #wp-calendar tr th,
#calendar_wrap #wp-calendar thead th {
  font-weight: bold;
  padding: 9px 0;
  text-align: center;
}
#calendar_wrap #wp-calendar tbody {
  color: #aaa;
}
#calendar_wrap #wp-calendar tbody tr td {
  border-bottom: 1px solid #CCCCCC;
  border-right: 1px solid #CCCCCC;
  padding: 6px;
  background: #f5f5f5;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  text-align: center;
  -webkit-transition: 0.3s 0.2s ease-out;
  -moz-transition: 0.3s 0.2s ease-out;
  -o-transition: 0.3s 0.2s ease-out;
  transition: 0.3s 0.2s ease-out;
}
#calendar_wrap #wp-calendar tbody tr td:hover {
  background: #FAFAFA;
}
#calendar_wrap #wp-calendar tbody .pad {
  background: none;
}
#calendar_wrap #wp-calendar tfoot tr td {
  border-bottom: 1px solid #CCCCCC;
  border-right: 1px solid #CCCCCC;
  padding: 6px;
  text-align: center;
}
#calendar_wrap #wp-calendar tfoot #next {
  font-size: 12px;
  text-transform: uppercase;
  text-align: center;
}
#calendar_wrap #wp-calendar tfoot #prev {
  text-align: center;
  font-size: 12px;
  text-transform: uppercase;
  padding-top: 10px;
}
#calendar_wrap #wp-calendar #today {
  background-color: #EF3D32;
  color: #FFFFFF;
  font-weight: bold;
}
/*----- COMMON UTILITY CLASSES  ----*/
.rounded-box {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.text-bold {
  font-weight: bold;
}
.text-primary-color {
  color: #EF3D32 !important;
}
h2.extra-large {
  font-size: 50px;
  line-height: 60px;
  font-weight: 700;
}
.capitalize {
  text-transform: capitalize;
}
.uppercase {
  text-transform: uppercase;
}
.alert,
.progress,
.pre {
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.inline li {
  display: inline-block;
  margin-right: 24px;
}
.inline li:last-child {
  margin-right: 0;
}
.narrow-p {
  margin: 0 auto 1.5em;
  width: 30%;
}
.fr {
  float: right;
}
.fl {
  float: left;
}
.cb {
  clear: both;
}
.db {
  display: block;
}
.overflow-hidden {
  overflow: hidden;
}
span.border-light-dotted {
  border-bottom: 1px dotted #EF3D32;
}
span.border-bold-dashed {
  border-bottom: 2px dashed #EF3D32;
}
.text-capitalize {
  text-transform: capitalize !important;
}
.text-normal {
  text-transform: initial !important;
}
.text-dark {
  color: #1A1A1A !important;
}
/*----- CUSTOM MARGIN ----*/
.no-margin {
  margin: 0px !important;
}
.margin-top-reverse-220 {
  margin-top: -220px !important;
}
.margin-top-appointment-reverse {
  margin-top: -350px !important;
}
/*----- TOP MARGIN ----*/
.margin-top-5 {
  margin-top: 5px;
}
.margin-top-11 {
  margin-top: 11px;
}
.margin-top-12 {
  margin-top: 12px !important;
}
.margin-top-20 {
  margin-top: 20px !important;
}
.margin-top-24 {
  margin-top: 24px !important;
}
.margin-top-32 {
  margin-top: 32px !important;
}
.margin-top-48 {
  margin-top: 48px !important;
}
.margin-top-60 {
  margin-top: 60px !important;
}
.margin-top-80 {
  margin-top: 80px !important;
}
/*----- BOTTOM MARGIN ----*/
.margin-bottom-5 {
  margin-bottom: 5px !important;
}
.margin-bottom-11 {
  margin-bottom: 11px !important;
}
.margin-bottom-12 {
  margin-bottom: 12px !important;
}
.margin-bottom-24 {
  margin-bottom: 24px !important;
}
.margin-bottom-32 {
  margin-bottom: 32px !important;
}
.margin-bottom-48 {
  margin-bottom: 48px !important;
}
.margin-bottom-60 {
  margin-bottom: 60px !important;
}
.margin-bottom-80 {
  margin-bottom: 80px;
}
/*----- CUSTOM PADDING ----*/
.no-gutter [class^="col-"] {
  padding: 0px;
}
.no-padding {
  padding: 0px !important;
}
.padding-left-0 {
  padding-left: 0px;
}
.padding-right-0 {
  padding-right: 0px;
}
.padding-right-5 {
  padding-right: 5px;
}
.padding-right-11 {
  padding-right: 11px;
}
/*----- TOP PADDING ----*/
.padding-top-24 {
  padding-top: 24px;
}
.padding-top-32 {
  padding-top: 32px;
}
.padding-top-48 {
  padding-top: 48px;
}
.padding-top-60 {
  padding-top: 60px;
}
.padding-top-80 {
  padding-top: 80px;
}
.padding-top-100 {
  padding-top: 100px;
}
/*----- BOTTOM PADDING ----*/
.padding-bottom-24 {
  padding-bottom: 24px;
}
.padding-bottom-32 {
  padding-bottom: 32px;
}
.padding-bottom-48 {
  padding-bottom: 48px;
}
.padding-bottom-60 {
  padding-bottom: 60px;
}
.padding-bottom-80 {
  padding-bottom: 80px;
}
.padding-bottom-100 {
  padding-bottom: 100px;
}
.padding-bottom-220 {
  padding-bottom: 220px !important;
}
/*----- RIGHT/LEFT PADDING ----*/
.db {
  display: block !important;
}
/***********************************************************************************************/
/* 14. RESPONSIVE STYLING */
/***********************************************************************************************/
@media only screen and (min-width: 992px) and (max-width: 1300px) {
  #slider_1 {
    text-align: center;
  }
  #slider_1 .item img {
    display: block;
    width: 100%;
    height: auto;
  }
  #slider_1 .slider-content {
    margin-top: 24px;
  }
  #slider_1 .slider-content h3 {
    font-weight: 400;
    font-size: 24px;
    line-height: 32px;
  }
  #slider_1 .slider-content h2 {
    font-size: 42px;
    line-height: 48px;
  }
}
/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (max-width: 991px) {
  .top-bar {
    text-align: center;
  }
  .top-bar span {
    display: block;
  }
  .main-header .top-bar-social {
    float: none;
    margin-right: 0px;
    margin-bottom: 12px;
  }
  a.logo {
    text-align: center;
  }
  .navbar-default .navbar-nav li ul.drop-down {
    top: 68px;
  }
  .navbar-default .navbar-header {
    width: 100%;
    text-align: center;
    clear: both;
    float: none ;
    margin: 0 ;
  }
  .navbar-default .navbar-toggle {
    margin: 22px 0 0 0;
    padding: 5px;
  }
  .navbar-default .navbar-toggle span.icon-bar {
    height: 1px;
  }
  .navbar-default .navbar-right {
    float: none;
    padding: 0;
    margin: 12px 70px 0 0;
  }
  .navbar-default .navbar .navbar-collapse {
    text-align: center;
  }
  .main-menu-container {
    float: none;
  }
  .main-header {
    background: #2C2C2C;
    position: relative;
  }
  .sticky-wrapper {
    background: rgba(0, 0, 0, 0.8);
  }
  .navbar-nav > li {
    margin-left: 0;
  }
  .nav > li > a {
    padding: 15px 12px;
    padding-bottom: 22px;
  }
  header.one-page .navbar-nav > li > a {
    padding: 15px 5px;
    font-size: 15px;
    padding-bottom: 22px;
  }
  #slider_1 {
    text-align: center;
  }
  #slider_1 .item img {
    display: block;
    width: 100%;
    height: auto;
  }
  #slider_1 .slider-content {
    top: 50%;
    transform: translateY(-48%);
  }
  #slider_1 .slider-content h3 {
    font-weight: 400;
    font-size: 24px;
    line-height: 32px;
  }
  #slider_1 .slider-content h2 {
    font-size: 42px;
    line-height: 48px;
  }
  .margin-top-appointment-reverse {
    margin-top: 0 !important;
  }
  .team-layout-1 {
    margin-bottom: 30px;
  }
  .main-sidebar {
    width: 100%;
    border: 0px solid transparent;
  }
  .logo {
    text-align: center;
  }
  .about_couter_block {
    margin: 48px 0;
  }
  .activity-section-1 .activity-info-block {
    padding: 90px 0 90px 90px;
  }
  .activity-section-1 .activity-info-block p {
    max-width: 662px;
  }
  .page-header {
    padding: 80px 0;
  }
  .about-us-container {
    width: auto;
    padding: 32px 24px;
    margin: 0px 0 32px;
  }
  .section-about-us {
    padding-bottom: 80px;
  }
  .about-us-slogan {
    margin-top: 24px;
    font-size: 22px;
  }
  .event-latest {
    clear: both;
  }
  .event-latest .event-details {
    padding: 12px 6px 0 12px;
  }
  .event-search-box input[type=text] {
    margin-bottom: 12px;
  }
  .event_wrapper {
    margin-bottom: 48px;
  }
  .event_wrapper .event-img img {
    width: 100%;
    max-width: 100%;
  }
  .footer-widget-area {
    padding: 42px 0 0 0;
  }
  .footer-widget {
    margin-bottom: 36px;
  }
  .footer-intro {
    display: none;
  }
  .footer-nav {
    display: none;
  }
  .copyright-text {
    text-align: center;
  }
}
/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {
  .top-bar {
    text-align: center;
  }
  .top-bar span {
    display: block;
  }
  .main-menu-container {
    float: none;
  }
  .main-header .top-bar-social {
    float: none;
    margin-right: 0px;
    margin-bottom: 12px;
  }
  .section-content-block {
    padding: 60px 0;
  }
  .margin-top-appointment-reverse,
  .margin-top-reverse-220 {
    margin-top: 0 !important;
  }
  /*----- Section Heading ----*/
  .section-heading-wrapper {
    margin-bottom: 32px;
  }
  .section-heading-wrapper h2 {
    font-size: 32px;
    line-height: 36px;
    margin-bottom: 20px;
  }
  .section-heading-wrapper-alt {
    margin-bottom: 32px;
  }
  .section-heading-wrapper-alt h2 {
    font-size: 32px;
    line-height: 36px;
  }
  /*----- COMMON UTILITY CLASSES  ----*/
  .no-padding {
    padding: 0px 16px !important;
  }
  .btn-theme {
    line-height: 24px;
    font-size: 16px;
    font-weight: 600;
    padding: 12px 24px;
  }
  #slider_1 .slider_item_container {
    min-height: 500px;
  }
  #slider_1 .slider-content {
    margin-top: 12px;
    text-align: center;
    top: 50%;
    transform: translateY(-55%);
  }
  #slider_1 .slider-content h2 {
    font-size: 32px;
    line-height: 42px;
  }
  #slider_1 .slider-content h3 {
    font-size: 20px;
    display: none;
  }
  #slider_1 .slider-content a.btn-slider {
    font-size: 16px;
    margin-top: 16px;
    background: #EF3D32;
    border: 2px solid #EF3D32;
    color: #FFFFFF;
    height: 42px;
    line-height: 24px;
    padding-left: 12px;
    padding-right: 12px;
    letter-spacing: 0.03em;
    font-weight: 600;
    text-align: left;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
    -webkit-background-clip: padding-box;
    -moz-background-clip: padding;
    background-clip: padding-box;
  }
  #slider_1 .slider-content a.btn-slider:hover {
    background: #dd1d11;
    border: 2px solid #EF3D32;
    color: #FFFFFF;
  }
  #slider_1 .slider-content a.btn + a.btn {
    margin-left: 0px;
  }
  #slider_1 .slider-contents-info {
    margin-top: 24px;
    padding: 42px 16px 42px;
  }
  .section-banner {
    padding: 130px 0px;
  }
  .section-banner .banner-content {
    transform: translateY(-30px);
  }
  .section-banner .banner-content h2 {
    font-size: 36px;
    line-height: 42px;
  }
  .section-banner .banner-content h3 {
    font-size: 20px;
    display: none;
  }
  .process-layout {
    margin: 0 0 32px 0;
  }
  .process-layout h2 {
    font-size: 32px;
    font-weight: 500;
  }
  .team-layout-1 {
    margin-bottom: 30px;
  }
  .appointment-form-wrapper {
    margin: 48px 0;
    padding: 0px 5px 28px;
  }
  .appointment-form-wrapper h3 {
    font-weight: 600;
    margin: 0 -5px 32px;
    position: relative;
  }
  .appoinment-form {
    padding: 0 0px;
  }
  .testimonial-container {
    padding: 24px 0px;
  }
  .testimonial-container.text-left .owl-dots {
    text-align: left;
    padding-left: 12px;
  }
  .testimony-layout-1 {
    padding: 0;
  }
  .testimony-layout-1 .testimony-text {
    line-height: 32px;
  }
  .event-layout-1 {
    clear: both;
  }
  .event-layout-1 .event-img {
    float: none;
    margin: 0;
    width: 100%;
  }
  .event-latest {
    clear: both;
  }
  .event-latest .event-details {
    padding: 12px 6px 0 12px;
  }
  /*-----  No Padding Gallery ----*/
  .no-padding-gallery {
    clear: both;
  }
  .no-padding-gallery .gallery-container {
    padding: 0px 12px;
    margin: 0;
  }
  .cta-section .cta-content h2 {
    font-size: 40px;
    line-height: 50px;
  }
  .section-home-blog .latest-news-container {
    margin-bottom: 30px;
  }
  .about-us-container {
    width: auto;
    padding: 24px 12px;
    margin: 42px 0;
  }
  .about-us-slogan {
    margin-top: 24px;
    font-size: 22px;
  }
  .stuck {
    position: initial;
  }
  .cta-section-2 h2 {
    font-size: 32px;
  }
  .cta-section-2 h5 {
    font-size: 24px;
    line-height: 24px;
  }
  .section-faq .faq-box .panel-heading [data-toggle="collapse"]::after {
    display: none;
  }
  .section-faq .faq-box .panel-body {
    padding-left: 0;
  }
  .navbar-default .navbar-toggle {
    margin-top: 24px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
    -webkit-background-clip: padding-box;
    -moz-background-clip: padding;
    background-clip: padding-box;
  }
  .navbar-default .navbar-toggle span.icon-bar {
    color: #EF3D32;
  }
  .navbar-default .nav > li > a,
  .navbar-default header.one-page .navbar-nav > li > a {
    padding: 5px 15px;
  }
  .navbar-default .navbar .navbar-right {
    width: 100%;
    text-align: left;
  }
  .navbar-default .navbar-collapse {
    background: #0d0d0d;
    margin-top: 12px;
    padding: 12px 0;
  }
  .navbar-default .navbar-nav li ul.drop-down,
  .navbar-default .navbar-nav li ul.drop-down li ul.drop-down.level3 {
    background: transparent;
    border: none;
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
    transform: rotateX(0deg);
    position: relative;
    width: auto;
    visibility: visible;
    opacity: 1;
    top: inherit;
    left: inherit;
  }
  .navbar-default .navbar-nav li ul.drop-down li a,
  .navbar-default .navbar-nav li ul.drop-down li ul.drop-down.level3 li a {
    background: none;
    color: #FFFFFF;
    font-size: 16px;
    text-transform: inherit;
    padding: 4px 20px;
  }
  .navbar-default .navbar-nav li ul.drop-down li a:hover,
  .navbar-default .navbar-nav li ul.drop-down li ul.drop-down.level3 li a:hover {
    color: #FFFFFF;
  }
  .navbar-default .navbar-nav {
    margin: 0px;
    width: 100%;
    text-align: left;
    background: rgba(0, 0, 0, 0.7);
  }
  .navbar-default .navbar-nav li a {
    font-weight: bold;
    color: #EF3D32;
  }
  .navbar-default .navbar-nav .drop-down li a {
    color: #FFFFFF;
  }
  .logo {
    text-align: center;
  }
  .main-header {
    background: #2C2C2C;
    position: relative;
  }
  .sticky-wrapper {
    background: rgba(0, 0, 0, 0.8);
  }
  .about_couter_block {
    margin: 48px 0;
  }
  .page-header {
    padding: 80px 0;
  }
  .message-container-404 {
    margin: 48px 0;
  }
  .message-container-404 .text-404 {
    margin: 80px 0;
  }
  .message-container-404 .search-form-404 {
    padding: 5px;
    width: 100%;
  }
  .message-container-404 .message-text-404 {
    padding: 24px 0px;
  }
  .article-container-fix,
  .main-sidebar {
    width: 100%;
    margin-left: 0px;
    border: 0px solid transparent;
  }
  .post-details-container h3 {
    margin-top: 12px;
  }
  .post-box-container .bd-post-image-container {
    margin: 0 auto;
  }
  .image_gallery_carousel {
    margin-bottom: 48px;
  }
  .event-layout-1 {
    clear: both;
  }
  .event-layout-1 .event-img {
    float: none;
    margin: 0;
    width: 100%;
  }
  a.btn-load-more {
    margin-bottom: -24px;
    margin-top: -16px;
  }
  .footer-nav {
    float: none;
    width: 100%;
    margin: 10px auto;
    display: inline-block;
    text-align: center;
  }
  .copyright-text {
    text-align: center;
  }
  .footer-widget-area {
    padding: 42px 0 0 0;
  }
  .footer-widget {
    margin-bottom: 36px;
  }
  .footer-intro {
    display: none;
  }
  .footer-nav {
    display: none;
  }
  .copyright-text {
    text-align: center;
  }
}
/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (min-width: 0px) and (max-width: 479px) {
  .main-header {
    background: #2C2C2C;
    position: relative;
  }
  .main-header .top-bar-social {
    float: none;
    margin-right: 0px;
    margin-bottom: 12px;
  }
  .sticky-wrapper {
    background: rgba(0, 0, 0, 0.8);
  }
  .top-bar {
    text-align: center;
  }
  .top-bar span {
    display: block;
  }
  .main-menu-container {
    float: none;
  }
  a.logo {
    text-align: center;
    width: 75%;
  }
  .navbar-default .navbar-toggle {
    margin: 20px 0 0 0;
    padding: 5px 3px;
  }
  .navbar-default .navbar-toggle span.icon-bar {
    height: 1px;
  }
  .navbar-default .navbar-nav {
    margin: 0px;
    width: 100%;
    text-align: left;
    background: rgba(0, 0, 0, 0.7);
  }
  .navbar-default .navbar-nav li {
    margin-left: 0px;
  }
  .navbar-default .navbar-nav li a {
    font-weight: bold;
    color: #EF3D32;
  }
  .navbar-default .navbar-nav li a:hover {
    color: #FFFFFF;
  }
  .navbar-default .navbar-nav .drop-down li a {
    color: #FFFFFF;
  }
  .navbar-default .navbar-nav .drop-down li a:hover {
    color: #EF3D32;
  }
  .logo {
    text-align: center;
  }
  .section-heading-wrapper {
    margin-bottom: 0px;
  }
  .section-content-block {
    padding: 32px 0;
  }
  .margin-top-appointment-reverse,
  .margin-top-reverse-220 {
    margin-top: 0 !important;
  }
  .section-heading {
    font-size: 32px;
    line-height: 36px;
    font-weight: normal;
    margin-bottom: 24px;
  }
  .section-heading:after,
  .section-heading:before {
    display: none;
  }
  .section-subheading {
    display: none;
  }
  .page-header {
    padding: 80px 0;
  }
  /*----- Section Heading ----*/
  .section-heading-wrapper {
    margin-bottom: 32px;
  }
  .section-heading-wrapper h2 {
    font-size: 32px;
    line-height: 36px;
    margin-bottom: 20px;
  }
  .section-heading-wrapper-alt {
    margin-bottom: 32px;
  }
  .section-heading-wrapper-alt h2 {
    font-size: 32px;
    line-height: 36px;
  }
  /*----- COMMON UTILITY CLASSES  ----*/
  .no-padding {
    padding: 0px 16px !important;
  }
  .btn-theme {
    line-height: 24px;
    font-size: 16px;
    font-weight: 600;
    padding: 12px 24px;
  }
  #slider_1 .slider_item_container {
    min-height: 460px;
  }
  #slider_1 .slider-content {
    top: 50%;
    transform: translateY(-63%);
  }
  #slider_1 .slider-content h2 {
    font-size: 24px;
    line-height: 32px;
  }
  #slider_1 .slider-content h3,
  #slider_1 .slider-content a.btn-slider,
  #slider_1 .slider-content a.btn-slider-2 {
    display: none;
  }
  #slider_1 .slider-content a.btn + a.btn {
    margin-left: 0px;
  }
  #slider_1 .slider-contents-info {
    margin-top: 24px;
    padding: 42px 16px 42px;
  }
  #slider_1 .slider-contents-info:before,
  #slider_1 .slider-contents-info:after {
    content: "";
    width: 70px;
    height: 70px;
    background: transparent;
    border: 2px solid #EF3D32;
    position: absolute;
    z-index: -1;
  }
  #slider_1 .slider-contents-info:before {
    bottom: 0px;
    left: 0;
    border-top: 0px;
    border-right: 0px;
  }
  #slider_1 .slider-contents-info:after {
    top: 0px;
    right: 0;
    border-left: 0px;
    border-bottom: 0px;
  }
  .section-banner {
    padding: 80px 0px;
  }
  .section-banner .banner-content {
    transform: translateY(-20px);
  }
  .section-banner .banner-content h2 {
    font-size: 32px;
  }
  .section-banner .banner-content h3,
  .section-banner .banner-content a.btn-slider,
  .section-banner .banner-content a.btn-slider-2 {
    display: none;
  }
  .process-layout {
    margin: 0 0 24px 0;
  }
  .process-layout h2 {
    font-size: 32px;
    font-weight: 500;
  }
  .about-us-container {
    width: auto;
    padding: 24px 12px;
    margin: 42px 0;
  }
  .about-us-slogan {
    margin-top: 24px;
    font-size: 22px;
  }
  .section-how-we-work .service-block-bg {
    margin-top: 0px;
    margin-bottom: 24px;
  }
  .section-how-we-work .service-block-bg .service-block a.service_read_more:after {
    display: none;
  }
  .appointment-form-wrapper {
    margin: 32px 0;
    padding: 0px 5px 28px;
  }
  .appointment-form-wrapper h3 {
    font-weight: 600;
    margin: 0 -5px 32px;
    position: relative;
  }
  .appoinment-form {
    padding: 0 0px;
  }
  .testimonial-container {
    padding: 24px 0px;
  }
  .testimonial-container.text-left .owl-dots {
    text-align: left;
    padding-left: 12px;
  }
  .testimony-layout-1 {
    padding: 0;
  }
  .testimony-layout-1 .testimony-text {
    line-height: 32px;
  }
  .event-layout-1 {
    clear: both;
  }
  .event-layout-1 .event-img {
    float: none;
    margin: 0;
    width: 100%;
  }
  a.btn-load-more {
    margin-top: -24px;
  }
  .event-latest {
    clear: both;
  }
  .event-latest .event-latest-title {
    font-size: 20px;
  }
  .event-latest .event-details {
    padding: 12px 6px 0 12px;
  }
  .event_wrapper .single-event {
    padding: 0px 10px 15px;
  }
  .event_wrapper .single-event h5 {
    font-size: 16px;
  }
  .event_wrapper .single-event ul li {
    display: none;
  }
  .section-faq .faq-box .panel-heading [data-toggle="collapse"]::after {
    display: none;
  }
  .section-faq .faq-box .panel-body {
    padding-left: 0;
  }
  .logo-layout-1 .logo,
  .logo-layout-2 .logo {
    margin-top: 0px;
  }
  .section-home-blog {
    background: #F9FAFB;
  }
  .section-home-blog .latest-news-container {
    border: 0px solid #CCCCCC;
  }
  .section-home-blog .latest-news-container img {
    width: 100%;
  }
  .section-home-blog .latest-news-container .news-content {
    padding: 12px 16px 24px;
  }
  .section-news-block .news-wrapper {
    margin: 0 0 48px 0;
  }
  .cta-section-1 h2 {
    font-size: 32px;
    line-height: 42px;
    margin: 0px 0 24px;
    font-weight: 600;
  }
  .cta-section-1 a.btn-cta1 {
    margin-bottom: 6px;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 16px;
    font-weight: 600;
    display: block;
  }
  .cta-section-2 h2 {
    font-size: 32px;
    line-height: 42px;
  }
  .cta-section-3 .cta-content {
    color: #FFFFFF;
  }
  .cta-section-3 .cta-content h2 {
    font-size: 42px;
    line-height: 60px;
  }
  .cta-section-3 .cta-content a.btn-cta-3 {
    margin-top: 0px;
  }
  .cta-img {
    display: none;
  }
  /*-----  No Padding Gallery ----*/
  .no-padding-gallery {
    clear: both;
  }
  .no-padding-gallery .gallery-container {
    padding: 0px 12px;
    margin: 0;
  }
  .page-header h3 {
    font-size: 24px;
    line-height: 32px;
    margin: 12px 0;
  }
  .message-container-404 {
    margin: 48px 0;
  }
  .message-container-404 .text-404 {
    margin: 80px 0;
  }
  .message-container-404 .search-form-404 {
    padding: 5px;
    width: 100%;
  }
  .message-container-404 .message-text-404 {
    padding: 24px 0px;
  }
  .about-footer {
    margin-bottom: 32px;
    padding-bottom: 22px;
  }
  .footer-widget-area {
    padding: 42px 0 0 0;
  }
  .footer-widget-area .textwidget i.fa {
    padding-top: 10px;
  }
  .footer-widget-area .textwidget p {
    padding-left: 30px;
  }
  .footer-widget {
    margin-bottom: 36px;
  }
  .footer-widget .footer-useful-links {
    clear: both;
  }
  .footer-widget .footer-useful-links li {
    width: 100%;
    float: none;
  }
  .footer-intro {
    display: none;
  }
  .footer-nav {
    display: none;
  }
  .copyright-text {
    text-align: center;
  }
}
/* Tab Portrait Size to Tab Landscape Size (devices and browsers) */
@media only screen and (min-width: 380px) and (max-width: 480px) {
  .xs-margin {
    margin-left: 20px;
    margin-right: 20px;
  }
}
@media only screen and (min-width: 480px) and (max-width: 600px) {
  .xs-margin {
    margin-left: 70px;
    margin-right: 70px;
  }
}
@media only screen and (min-width: 600px) and (max-width: 767px) {
  .xs-margin {
    margin-left: 120px;
    margin-right: 120px;
  }
}

/*# sourceMappingURL=styles.css.map */



/* ==========================================
   BLOOD NETWORK PAKISTAN
   MODERN ABOUT SECTION
========================================== */

.bnp-about-section {
    position: relative;
    overflow: hidden;
    padding: 100px 0;
    background:
        radial-gradient(
            circle at 10% 10%,
            rgba(229, 32, 48, 0.07),
            transparent 34%
        ),
        radial-gradient(
            circle at 90% 90%,
            rgba(120, 0, 18, 0.06),
            transparent 35%
        ),
        #f8f9fb;
}

.bnp-about-section::before {
    content: "";
    position: absolute;
    top: -120px;
    left: -120px;
    width: 280px;
    height: 280px;
    border: 45px solid rgba(229, 32, 48, 0.035);
    border-radius: 50%;
}

.bnp-about-section::after {
    content: "";
    position: absolute;
    right: -100px;
    bottom: -100px;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.035);
}

.bnp-about-card {
    position: relative;
    z-index: 2;
    padding: 55px;
    border: 1px solid rgba(15, 23, 42, 0.06);
    border-radius: 26px;
    background: #ffffff;
    box-shadow:
        0 30px 70px rgba(15, 23, 42, 0.09),
        0 8px 24px rgba(15, 23, 42, 0.04);
}

.bnp-about-row {
    display: flex;
    align-items: center;
}

.bnp-about-content {
    padding-right: 32px;
}

.bnp-about-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    color: #e52030;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.bnp-about-label::before {
    content: "";
    width: 34px;
    height: 3px;
    border-radius: 50px;
    background: #e52030;
}

.bnp-about-title {
    margin: 0;
    color: #20252d;
    font-family: inherit;
    font-size: 42px;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.7px;
}

.bnp-about-title span {
    display: block;
    color: #e52030;
}

.bnp-about-line {
    width: 78px;
    height: 4px;
    margin: 22px 0 23px;
    border-radius: 50px;
    background:
        linear-gradient(
            90deg,
            #e52030,
            #861020
        );
}

.bnp-about-description {
    margin: 0 0 28px;
    color: #5d6470;
    font-size: 15px;
    line-height: 1.9;
}

.bnp-about-features {
    display: flex;
    flex-direction: column;
    gap: 17px;
}

.bnp-about-feature {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 15px 16px;
    border: 1px solid transparent;
    border-radius: 13px;
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-about-feature:hover {
    transform: translateX(7px);
    border-color: rgba(229, 32, 48, 0.12);
    background: #fff8f9;
    box-shadow: 0 10px 28px rgba(229, 32, 48, 0.07);
}

.bnp-feature-icon {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 2px;
    border-radius: 50%;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a90e22
        );
    box-shadow: 0 8px 18px rgba(229, 32, 48, 0.22);
}

.bnp-feature-icon i {
    font-size: 13px;
}

.bnp-about-feature h4 {
    margin: 0 0 4px;
    color: #252a32;
    font-size: 15px;
    font-weight: 750;
    line-height: 1.4;
}

.bnp-about-feature p {
    margin: 0;
    color: #747b86;
    font-size: 13px;
    line-height: 1.6;
}

.bnp-about-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 13px;
    margin-top: 31px;
}

.bnp-about-primary-btn,
.bnp-about-secondary-btn {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 12px 22px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    transition:
        transform 0.25s ease,
        background 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.bnp-about-primary-btn {
    border: 1px solid #e52030;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ee3144,
            #b90f25
        );
    box-shadow: 0 12px 26px rgba(229, 32, 48, 0.23);
}

.bnp-about-primary-btn:hover,
.bnp-about-primary-btn:focus {
    transform: translateY(-3px);
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #c91328,
            #8f091b
        );
    box-shadow: 0 16px 32px rgba(229, 32, 48, 0.3);
}

.bnp-about-secondary-btn {
    border: 1px solid #d9dde3;
    color: #303641;
    background: #ffffff;
}

.bnp-about-secondary-btn:hover,
.bnp-about-secondary-btn:focus {
    transform: translateY(-3px);
    border-color: #e52030;
    color: #e52030;
    background: #fff7f8;
}

/* ==========================================
   VIDEO AREA
========================================== */

.bnp-about-video-wrap {
    position: relative;
    padding: 24px 10px 28px 28px;
}

.bnp-about-video {
    position: relative;
    z-index: 3;
    min-height: 510px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #1e2128;
    box-shadow:
        0 30px 55px rgba(15, 23, 42, 0.22),
        0 8px 20px rgba(15, 23, 42, 0.13);
}

.bnp-about-video img {
    width: 100%;
    height: 510px;
    display: block;
    object-fit: cover;
    object-position: center;
    transform: scale(1.01);
    transition: transform 0.7s ease;
}

.bnp-about-video:hover img {
    transform: scale(1.07);
}

.bnp-video-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(10, 12, 17, 0.04) 25%,
            rgba(10, 12, 17, 0.78) 100%
        );
    transition: background 0.4s ease;
}

.bnp-about-video:hover .bnp-video-overlay {
    background:
        linear-gradient(
            180deg,
            rgba(10, 12, 17, 0.1) 15%,
            rgba(10, 12, 17, 0.8) 100%
        );
}

.bnp-video-play {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 5;
    width: 92px;
    height: 92px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    text-decoration: none;
}

.bnp-play-button {
    position: relative;
    z-index: 3;
    width: 76px;
    height: 76px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 3px solid rgba(255, 255, 255, 0.88);
    border-radius: 50%;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #f13448,
            #b30e23
        );
    box-shadow:
        0 13px 30px rgba(229, 32, 48, 0.38),
        0 0 0 8px rgba(255, 255, 255, 0.11);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-play-button i {
    position: relative;
    left: 3px;
    font-size: 25px;
}

.bnp-video-play:hover .bnp-play-button {
    transform: scale(1.1);
    box-shadow:
        0 18px 36px rgba(229, 32, 48, 0.46),
        0 0 0 11px rgba(255, 255, 255, 0.12);
}

.bnp-play-pulse {
    position: absolute;
    inset: 0;
    z-index: 1;
    border: 2px solid rgba(255, 255, 255, 0.65);
    border-radius: 50%;
    animation: bnpVideoPulse 2s infinite;
}

@keyframes bnpVideoPulse {
    0% {
        opacity: 0.85;
        transform: scale(0.72);
    }

    70% {
        opacity: 0;
        transform: scale(1.35);
    }

    100% {
        opacity: 0;
        transform: scale(1.35);
    }
}

.bnp-video-caption {
    position: absolute;
    right: 28px;
    bottom: 27px;
    left: 28px;
    z-index: 5;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
}

.bnp-video-caption span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 12px;
    font-weight: 650;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.bnp-video-caption strong {
    max-width: 220px;
    color: #ffffff;
    font-size: 19px;
    font-weight: 750;
    line-height: 1.35;
    text-align: right;
}

.bnp-video-decoration {
    position: absolute;
    border-radius: 22px;
}

.bnp-video-decoration-one {
    top: 0;
    right: -12px;
    width: 62%;
    height: 62%;
    background:
        linear-gradient(
            135deg,
            rgba(229, 32, 48, 0.18),
            rgba(229, 32, 48, 0.04)
        );
}

.bnp-video-decoration-two {
    left: 7px;
    bottom: 7px;
    width: 135px;
    height: 135px;
    border: 18px solid rgba(229, 32, 48, 0.08);
    border-radius: 50%;
}

.bnp-video-stat-card {
    position: absolute;
    left: -8px;
    bottom: 0;
    z-index: 6;
    min-width: 275px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 16px 19px;
    border: 1px solid rgba(229, 32, 48, 0.1);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 16px 38px rgba(15, 23, 42, 0.16);
    backdrop-filter: blur(10px);
    animation: bnpFloatingCard 4s ease-in-out infinite;
}

@keyframes bnpFloatingCard {
    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

.bnp-video-stat-icon {
    width: 47px;
    height: 47px;
    flex: 0 0 47px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a90c20
        );
    box-shadow: 0 10px 20px rgba(229, 32, 48, 0.23);
}

.bnp-video-stat-icon i {
    font-size: 20px;
}

.bnp-video-stat-card strong,
.bnp-video-stat-card span {
    display: block;
}

.bnp-video-stat-card strong {
    margin-bottom: 3px;
    color: #222831;
    font-size: 14px;
    font-weight: 750;
}

.bnp-video-stat-card span {
    color: #747b86;
    font-size: 11px;
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 1199px) {

    .bnp-about-card {
        padding: 42px;
    }

    .bnp-about-title {
        font-size: 36px;
    }

    .bnp-about-video,
    .bnp-about-video img {
        height: 485px;
        min-height: 485px;
    }
}

@media (max-width: 991px) {

    .bnp-about-section {
        padding: 75px 0;
    }

    .bnp-about-row {
        display: block;
    }

    .bnp-about-content {
        padding-right: 0;
    }

    .bnp-about-video-wrap {
        margin-top: 48px;
        padding-left: 18px;
    }

    .bnp-about-video,
    .bnp-about-video img {
        height: 470px;
        min-height: 470px;
    }
}

@media (max-width: 767px) {

    .bnp-about-section {
        padding: 55px 0;
    }

    .bnp-about-card {
        padding: 28px 22px;
        border-radius: 18px;
    }

    .bnp-about-title {
        font-size: 31px;
    }

    .bnp-about-description {
        font-size: 14px;
        line-height: 1.8;
    }

    .bnp-about-feature {
        padding: 12px 5px;
    }

    .bnp-about-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-about-primary-btn,
    .bnp-about-secondary-btn {
        width: 100%;
    }

    .bnp-about-video-wrap {
        padding: 15px 0 38px;
    }

    .bnp-about-video,
    .bnp-about-video img {
        height: 390px;
        min-height: 390px;
    }

    .bnp-video-caption {
        right: 20px;
        bottom: 22px;
        left: 20px;
    }

    .bnp-video-caption strong {
        font-size: 16px;
    }

    .bnp-video-stat-card {
        left: 14px;
        bottom: 0;
        min-width: 0;
        max-width: calc(100% - 28px);
    }
}

@media (max-width: 480px) {

    .bnp-about-title {
        font-size: 27px;
    }

    .bnp-about-video,
    .bnp-about-video img {
        height: 320px;
        min-height: 320px;
    }

    .bnp-video-play {
        width: 78px;
        height: 78px;
    }

    .bnp-play-button {
        width: 64px;
        height: 64px;
    }

    .bnp-play-button i {
        font-size: 21px;
    }

    .bnp-video-caption {
        display: none;
    }

    .bnp-video-stat-card {
        position: relative;
        left: auto;
        bottom: auto;
        width: 100%;
        max-width: none;
        margin-top: -14px;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-play-pulse,
    .bnp-video-stat-card {
        animation: none;
    }

    .bnp-about-video img,
    .bnp-about-feature,
    .bnp-play-button {
        transition: none;
    }
}

/* ==========================================
   BNP MODERN TESTIMONIAL SECTION
========================================== */

.bnp-testimonial-section {
    position: relative;
    overflow: hidden;
    padding: 100px 0;
    background:
        linear-gradient(
            135deg,
            rgba(16, 21, 30, 0.98),
            rgba(40, 8, 16, 0.96)
        );
}

.bnp-testimonial-section::before {
    content: "";
    position: absolute;
    top: -130px;
    right: -90px;
    width: 330px;
    height: 330px;
    border: 50px solid rgba(255, 255, 255, 0.025);
    border-radius: 50%;
}

.bnp-testimonial-section::after {
    content: "";
    position: absolute;
    bottom: -160px;
    left: -120px;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.06);
}

.bnp-testimonial-section .container {
    position: relative;
    z-index: 2;
}

.bnp-testimonial-heading {
    max-width: 760px;
    margin: 0 auto 55px;
    text-align: center;
}

.bnp-section-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    color: #ff5364;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.bnp-section-label::before,
.bnp-section-label::after {
    content: "";
    width: 35px;
    height: 2px;
    background: #e52030;
}

.bnp-testimonial-heading h2 {
    margin: 0;
    color: #ffffff;
    font-size: 42px;
    font-weight: 800;
    line-height: 1.18;
}

.bnp-testimonial-heading h2 span {
    display: block;
    color: #ff4458;
}

.bnp-testimonial-heading p {
    max-width: 620px;
    margin: 18px auto 0;
    color: rgba(255, 255, 255, 0.68);
    font-size: 15px;
    line-height: 1.8;
}

.bnp-testimonial-row {
    display: flex;
    align-items: stretch;
}

/* Left Highlight */

.bnp-testimonial-highlight {
    position: relative;
    min-height: 540px;
    height: 100%;
    overflow: hidden;
    border-radius: 24px;
    background:
        url("../images/testimony_feat_img.jpg")
        center center / cover no-repeat;
    box-shadow: 0 30px 65px rgba(0, 0, 0, 0.28);
}

.bnp-highlight-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(10, 12, 16, 0.08),
            rgba(10, 12, 16, 0.88)
        );
}

.bnp-highlight-content {
    position: absolute;
    right: 34px;
    bottom: 38px;
    left: 34px;
    z-index: 2;
}

.bnp-highlight-icon {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    border-radius: 16px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a80c20
        );
    box-shadow: 0 14px 30px rgba(229, 32, 48, 0.34);
}

.bnp-highlight-icon i {
    font-size: 24px;
}

.bnp-highlight-content > span {
    display: block;
    margin-bottom: 10px;
    color: #ff5969;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.bnp-highlight-content h3 {
    margin: 0 0 15px;
    color: #ffffff;
    font-size: 29px;
    font-weight: 800;
    line-height: 1.35;
}

.bnp-highlight-content p {
    margin: 0 0 24px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 14px;
    line-height: 1.75;
}

.bnp-highlight-btn {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 13px 21px;
    border-radius: 8px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #b00d22
        );
    font-size: 13px;
    font-weight: 750;
    text-transform: uppercase;
    box-shadow: 0 12px 26px rgba(229, 32, 48, 0.28);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-highlight-btn:hover,
.bnp-highlight-btn:focus {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 17px 34px rgba(229, 32, 48, 0.4);
}

/* Testimonial Slider */

.bnp-testimonial-slider {
    height: 100%;
    padding-left: 18px;
}

.bnp-testimonial-card {
    position: relative;
    min-height: 405px;
    padding: 45px 42px 38px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 24px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.11),
            rgba(255, 255, 255, 0.045)
        );
    box-shadow: 0 28px 65px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(12px);
}

.bnp-testimonial-card::after {
    content: "";
    position: absolute;
    right: -45px;
    bottom: -50px;
    width: 150px;
    height: 150px;
    border: 28px solid rgba(229, 32, 48, 0.06);
    border-radius: 50%;
}

.bnp-quote-icon {
    margin-bottom: 20px;
    color: #e52030;
    font-size: 42px;
    line-height: 1;
}

.bnp-rating {
    margin-bottom: 23px;
}

.bnp-rating i {
    margin-right: 3px;
    color: #ffc94a;
    font-size: 14px;
}

.bnp-testimonial-text {
    position: relative;
    z-index: 2;
    min-height: 142px;
    margin: 0 0 30px;
    color: rgba(255, 255, 255, 0.84);
    font-size: 17px;
    font-style: italic;
    line-height: 1.9;
}

.bnp-testimonial-user {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 15px;
}

.bnp-testimonial-user img {
    width: 66px;
    height: 66px;
    flex: 0 0 66px;
    border: 4px solid rgba(255, 255, 255, 0.12);
    border-radius: 50%;
    object-fit: cover;
}

.bnp-testimonial-user h4 {
    margin: 0 0 4px;
    color: #ffffff;
    font-size: 16px;
    font-weight: 750;
}

.bnp-testimonial-user span {
    color: rgba(255, 255, 255, 0.58);
    font-size: 12px;
}

/* Owl Dots */

.bnp-testimonial-slider .owl-dots {
    margin-top: 22px !important;
    text-align: center;
}

.bnp-testimonial-slider .owl-dot span {
    width: 9px !important;
    height: 9px !important;
    margin: 5px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.25) !important;
    transition:
        width 0.3s ease,
        background 0.3s ease;
}

.bnp-testimonial-slider .owl-dot.active span {
    width: 28px !important;
    border-radius: 20px !important;
    background: #e52030 !important;
}

/* Mini Impact Cards */

.bnp-impact-mini-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin: 20px 0 0 18px;
}

.bnp-impact-mini-card {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 17px 18px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.055);
    transition:
        transform 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease;
}

.bnp-impact-mini-card:hover {
    transform: translateY(-5px);
    border-color: rgba(229, 32, 48, 0.35);
    background: rgba(229, 32, 48, 0.1);
}

.bnp-impact-mini-card > i {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a80b1f
        );
}

.bnp-impact-mini-card strong,
.bnp-impact-mini-card span {
    display: block;
}

.bnp-impact-mini-card strong {
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 13px;
}

.bnp-impact-mini-card span {
    color: rgba(255, 255, 255, 0.52);
    font-size: 10px;
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-testimonial-section {
        padding: 75px 0;
    }

    .bnp-testimonial-row {
        display: block;
    }

    .bnp-testimonial-highlight {
        min-height: 500px;
        margin-bottom: 35px;
    }

    .bnp-testimonial-slider {
        padding-left: 0;
    }

    .bnp-impact-mini-grid {
        margin-left: 0;
    }
}

@media (max-width: 767px) {

    .bnp-testimonial-section {
        padding: 55px 0;
    }

    .bnp-testimonial-heading h2 {
        font-size: 32px;
    }

    .bnp-testimonial-highlight {
        min-height: 460px;
    }

    .bnp-highlight-content {
        right: 24px;
        bottom: 28px;
        left: 24px;
    }

    .bnp-highlight-content h3 {
        font-size: 24px;
    }

    .bnp-testimonial-card {
        min-height: auto;
        padding: 34px 25px;
    }

    .bnp-testimonial-text {
        min-height: 0;
        font-size: 15px;
    }

    .bnp-impact-mini-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {

    .bnp-testimonial-heading h2 {
        font-size: 27px;
    }

    .bnp-testimonial-highlight {
        min-height: 430px;
    }

    .bnp-highlight-content h3 {
        font-size: 21px;
    }
}

/* ==========================================
   BNP MODERN CAMPAIGNS SECTION
========================================== */

.bnp-campaigns-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(229, 32, 48, 0.07),
            transparent 30%
        ),
        radial-gradient(
            circle at 92% 85%,
            rgba(136, 8, 27, 0.055),
            transparent 32%
        ),
        #f7f8fb;
}

.bnp-campaigns-section .container {
    position: relative;
    z-index: 3;
}

.bnp-campaign-shape {
    position: absolute;
    pointer-events: none;
}

.bnp-campaign-shape-one {
    top: -110px;
    right: -90px;
    width: 290px;
    height: 290px;
    border: 44px solid rgba(229, 32, 48, 0.035);
    border-radius: 50%;
}

.bnp-campaign-shape-two {
    bottom: -130px;
    left: -110px;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.035);
}

/* ==========================================
   SECTION HEADING
========================================== */

.bnp-campaign-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 35px;
    margin-bottom: 52px;
}

.bnp-campaign-heading-content {
    max-width: 720px;
}

.bnp-campaign-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    color: #e52030;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.bnp-campaign-label::before {
    content: "";
    width: 37px;
    height: 3px;
    border-radius: 20px;
    background:
        linear-gradient(
            90deg,
            #e52030,
            #8c0b1e
        );
}

.bnp-campaign-heading h2 {
    margin: 0;
    color: #20252d;
    font-size: 43px;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.65px;
}

.bnp-campaign-heading h2 span {
    display: block;
    color: #e52030;
}

.bnp-campaign-heading p {
    max-width: 650px;
    margin: 18px 0 0;
    color: #686f7a;
    font-size: 15px;
    line-height: 1.85;
}

.bnp-campaign-view-all {
    min-height: 47px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 21px;
    border: 1px solid #d9dde3;
    border-radius: 8px;
    color: #303641;
    background: #ffffff;
    font-size: 12px;
    font-weight: 750;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    box-shadow: 0 9px 24px rgba(15, 23, 42, 0.05);
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-campaign-view-all:hover,
.bnp-campaign-view-all:focus {
    transform: translateY(-3px);
    border-color: #e52030;
    color: #e52030;
    box-shadow: 0 14px 28px rgba(229, 32, 48, 0.12);
}

/* ==========================================
   CAMPAIGN GRID
========================================== */

.bnp-campaign-grid {
    display: flex;
    flex-wrap: wrap;
}

.bnp-campaign-column {
    display: flex;
    margin-bottom: 30px;
}

.bnp-campaign-card {
    position: relative;
    width: 100%;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.065);
    border-radius: 22px;
    background: #ffffff;
    box-shadow:
        0 22px 55px rgba(15, 23, 42, 0.075),
        0 6px 18px rgba(15, 23, 42, 0.035);
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease,
        border-color 0.4s ease;
}

.bnp-campaign-card:hover {
    transform: translateY(-12px);
    border-color: rgba(229, 32, 48, 0.16);
    box-shadow:
        0 32px 70px rgba(15, 23, 42, 0.14),
        0 12px 28px rgba(229, 32, 48, 0.07);
}

.bnp-campaign-card.featured {
    border-color: rgba(229, 32, 48, 0.22);
}

.bnp-campaign-card.featured::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 5;
    border: 2px solid rgba(229, 32, 48, 0.12);
    border-radius: inherit;
    pointer-events: none;
}

/* ==========================================
   IMAGE
========================================== */

.bnp-campaign-image {
    position: relative;
    height: 245px;
    overflow: hidden;
    background: #20252d;
}

.bnp-campaign-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition:
        transform 0.75s ease,
        filter 0.5s ease;
}

.bnp-campaign-card:hover .bnp-campaign-image img {
    transform: scale(1.09);
    filter: saturate(1.08);
}

.bnp-campaign-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(10, 12, 17, 0.04) 20%,
            rgba(10, 12, 17, 0.76) 100%
        );
}

.bnp-campaign-status {
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 12px;
    border-radius: 30px;
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    box-shadow: 0 9px 24px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(8px);
}

.bnp-campaign-status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.18);
}

.bnp-campaign-status.active {
    background: rgba(20, 155, 85, 0.91);
}

.bnp-campaign-status.urgent {
    background: rgba(229, 32, 48, 0.93);
}

.bnp-campaign-status.upcoming {
    background: rgba(34, 92, 185, 0.92);
}

.bnp-campaign-date {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 3;
    min-width: 70px;
    padding: 11px 12px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 13px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.13);
    text-align: center;
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(11px);
}

.bnp-campaign-date strong,
.bnp-campaign-date span {
    display: block;
}

.bnp-campaign-date strong {
    font-size: 24px;
    font-weight: 800;
    line-height: 1;
}

.bnp-campaign-date span {
    margin-top: 4px;
    font-size: 9px;
    font-weight: 750;
    letter-spacing: 0.7px;
    text-transform: uppercase;
}

/* ==========================================
   CAMPAIGN BODY
========================================== */

.bnp-campaign-body {
    padding: 27px 25px 25px;
}

.bnp-campaign-location {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 13px;
    margin-bottom: 15px;
    color: #8a909a;
    font-size: 10px;
    font-weight: 650;
    text-transform: uppercase;
    letter-spacing: 0.25px;
}

.bnp-campaign-location span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.bnp-campaign-location i {
    color: #e52030;
    font-size: 12px;
}

.bnp-campaign-body h3 {
    min-height: 58px;
    margin: 0 0 13px;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.43;
}

.bnp-campaign-body h3 a {
    color: #242932;
    transition: color 0.25s ease;
}

.bnp-campaign-body h3 a:hover {
    color: #e52030;
}

.bnp-campaign-body > p {
    min-height: 70px;
    margin: 0 0 21px;
    color: #717883;
    font-size: 13px;
    line-height: 1.75;
}

/* ==========================================
   PROGRESS
========================================== */

.bnp-campaign-progress-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 9px;
    color: #4e5560;
    font-size: 11px;
    font-weight: 700;
}

.bnp-campaign-progress-info strong {
    color: #e52030;
    font-size: 12px;
}

.bnp-campaign-progress {
    position: relative;
    height: 8px;
    margin-bottom: 23px;
    overflow: hidden;
    border-radius: 30px;
    background: #edf0f4;
}

.bnp-campaign-progress span {
    position: absolute;
    inset: 0 auto 0 0;
    display: block;
    border-radius: inherit;
    background:
        linear-gradient(
            90deg,
            #ef3348,
            #a70b20
        );
    box-shadow: 0 0 14px rgba(229, 32, 48, 0.28);
    animation: bnpCampaignProgress 1.6s ease both;
}

@keyframes bnpCampaignProgress {
    from {
        width: 0;
    }
}

/* ==========================================
   STATS
========================================== */

.bnp-campaign-stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-bottom: 23px;
}

.bnp-campaign-stats > div {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border: 1px solid #edf0f3;
    border-radius: 12px;
    background: #fafbfc;
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
}

.bnp-campaign-stats > div:hover {
    transform: translateY(-3px);
    border-color: rgba(229, 32, 48, 0.16);
    background: #fff7f8;
}

.bnp-campaign-stat-icon {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ee3144,
            #a80c20
        );
    box-shadow: 0 8px 17px rgba(229, 32, 48, 0.19);
}

.bnp-campaign-stat-icon i {
    font-size: 14px;
}

.bnp-campaign-stats strong,
.bnp-campaign-stats span {
    display: block;
}

.bnp-campaign-stats strong {
    margin-bottom: 2px;
    color: #252a32;
    font-size: 14px;
    font-weight: 800;
}

.bnp-campaign-stats div div span {
    color: #8a9098;
    font-size: 8px;
    font-weight: 650;
    letter-spacing: 0.2px;
    text-transform: uppercase;
}

/* ==========================================
   CARD LINK
========================================== */

.bnp-campaign-card-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 18px;
    border-top: 1px solid #edf0f3;
    color: #323842;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
    transition: color 0.25s ease;
}

.bnp-campaign-card-link i {
    transition: transform 0.28s ease;
}

.bnp-campaign-card-link:hover {
    color: #e52030;
}

.bnp-campaign-card-link:hover i {
    transform: translateX(6px);
}

/* ==========================================
   BOTTOM PARTNER CTA
========================================== */

.bnp-campaign-bottom {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 23px;
    padding: 25px 28px;
    border: 1px solid rgba(229, 32, 48, 0.1);
    border-radius: 18px;
    background:
        linear-gradient(
            135deg,
            #ffffff,
            #fff8f9
        );
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.07);
}

.bnp-campaign-bottom-icon {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #9f091d
        );
    box-shadow: 0 12px 25px rgba(229, 32, 48, 0.25);
}

.bnp-campaign-bottom-icon i {
    font-size: 24px;
}

.bnp-campaign-bottom-content {
    flex: 1;
}

.bnp-campaign-bottom-content strong,
.bnp-campaign-bottom-content span {
    display: block;
}

.bnp-campaign-bottom-content strong {
    margin-bottom: 5px;
    color: #242932;
    font-size: 17px;
    font-weight: 800;
}

.bnp-campaign-bottom-content span {
    color: #737a85;
    font-size: 12px;
    line-height: 1.6;
}

.bnp-campaign-partner-btn {
    min-height: 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    border-radius: 8px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #af0d22
        );
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 11px 24px rgba(229, 32, 48, 0.22);
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-campaign-partner-btn:hover,
.bnp-campaign-partner-btn:focus {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 16px 30px rgba(229, 32, 48, 0.33);
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 1199px) {

    .bnp-campaign-heading h2 {
        font-size: 38px;
    }

    .bnp-campaign-body {
        padding-right: 20px;
        padding-left: 20px;
    }

    .bnp-campaign-stats {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991px) {

    .bnp-campaigns-section {
        padding: 80px 0;
    }

    .bnp-campaign-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-campaign-heading-action {
        margin-top: -10px;
    }

    .bnp-campaign-bottom {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .bnp-campaign-partner-btn {
        margin-left: 76px;
    }
}

@media (max-width: 767px) {

    .bnp-campaigns-section {
        padding: 58px 0;
    }

    .bnp-campaign-heading {
        margin-bottom: 38px;
    }

    .bnp-campaign-heading h2 {
        font-size: 31px;
    }

    .bnp-campaign-heading p {
        font-size: 14px;
    }

    .bnp-campaign-column {
        display: block;
    }

    .bnp-campaign-image {
        height: 235px;
    }

    .bnp-campaign-body h3,
    .bnp-campaign-body > p {
        min-height: 0;
    }

    .bnp-campaign-stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnp-campaign-bottom {
        padding: 22px;
    }

    .bnp-campaign-partner-btn {
        width: 100%;
        margin-left: 0;
    }
}

@media (max-width: 480px) {

    .bnp-campaign-heading h2 {
        font-size: 27px;
    }

    .bnp-campaign-view-all {
        width: 100%;
    }

    .bnp-campaign-image {
        height: 215px;
    }

    .bnp-campaign-location {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-campaign-stats {
        grid-template-columns: 1fr;
    }

    .bnp-campaign-bottom-icon {
        width: 50px;
        height: 50px;
        flex-basis: 50px;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-campaign-progress span {
        animation: none;
    }

    .bnp-campaign-card,
    .bnp-campaign-image img,
    .bnp-campaign-stats > div,
    .bnp-campaign-card-link i {
        transition: none;
    }
}

/* ==========================================
   BNP EMERGENCY BLOOD SUPPORT SECTION
========================================== */

.bnp-support-section {
    position: relative;
    overflow: hidden;
    padding: 110px 0 90px;
    background:
        linear-gradient(
            135deg,
            rgba(18, 21, 29, 0.985),
            rgba(53, 7, 18, 0.97)
        );
}

.bnp-support-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(
            circle at 12% 15%,
            rgba(229, 32, 48, 0.14),
            transparent 30%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(255, 255, 255, 0.045),
            transparent 28%
        );
    pointer-events: none;
}

.bnp-support-section .container {
    position: relative;
    z-index: 3;
}

.bnp-support-pattern {
    position: absolute;
    pointer-events: none;
}

.bnp-support-pattern-one {
    top: -120px;
    right: -90px;
    width: 320px;
    height: 320px;
    border: 48px solid rgba(255, 255, 255, 0.025);
    border-radius: 50%;
}

.bnp-support-pattern-two {
    left: -125px;
    bottom: -150px;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.055);
}

.bnp-support-row {
    display: flex;
    align-items: center;
}

/* ==========================================
   LEFT CONTENT
========================================== */

.bnp-support-content {
    padding-right: 42px;
}

.bnp-support-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    color: #ff5264;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.bnp-support-label::before {
    content: "";
    width: 37px;
    height: 3px;
    border-radius: 20px;
    background: #e52030;
}

.bnp-support-content h2 {
    margin: 0;
    color: #ffffff;
    font-size: 45px;
    font-weight: 800;
    line-height: 1.17;
    letter-spacing: -0.8px;
}

.bnp-support-content h2 span {
    display: block;
    color: #ff4054;
}

.bnp-support-description {
    max-width: 590px;
    margin: 23px 0 25px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
    line-height: 1.9;
}

/* Blood Group Chips */

.bnp-blood-groups {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-bottom: 29px;
}

.bnp-blood-groups span {
    width: 47px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 9px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.055);
    font-size: 12px;
    font-weight: 800;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.09);
    transition:
        transform 0.28s ease,
        border-color 0.28s ease,
        background 0.28s ease;
}

.bnp-blood-groups span:hover {
    transform: translateY(-5px);
    border-color: rgba(229, 32, 48, 0.7);
    background: #e52030;
}

/* Support Features */

.bnp-support-features {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.bnp-support-feature {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 15px;
    border: 1px solid transparent;
    border-radius: 13px;
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
}

.bnp-support-feature:hover {
    transform: translateX(7px);
    border-color: rgba(229, 32, 48, 0.2);
    background: rgba(255, 255, 255, 0.045);
}

.bnp-support-feature-icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a80b20
        );
    box-shadow: 0 10px 22px rgba(229, 32, 48, 0.26);
}

.bnp-support-feature-icon i {
    font-size: 16px;
}

.bnp-support-feature h4 {
    margin: 0 0 4px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 750;
}

.bnp-support-feature p {
    margin: 0;
    color: rgba(255, 255, 255, 0.56);
    font-size: 12px;
    line-height: 1.65;
}

/* Buttons */

.bnp-support-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 30px;
}

.bnp-request-blood-btn {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 24px;
    border-radius: 9px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #f03549,
            #ab0b20
        );
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    box-shadow: 0 15px 32px rgba(229, 32, 48, 0.3);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-request-blood-btn:hover,
.bnp-request-blood-btn:focus {
    transform: translateY(-4px);
    color: #ffffff;
    box-shadow: 0 20px 39px rgba(229, 32, 48, 0.42);
}

.bnp-emergency-call-btn {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    gap: 11px;
    padding: 9px 16px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 9px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.055);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
}

.bnp-emergency-call-btn > i {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: #ffffff;
    background: rgba(229, 32, 48, 0.9);
}

.bnp-emergency-call-btn span {
    display: block;
    color: #ffffff;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.3;
}

.bnp-emergency-call-btn small {
    display: block;
    margin-bottom: 2px;
    color: rgba(255, 255, 255, 0.53);
    font-size: 8px;
    font-weight: 650;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}

.bnp-emergency-call-btn:hover,
.bnp-emergency-call-btn:focus {
    transform: translateY(-4px);
    border-color: rgba(229, 32, 48, 0.5);
    color: #ffffff;
    background: rgba(229, 32, 48, 0.09);
}

/* ==========================================
   DONOR CARD
========================================== */

.bnp-donor-card-wrap {
    position: relative;
    padding: 18px 10px 35px 28px;
}

.bnp-donor-card {
    position: relative;
    z-index: 3;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 24px;
    background: #ffffff;
    box-shadow:
        0 35px 75px rgba(0, 0, 0, 0.32),
        0 10px 28px rgba(0, 0, 0, 0.18);
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}

.bnp-donor-card:hover {
    transform: translateY(-9px);
    box-shadow:
        0 43px 85px rgba(0, 0, 0, 0.4),
        0 14px 32px rgba(229, 32, 48, 0.12);
}

.bnp-donor-card-image {
    position: relative;
    height: 265px;
    overflow: hidden;
    background: #252932;
}

.bnp-donor-card-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.75s ease;
}

.bnp-donor-card:hover .bnp-donor-card-image img {
    transform: scale(1.08);
}

.bnp-donor-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(10, 12, 17, 0.04),
            rgba(10, 12, 17, 0.76)
        );
}

.bnp-donor-image-badge {
    position: absolute;
    right: 22px;
    bottom: 21px;
    left: 22px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 13px;
    color: #ffffff;
}

.bnp-donor-image-badge > i {
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #f1364a,
            #a90b20
        );
    font-size: 20px;
    box-shadow: 0 12px 27px rgba(229, 32, 48, 0.35);
}

.bnp-donor-image-badge span,
.bnp-donor-image-badge strong {
    display: block;
}

.bnp-donor-image-badge span {
    color: rgba(255, 255, 255, 0.72);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.bnp-donor-image-badge strong {
    margin-top: 3px;
    color: #ffffff;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: normal;
    text-transform: none;
}

.bnp-donor-card-body {
    padding: 31px 32px 33px;
}

.bnp-donor-label {
    display: block;
    margin-bottom: 9px;
    color: #e52030;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.bnp-donor-card-body h3 {
    margin: 0 0 14px;
    color: #242932;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.35;
}

.bnp-donor-card-body > p {
    margin: 0 0 21px;
    color: #747b86;
    font-size: 13px;
    line-height: 1.75;
}

.bnp-donor-benefits {
    margin: 0 0 25px;
    padding: 0;
    list-style: none;
}

.bnp-donor-benefits li {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 11px;
    color: #555d68;
    font-size: 12px;
}

.bnp-donor-benefits i {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background: #e52030;
    font-size: 9px;
}

.bnp-become-donor-btn {
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 18px;
    border-radius: 9px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a90b20
        );
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    box-shadow: 0 13px 27px rgba(229, 32, 48, 0.25);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-become-donor-btn i {
    transition: transform 0.3s ease;
}

.bnp-become-donor-btn:hover,
.bnp-become-donor-btn:focus {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 18px 34px rgba(229, 32, 48, 0.36);
}

.bnp-become-donor-btn:hover i {
    transform: translateX(6px);
}

/* Floating Card */

.bnp-donor-floating-card {
    position: absolute;
    left: -5px;
    bottom: 0;
    z-index: 5;
    min-width: 280px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 16px 19px;
    border: 1px solid rgba(229, 32, 48, 0.12);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(10px);
    animation: bnpDonorFloating 4s ease-in-out infinite;
}

@keyframes bnpDonorFloating {
    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-9px);
    }
}

.bnp-floating-drop {
    width: 47px;
    height: 47px;
    flex: 0 0 47px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a70b1f
        );
    box-shadow: 0 9px 20px rgba(229, 32, 48, 0.25);
}

.bnp-floating-drop i {
    font-size: 19px;
}

.bnp-donor-floating-card strong,
.bnp-donor-floating-card span {
    display: block;
}

.bnp-donor-floating-card strong {
    margin-bottom: 3px;
    color: #242932;
    font-size: 14px;
    font-weight: 800;
}

.bnp-donor-floating-card span {
    color: #7a818c;
    font-size: 10px;
}

/* ==========================================
   STATISTICS
========================================== */

.bnp-support-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin-top: 75px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.045);
    box-shadow: 0 24px 52px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(10px);
}

.bnp-support-stat {
    position: relative;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 25px 22px;
    border-right: 1px solid rgba(255, 255, 255, 0.075);
    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.bnp-support-stat:last-child {
    border-right: 0;
}

.bnp-support-stat:hover {
    transform: translateY(-4px);
    background: rgba(229, 32, 48, 0.1);
}

.bnp-support-stat-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #9f091d
        );
    box-shadow: 0 10px 23px rgba(229, 32, 48, 0.23);
}

.bnp-support-stat-icon i {
    font-size: 19px;
}

.bnp-support-stat strong,
.bnp-support-stat span {
    display: block;
}

.bnp-support-stat strong {
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 24px;
    font-weight: 800;
    line-height: 1;
}

.bnp-support-stat span {
    color: rgba(255, 255, 255, 0.53);
    font-size: 9px;
    font-weight: 650;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 1199px) {

    .bnp-support-content {
        padding-right: 20px;
    }

    .bnp-support-content h2 {
        font-size: 39px;
    }

    .bnp-donor-card-body {
        padding-right: 26px;
        padding-left: 26px;
    }

    .bnp-support-stat {
        padding-right: 15px;
        padding-left: 15px;
    }
}

@media (max-width: 991px) {

    .bnp-support-section {
        padding: 80px 0 70px;
    }

    .bnp-support-row {
        display: block;
    }

    .bnp-support-content {
        padding-right: 0;
    }

    .bnp-donor-card-wrap {
        margin-top: 55px;
    }

    .bnp-support-stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnp-support-stat:nth-child(2) {
        border-right: 0;
    }

    .bnp-support-stat:nth-child(-n + 2) {
        border-bottom: 1px solid rgba(255, 255, 255, 0.075);
    }
}

@media (max-width: 767px) {

    .bnp-support-section {
        padding: 58px 0;
    }

    .bnp-support-content h2 {
        font-size: 31px;
    }

    .bnp-support-description {
        font-size: 14px;
    }

    .bnp-support-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-request-blood-btn,
    .bnp-emergency-call-btn {
        width: 100%;
    }

    .bnp-donor-card-wrap {
        padding: 8px 0 38px;
    }

    .bnp-donor-card-image {
        height: 235px;
    }

    .bnp-donor-card-body {
        padding: 27px 22px 30px;
    }

    .bnp-donor-card-body h3 {
        font-size: 22px;
    }

    .bnp-donor-floating-card {
        left: 14px;
        min-width: 0;
        max-width: calc(100% - 28px);
    }

    .bnp-support-stats {
        margin-top: 55px;
    }
}

@media (max-width: 520px) {

    .bnp-support-content h2 {
        font-size: 27px;
    }

    .bnp-blood-groups span {
        width: 43px;
    }

    .bnp-support-stats {
        grid-template-columns: 1fr;
    }

    .bnp-support-stat,
    .bnp-support-stat:nth-child(2) {
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.075);
    }

    .bnp-support-stat:last-child {
        border-bottom: 0;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-donor-floating-card {
        animation: none;
    }

    .bnp-donor-card,
    .bnp-donor-card-image img,
    .bnp-support-feature,
    .bnp-blood-groups span {
        transition: none;
    }
}


/* ==========================================
   BNP MODERN VOLUNTEERS SECTION
========================================== */

.bnp-volunteers-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(229, 32, 48, 0.07),
            transparent 30%
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(105, 7, 24, 0.05),
            transparent 30%
        ),
        #ffffff;
}

.bnp-volunteers-section .container {
    position: relative;
    z-index: 3;
}

.bnp-volunteers-shape {
    position: absolute;
    pointer-events: none;
}

.bnp-volunteers-shape-one {
    top: -100px;
    right: -80px;
    width: 280px;
    height: 280px;
    border: 42px solid rgba(229, 32, 48, 0.035);
    border-radius: 50%;
}

.bnp-volunteers-shape-two {
    left: -110px;
    bottom: -130px;
    width: 310px;
    height: 310px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.035);
}

/* Heading */

.bnp-volunteers-heading {
    max-width: 780px;
    margin: 0 auto 55px;
    text-align: center;
}

.bnp-volunteers-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    color: #e52030;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.bnp-volunteers-label::before,
.bnp-volunteers-label::after {
    content: "";
    width: 35px;
    height: 2px;
    border-radius: 20px;
    background: #e52030;
}

.bnp-volunteers-heading h2 {
    margin: 0;
    color: #20252d;
    font-size: 43px;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.7px;
}

.bnp-volunteers-heading h2 span {
    display: block;
    color: #e52030;
}

.bnp-volunteers-heading p {
    max-width: 650px;
    margin: 18px auto 0;
    color: #6f7681;
    font-size: 15px;
    line-height: 1.85;
}

/* Grid */

.bnp-volunteers-grid {
    display: flex;
    flex-wrap: wrap;
}

.bnp-volunteer-column {
    display: flex;
    margin-bottom: 30px;
}

.bnp-volunteer-card {
    position: relative;
    width: 100%;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.065);
    border-radius: 22px;
    background: #ffffff;
    box-shadow:
        0 22px 55px rgba(15, 23, 42, 0.08),
        0 6px 18px rgba(15, 23, 42, 0.035);
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease,
        border-color 0.4s ease;
}

.bnp-volunteer-card:hover {
    transform: translateY(-12px);
    border-color: rgba(229, 32, 48, 0.18);
    box-shadow:
        0 34px 72px rgba(15, 23, 42, 0.14),
        0 12px 28px rgba(229, 32, 48, 0.08);
}

.bnp-volunteer-card.featured {
    border-color: rgba(229, 32, 48, 0.22);
}

/* Image */

.bnp-volunteer-image {
    position: relative;
    height: 370px;
    overflow: hidden;
    background: #242932;
}

.bnp-volunteer-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: top center;
    transition:
        transform 0.75s ease,
        filter 0.5s ease;
}

.bnp-volunteer-card:hover .bnp-volunteer-image img {
    transform: scale(1.08);
    filter: saturate(1.06);
}

.bnp-volunteer-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(10, 12, 17, 0.03) 30%,
            rgba(10, 12, 17, 0.78) 100%
        );
}

.bnp-volunteer-status {
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 12px;
    border-radius: 30px;
    color: #ffffff;
    background: rgba(20, 155, 85, 0.92);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    box-shadow: 0 9px 22px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(8px);
}

.bnp-volunteer-status i {
    font-size: 7px;
    animation: bnpVolunteerStatus 1.8s infinite;
}

@keyframes bnpVolunteerStatus {
    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.35;
    }
}

/* Social Icons */

.bnp-volunteer-social {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 4;
    display: flex;
    gap: 8px;
    transform: translateY(20px);
    opacity: 0;
    transition:
        transform 0.35s ease,
        opacity 0.35s ease;
}

.bnp-volunteer-card:hover .bnp-volunteer-social {
    transform: translateY(0);
    opacity: 1;
}

.bnp-volunteer-social a {
    width: 37px;
    height: 37px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 10px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(8px);
    transition:
        transform 0.28s ease,
        background 0.28s ease;
}

.bnp-volunteer-social a:hover {
    transform: translateY(-4px);
    color: #ffffff;
    background: #e52030;
}

/* Body */

.bnp-volunteer-body {
    padding: 27px 25px 25px;
}

.bnp-volunteer-role {
    display: block;
    margin-bottom: 8px;
    color: #e52030;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.bnp-volunteer-body h3 {
    margin: 0 0 8px;
    color: #242932;
    font-size: 23px;
    font-weight: 800;
}

.bnp-volunteer-location {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0 0 21px;
    color: #838a94;
    font-size: 12px;
}

.bnp-volunteer-location i {
    color: #e52030;
}

.bnp-volunteer-info {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-bottom: 23px;
}

.bnp-volunteer-info > div {
    padding: 14px 12px;
    border: 1px solid #edf0f3;
    border-radius: 12px;
    background: #fafbfc;
    text-align: center;
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
}

.bnp-volunteer-info > div:hover {
    transform: translateY(-4px);
    border-color: rgba(229, 32, 48, 0.16);
    background: #fff7f8;
}

.bnp-volunteer-info strong,
.bnp-volunteer-info span {
    display: block;
}

.bnp-volunteer-info strong {
    margin-bottom: 4px;
    color: #242932;
    font-size: 18px;
    font-weight: 800;
}

.bnp-volunteer-info span {
    color: #8a9099;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

.bnp-volunteer-profile-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 18px;
    border-top: 1px solid #edf0f3;
    color: #333943;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
    transition: color 0.25s ease;
}

.bnp-volunteer-profile-link i {
    transition: transform 0.28s ease;
}

.bnp-volunteer-profile-link:hover {
    color: #e52030;
}

.bnp-volunteer-profile-link:hover i {
    transform: translateX(6px);
}

/* CTA */

.bnp-volunteer-cta {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 25px;
    padding: 26px 28px;
    border: 1px solid rgba(229, 32, 48, 0.1);
    border-radius: 18px;
    background:
        linear-gradient(
            135deg,
            #ffffff,
            #fff7f8
        );
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.07);
}

.bnp-volunteer-cta-icon {
    width: 59px;
    height: 59px;
    flex: 0 0 59px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a70a1f
        );
    box-shadow: 0 12px 25px rgba(229, 32, 48, 0.24);
}

.bnp-volunteer-cta-icon i {
    font-size: 23px;
}

.bnp-volunteer-cta-content {
    flex: 1;
}

.bnp-volunteer-cta-content strong,
.bnp-volunteer-cta-content span {
    display: block;
}

.bnp-volunteer-cta-content strong {
    margin-bottom: 5px;
    color: #242932;
    font-size: 17px;
    font-weight: 800;
}

.bnp-volunteer-cta-content span {
    color: #747b86;
    font-size: 12px;
    line-height: 1.65;
}

.bnp-join-volunteer-btn {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 20px;
    border-radius: 8px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #ac0b21
        );
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 12px 25px rgba(229, 32, 48, 0.23);
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-join-volunteer-btn:hover,
.bnp-join-volunteer-btn:focus {
    transform: translateY(-4px);
    color: #ffffff;
    box-shadow: 0 17px 32px rgba(229, 32, 48, 0.34);
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-volunteers-section {
        padding: 80px 0;
    }

    .bnp-volunteer-cta {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .bnp-join-volunteer-btn {
        margin-left: 77px;
    }
}

@media (max-width: 767px) {

    .bnp-volunteers-section {
        padding: 58px 0;
    }

    .bnp-volunteers-heading h2 {
        font-size: 31px;
    }

    .bnp-volunteer-column {
        display: block;
    }

    .bnp-volunteer-image {
        height: 350px;
    }

    .bnp-volunteer-cta {
        padding: 22px;
    }

    .bnp-join-volunteer-btn {
        width: 100%;
        margin-left: 0;
    }
}

@media (max-width: 480px) {

    .bnp-volunteers-heading h2 {
        font-size: 27px;
    }

    .bnp-volunteer-image {
        height: 320px;
    }

    .bnp-volunteer-info {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-volunteer-status i {
        animation: none;
    }

    .bnp-volunteer-card,
    .bnp-volunteer-image img,
    .bnp-volunteer-social,
    .bnp-volunteer-info > div {
        transition: none;
    }
}


/* ==========================================
   BNP MODERN GALLERY SECTION
========================================== */

.bnp-gallery-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(229, 32, 48, 0.08),
            transparent 30%
        ),
        radial-gradient(
            circle at 92% 88%,
            rgba(116, 8, 26, 0.05),
            transparent 32%
        ),
        #f7f8fb;
}

.bnp-gallery-section .container {
    position: relative;
    z-index: 3;
}

.bnp-gallery-shape {
    position: absolute;
    pointer-events: none;
}

.bnp-gallery-shape-one {
    top: -110px;
    right: -85px;
    width: 290px;
    height: 290px;
    border: 45px solid rgba(229, 32, 48, 0.035);
    border-radius: 50%;
}

.bnp-gallery-shape-two {
    left: -120px;
    bottom: -150px;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.035);
}

/* Heading */

.bnp-gallery-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 35px;
    margin-bottom: 52px;
}

.bnp-gallery-heading-content {
    max-width: 730px;
}

.bnp-gallery-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    color: #e52030;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.bnp-gallery-label::before {
    content: "";
    width: 37px;
    height: 3px;
    border-radius: 20px;
    background:
        linear-gradient(
            90deg,
            #ef3348,
            #971024
        );
}

.bnp-gallery-heading h2 {
    margin: 0;
    color: #20252d;
    font-size: 43px;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.7px;
}

.bnp-gallery-heading h2 span {
    display: block;
    color: #e52030;
}

.bnp-gallery-heading p {
    max-width: 650px;
    margin: 18px 0 0;
    color: #6e7580;
    font-size: 15px;
    line-height: 1.85;
}

.bnp-gallery-view-all {
    min-height: 47px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 21px;
    border: 1px solid #d9dde3;
    border-radius: 8px;
    color: #303641;
    background: #ffffff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    box-shadow: 0 9px 24px rgba(15, 23, 42, 0.05);
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-gallery-view-all:hover,
.bnp-gallery-view-all:focus {
    transform: translateY(-3px);
    border-color: #e52030;
    color: #e52030;
    box-shadow: 0 14px 28px rgba(229, 32, 48, 0.12);
}

/* Gallery Grid */

.bnp-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 260px;
    gap: 18px;
}

.bnp-gallery-item {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    background: #20252d;
    box-shadow:
        0 18px 42px rgba(15, 23, 42, 0.1),
        0 5px 16px rgba(15, 23, 42, 0.05);
}

.bnp-gallery-item-large {
    grid-column: span 2;
    grid-row: span 2;
}

.bnp-gallery-item-wide {
    grid-column: span 2;
}

.bnp-gallery-link {
    position: absolute;
    inset: 0;
    display: block;
    overflow: hidden;
    color: #ffffff;
}

.bnp-gallery-link img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition:
        transform 0.75s ease,
        filter 0.45s ease;
}

.bnp-gallery-item:hover .bnp-gallery-link img {
    transform: scale(1.1);
    filter: saturate(1.08);
}

.bnp-gallery-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(8, 10, 14, 0.03) 25%,
            rgba(8, 10, 14, 0.82) 100%
        );
    transition: background 0.4s ease;
}

.bnp-gallery-item:hover .bnp-gallery-overlay {
    background:
        linear-gradient(
            180deg,
            rgba(229, 32, 48, 0.1) 15%,
            rgba(8, 10, 14, 0.88) 100%
        );
}

/* Gallery Content */

.bnp-gallery-content {
    position: absolute;
    right: 24px;
    bottom: 22px;
    left: 24px;
    z-index: 3;
    transform: translateY(7px);
    transition: transform 0.35s ease;
}

.bnp-gallery-item:hover .bnp-gallery-content {
    transform: translateY(0);
}

.bnp-gallery-category {
    display: inline-flex;
    align-items: center;
    margin-bottom: 9px;
    padding: 6px 10px;
    border-radius: 20px;
    color: #ffffff;
    background: rgba(229, 32, 48, 0.9);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.7px;
    text-transform: uppercase;
    box-shadow: 0 7px 18px rgba(229, 32, 48, 0.25);
}

.bnp-gallery-content h3 {
    margin: 0;
    color: #ffffff;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.35;
}

.bnp-gallery-item-large .bnp-gallery-content h3,
.bnp-gallery-item-wide .bnp-gallery-content h3 {
    font-size: 26px;
}

.bnp-gallery-content p {
    max-width: 540px;
    margin: 10px 0 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
    line-height: 1.65;
}

/* Zoom Icon */

.bnp-gallery-icon {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 4;
    width: 43px;
    height: 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 12px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.11);
    opacity: 0;
    transform: translateY(-12px);
    backdrop-filter: blur(9px);
    transition:
        opacity 0.3s ease,
        transform 0.3s ease,
        background 0.3s ease;
}

.bnp-gallery-item:hover .bnp-gallery-icon {
    opacity: 1;
    transform: translateY(0);
}

.bnp-gallery-icon:hover {
    background: #e52030;
}

/* CTA */

.bnp-gallery-cta {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 35px;
    padding: 26px 28px;
    border: 1px solid rgba(229, 32, 48, 0.1);
    border-radius: 18px;
    background:
        linear-gradient(
            135deg,
            #ffffff,
            #fff7f8
        );
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.07);
}

.bnp-gallery-cta-icon {
    width: 59px;
    height: 59px;
    flex: 0 0 59px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a70a1f
        );
    box-shadow: 0 12px 25px rgba(229, 32, 48, 0.24);
}

.bnp-gallery-cta-icon i {
    font-size: 23px;
}

.bnp-gallery-cta-content {
    flex: 1;
}

.bnp-gallery-cta-content strong,
.bnp-gallery-cta-content span {
    display: block;
}

.bnp-gallery-cta-content strong {
    margin-bottom: 5px;
    color: #242932;
    font-size: 17px;
    font-weight: 800;
}

.bnp-gallery-cta-content span {
    color: #747b86;
    font-size: 12px;
    line-height: 1.65;
}

.bnp-gallery-join-btn {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 20px;
    border-radius: 8px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #ac0b21
        );
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 12px 25px rgba(229, 32, 48, 0.23);
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-gallery-join-btn:hover,
.bnp-gallery-join-btn:focus {
    transform: translateY(-4px);
    color: #ffffff;
    box-shadow: 0 17px 32px rgba(229, 32, 48, 0.34);
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-gallery-section {
        padding: 80px 0;
    }

    .bnp-gallery-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnp-gallery-cta {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .bnp-gallery-join-btn {
        margin-left: 77px;
    }
}

@media (max-width: 767px) {

    .bnp-gallery-section {
        padding: 58px 0;
    }

    .bnp-gallery-heading h2 {
        font-size: 31px;
    }

    .bnp-gallery-grid {
        display: block;
    }

    .bnp-gallery-item,
    .bnp-gallery-item-large,
    .bnp-gallery-item-wide {
        height: 320px;
        margin-bottom: 18px;
    }

    .bnp-gallery-content h3,
    .bnp-gallery-item-large .bnp-gallery-content h3,
    .bnp-gallery-item-wide .bnp-gallery-content h3 {
        font-size: 22px;
    }

    .bnp-gallery-cta {
        padding: 22px;
    }

    .bnp-gallery-join-btn {
        width: 100%;
        margin-left: 0;
    }
}

@media (max-width: 480px) {

    .bnp-gallery-heading h2 {
        font-size: 27px;
    }

    .bnp-gallery-view-all {
        width: 100%;
    }

    .bnp-gallery-item,
    .bnp-gallery-item-large,
    .bnp-gallery-item-wide {
        height: 285px;
    }

    .bnp-gallery-content {
        right: 18px;
        bottom: 18px;
        left: 18px;
    }

    .bnp-gallery-content p {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-gallery-link img,
    .bnp-gallery-content,
    .bnp-gallery-icon {
        transition: none;
    }
}


/* ==========================================
   BNP MODERN FINAL CTA SECTION
========================================== */

.bnp-final-cta-section {
    position: relative;
    overflow: hidden;
    padding: 95px 0;
    background:
        radial-gradient(
            circle at 10% 20%,
            rgba(229, 32, 48, 0.08),
            transparent 30%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(116, 8, 26, 0.055),
            transparent 32%
        ),
        #ffffff;
}

.bnp-final-cta-section .container {
    position: relative;
    z-index: 3;
}

.bnp-final-cta-shape {
    position: absolute;
    pointer-events: none;
}

.bnp-final-cta-shape-one {
    top: -110px;
    right: -85px;
    width: 290px;
    height: 290px;
    border: 46px solid rgba(229, 32, 48, 0.035);
    border-radius: 50%;
}

.bnp-final-cta-shape-two {
    left: -120px;
    bottom: -150px;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.035);
}

/* Main CTA Card */

.bnp-final-cta-card {
    position: relative;
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 45px;
    overflow: hidden;
    padding: 58px 62px;
    border-radius: 28px;
    background:
        linear-gradient(
            125deg,
            rgba(18, 21, 29, 0.98),
            rgba(82, 5, 24, 0.96)
        );
    box-shadow:
        0 35px 80px rgba(15, 23, 42, 0.2),
        0 12px 32px rgba(229, 32, 48, 0.1);
}

.bnp-final-cta-card::before {
    content: "";
    position: absolute;
    top: -130px;
    right: -80px;
    width: 390px;
    height: 390px;
    border: 55px solid rgba(255, 255, 255, 0.025);
    border-radius: 50%;
}

.bnp-final-cta-card::after {
    content: "";
    position: absolute;
    bottom: -160px;
    left: 32%;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.08);
    filter: blur(10px);
}

.bnp-final-cta-overlay {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(
            circle at 15% 35%,
            rgba(229, 32, 48, 0.16),
            transparent 36%
        );
    pointer-events: none;
}

.bnp-final-cta-content,
.bnp-final-cta-side {
    position: relative;
    z-index: 3;
}

/* Left Content */

.bnp-final-cta-content {
    max-width: 690px;
}

.bnp-final-cta-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 17px;
    color: #ff5668;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.bnp-final-cta-label::before {
    content: "";
    width: 38px;
    height: 3px;
    border-radius: 20px;
    background: #e52030;
}

.bnp-final-cta-content h2 {
    margin: 0;
    color: #ffffff;
    font-size: 46px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.9px;
}

.bnp-final-cta-content h2 span {
    display: block;
    color: #ff4054;
}

.bnp-final-cta-content p {
    max-width: 620px;
    margin: 22px 0 29px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
    line-height: 1.9;
}

.bnp-final-cta-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
}

.bnp-final-primary-btn,
.bnp-final-secondary-btn {
    min-height: 51px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 23px;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
    transition:
        transform 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-final-primary-btn {
    border: 1px solid #e52030;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #f1364a,
            #a90b20
        );
    box-shadow: 0 15px 32px rgba(229, 32, 48, 0.32);
}

.bnp-final-primary-btn:hover,
.bnp-final-primary-btn:focus {
    transform: translateY(-4px);
    color: #ffffff;
    box-shadow: 0 21px 40px rgba(229, 32, 48, 0.45);
}

.bnp-final-secondary-btn {
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #ffffff;
    background: rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(8px);
}

.bnp-final-secondary-btn:hover,
.bnp-final-secondary-btn:focus {
    transform: translateY(-4px);
    border-color: rgba(229, 32, 48, 0.6);
    color: #ffffff;
    background: rgba(229, 32, 48, 0.12);
}

/* Right Side */

.bnp-final-cta-side {
    width: 280px;
    flex: 0 0 280px;
    text-align: center;
}

.bnp-final-cta-icon {
    position: relative;
    width: 150px;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
}

.bnp-final-heart-icon {
    position: relative;
    z-index: 3;
    width: 112px;
    height: 112px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 4px solid rgba(255, 255, 255, 0.85);
    border-radius: 50%;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #f23a4e,
            #9e091d
        );
    box-shadow:
        0 20px 45px rgba(229, 32, 48, 0.4),
        0 0 0 11px rgba(255, 255, 255, 0.07);
}

.bnp-final-heart-icon i {
    font-size: 42px;
}

.bnp-final-heart-pulse {
    position: absolute;
    inset: 0;
    z-index: 1;
    border: 2px solid rgba(255, 255, 255, 0.55);
    border-radius: 50%;
    animation: bnpFinalHeartPulse 2.2s infinite;
}

@keyframes bnpFinalHeartPulse {
    0% {
        opacity: 0.8;
        transform: scale(0.65);
    }

    70% {
        opacity: 0;
        transform: scale(1.2);
    }

    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

.bnp-final-cta-support {
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(9px);
}

.bnp-final-cta-support span,
.bnp-final-cta-support small {
    display: block;
}

.bnp-final-cta-support > span {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.59);
    font-size: 9px;
    font-weight: 750;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.bnp-final-cta-support a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 7px;
    color: #ffffff;
    font-size: 17px;
    font-weight: 800;
}

.bnp-final-cta-support a:hover {
    color: #ff5364;
}

.bnp-final-cta-support small {
    color: rgba(255, 255, 255, 0.46);
    font-size: 9px;
    line-height: 1.5;
}

/* Trust Bar */

.bnp-final-trust-bar {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 27px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 17px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.07);
}

.bnp-final-trust-item {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 22px 25px;
    border-right: 1px solid #edf0f3;
    transition:
        transform 0.3s ease,
        background 0.3s ease;
}

.bnp-final-trust-item:last-child {
    border-right: 0;
}

.bnp-final-trust-item:hover {
    transform: translateY(-4px);
    background: #fff7f8;
}

.bnp-final-trust-icon {
    width: 45px;
    height: 45px;
    flex: 0 0 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a70b20
        );
    box-shadow: 0 9px 20px rgba(229, 32, 48, 0.22);
}

.bnp-final-trust-icon i {
    font-size: 17px;
}

.bnp-final-trust-item strong,
.bnp-final-trust-item span {
    display: block;
}

.bnp-final-trust-item strong {
    margin-bottom: 4px;
    color: #242932;
    font-size: 14px;
    font-weight: 800;
}

.bnp-final-trust-item span {
    color: #7c838d;
    font-size: 10px;
    line-height: 1.5;
}

/* Responsive */

@media (max-width: 1199px) {

    .bnp-final-cta-card {
        padding: 50px;
    }

    .bnp-final-cta-content h2 {
        font-size: 40px;
    }

    .bnp-final-cta-side {
        width: 240px;
        flex-basis: 240px;
    }
}

@media (max-width: 991px) {

    .bnp-final-cta-section {
        padding: 75px 0;
    }

    .bnp-final-cta-card {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-final-cta-side {
        width: 100%;
        flex-basis: auto;
        display: flex;
        align-items: center;
        gap: 25px;
        text-align: left;
    }

    .bnp-final-cta-icon {
        width: 125px;
        height: 125px;
        flex: 0 0 125px;
        margin: 0;
    }

    .bnp-final-heart-icon {
        width: 92px;
        height: 92px;
    }

    .bnp-final-heart-icon i {
        font-size: 35px;
    }

    .bnp-final-cta-support {
        flex: 1;
        text-align: center;
    }
}

@media (max-width: 767px) {

    .bnp-final-cta-section {
        padding: 58px 0;
    }

    .bnp-final-cta-card {
        min-height: 0;
        padding: 38px 26px;
        border-radius: 21px;
    }

    .bnp-final-cta-content h2 {
        font-size: 31px;
    }

    .bnp-final-cta-content p {
        font-size: 14px;
    }

    .bnp-final-cta-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-final-primary-btn,
    .bnp-final-secondary-btn {
        width: 100%;
    }

    .bnp-final-cta-side {
        align-items: center;
        flex-direction: column;
        text-align: center;
    }

    .bnp-final-cta-support {
        width: 100%;
    }

    .bnp-final-trust-bar {
        grid-template-columns: 1fr;
    }

    .bnp-final-trust-item {
        border-right: 0;
        border-bottom: 1px solid #edf0f3;
    }

    .bnp-final-trust-item:last-child {
        border-bottom: 0;
    }
}

@media (max-width: 480px) {

    .bnp-final-cta-content h2 {
        font-size: 27px;
    }

    .bnp-final-cta-card {
        padding: 34px 20px;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-final-heart-pulse {
        animation: none;
    }

    .bnp-final-primary-btn,
    .bnp-final-secondary-btn,
    .bnp-final-trust-item {
        transition: none;
    }
}

/* ==========================================
   BLOOD NETWORK PAKISTAN MODERN FOOTER
========================================== */

.bnp-footer {
    position: relative;
    overflow: hidden;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #12151d 0%,
            #1d1118 45%,
            #3b0714 100%
        );
}

.bnp-footer .container {
    position: relative;
    z-index: 3;
}

.bnp-footer-shape {
    position: absolute;
    pointer-events: none;
}

.bnp-footer-shape-one {
    top: 90px;
    right: -110px;
    width: 320px;
    height: 320px;
    border: 48px solid rgba(255, 255, 255, 0.025);
    border-radius: 50%;
}

.bnp-footer-shape-two {
    left: -140px;
    bottom: 120px;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.055);
}

.bnp-footer-shape-three {
    top: 47%;
    left: 48%;
    width: 230px;
    height: 230px;
    border: 35px solid rgba(229, 32, 48, 0.035);
    border-radius: 50%;
}

/* ==========================================
   EMERGENCY CTA
========================================== */

.bnp-footer-emergency {
    position: relative;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 22px;
    margin-top: -1px;
    padding: 28px 32px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 0 0 22px 22px;
    background:
        linear-gradient(
            135deg,
            rgba(239, 51, 72, 0.96),
            rgba(148, 8, 29, 0.98)
        );
    box-shadow:
        0 24px 55px rgba(0, 0, 0, 0.26),
        0 8px 22px rgba(229, 32, 48, 0.16);
}

.bnp-footer-emergency::before {
    content: "";
    position: absolute;
    top: -90px;
    right: 130px;
    width: 220px;
    height: 220px;
    border: 35px solid rgba(255, 255, 255, 0.06);
    border-radius: 50%;
}

.bnp-footer-emergency-icon,
.bnp-footer-emergency-content,
.bnp-footer-emergency-actions {
    position: relative;
    z-index: 2;
}

.bnp-footer-emergency-icon {
    position: relative;
    width: 78px;
    height: 78px;
    flex: 0 0 78px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bnp-footer-emergency-icon-inner {
    position: relative;
    z-index: 3;
    width: 62px;
    height: 62px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 3px solid rgba(255, 255, 255, 0.85);
    border-radius: 50%;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.12);
    box-shadow:
        0 12px 28px rgba(71, 0, 12, 0.26),
        0 0 0 8px rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(8px);
}

.bnp-footer-emergency-icon-inner i {
    font-size: 25px;
}

.bnp-footer-emergency-pulse {
    position: absolute;
    inset: 0;
    z-index: 1;
    border: 2px solid rgba(255, 255, 255, 0.55);
    border-radius: 50%;
    animation: bnpFooterEmergencyPulse 2.2s infinite;
}

@keyframes bnpFooterEmergencyPulse {
    0% {
        opacity: 0.85;
        transform: scale(0.68);
    }

    70% {
        opacity: 0;
        transform: scale(1.25);
    }

    100% {
        opacity: 0;
        transform: scale(1.25);
    }
}

.bnp-footer-emergency-content {
    flex: 1;
}

.bnp-footer-emergency-label {
    display: block;
    margin-bottom: 5px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.bnp-footer-emergency-content h3 {
    margin: 0 0 5px;
    color: #ffffff;
    font-size: 23px;
    font-weight: 800;
}

.bnp-footer-emergency-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
    line-height: 1.6;
}

.bnp-footer-emergency-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

.bnp-footer-request-btn,
.bnp-footer-call-btn {
    min-height: 49px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: #ffffff;
    transition:
        transform 0.28s ease,
        background 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-footer-request-btn {
    gap: 9px;
    padding: 13px 20px;
    border: 1px solid rgba(255, 255, 255, 0.84);
    background: rgba(255, 255, 255, 0.13);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
    backdrop-filter: blur(8px);
}

.bnp-footer-request-btn:hover,
.bnp-footer-request-btn:focus {
    transform: translateY(-4px);
    color: #a90b20;
    background: #ffffff;
    box-shadow: 0 15px 30px rgba(71, 0, 12, 0.22);
}

.bnp-footer-call-btn {
    gap: 10px;
    padding: 8px 15px;
    border: 1px solid rgba(255, 255, 255, 0.17);
    background: rgba(63, 0, 12, 0.19);
    backdrop-filter: blur(8px);
}

.bnp-footer-call-btn > i {
    width: 33px;
    height: 33px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: #a90b20;
    background: #ffffff;
}

.bnp-footer-call-btn span {
    display: block;
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.25;
}

.bnp-footer-call-btn small {
    display: block;
    margin-bottom: 2px;
    color: rgba(255, 255, 255, 0.56);
    font-size: 8px;
    font-weight: 650;
    letter-spacing: 0.55px;
    text-transform: uppercase;
}

.bnp-footer-call-btn:hover,
.bnp-footer-call-btn:focus {
    transform: translateY(-4px);
    border-color: rgba(255, 255, 255, 0.4);
    color: #ffffff;
    background: rgba(63, 0, 12, 0.3);
}

/* ==========================================
   MAIN FOOTER AREA
========================================== */

.bnp-footer-main {
    position: relative;
    padding: 80px 0 55px;
}

.bnp-footer-widget {
    margin-bottom: 35px;
}

.bnp-footer-logo {
    display: inline-block;
    margin-bottom: 22px;
}

.bnp-footer-logo img {
    width: auto;
    max-width: 230px;
    max-height: 82px;
    object-fit: contain;
}

.bnp-footer-about > p {
    max-width: 360px;
    margin: 0 0 22px;
    color: rgba(255, 255, 255, 0.62);
    font-size: 13px;
    line-height: 1.85;
}

.bnp-footer-mission {
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: 330px;
    margin-bottom: 23px;
    padding: 14px 16px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.045);
}

.bnp-footer-mission > i {
    width: 39px;
    height: 39px;
    flex: 0 0 39px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #9d091d
        );
    box-shadow: 0 9px 20px rgba(229, 32, 48, 0.22);
}

.bnp-footer-mission span,
.bnp-footer-mission strong {
    display: block;
}

.bnp-footer-mission span {
    color: rgba(255, 255, 255, 0.66);
    font-size: 11px;
    line-height: 1.5;
}

.bnp-footer-mission strong {
    margin-top: 2px;
    color: #ffffff;
    font-size: 12px;
}

/* Social Icons */

.bnp-footer-social {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.bnp-footer-social a {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 11px;
    color: rgba(255, 255, 255, 0.74);
    background: rgba(255, 255, 255, 0.045);
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        background 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-footer-social a:hover {
    transform: translateY(-5px);
    border-color: rgba(229, 32, 48, 0.55);
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a30a1f
        );
    box-shadow: 0 12px 25px rgba(229, 32, 48, 0.25);
}

/* Widget Titles */

.bnp-footer-widget-title {
    position: relative;
    margin: 7px 0 25px;
    padding-bottom: 13px;
    color: #ffffff;
    font-size: 16px;
    font-weight: 800;
}

.bnp-footer-widget-title::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 42px;
    height: 3px;
    border-radius: 20px;
    background:
        linear-gradient(
            90deg,
            #ef3348,
            #921023
        );
}

.bnp-footer-widget-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 48px;
    width: 8px;
    height: 3px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.22);
}

/* Footer Links */

.bnp-footer-links {
    margin: 0;
    padding: 0;
    list-style: none;
}

.bnp-footer-links li {
    margin-bottom: 12px;
}

.bnp-footer-links a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, 0.59);
    font-size: 12px;
    transition:
        transform 0.25s ease,
        color 0.25s ease;
}

.bnp-footer-links a i {
    color: #e52030;
    font-size: 11px;
    transition: transform 0.25s ease;
}

.bnp-footer-links a:hover {
    transform: translateX(5px);
    color: #ffffff;
}

.bnp-footer-links a:hover i {
    transform: translateX(2px);
}

/* Contact Information */

.bnp-footer-contact-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.bnp-footer-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.bnp-footer-contact-icon {
    width: 39px;
    height: 39px;
    flex: 0 0 39px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    color: #ffffff;
    background: rgba(229, 32, 48, 0.13);
}

.bnp-footer-contact-item strong,
.bnp-footer-contact-item span,
.bnp-footer-contact-item a {
    display: block;
}

.bnp-footer-contact-item strong {
    margin-bottom: 4px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 750;
}

.bnp-footer-contact-item span,
.bnp-footer-contact-item a {
    color: rgba(255, 255, 255, 0.56);
    font-size: 10px;
    line-height: 1.55;
}

.bnp-footer-contact-item a:hover {
    color: #ff5364;
}

/* ==========================================
   NEWSLETTER
========================================== */

.bnp-footer-newsletter {
    display: flex;
    align-items: center;
    gap: 28px;
    margin-top: 25px;
    padding: 26px 28px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 17px;
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.065),
            rgba(255, 255, 255, 0.025)
        );
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(10px);
}

.bnp-footer-newsletter-content {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 14px;
}

.bnp-footer-newsletter-icon {
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a50a1f
        );
    box-shadow: 0 11px 24px rgba(229, 32, 48, 0.25);
}

.bnp-footer-newsletter-icon i {
    font-size: 21px;
}

.bnp-footer-newsletter-content strong,
.bnp-footer-newsletter-content span {
    display: block;
}

.bnp-footer-newsletter-content strong {
    margin-bottom: 5px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
}

.bnp-footer-newsletter-content span {
    color: rgba(255, 255, 255, 0.54);
    font-size: 10px;
    line-height: 1.55;
}

.bnp-footer-newsletter-form {
    width: 430px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.bnp-footer-newsletter-field {
    position: relative;
    flex: 1;
}

.bnp-footer-newsletter-field > i {
    position: absolute;
    top: 50%;
    left: 16px;
    z-index: 2;
    color: rgba(255, 255, 255, 0.42);
    transform: translateY(-50%);
}

.bnp-footer-newsletter-field input {
    width: 100%;
    height: 50px;
    padding: 0 16px 0 43px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 9px;
    outline: none;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.055);
    font-size: 11px;
    transition:
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.bnp-footer-newsletter-field input::placeholder {
    color: rgba(255, 255, 255, 0.37);
}

.bnp-footer-newsletter-field input:focus {
    border-color: rgba(229, 32, 48, 0.7);
    background: rgba(255, 255, 255, 0.075);
    box-shadow: 0 0 0 4px rgba(229, 32, 48, 0.08);
}

.bnp-footer-newsletter-form button {
    min-width: 125px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border: 0;
    border-radius: 9px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #ef3348,
            #a70a20
        );
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    box-shadow: 0 11px 24px rgba(229, 32, 48, 0.24);
    cursor: pointer;
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-footer-newsletter-form button:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 30px rgba(229, 32, 48, 0.35);
}

/* ==========================================
   FOOTER BOTTOM
========================================== */

.bnp-footer-bottom {
    position: relative;
    z-index: 3;
    border-top: 1px solid rgba(255, 255, 255, 0.065);
    background: rgba(4, 6, 10, 0.33);
}

.bnp-footer-bottom-inner {
    min-height: 86px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
}

.bnp-footer-copyright p,
.bnp-footer-copyright > span {
    margin: 0;
}

.bnp-footer-copyright p {
    color: rgba(255, 255, 255, 0.54);
    font-size: 10px;
    line-height: 1.6;
}

.bnp-footer-copyright p strong {
    color: #ffffff;
}

.bnp-footer-copyright > span {
    display: block;
    margin-top: 3px;
    color: rgba(255, 255, 255, 0.38);
    font-size: 9px;
}

.bnp-footer-copyright > span strong {
    color: #ff5364;
}

.bnp-footer-bottom-links {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 19px;
}

.bnp-footer-bottom-links a {
    position: relative;
    color: rgba(255, 255, 255, 0.48);
    font-size: 9px;
    transition: color 0.25s ease;
}

.bnp-footer-bottom-links a:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -10px;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.24);
    transform: translateY(-50%);
}

.bnp-footer-bottom-links a:hover {
    color: #ff5364;
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 1199px) {

    .bnp-footer-emergency {
        padding-right: 24px;
        padding-left: 24px;
    }

    .bnp-footer-newsletter-form {
        width: 390px;
    }
}

@media (max-width: 991px) {

    .bnp-footer-emergency {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .bnp-footer-emergency-actions {
        width: 100%;
        margin-left: 100px;
    }

    .bnp-footer-main {
        padding-top: 65px;
    }

    .bnp-footer-newsletter {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-footer-newsletter-form {
        width: 100%;
    }

    .bnp-footer-bottom-inner {
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
        padding: 22px 0;
    }
}

@media (max-width: 767px) {

    .bnp-footer-emergency {
        border-radius: 0 0 17px 17px;
    }

    .bnp-footer-emergency-icon {
        width: 65px;
        height: 65px;
        flex-basis: 65px;
    }

    .bnp-footer-emergency-icon-inner {
        width: 53px;
        height: 53px;
    }

    .bnp-footer-emergency-content h3 {
        font-size: 20px;
    }

    .bnp-footer-emergency-actions {
        align-items: stretch;
        flex-direction: column;
        margin-left: 0;
    }

    .bnp-footer-request-btn,
    .bnp-footer-call-btn {
        width: 100%;
    }

    .bnp-footer-main {
        padding-top: 55px;
        padding-bottom: 40px;
    }

    .bnp-footer-widget {
        margin-bottom: 40px;
    }

    .bnp-footer-newsletter {
        padding: 22px;
    }

    .bnp-footer-newsletter-form {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-footer-newsletter-form button {
        width: 100%;
    }

    .bnp-footer-bottom-links {
        gap: 15px;
    }
}

@media (max-width: 480px) {

    .bnp-footer-emergency {
        padding: 22px 18px;
    }

    .bnp-footer-emergency-icon {
        display: none;
    }

    .bnp-footer-newsletter-content {
        align-items: flex-start;
    }

    .bnp-footer-newsletter-icon {
        width: 46px;
        height: 46px;
        flex-basis: 46px;
    }

    .bnp-footer-bottom-links {
        align-items: flex-start;
        flex-direction: column;
        gap: 9px;
    }

    .bnp-footer-bottom-links a::after {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-footer-emergency-pulse {
        animation: none;
    }

    .bnp-footer-social a,
    .bnp-footer-links a,
    .bnp-footer-newsletter-form button,
    .bnp-footer-request-btn,
    .bnp-footer-call-btn {
        transition: none;
    }
}

/* ==========================================
   FOOTER NEWSLETTER MESSAGE
========================================== */

.bnp-footer-newsletter-message {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 13px;
    padding: 12px 15px;
    border: 1px solid transparent;
    border-radius: 9px;
    opacity: 0;
    transform: translateY(8px);
    font-size: 11px;
    line-height: 1.5;
    transition:
        opacity 0.35s ease,
        transform 0.35s ease;
}

.bnp-footer-newsletter-message.bnp-footer-message-visible {
    opacity: 1;
    transform: translateY(0);
}

.bnp-footer-newsletter-message i {
    font-size: 15px;
}

.bnp-footer-newsletter-success {
    border-color: rgba(34, 197, 94, 0.25);
    color: #bbf7d0;
    background: rgba(34, 197, 94, 0.1);
}

.bnp-footer-newsletter-error {
    border-color: rgba(239, 68, 68, 0.28);
    color: #fecaca;
    background: rgba(239, 68, 68, 0.11);
}

.bnp-footer-newsletter-warning {
    border-color: rgba(245, 158, 11, 0.27);
    color: #fde68a;
    background: rgba(245, 158, 11, 0.1);
}


/* ==========================================
   BNP HOMEPAGE FINAL STABILITY FIXES
========================================== */

html {
    scroll-behavior: smooth;
}

body {
    overflow-x: hidden;
}

img {
    max-width: 100%;
}

section {
    position: relative;
}

a,
button {
    outline: none;
}

a:focus,
button:focus {
    outline: 2px solid rgba(229, 32, 48, 0.35);
    outline-offset: 3px;
}

#preloader {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
}

#preloader img {
    width: 64px;
    height: 64px;
    object-fit: contain;
}

/* Prevent WOW elements from staying hidden
   when JavaScript fails */

.no-js .wow {
    visibility: visible;
}

/* Prevent sections from overlapping */

.bnp-about-section,
.bnp-testimonial-section,
.bnp-campaigns-section,
.bnp-support-section,
.bnp-volunteers-section,
.bnp-gallery-section,
.bnp-final-cta-section,
.bnp-footer {
    clear: both;
}

/* Better keyboard interaction */

.bnp-video-play:focus,
.bnp-campaign-card-link:focus,
.bnp-volunteer-profile-link:focus,
.bnp-gallery-link:focus {
    outline: 3px solid rgba(229, 32, 48, 0.55);
    outline-offset: 4px;
}

/* Mobile horizontal overflow protection */

@media (max-width: 767px) {

    .container {
        max-width: 100%;
    }

    .row {
        margin-right: -15px;
        margin-left: -15px;
    }

    .bnp-campaign-heading,
    .bnp-gallery-heading {
        gap: 20px;
    }
}



/* ==========================================
   BNP DONATION ACCOUNT SECTION
========================================== */

.bnp-donation-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(
            circle at 10% 20%,
            rgba(229, 32, 48, 0.08),
            transparent 32%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(63, 46, 143, 0.07),
            transparent 30%
        ),
        #ffffff;
}

.bnp-donation-section .container {
    position: relative;
    z-index: 3;
}

.bnp-donation-shape {
    position: absolute;
    pointer-events: none;
}

.bnp-donation-shape-one {
    top: -110px;
    right: -90px;
    width: 300px;
    height: 300px;
    border: 45px solid rgba(229, 32, 48, 0.035);
    border-radius: 50%;
}

.bnp-donation-shape-two {
    left: -130px;
    bottom: -160px;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    background: rgba(229, 32, 48, 0.035);
}

.bnp-donation-row {
    display: flex;
    align-items: center;
}

/* Left Content */

.bnp-donation-content {
    padding-right: 45px;
}

.bnp-donation-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    color: #e52030;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.bnp-donation-label::before {
    content: "";
    width: 38px;
    height: 3px;
    border-radius: 20px;
    background: #e52030;
}

.bnp-donation-content h2 {
    margin: 0;
    color: #20252d;
    font-size: 44px;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.8px;
}

.bnp-donation-content h2 span {
    display: block;
    color: #e52030;
}

.bnp-donation-description {
    max-width: 590px;
    margin: 22px 0 27px;
    color: #6d7480;
    font-size: 15px;
    line-height: 1.9;
}

.bnp-donation-impact-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.bnp-donation-impact-card {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    border: 1px solid #edf0f3;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.045);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-donation-impact-card:hover {
    transform: translateY(-5px);
    border-color: rgba(229, 32, 48, 0.18);
    box-shadow: 0 16px 32px rgba(229, 32, 48, 0.09);
}

.bnp-donation-impact-icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffffff;
    background: linear-gradient(135deg, #ef3348, #a70b20);
    box-shadow: 0 9px 20px rgba(229, 32, 48, 0.22);
}

.bnp-donation-impact-card strong,
.bnp-donation-impact-card span {
    display: block;
}

.bnp-donation-impact-card strong {
    margin-bottom: 4px;
    color: #252a32;
    font-size: 13px;
    font-weight: 800;
}

.bnp-donation-impact-card div span {
    color: #858b94;
    font-size: 10px;
    line-height: 1.55;
}

.bnp-donation-note {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-top: 22px;
    padding: 15px 17px;
    border-left: 4px solid #e52030;
    border-radius: 0 11px 11px 0;
    background: #fff6f7;
}

.bnp-donation-note i {
    margin-top: 3px;
    color: #e52030;
    font-size: 16px;
}

.bnp-donation-note p {
    margin: 0;
    color: #6d737c;
    font-size: 11px;
    line-height: 1.7;
}

.bnp-donation-contact {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 20px;
    color: #747b85;
    font-size: 11px;
}

.bnp-donation-contact a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #e52030;
    font-weight: 800;
}

/* Account Card */

.bnp-account-card-wrap {
    position: relative;
    padding: 18px 15px 42px 25px;
}

.bnp-account-card {
    position: relative;
    z-index: 3;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background: #ffffff;
    box-shadow:
        0 30px 70px rgba(15, 23, 42, 0.13),
        0 8px 22px rgba(15, 23, 42, 0.055);
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}

.bnp-account-card:hover {
    transform: translateY(-8px);
    box-shadow:
        0 40px 82px rgba(15, 23, 42, 0.18),
        0 14px 30px rgba(229, 32, 48, 0.08);
}

.bnp-account-header {
    position: relative;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 25px 27px;
    color: #ffffff;
     background:
        linear-gradient(
            135deg,
            var(--bnp-maroon),
            var(--bnp-red-dark)
        );
}

.bnp-account-header-icon {
    width: 53px;
    height: 53px;
    flex: 0 0 53px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    color: #24275d;
    color: var(--bnp-red);
    background: var(--bnp-white);
}

.bnp-account-header-icon i {
    font-size: 21px;
}

.bnp-account-header h3 {
    margin: 0 0 4px;
    color: #ffffff;
    font-size: 23px;
    font-weight: 800;
}

.bnp-account-header p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 11px;
}

.bnp-account-verified {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border-color: rgba(255, 255, 255, 0.18);
    border-radius: 20px;
    color: #ffffff;
    background: rgba(47, 143, 91, 0.22);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}
.bnp-account-verified i {
    color: #65d79a;
}

.bnp-account-details {
    padding: 18px 27px 5px;
}

.bnp-account-detail-row {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 17px 0;
    border-bottom: 1px solid #edf0f3;
}

.bnp-account-detail-content {
    flex: 1;
    min-width: 0;
}

.bnp-account-field-label {
    display: block;
    margin-bottom: 6px;
    color: #8c92a1;
    font-size: 9px;
    font-weight: 750;
    letter-spacing: 0.9px;
    text-transform: uppercase;
}

.bnp-account-detail-content strong {
    display: block;
    overflow-wrap: anywhere;
    color: #24275d;
    font-size: 14px;
    font-weight: 800;
}

.bnp-copy-button {
    min-width: 73px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    border-radius: 11px;
    color: #4f4b9a;
    background: #f0effb;
    font-size: 9px;
    font-weight: 800;
    cursor: pointer;
    transition:
        transform 0.25s ease,
        color 0.25s ease,
        background 0.25s ease;
}

.bnp-copy-button:hover {
    transform: translateY(-3px);
    color: #ffffff;
    background: #e52030;
}

.bnp-copy-button.copied {
    color: #ffffff;
    background: #159b55;
}

/* Payment Methods */

.bnp-payment-methods {
    padding: 19px 27px 22px;
}

.bnp-payment-methods h4 {
    margin: 0 0 14px;
    color: #252a33;
    font-size: 12px;
    font-weight: 800;
}

.bnp-payment-method-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 11px;
}

.bnp-payment-method-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border: 1px solid #edf0f3;
    border-radius: 12px;
    background: #fafbfc;
}

.bnp-payment-method-icon {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #ffffff;
    background: linear-gradient(135deg, #ef3348, #a70b20);
}

.bnp-payment-method-card > div {
    flex: 1;
    min-width: 0;
}

.bnp-payment-method-card span,
.bnp-payment-method-card strong {
    display: block;
}

.bnp-payment-method-card div span {
    margin-bottom: 3px;
    color: #8b919a;
    font-size: 8px;
    font-weight: 750;
    text-transform: uppercase;
}

.bnp-payment-method-card strong {
    overflow-wrap: anywhere;
    color: #252a33;
    font-size: 10px;
}

.bnp-mini-copy-button {
    width: 33px;
    height: 33px;
    flex: 0 0 33px;
    border: 0;
    border-radius: 9px;
    color: #4d4996;
    background: #edecf8;
    cursor: pointer;
    transition:
        transform 0.25s ease,
        color 0.25s ease,
        background 0.25s ease;
}

.bnp-mini-copy-button:hover,
.bnp-mini-copy-button.copied {
    transform: translateY(-3px);
    color: #ffffff;
    background: #159b55;
}

/* Trust Footer */

.bnp-account-trust {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin: 0 27px 25px;
    padding-top: 19px;
    border-top: 1px solid #e6e8ed;
    
}

.bnp-account-trust div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    color: #55528f;
    font-size: 10px;
    font-weight: 700;
}

.bnp-account-trust i {
    color: var(--bnp-green);
}

/* Floating Badge */

.bnp-donation-floating-badge {
    position: absolute;
    left: -3px;
    bottom: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 14px 17px;
    border: 1px solid rgba(229, 32, 48, 0.12);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 17px 38px rgba(15, 23, 42, 0.15);
    animation: bnpDonationFloating 4s ease-in-out infinite;
}

@keyframes bnpDonationFloating {
    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

.bnp-donation-floating-badge > span {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #ffffff;
    background: linear-gradient(135deg, #ef3348, #a70b20);
}

.bnp-donation-floating-badge strong,
.bnp-donation-floating-badge small {
    display: block;
}

.bnp-donation-floating-badge strong {
    margin-bottom: 2px;
    color: #252a33;
    font-size: 12px;
}

.bnp-donation-floating-badge small {
    color: #858b94;
    font-size: 9px;
}

/* Copy Notification */

.bnp-copy-notification {
    position: fixed;
    right: 25px;
    bottom: 25px;
    z-index: 99999;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 13px 17px;
    border-radius: 10px;
    color: #ffffff;
    background: #159b55;
    box-shadow: 0 15px 35px rgba(15, 23, 42, 0.22);
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    font-size: 11px;
    font-weight: 750;
    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}

.bnp-copy-notification.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Hero Donate Button */

.bnp-hero-donate-btn {
    display: inline-flex !important;
    align-items: center;
    gap: 9px;
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-donation-section {
        padding: 80px 0;
    }

    .bnp-donation-row {
        display: block;
    }

    .bnp-donation-content {
        padding-right: 0;
    }

    .bnp-account-card-wrap {
        margin-top: 50px;
    }
}

@media (max-width: 767px) {

    .bnp-donation-section {
        padding: 58px 0;
    }

    .bnp-donation-content h2 {
        font-size: 31px;
    }

    .bnp-donation-impact-grid {
        grid-template-columns: 1fr;
    }

    .bnp-account-card-wrap {
        padding: 8px 0 40px;
    }

    .bnp-account-header {
        align-items: flex-start;
        padding: 22px;
    }

    .bnp-account-verified {
        display: none;
    }

    .bnp-account-details,
    .bnp-payment-methods {
        padding-right: 22px;
        padding-left: 22px;
    }

    .bnp-payment-method-grid {
        grid-template-columns: 1fr;
    }

    .bnp-account-trust {
        margin-right: 22px;
        margin-left: 22px;
    }

    .bnp-donation-floating-badge {
        left: 14px;
        max-width: calc(100% - 28px);
    }
}

@media (max-width: 480px) {

    .bnp-donation-content h2 {
        font-size: 27px;
    }

    .bnp-account-detail-row {
        align-items: flex-start;
    }

    .bnp-copy-button {
        min-width: 43px;
    }

    .bnp-copy-button span {
        display: none;
    }

    .bnp-account-trust {
        gap: 8px;
    }

    .bnp-account-trust div {
        flex-direction: column;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-donation-floating-badge {
        animation: none;
    }

    .bnp-account-card,
    .bnp-copy-button,
    .bnp-mini-copy-button,
    .bnp-donation-impact-card {
        transition: none;
    }
}

/* ==========================================
   BNP FINAL BRAND COLORS
========================================== */

:root {
    --bnp-red: #e52030;
    --bnp-red-dark: #a70b20;
    --bnp-green: #2f8f5b;
    --bnp-green-dark: #1f6f45;
    --bnp-dark: #1c2028;
    --bnp-maroon: #3a0b16;
    --bnp-white: #ffffff;
    --bnp-light: #f7f8fb;
    --bnp-text: #252a33;
    --bnp-muted: #737a85;
}


/* ==========================================
   BNP PREMIUM HEADER AND NAVBAR
========================================== */

.bnp-main-header {
    position: relative;
    z-index: 9999;
    width: 100%;
    background: #ffffff;
}

/* ==========================================
   TOPBAR
========================================== */

.bnp-topbar {
    position: relative;
    min-height: 43px;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-topbar::before {
    content: "";
    position: absolute;
    top: -55px;
    right: 18%;
    width: 170px;
    height: 170px;
    border: 25px solid rgba(255, 255, 255, 0.05);
    border-radius: 50%;
}

.bnp-topbar .container {
    position: relative;
    z-index: 2;
}

.bnp-topbar-inner {
    min-height: 43px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
}

.bnp-topbar-contact {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 22px;
}

.bnp-topbar-contact span,
.bnp-topbar-contact a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255, 255, 255, 0.94);
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
    transition: color 0.25s ease;
}

.bnp-topbar-contact i {
    color: #7ee2a9;
    font-size: 13px;
}

.bnp-topbar-contact a:hover,
.bnp-topbar-contact a:focus {
    color: #ffffff;
}

/* Social Icons */

.bnp-topbar-social {
    display: flex;
    align-items: center;
    gap: 7px;
}

.bnp-topbar-social a {
    width: 29px;
    height: 29px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.09);
    font-size: 11px;
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        border-color 0.28s ease,
        background 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-topbar-social a:hover {
    transform: translateY(-3px);
    border-color: var(--bnp-green, #2f8f5b);
    color: #ffffff;
    background: var(--bnp-green, #2f8f5b);
    box-shadow: 0 8px 18px rgba(18, 101, 61, 0.3);
}

/* ==========================================
   MAIN NAVBAR
========================================== */

.bnp-navbar-wrapper {
    position: relative;
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid rgba(15, 23, 42, 0.065);
    box-shadow: 0 8px 30px rgba(15, 23, 42, 0.055);
    transition:
        padding 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-navbar {
    min-height: 86px;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.bnp-navbar .navbar-header {
    display: flex;
    align-items: center;
    min-height: 86px;
}

/* Logo */

.bnp-navbar-logo {
    height: 86px;
    display: inline-flex;
    align-items: center;
    padding: 7px 0;
}

.bnp-navbar-logo img {
    width: auto;
    height: 70px;
    max-width: 205px;
    display: block;
    object-fit: contain;
    transition:
        height 0.3s ease,
        transform 0.3s ease;
}

.bnp-navbar-logo:hover img {
    transform: scale(1.03);
}

/* Menu Alignment */

.bnp-navbar-collapse {
    padding-right: 0;
    padding-left: 0;
}

.bnp-navbar-menu {
    min-height: 86px;
    display: flex;
    align-items: center;
    margin: 0;
}

.bnp-navbar-menu > li {
    position: relative;
    float: none;
}

.bnp-navbar-menu > li > a {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 86px;
    padding: 0 12px;
    color: #2b3039 !important;
    background: transparent !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.3px;
    text-transform: uppercase;
    white-space: nowrap;
    transition:
        color 0.25s ease,
        transform 0.25s ease;
}

.bnp-navbar-menu > li > a::after {
    content: "";
    position: absolute;
    right: 12px;
    bottom: 22px;
    left: 12px;
    height: 3px;
    border-radius: 20px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-red, #e52030),
            var(--bnp-green, #2f8f5b)
        );
    opacity: 0;
    transform: scaleX(0);
    transform-origin: center;
    transition:
        opacity 0.25s ease,
        transform 0.25s ease;
}

.bnp-navbar-menu > li > a:hover {
    color: var(--bnp-red, #e52030) !important;
}

.bnp-navbar-menu > li > a:hover::after,
.bnp-navbar-menu > li.active > a::after {
    opacity: 1;
    transform: scaleX(1);
}

.bnp-navbar-menu > li.active > a {
    color: var(--bnp-red, #e52030) !important;
}

/* ==========================================
   DONATE BUTTON
========================================== */

.bnp-navbar-menu > li.bnp-navbar-donate-item {
    margin-left: 10px;
}

.bnp-navbar-menu >
li.bnp-navbar-donate-item >
a.bnp-navbar-donate-btn {
    min-height: 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 20px 0;
    padding: 0 18px;
    border-radius: 10px;
    color: #ffffff !important;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        ) !important;
    box-shadow: 0 11px 25px rgba(229, 32, 48, 0.24);
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease,
        background 0.28s ease;
}

.bnp-navbar-menu >
li.bnp-navbar-donate-item >
a.bnp-navbar-donate-btn::after {
    display: none;
}

.bnp-navbar-menu >
li.bnp-navbar-donate-item >
a.bnp-navbar-donate-btn:hover,
.bnp-navbar-menu >
li.bnp-navbar-donate-item >
a.bnp-navbar-donate-btn:focus {
    transform: translateY(-3px);
    color: #ffffff !important;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        ) !important;
    box-shadow: 0 15px 30px rgba(31, 111, 69, 0.3);
}

/* ==========================================
   MOBILE MENU BUTTON
========================================== */

.bnp-menu-toggle {
    position: relative;
    width: 46px;
    height: 42px;
    margin: 22px 0 22px auto;
    padding: 10px;
    border: 0 !important;
    border-radius: 10px;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        ) !important;
    box-shadow: 0 9px 20px rgba(229, 32, 48, 0.22);
}

.bnp-menu-toggle .icon-bar {
    width: 23px;
    height: 2px;
    margin: 4px auto;
    border-radius: 20px;
    background: #ffffff !important;
    transition:
        transform 0.3s ease,
        opacity 0.3s ease;
}

/* ==========================================
   STICKY HEADER
========================================== */

.bnp-main-header.bnp-header-sticky {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    animation: bnpHeaderSlideDown 0.4s ease;
}

.bnp-main-header.bnp-header-sticky .bnp-topbar {
    display: none;
}

.bnp-main-header.bnp-header-sticky .bnp-navbar-wrapper {
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 12px 35px rgba(15, 23, 42, 0.12);
    backdrop-filter: blur(13px);
}

.bnp-main-header.bnp-header-sticky .bnp-navbar,
.bnp-main-header.bnp-header-sticky .bnp-navbar .navbar-header,
.bnp-main-header.bnp-header-sticky .bnp-navbar-menu {
    min-height: 72px;
}

.bnp-main-header.bnp-header-sticky .bnp-navbar-logo {
    height: 72px;
}

.bnp-main-header.bnp-header-sticky .bnp-navbar-logo img {
    height: 58px;
}

.bnp-main-header.bnp-header-sticky
.bnp-navbar-menu > li > a {
    min-height: 72px;
}

.bnp-main-header.bnp-header-sticky
.bnp-navbar-menu >
li.bnp-navbar-donate-item >
a.bnp-navbar-donate-btn {
    min-height: 43px;
    margin-top: 14px;
    margin-bottom: 14px;
}

@keyframes bnpHeaderSlideDown {
    from {
        opacity: 0;
        transform: translateY(-100%);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 1199px) {

    .bnp-navbar-menu > li > a {
        padding-right: 8px;
        padding-left: 8px;
        font-size: 10px;
    }

    .bnp-navbar-menu > li > a::after {
        right: 8px;
        left: 8px;
    }

    .bnp-navbar-menu >
    li.bnp-navbar-donate-item >
    a.bnp-navbar-donate-btn {
        padding-right: 13px;
        padding-left: 13px;
    }
}

@media (max-width: 991px) {

    .bnp-topbar-contact {
        gap: 14px;
    }

    .bnp-navbar .navbar-header {
        width: 100%;
    }

    .bnp-menu-toggle {
        display: block;
    }

    .bnp-navbar-collapse {
        width: 100%;
        padding: 0;
        border: 0;
        box-shadow: none;
    }

    .bnp-navbar-menu {
        min-height: 0;
        display: block;
        float: none !important;
        margin: 0;
        padding: 12px 0 22px;
    }

    .bnp-navbar-menu > li {
        display: block;
        width: 100%;
    }

    .bnp-navbar-menu > li > a {
        min-height: 47px;
        padding: 0 16px;
        border-radius: 8px;
        font-size: 11px;
    }

    .bnp-navbar-menu > li > a::after {
        top: 11px;
        right: auto;
        bottom: 11px;
        left: 0;
        width: 3px;
        height: auto;
        transform: scaleY(0);
    }

    .bnp-navbar-menu > li > a:hover::after,
    .bnp-navbar-menu > li.active > a::after {
        transform: scaleY(1);
    }

    .bnp-navbar-menu > li > a:hover {
        padding-left: 22px;
        background: #fff5f6 !important;
    }

    .bnp-navbar-menu >
    li.bnp-navbar-donate-item {
        margin: 10px 16px 0;
    }

    .bnp-navbar-menu >
    li.bnp-navbar-donate-item >
    a.bnp-navbar-donate-btn {
        width: calc(100% - 32px);
        min-height: 47px;
        margin: 0;
    }
}

@media (max-width: 767px) {

    .bnp-topbar {
        min-height: 38px;
    }

    .bnp-topbar-inner {
        min-height: 38px;
        justify-content: center;
    }

    .bnp-topbar-contact {
        justify-content: center;
    }

    .bnp-topbar-contact span,
    .bnp-topbar-contact a {
        font-size: 9px;
    }

    .bnp-topbar-contact span {
        display: none;
    }

    .bnp-topbar-social {
        display: none;
    }

    .bnp-navbar,
    .bnp-navbar .navbar-header {
        min-height: 74px;
    }

    .bnp-navbar-logo {
        height: 74px;
    }

    .bnp-navbar-logo img {
        height: 58px;
        max-width: 175px;
    }

    .bnp-menu-toggle {
        margin-top: 16px;
        margin-bottom: 16px;
    }
}

@media (max-width: 480px) {

    .bnp-topbar-contact {
        gap: 10px;
    }

    .bnp-topbar-contact a:last-child {
        display: none;
    }

    .bnp-navbar-logo img {
        height: 53px;
        max-width: 155px;
    }
}


/* ==========================================
   BNP PREMIUM COMPACT HERO
========================================== */

.bnp-hero {
    position: relative;
    min-height: 650px;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #ffffff;
    background: #14171d;
}

.bnp-hero-background,
.bnp-hero-background::after {
    position: absolute;
    inset: 0;
}

.bnp-hero-background img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.bnp-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(13, 16, 22, 0.96) 0%,
            rgba(31, 9, 16, 0.88) 45%,
            rgba(18, 20, 27, 0.62) 100%
        );
}

.bnp-hero-glow {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(10px);
}

.bnp-hero-glow-one {
    top: -180px;
    left: -130px;
    width: 430px;
    height: 430px;
    background: rgba(229, 32, 48, 0.15);
}

.bnp-hero-glow-two {
    right: -160px;
    bottom: -180px;
    width: 420px;
    height: 420px;
    background: rgba(47, 143, 91, 0.09);
}

.bnp-hero .container {
    position: relative;
    z-index: 3;
}

.bnp-hero-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(390px, 0.88fr);
    align-items: center;
    gap: 65px;
    padding: 75px 0 90px;
}

/* Hero Content */

.bnp-hero-content {
    max-width: 690px;
}

.bnp-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    padding: 8px 13px;
    border: 1px solid rgba(126, 226, 169, 0.25);
    border-radius: 30px;
    color: #c8f4da;
    background: rgba(47, 143, 91, 0.12);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    backdrop-filter: blur(8px);
}

.bnp-hero-live-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--bnp-green, #2f8f5b);
    box-shadow: 0 0 0 6px rgba(47, 143, 91, 0.14);
    animation: bnpHeroLive 1.8s infinite;
}

@keyframes bnpHeroLive {
    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.4;
    }
}

.bnp-hero-content h1 {
    margin: 0;
    color: #ffffff;
    font-size: 52px;
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -1.2px;
}

.bnp-hero-content h1 span {
    display: block;
    margin-top: 7px;
    color: #ff4054;
}

.bnp-hero-content > p {
    max-width: 640px;
    margin: 23px 0 29px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
    line-height: 1.85;
}

/* Main Buttons */

.bnp-hero-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
}

.bnp-hero-btn {
    min-width: 205px;
    min-height: 58px;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 18px;
    border-radius: 12px;
    transition:
        transform 0.28s ease,
        border-color 0.28s ease,
        background 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-hero-btn > i {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    font-size: 15px;
}

.bnp-hero-btn span,
.bnp-hero-btn small {
    display: block;
}

.bnp-hero-btn small {
    margin-bottom: 2px;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.bnp-hero-btn span {
    font-size: 12px;
    font-weight: 800;
}

.bnp-hero-btn-primary {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 15px 32px rgba(229, 32, 48, 0.3);
}

.bnp-hero-btn-primary > i {
    background: rgba(255, 255, 255, 0.15);
}

.bnp-hero-btn-primary small {
    color: rgba(255, 255, 255, 0.68);
}

.bnp-hero-btn-primary:hover {
    transform: translateY(-4px);
    color: #ffffff;
    box-shadow: 0 21px 40px rgba(229, 32, 48, 0.42);
}

.bnp-hero-btn-secondary {
    border: 1px solid rgba(255, 255, 255, 0.17);
    color: #ffffff;
    background: rgba(255, 255, 255, 0.075);
    backdrop-filter: blur(10px);
}

.bnp-hero-btn-secondary > i {
    color: #ffffff;
    background: var(--bnp-green, #2f8f5b);
}

.bnp-hero-btn-secondary small {
    color: rgba(255, 255, 255, 0.53);
}

.bnp-hero-btn-secondary:hover {
    transform: translateY(-4px);
    border-color: rgba(126, 226, 169, 0.45);
    color: #ffffff;
    background: rgba(47, 143, 91, 0.15);
}

/* Trust Row */

.bnp-hero-trust {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 28px;
}

.bnp-hero-trust div {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255, 255, 255, 0.58);
    font-size: 10px;
    font-weight: 700;
}

.bnp-hero-trust i {
    color: #68d79a;
    font-size: 13px;
}

/* Right Quick Panel */

.bnp-hero-panel {
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.095);
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.27);
    backdrop-filter: blur(18px);
}

.bnp-hero-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

.bnp-hero-panel-header span {
    color: #70dda1;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.bnp-hero-panel-header h2 {
    margin: 5px 0 0;
    color: #ffffff;
    font-size: 22px;
    font-weight: 800;
}

.bnp-hero-panel-icon {
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    color: #ffffff !important;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 10px 24px rgba(229, 32, 48, 0.28);
}

.bnp-hero-panel-icon i {
    font-size: 20px;
}

.bnp-hero-quick-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
}

.bnp-hero-quick-grid > a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 13px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.055);
    transition:
        transform 0.28s ease,
        border-color 0.28s ease,
        background 0.28s ease;
}

.bnp-hero-quick-grid > a:hover {
    transform: translateX(6px);
    border-color: rgba(229, 32, 48, 0.36);
    color: #ffffff;
    background: rgba(229, 32, 48, 0.11);
}

.bnp-quick-icon {
    width: 41px;
    height: 41px;
    flex: 0 0 41px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #ffffff;
    font-size: 15px;
}

.bnp-quick-icon.emergency,
.bnp-quick-icon.donation {
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-quick-icon.donor,
.bnp-quick-icon.volunteer {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-hero-quick-grid > a > div {
    flex: 1;
}

.bnp-hero-quick-grid strong,
.bnp-hero-quick-grid small {
    display: block;
}

.bnp-hero-quick-grid strong {
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
}

.bnp-hero-quick-grid small {
    color: rgba(255, 255, 255, 0.48);
    font-size: 9px;
}

.bnp-hero-quick-grid > a > i {
    color: rgba(255, 255, 255, 0.42);
    transition: transform 0.28s ease;
}

.bnp-hero-quick-grid > a:hover > i {
    transform: translateX(4px);
    color: #ffffff;
}

/* Helpline */

.bnp-hero-help {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 13px;
    margin-top: 17px;
    padding-top: 17px;
    border-top: 1px solid rgba(255, 255, 255, 0.09);
}

.bnp-hero-help > div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.bnp-hero-help > div > i {
    width: 35px;
    height: 35px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #ffffff;
    background: rgba(229, 32, 48, 0.8);
}

.bnp-hero-help span,
.bnp-hero-help small,
.bnp-hero-help strong {
    display: block;
}

.bnp-hero-help small {
    margin-bottom: 2px;
    color: rgba(255, 255, 255, 0.43);
    font-size: 8px;
    text-transform: uppercase;
}

.bnp-hero-help strong {
    color: #ffffff;
    font-size: 11px;
}

.bnp-hero-help > a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px 13px;
    border-radius: 9px;
    color: #ffffff;
    background: var(--bnp-green, #2f8f5b);
    font-size: 10px;
    font-weight: 800;
}

.bnp-hero-help > a:hover {
    color: #ffffff;
    background: var(--bnp-green-dark, #1f6f45);
}

/* Scroll Indicator */

.bnp-hero-scroll {
    position: absolute;
    bottom: 20px;
    left: 50%;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, 0.48);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    transform: translateX(-50%);
}

.bnp-hero-scroll span {
    width: 19px;
    height: 30px;
    position: relative;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 20px;
}

.bnp-hero-scroll span::before {
    content: "";
    position: absolute;
    top: 6px;
    left: 50%;
    width: 3px;
    height: 6px;
    border-radius: 20px;
    background: #ffffff;
    transform: translateX(-50%);
    animation: bnpHeroScroll 1.7s infinite;
}

@keyframes bnpHeroScroll {
    0% {
        opacity: 0;
        transform: translate(-50%, 0);
    }

    40% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        transform: translate(-50%, 10px);
    }
}

/* Responsive */

@media (max-width: 1199px) {

    .bnp-hero-layout {
        grid-template-columns: minmax(0, 1fr) 390px;
        gap: 40px;
    }

    .bnp-hero-content h1 {
        font-size: 46px;
    }
}

@media (max-width: 991px) {

    .bnp-hero {
        min-height: auto;
    }

    .bnp-hero-layout {
        grid-template-columns: 1fr;
        gap: 42px;
        padding: 70px 0 85px;
    }

    .bnp-hero-content {
        max-width: 760px;
    }

    .bnp-hero-panel {
        max-width: 650px;
    }
}

@media (max-width: 767px) {

    .bnp-hero-layout {
        padding: 55px 0 75px;
    }

    .bnp-hero-content h1 {
        font-size: 35px;
    }

    .bnp-hero-content > p {
        font-size: 14px;
    }

    .bnp-hero-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-hero-btn {
        width: 100%;
    }

    .bnp-hero-trust {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .bnp-hero-panel {
        padding: 21px;
        border-radius: 19px;
    }
}

@media (max-width: 480px) {

    .bnp-hero-content h1 {
        font-size: 30px;
    }

    .bnp-hero-badge {
        font-size: 8px;
    }

    .bnp-hero-help {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-hero-help > a {
        justify-content: center;
    }

    .bnp-hero-scroll {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-hero-live-dot,
    .bnp-hero-scroll span::before {
        animation: none;
    }
}


/* ==========================================
   BNP COMPACT ABOUT SECTION
========================================== */

.bnp-about-compact {
    position: relative;
    overflow: hidden;
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(229, 32, 48, 0.055),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 85%,
            rgba(47, 143, 91, 0.045),
            transparent 28%
        ),
        #ffffff;
}

.bnp-about-compact-grid {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(420px, 0.9fr);
    align-items: center;
    gap: 68px;
}

/* Content */

.bnp-section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    color: var(--bnp-red, #e52030);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.bnp-section-eyebrow::before {
    content: "";
    width: 36px;
    height: 3px;
    border-radius: 20px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-red, #e52030),
            var(--bnp-green, #2f8f5b)
        );
}

.bnp-about-compact-content h2 {
    margin: 0;
    color: var(--bnp-text, #252a33);
    font-size: 42px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.7px;
}

.bnp-about-compact-content h2 span {
    display: block;
    color: var(--bnp-red, #e52030);
}

.bnp-about-compact-content > p {
    max-width: 620px;
    margin: 20px 0 23px;
    color: var(--bnp-muted, #737a85);
    font-size: 14px;
    line-height: 1.85;
}

/* Points */

.bnp-about-points {
    display: grid;
    gap: 12px;
}

.bnp-about-points > div {
    display: flex;
    align-items: center;
    gap: 11px;
    color: #4f5661;
    font-size: 12px;
    font-weight: 650;
}

.bnp-about-points i {
    color: var(--bnp-green, #2f8f5b);
    font-size: 15px;
}

/* Buttons */

.bnp-about-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.bnp-about-primary-btn,
.bnp-about-secondary-btn {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 12px 19px;
    border-radius: 9px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.35px;
    text-transform: uppercase;
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        background 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-about-primary-btn {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 12px 26px rgba(229, 32, 48, 0.24);
}

.bnp-about-primary-btn:hover {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 17px 32px rgba(229, 32, 48, 0.34);
}

.bnp-about-secondary-btn {
    border: 1px solid #dfe3e8;
    color: #303640;
    background: #ffffff;
}

.bnp-about-secondary-btn i {
    color: var(--bnp-green, #2f8f5b);
}

.bnp-about-secondary-btn:hover {
    transform: translateY(-3px);
    border-color: rgba(47, 143, 91, 0.35);
    color: var(--bnp-green-dark, #1f6f45);
    background: #f5fbf8;
}

/* Video */

.bnp-about-video-wrap {
    position: relative;
    padding: 15px 15px 34px 25px;
}

.bnp-about-video {
    position: relative;
    min-height: 390px;
    overflow: hidden;
    border-radius: 22px;
    background: #20252d;
    box-shadow:
        0 28px 62px rgba(15, 23, 42, 0.15),
        0 8px 22px rgba(15, 23, 42, 0.06);
}

.bnp-about-video img {
    width: 100%;
    height: 390px;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.bnp-about-video:hover img {
    transform: scale(1.06);
}

.bnp-about-video-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(10, 12, 17, 0.04),
            rgba(10, 12, 17, 0.72)
        );
}

/* Play Button */

.bnp-about-play {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 3;
    transform: translate(-50%, -50%);
}

.bnp-about-play span {
    width: 78px;
    height: 78px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 3px solid rgba(255, 255, 255, 0.88);
    border-radius: 50%;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow:
        0 18px 35px rgba(229, 32, 48, 0.34),
        0 0 0 12px rgba(255, 255, 255, 0.08);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-about-play:hover span {
    transform: scale(1.08);
    box-shadow:
        0 22px 42px rgba(229, 32, 48, 0.44),
        0 0 0 16px rgba(255, 255, 255, 0.07);
}

.bnp-about-play i {
    margin-left: 4px;
    font-size: 24px;
}

/* Caption */

.bnp-about-video-caption {
    position: absolute;
    right: 24px;
    bottom: 22px;
    left: 24px;
    z-index: 3;
}

.bnp-about-video-caption span,
.bnp-about-video-caption strong {
    display: block;
}

.bnp-about-video-caption span {
    margin-bottom: 5px;
    color: #77dfa5;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.bnp-about-video-caption strong {
    color: #ffffff;
    font-size: 18px;
    font-weight: 800;
}

/* Trust Card */

.bnp-about-trust-card {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 15px 18px;
    border: 1px solid rgba(47, 143, 91, 0.14);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 17px 38px rgba(15, 23, 42, 0.14);
}

.bnp-about-trust-icon {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-about-trust-card strong,
.bnp-about-trust-card small {
    display: block;
}

.bnp-about-trust-card strong {
    margin-bottom: 3px;
    color: #252a33;
    font-size: 12px;
    font-weight: 800;
}

.bnp-about-trust-card small {
    color: #838a94;
    font-size: 9px;
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-about-compact {
        padding: 70px 0;
    }

    .bnp-about-compact-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .bnp-about-video-wrap {
        max-width: 690px;
    }
}

@media (max-width: 767px) {

    .bnp-about-compact {
        padding: 55px 0;
    }

    .bnp-about-compact-content h2 {
        font-size: 31px;
    }

    .bnp-about-video-wrap {
        padding: 5px 0 38px;
    }

    .bnp-about-video,
    .bnp-about-video img {
        min-height: 320px;
        height: 320px;
    }

    .bnp-about-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-about-primary-btn,
    .bnp-about-secondary-btn {
        width: 100%;
    }

    .bnp-about-trust-card {
        left: 14px;
        max-width: calc(100% - 28px);
    }
}

@media (max-width: 480px) {

    .bnp-about-compact-content h2 {
        font-size: 27px;
    }

    .bnp-about-video,
    .bnp-about-video img {
        min-height: 280px;
        height: 280px;
    }

    .bnp-about-play span {
        width: 66px;
        height: 66px;
    }
}


/* ==========================================
   BNP COMPACT LIVE IMPACT SECTION
========================================== */

.bnp-impact-section {
    position: relative;
    overflow: hidden;
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(229, 32, 48, 0.09),
            transparent 30%
        ),
        radial-gradient(
            circle at 92% 85%,
            rgba(47, 143, 91, 0.08),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #171a21,
            #2b0d16
        );
}

.bnp-impact-section .container {
    position: relative;
    z-index: 3;
}

.bnp-impact-shape {
    position: absolute;
    pointer-events: none;
}

.bnp-impact-shape-one {
    top: -130px;
    right: -100px;
    width: 330px;
    height: 330px;
    border: 48px solid rgba(255, 255, 255, 0.025);
    border-radius: 50%;
}

.bnp-impact-shape-two {
    left: -120px;
    bottom: -160px;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    background: rgba(47, 143, 91, 0.045);
}

.bnp-impact-layout {
    display: grid;
    grid-template-columns:
        minmax(280px, 0.7fr)
        minmax(0, 1.3fr);
    align-items: center;
    gap: 58px;
}

/* Intro */

.bnp-impact-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    color: #77dfa5;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.bnp-impact-label::before {
    content: "";
    width: 37px;
    height: 3px;
    border-radius: 20px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-red, #e52030)
        );
}

.bnp-impact-intro h2 {
    margin: 0;
    color: #ffffff;
    font-size: 41px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.7px;
}

.bnp-impact-intro h2 span {
    display: block;
    color: #ff4054;
}

.bnp-impact-intro > p {
    margin: 20px 0 23px;
    color: rgba(255, 255, 255, 0.64);
    font-size: 13px;
    line-height: 1.85;
}

.bnp-impact-status {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 25px;
    padding: 14px 15px;
    border: 1px solid rgba(126, 226, 169, 0.14);
    border-radius: 12px;
    background: rgba(47, 143, 91, 0.08);
}

.bnp-impact-status-dot {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: var(--bnp-green, #2f8f5b);
    box-shadow: 0 0 0 7px rgba(47, 143, 91, 0.13);
    animation: bnpImpactLive 1.8s infinite;
}

@keyframes bnpImpactLive {
    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.4;
    }
}

.bnp-impact-status strong,
.bnp-impact-status small {
    display: block;
}

.bnp-impact-status strong {
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
}

.bnp-impact-status small {
    color: rgba(255, 255, 255, 0.46);
    font-size: 9px;
    line-height: 1.5;
}

.bnp-impact-view-btn {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 12px 19px;
    border-radius: 9px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    box-shadow: 0 12px 26px rgba(229, 32, 48, 0.24);
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-impact-view-btn:hover {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 17px 34px rgba(229, 32, 48, 0.36);
}

/* Stats Grid */

.bnp-impact-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.bnp-impact-card {
    position: relative;
    padding: 19px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.055);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.12);
    backdrop-filter: blur(10px);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
}

.bnp-impact-card:hover {
    transform: translateY(-6px);
    border-color: rgba(126, 226, 169, 0.22);
    background: rgba(255, 255, 255, 0.08);
}

.bnp-impact-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 13px;
    margin-bottom: 16px;
}

.bnp-impact-icon {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffffff;
    box-shadow: 0 9px 22px rgba(0, 0, 0, 0.15);
}

.bnp-impact-icon.red {
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-impact-icon.green {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-impact-icon.dark {
    background:
        linear-gradient(
            135deg,
            #3a414d,
            #20242b
        );
}

.bnp-impact-icon.maroon {
    background:
        linear-gradient(
            135deg,
            #7a1730,
            #390a16
        );
}

.bnp-impact-trend {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 9px;
    border-radius: 20px;
    color: #83e4ad;
    background: rgba(47, 143, 91, 0.12);
    font-size: 7px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.bnp-impact-card > strong {
    display: block;
    margin-bottom: 6px;
    color: #ffffff;
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
}

.bnp-impact-card > strong::after,
.bnp-impact-wide-content strong::after {
    content: "+";
    margin-left: 2px;
    color: #ff4054;
    font-size: 15px;
}

.bnp-impact-card h3 {
    margin: 0 0 7px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
}

.bnp-impact-card p {
    margin: 0;
    color: rgba(255, 255, 255, 0.48);
    font-size: 9px;
    line-height: 1.65;
}

/* Wide Cards */

.bnp-impact-card-wide {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 16px 18px;
}

.bnp-impact-wide-content {
    display: flex;
    align-items: center;
    gap: 13px;
}

.bnp-impact-wide-content strong {
    display: block;
    margin-bottom: 4px;
    color: #ffffff;
    font-size: 21px;
    font-weight: 800;
    line-height: 1;
}

.bnp-impact-wide-content h3 {
    margin-bottom: 3px;
}

.bnp-impact-wide-content p {
    max-width: 220px;
}

.bnp-impact-card-wide > a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: rgba(255, 255, 255, 0.58);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    white-space: nowrap;
    transition: color 0.25s ease;
}

.bnp-impact-card-wide > a:hover {
    color: #77dfa5;
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-impact-section {
        padding: 70px 0;
    }

    .bnp-impact-layout {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .bnp-impact-intro {
        max-width: 680px;
    }
}

@media (max-width: 767px) {

    .bnp-impact-section {
        padding: 55px 0;
    }

    .bnp-impact-intro h2 {
        font-size: 31px;
    }

    .bnp-impact-grid {
        grid-template-columns: 1fr;
    }

    .bnp-impact-card-wide {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 480px) {

    .bnp-impact-intro h2 {
        font-size: 27px;
    }

    .bnp-impact-card {
        padding: 17px;
    }

    .bnp-impact-wide-content {
        align-items: flex-start;
    }

    .bnp-impact-wide-content p {
        max-width: none;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-impact-status-dot {
        animation: none;
    }

    .bnp-impact-card {
        transition: none;
    }
}


/* ==========================================
   BNP COMPACT FEATURED CAMPAIGNS
========================================== */

.bnp-featured-campaigns {
    position: relative;
    padding: 82px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(229, 32, 48, 0.055),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 85%,
            rgba(47, 143, 91, 0.045),
            transparent 28%
        ),
        #f7f8fb;
}

.bnp-section-heading-row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 35px;
    margin-bottom: 40px;
}

.bnp-section-heading-content {
    max-width: 680px;
}

.bnp-section-heading-content h2 {
    margin: 0;
    color: var(--bnp-text, #252a33);
    font-size: 39px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.65px;
}

.bnp-section-heading-content h2 span {
    display: block;
    color: var(--bnp-red, #e52030);
}

.bnp-section-heading-content p {
    max-width: 610px;
    margin: 16px 0 0;
    color: var(--bnp-muted, #737a85);
    font-size: 13px;
    line-height: 1.8;
}

.bnp-section-view-btn {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 11px 18px;
    border: 1px solid #dfe3e8;
    border-radius: 9px;
    color: #303640;
    background: #ffffff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 9px 22px rgba(15, 23, 42, 0.05);
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-section-view-btn:hover {
    transform: translateY(-3px);
    border-color: rgba(47, 143, 91, 0.35);
    color: var(--bnp-green-dark, #1f6f45);
    box-shadow: 0 14px 28px rgba(47, 143, 91, 0.1);
}

/* Grid */

.bnp-featured-campaign-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.bnp-featured-campaign-card {
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 18px;
    background: #ffffff;
    box-shadow:
        0 18px 42px rgba(15, 23, 42, 0.075),
        0 5px 16px rgba(15, 23, 42, 0.035);
    transition:
        transform 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease;
}

.bnp-featured-campaign-card:hover {
    transform: translateY(-8px);
    border-color: rgba(229, 32, 48, 0.16);
    box-shadow:
        0 28px 58px rgba(15, 23, 42, 0.13),
        0 9px 22px rgba(229, 32, 48, 0.06);
}

/* Image */

.bnp-featured-campaign-image {
    position: relative;
    height: 210px;
    overflow: hidden;
    background: #20252d;
}

.bnp-featured-campaign-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.bnp-featured-campaign-card:hover
.bnp-featured-campaign-image img {
    transform: scale(1.07);
}

.bnp-featured-campaign-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(8, 10, 14, 0.04),
            rgba(8, 10, 14, 0.7)
        );
}

.bnp-featured-campaign-status {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 3;
    padding: 7px 10px;
    border-radius: 30px;
    color: #ffffff;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}

.bnp-featured-campaign-status.active {
    background: var(--bnp-green, #2f8f5b);
}

.bnp-featured-campaign-status.priority {
    background: var(--bnp-red, #e52030);
}

.bnp-featured-campaign-status.upcoming {
    background: #334a78;
}

.bnp-featured-campaign-date {
    position: absolute;
    right: 15px;
    bottom: 15px;
    z-index: 3;
    min-width: 55px;
    padding: 9px 10px;
    border: 1px solid rgba(255, 255, 255, 0.17);
    border-radius: 11px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.12);
    text-align: center;
    backdrop-filter: blur(8px);
}

.bnp-featured-campaign-date strong,
.bnp-featured-campaign-date span {
    display: block;
}

.bnp-featured-campaign-date strong {
    font-size: 20px;
    font-weight: 800;
    line-height: 1;
}

.bnp-featured-campaign-date span {
    margin-top: 3px;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
}

/* Body */

.bnp-featured-campaign-body {
    padding: 22px;
}

.bnp-featured-campaign-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
    color: #858b94;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
}

.bnp-featured-campaign-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.bnp-featured-campaign-meta i {
    color: var(--bnp-red, #e52030);
}

.bnp-featured-campaign-body h3 {
    min-height: 48px;
    margin: 0 0 10px;
    color: #252a33;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.35;
}

.bnp-featured-campaign-body > p {
    min-height: 57px;
    margin: 0 0 17px;
    color: #747b85;
    font-size: 11px;
    line-height: 1.7;
}

/* Progress */

.bnp-featured-progress-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
    color: #5f6670;
    font-size: 9px;
    font-weight: 750;
}

.bnp-featured-progress-info strong {
    color: var(--bnp-red, #e52030);
}

.bnp-featured-progress {
    height: 7px;
    margin-bottom: 18px;
    overflow: hidden;
    border-radius: 30px;
    background: #edf0f3;
}

.bnp-featured-progress span {
    height: 100%;
    display: block;
    border-radius: inherit;
    background:
        linear-gradient(
            90deg,
            var(--bnp-red, #e52030),
            var(--bnp-green, #2f8f5b)
        );
}

/* Footer */

.bnp-featured-campaign-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding-top: 16px;
    border-top: 1px solid #edf0f3;
}

.bnp-featured-campaign-footer strong,
.bnp-featured-campaign-footer span {
    display: block;
}

.bnp-featured-campaign-footer strong {
    margin-bottom: 3px;
    color: #252a33;
    font-size: 14px;
    font-weight: 800;
}

.bnp-featured-campaign-footer span {
    color: #898f98;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

.bnp-featured-campaign-footer a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--bnp-red, #e52030);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

.bnp-featured-campaign-footer a:hover {
    color: var(--bnp-green-dark, #1f6f45);
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-featured-campaigns {
        padding: 70px 0;
    }

    .bnp-featured-campaign-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnp-section-heading-row {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767px) {

    .bnp-featured-campaigns {
        padding: 55px 0;
    }

    .bnp-featured-campaign-grid {
        grid-template-columns: 1fr;
    }

    .bnp-section-heading-content h2 {
        font-size: 31px;
    }

    .bnp-featured-campaign-image {
        height: 230px;
    }

    .bnp-featured-campaign-body h3,
    .bnp-featured-campaign-body > p {
        min-height: 0;
    }

    .bnp-section-view-btn {
        width: 100%;
    }
}

@media (max-width: 480px) {

    .bnp-section-heading-content h2 {
        font-size: 27px;
    }

    .bnp-featured-campaign-image {
        height: 205px;
    }
}

/* ==========================================
   BNP COMPACT DONATION SECTION
========================================== */

.bnp-donate-compact {
    position: relative;
    overflow: hidden;
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 12% 18%,
            rgba(229, 32, 48, 0.06),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 82%,
            rgba(47, 143, 91, 0.05),
            transparent 28%
        ),
        #ffffff;
}

.bnp-donate-compact-layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(420px, 1.1fr);
    align-items: center;
    gap: 65px;
}

/* Left Content */

.bnp-donate-compact-content h2 {
    margin: 0;
    color: var(--bnp-text, #252a33);
    font-size: 40px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.7px;
}

.bnp-donate-compact-content h2 span {
    display: block;
    color: var(--bnp-red, #e52030);
}

.bnp-donate-compact-content > p {
    max-width: 590px;
    margin: 19px 0 22px;
    color: var(--bnp-muted, #737a85);
    font-size: 13px;
    line-height: 1.85;
}

.bnp-donate-impact-list {
    display: grid;
    gap: 11px;
}

.bnp-donate-impact-list div {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #505762;
    font-size: 11px;
    font-weight: 650;
}

.bnp-donate-impact-list i {
    color: var(--bnp-green, #2f8f5b);
    font-size: 14px;
}

.bnp-donate-compact-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 27px;
}

.bnp-donate-primary-btn,
.bnp-donate-secondary-btn {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 18px;
    border-radius: 9px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.35px;
    text-transform: uppercase;
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        background 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-donate-primary-btn {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 12px 26px rgba(229, 32, 48, 0.24);
}

.bnp-donate-primary-btn:hover {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 17px 32px rgba(229, 32, 48, 0.34);
}

.bnp-donate-secondary-btn {
    border: 1px solid #dfe3e8;
    color: #303640;
    background: #ffffff;
}

.bnp-donate-secondary-btn i {
    color: var(--bnp-green, #2f8f5b);
}

.bnp-donate-secondary-btn:hover {
    transform: translateY(-3px);
    border-color: rgba(47, 143, 91, 0.35);
    color: var(--bnp-green-dark, #1f6f45);
    background: #f5fbf8;
}

.bnp-donate-help {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 20px;
    color: #858b94;
    font-size: 10px;
}

.bnp-donate-help > i {
    width: 31px;
    height: 31px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: #ffffff;
    background: var(--bnp-green, #2f8f5b);
}

.bnp-donate-help a {
    margin-left: 3px;
    color: var(--bnp-red, #e52030);
    font-weight: 800;
}

/* Account Card */

.bnp-donate-account-wrap {
    position: relative;
}

.bnp-donate-account-card {
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 21px;
    background: #ffffff;
    box-shadow:
        0 27px 62px rgba(15, 23, 42, 0.12),
        0 7px 20px rgba(15, 23, 42, 0.05);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.bnp-donate-account-card:hover {
    transform: translateY(-7px);
    box-shadow:
        0 36px 74px rgba(15, 23, 42, 0.17),
        0 12px 27px rgba(229, 32, 48, 0.07);
}

.bnp-donate-account-header {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 22px 24px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-maroon, #3a0b16),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-donate-bank-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: var(--bnp-red, #e52030);
    background: #ffffff;
    box-shadow: 0 9px 22px rgba(0, 0, 0, 0.18);
}

.bnp-donate-bank-icon i {
    font-size: 19px;
}

.bnp-donate-account-header > div:nth-child(2) {
    flex: 1;
}

.bnp-donate-account-header span {
    display: block;
    margin-bottom: 4px;
    color: rgba(255, 255, 255, 0.66);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.bnp-donate-account-header h3 {
    margin: 0;
    color: #ffffff;
    font-size: 20px;
    font-weight: 800;
}

.bnp-donate-verified {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border: 1px solid rgba(126, 226, 169, 0.24);
    border-radius: 25px;
    color: #c9f5db;
    background: rgba(47, 143, 91, 0.22);
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
}

/* Detail Rows */

.bnp-donate-account-body {
    padding: 10px 24px 3px;
}

.bnp-donate-detail-row {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 15px 0;
    border-bottom: 1px solid #edf0f3;
}

.bnp-donate-detail-row > div {
    flex: 1;
    min-width: 0;
}

.bnp-donate-detail-row span,
.bnp-donate-detail-row strong {
    display: block;
}

.bnp-donate-detail-row > div > span {
    margin-bottom: 5px;
    color: #8a9099;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.bnp-donate-detail-row strong {
    overflow-wrap: anywhere;
    color: #252a33;
    font-size: 13px;
    font-weight: 800;
}

/* Copy Buttons */

.bnp-copy-button {
    min-width: 67px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    border-radius: 10px;
    color: var(--bnp-red, #e52030);
    background: #fff1f3;
    font-size: 8px;
    font-weight: 800;
    cursor: pointer;
    transition:
        transform 0.25s ease,
        color 0.25s ease,
        background 0.25s ease;
}

.bnp-copy-button:hover {
    transform: translateY(-2px);
    color: #ffffff;
    background: var(--bnp-red, #e52030);
}

.bnp-copy-button.copied {
    color: #ffffff;
    background: var(--bnp-green, #2f8f5b);
}

/* Mobile Methods */

.bnp-donate-mobile-methods {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    padding: 18px 24px;
}

.bnp-donate-mobile-methods > div {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
    padding: 11px;
    border: 1px solid #edf0f3;
    border-radius: 12px;
    background: #fafbfc;
}

.bnp-donate-method-icon {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-donate-mobile-methods > div > div {
    flex: 1;
    min-width: 0;
}

.bnp-donate-mobile-methods span,
.bnp-donate-mobile-methods strong {
    display: block;
}

.bnp-donate-mobile-methods div > span {
    margin-bottom: 3px;
    color: #8b919a;
    font-size: 7px;
    font-weight: 800;
    text-transform: uppercase;
}

.bnp-donate-mobile-methods strong {
    overflow-wrap: anywhere;
    color: #252a33;
    font-size: 9px;
}

.bnp-mini-copy-button {
    width: 31px;
    height: 31px;
    flex: 0 0 31px;
    border: 0;
    border-radius: 8px;
    color: var(--bnp-red, #e52030);
    background: #fff0f2;
    cursor: pointer;
}

.bnp-mini-copy-button:hover,
.bnp-mini-copy-button.copied {
    color: #ffffff;
    background: var(--bnp-green, #2f8f5b);
}

/* Trust Row */

.bnp-donate-trust-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding: 17px 24px 20px;
    border-top: 1px solid #edf0f3;
}

.bnp-donate-trust-row span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--bnp-green-dark, #1f6f45);
    font-size: 9px;
    font-weight: 800;
}

.bnp-donate-trust-row i {
    color: var(--bnp-green, #2f8f5b);
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-donate-compact {
        padding: 70px 0;
    }

    .bnp-donate-compact-layout {
        grid-template-columns: 1fr;
        gap: 43px;
    }

    .bnp-donate-account-wrap {
        max-width: 700px;
    }
}

@media (max-width: 767px) {

    .bnp-donate-compact {
        padding: 55px 0;
    }

    .bnp-donate-compact-content h2 {
        font-size: 31px;
    }

    .bnp-donate-compact-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-donate-primary-btn,
    .bnp-donate-secondary-btn {
        width: 100%;
    }

    .bnp-donate-mobile-methods {
        grid-template-columns: 1fr;
    }

    .bnp-donate-verified {
        display: none;
    }
}

@media (max-width: 480px) {

    .bnp-donate-compact-content h2 {
        font-size: 27px;
    }

    .bnp-donate-account-header,
    .bnp-donate-account-body,
    .bnp-donate-mobile-methods {
        padding-right: 18px;
        padding-left: 18px;
    }

    .bnp-copy-button {
        min-width: 40px;
    }

    .bnp-copy-button span {
        display: none;
    }

    .bnp-donate-trust-row {
        gap: 8px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .bnp-donate-trust-row span {
        flex-direction: column;
        text-align: center;
    }
}


/* ==========================================
   BNP COMPACT EMERGENCY BLOOD CTA
========================================== */

.bnp-emergency-compact {
    position: relative;
    overflow: hidden;
    padding: 74px 0;
    background:
        linear-gradient(
            135deg,
            #161920 0%,
            #35101a 55%,
            #681125 100%
        );
}

.bnp-emergency-compact .container {
    position: relative;
    z-index: 3;
}

.bnp-emergency-glow {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(12px);
}

.bnp-emergency-glow-one {
    top: -160px;
    left: -120px;
    width: 350px;
    height: 350px;
    background: rgba(229, 32, 48, 0.13);
}

.bnp-emergency-glow-two {
    right: -130px;
    bottom: -170px;
    width: 360px;
    height: 360px;
    background: rgba(47, 143, 91, 0.08);
}

/* Main Card */

.bnp-emergency-compact-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 45px;
    padding: 36px 38px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 23px;
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.085),
            rgba(255, 255, 255, 0.035)
        );
    box-shadow: 0 28px 65px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(14px);
}

/* Content */

.bnp-emergency-compact-content {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 22px;
}

.bnp-emergency-symbol {
    position: relative;
    width: 92px;
    height: 92px;
    flex: 0 0 92px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bnp-emergency-symbol-inner {
    position: relative;
    z-index: 3;
    width: 70px;
    height: 70px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 3px solid rgba(255, 255, 255, 0.82);
    border-radius: 50%;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow:
        0 15px 34px rgba(229, 32, 48, 0.34),
        0 0 0 9px rgba(255, 255, 255, 0.06);
}

.bnp-emergency-symbol-inner i {
    font-size: 27px;
}

.bnp-emergency-pulse {
    position: absolute;
    inset: 0;
    border: 2px solid rgba(255, 255, 255, 0.45);
    border-radius: 50%;
    animation: bnpEmergencyPulse 2.2s infinite;
}

@keyframes bnpEmergencyPulse {
    0% {
        opacity: 0.8;
        transform: scale(0.65);
    }

    70% {
        opacity: 0;
        transform: scale(1.18);
    }

    100% {
        opacity: 0;
        transform: scale(1.18);
    }
}

.bnp-emergency-label {
    display: block;
    margin-bottom: 8px;
    color: #77dfa5;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.bnp-emergency-compact-content h2 {
    margin: 0;
    color: #ffffff;
    font-size: 31px;
    font-weight: 800;
    line-height: 1.18;
}

.bnp-emergency-compact-content h2 span {
    color: #ff4054;
}

.bnp-emergency-compact-content p {
    max-width: 570px;
    margin: 11px 0 0;
    color: rgba(255, 255, 255, 0.62);
    font-size: 11px;
    line-height: 1.7;
}

/* Buttons */

.bnp-emergency-compact-actions {
    display: flex;
    align-items: center;
    gap: 11px;
}

.bnp-emergency-request-btn,
.bnp-emergency-find-btn {
    min-width: 175px;
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    gap: 11px;
    padding: 9px 16px;
    border-radius: 11px;
    transition:
        transform 0.28s ease,
        border-color 0.28s ease,
        background 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-emergency-request-btn > i,
.bnp-emergency-find-btn > i {
    width: 37px;
    height: 37px;
    flex: 0 0 37px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
}

.bnp-emergency-request-btn span,
.bnp-emergency-find-btn span,
.bnp-emergency-request-btn small,
.bnp-emergency-find-btn small {
    display: block;
}

.bnp-emergency-request-btn small,
.bnp-emergency-find-btn small {
    margin-bottom: 2px;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: 0.45px;
    text-transform: uppercase;
}

.bnp-emergency-request-btn span,
.bnp-emergency-find-btn span {
    font-size: 10px;
    font-weight: 800;
}

.bnp-emergency-request-btn {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 12px 27px rgba(229, 32, 48, 0.28);
}

.bnp-emergency-request-btn > i {
    background: rgba(255, 255, 255, 0.14);
}

.bnp-emergency-request-btn small {
    color: rgba(255, 255, 255, 0.58);
}

.bnp-emergency-request-btn:hover {
    transform: translateY(-4px);
    color: #ffffff;
    box-shadow: 0 18px 35px rgba(229, 32, 48, 0.4);
}

.bnp-emergency-find-btn {
    border: 1px solid rgba(126, 226, 169, 0.22);
    color: #ffffff;
    background: rgba(47, 143, 91, 0.12);
}

.bnp-emergency-find-btn > i {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-emergency-find-btn small {
    color: rgba(255, 255, 255, 0.5);
}

.bnp-emergency-find-btn:hover {
    transform: translateY(-4px);
    border-color: rgba(126, 226, 169, 0.46);
    color: #ffffff;
    background: rgba(47, 143, 91, 0.2);
}

/* Contact Bar */

.bnp-emergency-contact-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    margin-top: 16px;
    padding: 17px 22px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.045);
    backdrop-filter: blur(10px);
}

.bnp-emergency-availability {
    display: flex;
    align-items: center;
    gap: 11px;
}

.bnp-emergency-live-dot {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: var(--bnp-green, #2f8f5b);
    box-shadow: 0 0 0 7px rgba(47, 143, 91, 0.13);
    animation: bnpEmergencyLive 1.8s infinite;
}

@keyframes bnpEmergencyLive {
    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.4;
    }
}

.bnp-emergency-availability strong,
.bnp-emergency-availability small {
    display: block;
}

.bnp-emergency-availability strong {
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
}

.bnp-emergency-availability small {
    color: rgba(255, 255, 255, 0.43);
    font-size: 8px;
}

.bnp-emergency-contact-actions {
    display: flex;
    align-items: center;
    gap: 9px;
}

.bnp-emergency-phone,
.bnp-emergency-whatsapp {
    min-height: 39px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 9px 13px;
    border-radius: 9px;
    color: #ffffff;
    font-size: 9px;
    font-weight: 800;
    transition:
        transform 0.25s ease,
        color 0.25s ease,
        background 0.25s ease;
}

.bnp-emergency-phone {
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
}

.bnp-emergency-whatsapp {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-emergency-phone:hover,
.bnp-emergency-whatsapp:hover {
    transform: translateY(-3px);
    color: #ffffff;
}

/* Responsive */

@media (max-width: 1199px) {

    .bnp-emergency-compact-card {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-emergency-compact-actions {
        margin-left: 114px;
    }
}

@media (max-width: 991px) {

    .bnp-emergency-compact {
        padding: 65px 0;
    }

    .bnp-emergency-compact-actions {
        margin-left: 0;
    }
}

@media (max-width: 767px) {

    .bnp-emergency-compact {
        padding: 52px 0;
    }

    .bnp-emergency-compact-card {
        padding: 28px 22px;
    }

    .bnp-emergency-compact-content {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-emergency-symbol {
        width: 75px;
        height: 75px;
        flex-basis: 75px;
    }

    .bnp-emergency-symbol-inner {
        width: 60px;
        height: 60px;
    }

    .bnp-emergency-compact-content h2 {
        font-size: 26px;
    }

    .bnp-emergency-compact-actions {
        width: 100%;
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-emergency-request-btn,
    .bnp-emergency-find-btn {
        width: 100%;
    }

    .bnp-emergency-contact-bar {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-emergency-contact-actions {
        width: 100%;
    }

    .bnp-emergency-phone,
    .bnp-emergency-whatsapp {
        flex: 1;
    }
}

@media (max-width: 480px) {

    .bnp-emergency-compact-content h2 {
        font-size: 23px;
    }

    .bnp-emergency-contact-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-emergency-phone,
    .bnp-emergency-whatsapp {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-emergency-pulse,
    .bnp-emergency-live-dot {
        animation: none;
    }
}

/* ==========================================
   BNP COMPACT SUCCESS STORIES
========================================== */

.bnp-stories-section {
    position: relative;
    overflow: hidden;
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(229, 32, 48, 0.05),
            transparent 28%
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(47, 143, 91, 0.045),
            transparent 28%
        ),
        #f7f8fb;
}

/* Grid */

.bnp-stories-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.bnp-story-card {
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 18px;
    background: #ffffff;
    box-shadow:
        0 18px 42px rgba(15, 23, 42, 0.07),
        0 5px 15px rgba(15, 23, 42, 0.03);
    transition:
        transform 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease;
}

.bnp-story-card:hover {
    transform: translateY(-8px);
    border-color: rgba(47, 143, 91, 0.18);
    box-shadow:
        0 28px 56px rgba(15, 23, 42, 0.12),
        0 8px 20px rgba(47, 143, 91, 0.06);
}

/* Image */

.bnp-story-image {
    position: relative;
    height: 205px;
    overflow: hidden;
    background: #20252d;
}

.bnp-story-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: top center;
    transition: transform 0.65s ease;
}

.bnp-story-card:hover .bnp-story-image img {
    transform: scale(1.06);
}

.bnp-story-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            transparent 40%,
            rgba(10, 12, 17, 0.55)
        );
}

.bnp-story-status {
    position: absolute;
    left: 15px;
    bottom: 15px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border-radius: 25px;
    color: #ffffff;
    background: var(--bnp-green, #2f8f5b);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16);
}

/* Content */

.bnp-story-content {
    position: relative;
    padding: 24px 22px 21px;
}

.bnp-story-quote {
    position: absolute;
    top: -22px;
    right: 20px;
    width: 43px;
    height: 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 4px solid #ffffff;
    border-radius: 12px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 9px 20px rgba(229, 32, 48, 0.22);
}

.bnp-story-content > p {
    min-height: 76px;
    margin: 0 0 18px;
    color: #68707b;
    font-size: 11px;
    line-height: 1.75;
}

.bnp-story-person {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding-top: 16px;
    border-top: 1px solid #edf0f3;
}

.bnp-story-person strong,
.bnp-story-person span {
    display: block;
}

.bnp-story-person strong {
    margin-bottom: 3px;
    color: #252a33;
    font-size: 12px;
    font-weight: 800;
}

.bnp-story-person div span {
    color: #8a9099;
    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
}

.bnp-story-blood-group {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: var(--bnp-red, #e52030);
    background: #fff1f3;
    font-size: 13px;
    font-weight: 800;
}

/* Volunteer CTA */

.bnp-stories-volunteer-cta {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 28px;
    padding: 20px 22px;
    border: 1px solid rgba(47, 143, 91, 0.12);
    border-radius: 15px;
    background:
        linear-gradient(
            135deg,
            #ffffff,
            #f4fbf7
        );
    box-shadow: 0 15px 36px rgba(15, 23, 42, 0.06);
}

.bnp-stories-volunteer-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
    box-shadow: 0 10px 22px rgba(47, 143, 91, 0.22);
}

.bnp-stories-volunteer-cta > div:nth-child(2) {
    flex: 1;
}

.bnp-stories-volunteer-cta strong,
.bnp-stories-volunteer-cta span {
    display: block;
}

.bnp-stories-volunteer-cta strong {
    margin-bottom: 4px;
    color: #252a33;
    font-size: 14px;
    font-weight: 800;
}

.bnp-stories-volunteer-cta span {
    color: #7b828c;
    font-size: 10px;
    line-height: 1.5;
}

.bnp-stories-volunteer-cta > a {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 17px;
    border-radius: 9px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.35px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 10px 22px rgba(229, 32, 48, 0.22);
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-stories-volunteer-cta > a:hover {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 15px 29px rgba(229, 32, 48, 0.34);
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-stories-section {
        padding: 70px 0;
    }

    .bnp-stories-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnp-stories-volunteer-cta {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .bnp-stories-volunteer-cta > a {
        margin-left: 64px;
    }
}

@media (max-width: 767px) {

    .bnp-stories-section {
        padding: 55px 0;
    }

    .bnp-stories-grid {
        grid-template-columns: 1fr;
    }

    .bnp-story-image {
        height: 230px;
    }

    .bnp-story-content > p {
        min-height: 0;
    }

    .bnp-stories-volunteer-cta {
        padding: 18px;
    }

    .bnp-stories-volunteer-cta > a {
        width: 100%;
        margin-left: 0;
    }
}

@media (max-width: 480px) {

    .bnp-story-image {
        height: 205px;
    }

    .bnp-stories-volunteer-cta {
        align-items: flex-start;
    }
}



/* ==========================================
   BNP GALLERY, ACHIEVEMENTS & PARTNERS
========================================== */

.bnp-showcase-section {
    position: relative;
    overflow: hidden;
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(229, 32, 48, 0.05),
            transparent 28%
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(47, 143, 91, 0.045),
            transparent 28%
        ),
        #ffffff;
}

.bnp-showcase-layout {
    display: grid;
    grid-template-columns:
        minmax(0, 1.35fr)
        minmax(330px, 0.65fr);
    gap: 24px;
}

/* Gallery */

.bnp-showcase-gallery {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 200px;
    gap: 14px;
}

.bnp-showcase-gallery-item {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 17px;
    background: #20252d;
    box-shadow: 0 16px 38px rgba(15, 23, 42, 0.09);
}

.bnp-showcase-gallery-item.large {
    grid-row: span 2;
}

.bnp-showcase-gallery-item.wide {
    grid-column: span 1;
}

.bnp-showcase-gallery-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition:
        transform 0.7s ease,
        filter 0.4s ease;
}

.bnp-showcase-gallery-item:hover img {
    transform: scale(1.08);
    filter: saturate(1.08);
}

.bnp-showcase-gallery-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(8, 10, 14, 0.03),
            rgba(8, 10, 14, 0.78)
        );
    transition: background 0.35s ease;
}

.bnp-showcase-gallery-item:hover
.bnp-showcase-gallery-overlay {
    background:
        linear-gradient(
            180deg,
            rgba(47, 143, 91, 0.08),
            rgba(8, 10, 14, 0.84)
        );
}

.bnp-showcase-gallery-content {
    position: absolute;
    right: 18px;
    bottom: 17px;
    left: 18px;
    z-index: 3;
}

.bnp-showcase-gallery-content span,
.bnp-showcase-gallery-content strong {
    display: block;
}

.bnp-showcase-gallery-content span {
    margin-bottom: 5px;
    color: #7ee2a9;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.bnp-showcase-gallery-content strong {
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.4;
}

.bnp-showcase-gallery-item.large
.bnp-showcase-gallery-content strong {
    font-size: 21px;
}

.bnp-showcase-gallery-item > i {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 4;
    width: 39px;
    height: 39px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 11px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.1);
    opacity: 0;
    transform: translateY(-8px);
    backdrop-filter: blur(8px);
    transition:
        opacity 0.3s ease,
        transform 0.3s ease,
        background 0.3s ease;
}

.bnp-showcase-gallery-item:hover > i {
    opacity: 1;
    transform: translateY(0);
}

.bnp-showcase-gallery-item > i:hover {
    background: var(--bnp-red, #e52030);
}

/* Achievements */

.bnp-achievements-panel {
    display: flex;
    flex-direction: column;
    padding: 23px;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 19px;
    background:
        linear-gradient(
            145deg,
            #181b22,
            #35101a
        );
    box-shadow: 0 22px 52px rgba(15, 23, 42, 0.15);
}

.bnp-achievements-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 18px;
}

.bnp-achievements-header span {
    display: block;
    margin-bottom: 4px;
    color: #7ee2a9;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.9px;
    text-transform: uppercase;
}

.bnp-achievements-header h3 {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    font-weight: 800;
}

.bnp-achievements-header-icon {
    width: 47px;
    height: 47px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: #ffffff !important;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 10px 22px rgba(229, 32, 48, 0.24);
}

.bnp-achievement-card {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-bottom: 12px;
    padding: 15px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.05);
    transition:
        transform 0.28s ease,
        border-color 0.28s ease,
        background 0.28s ease;
}

.bnp-achievement-card:hover {
    transform: translateY(-4px);
    border-color: rgba(126, 226, 169, 0.2);
    background: rgba(255, 255, 255, 0.075);
}

.bnp-achievement-icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-achievement-icon.green {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-achievement-year {
    display: block;
    margin-bottom: 4px;
    color: #7ee2a9;
    font-size: 7px;
    font-weight: 800;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.bnp-achievement-card h4 {
    margin: 0 0 5px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.45;
}

.bnp-achievement-card p {
    margin: 0;
    color: rgba(255, 255, 255, 0.47);
    font-size: 8px;
    line-height: 1.65;
}

.bnp-achievements-view-btn {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: auto;
    padding: 10px 15px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 9px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.055);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease;
}

.bnp-achievements-view-btn:hover {
    transform: translateY(-3px);
    border-color: rgba(126, 226, 169, 0.3);
    color: #ffffff;
    background: rgba(47, 143, 91, 0.15);
}

/* Partners */

.bnp-partners-strip {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-top: 25px;
    padding: 19px 22px;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 15px 36px rgba(15, 23, 42, 0.06);
}

.bnp-partners-intro {
    min-width: 250px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.bnp-partners-icon {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
    box-shadow: 0 9px 20px rgba(47, 143, 91, 0.2);
}

.bnp-partners-intro strong,
.bnp-partners-intro span {
    display: block;
}

.bnp-partners-intro strong {
    margin-bottom: 3px;
    color: #252a33;
    font-size: 12px;
    font-weight: 800;
}

.bnp-partners-intro div span {
    max-width: 260px;
    color: #858b94;
    font-size: 8px;
    line-height: 1.5;
}

.bnp-partners-logos {
    flex: 1;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.bnp-partners-logos a {
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 7px;
    border: 1px solid #edf0f3;
    border-radius: 10px;
    background: #fafbfc;
    filter: grayscale(1);
    opacity: 0.68;
    transition:
        transform 0.25s ease,
        filter 0.25s ease,
        opacity 0.25s ease,
        border-color 0.25s ease;
}

.bnp-partners-logos a:hover {
    transform: translateY(-3px);
    border-color: rgba(47, 143, 91, 0.2);
    filter: grayscale(0);
    opacity: 1;
}

.bnp-partners-logos img {
    max-width: 100%;
    max-height: 43px;
    object-fit: contain;
}

.bnp-partners-view-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--bnp-red, #e52030);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.35px;
    text-transform: uppercase;
    white-space: nowrap;
}

.bnp-partners-view-btn:hover {
    color: var(--bnp-green-dark, #1f6f45);
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-showcase-section {
        padding: 70px 0;
    }

    .bnp-showcase-layout {
        grid-template-columns: 1fr;
    }

    .bnp-achievements-panel {
        min-height: 400px;
    }

    .bnp-partners-strip {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .bnp-partners-logos {
        min-width: 100%;
    }
}

@media (max-width: 767px) {

    .bnp-showcase-section {
        padding: 55px 0;
    }

    .bnp-showcase-gallery {
        grid-template-columns: 1fr;
        grid-auto-rows: 230px;
    }

    .bnp-showcase-gallery-item.large,
    .bnp-showcase-gallery-item.wide {
        grid-row: auto;
        grid-column: auto;
    }

    .bnp-partners-logos {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnp-partners-view-btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {

    .bnp-showcase-gallery {
        grid-auto-rows: 205px;
    }

    .bnp-achievements-panel {
        padding: 18px;
    }

    .bnp-partners-strip {
        padding: 17px;
    }

    .bnp-partners-intro {
        min-width: 0;
    }
}

/* ==========================================
   BNP SHORT PREMIUM FINAL CTA
========================================== */

.bnp-final-action-section {
    position: relative;
    overflow: hidden;
    padding: 72px 0;
    background:
        radial-gradient(
            circle at 8% 20%,
            rgba(229, 32, 48, 0.065),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 80%,
            rgba(47, 143, 91, 0.05),
            transparent 28%
        ),
        #f7f8fb;
}

.bnp-final-action-card {
    position: relative;
    display: grid;
    grid-template-columns:
        minmax(0, 0.8fr)
        minmax(500px, 1.2fr);
    align-items: center;
    gap: 42px;
    overflow: hidden;
    padding: 38px 40px;
    border-radius: 23px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #181b22 0%,
            #35101a 55%,
            #721127 100%
        );
    box-shadow:
        0 28px 68px rgba(15, 23, 42, 0.18),
        0 10px 24px rgba(229, 32, 48, 0.08);
}

.bnp-final-action-card::before {
    content: "";
    position: absolute;
    top: -115px;
    right: 22%;
    width: 250px;
    height: 250px;
    border: 38px solid rgba(255, 255, 255, 0.025);
    border-radius: 50%;
}

.bnp-final-action-card::after {
    content: "";
    position: absolute;
    right: -95px;
    bottom: -115px;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    background: rgba(47, 143, 91, 0.07);
}

.bnp-final-action-content,
.bnp-final-action-buttons {
    position: relative;
    z-index: 3;
}

/* Content */

.bnp-final-action-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 11px;
    color: #79dfa6;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.bnp-final-action-label::before {
    content: "";
    width: 32px;
    height: 3px;
    border-radius: 20px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-red, #e52030)
        );
}

.bnp-final-action-content h2 {
    margin: 0;
    color: #ffffff;
    font-size: 32px;
    font-weight: 800;
    line-height: 1.17;
    letter-spacing: -0.5px;
}

.bnp-final-action-content h2 span {
    display: block;
    color: #ff4054;
}

.bnp-final-action-content p {
    max-width: 500px;
    margin: 14px 0 0;
    color: rgba(255, 255, 255, 0.58);
    font-size: 11px;
    line-height: 1.7;
}

/* Buttons */

.bnp-final-action-buttons {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 11px;
}

.bnp-final-action-btn {
    min-height: 92px;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.055);
    backdrop-filter: blur(10px);
    transition:
        transform 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.bnp-final-action-btn:hover {
    transform: translateY(-6px);
    color: #ffffff;
}

.bnp-final-action-btn.primary:hover {
    border-color: rgba(229, 32, 48, 0.45);
    background: rgba(229, 32, 48, 0.16);
    box-shadow: 0 15px 30px rgba(229, 32, 48, 0.17);
}

.bnp-final-action-btn.secondary:hover {
    border-color: rgba(47, 143, 91, 0.45);
    background: rgba(47, 143, 91, 0.17);
    box-shadow: 0 15px 30px rgba(47, 143, 91, 0.16);
}

.bnp-final-action-btn.donation:hover {
    border-color: rgba(255, 255, 255, 0.25);
    background: rgba(255, 255, 255, 0.1);
}

.bnp-final-action-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffffff;
    font-size: 16px;
    box-shadow: 0 9px 20px rgba(0, 0, 0, 0.18);
}

.bnp-final-action-btn.primary .bnp-final-action-icon,
.bnp-final-action-btn.donation .bnp-final-action-icon {
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-final-action-btn.secondary .bnp-final-action-icon {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-final-action-btn > span:last-child {
    min-width: 0;
}

.bnp-final-action-btn small,
.bnp-final-action-btn > span:last-child {
    display: block;
}

.bnp-final-action-btn small {
    margin-bottom: 3px;
    color: rgba(255, 255, 255, 0.43);
    font-size: 7px;
    font-weight: 700;
    letter-spacing: 0.45px;
    text-transform: uppercase;
}

.bnp-final-action-btn > span:last-child {
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.4;
}

/* Responsive */

@media (max-width: 1199px) {

    .bnp-final-action-card {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991px) {

    .bnp-final-action-section {
        padding: 62px 0;
    }
}

@media (max-width: 767px) {

    .bnp-final-action-section {
        padding: 50px 0;
    }

    .bnp-final-action-card {
        padding: 30px 24px;
        border-radius: 19px;
    }

    .bnp-final-action-content h2 {
        font-size: 27px;
    }

    .bnp-final-action-buttons {
        grid-template-columns: 1fr;
    }

    .bnp-final-action-btn {
        min-height: 73px;
    }
}

@media (max-width: 480px) {

    .bnp-final-action-card {
        padding: 27px 19px;
    }

    .bnp-final-action-content h2 {
        font-size: 24px;
    }
}



/* ==========================================
   BNP FINAL PREMIUM FOOTER THEME
========================================== */

.bnp-footer {
    position: relative;
    overflow: hidden;
    color: #ffffff;
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(229, 32, 48, 0.18),
            transparent 30%
        ),
        radial-gradient(
            circle at 92% 85%,
            rgba(47, 143, 91, 0.15),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #151920 0%,
            #20262d 45%,
            #163326 100%
        );
}

/* Decorative brand line */

.bnp-footer::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 5;
    height: 5px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-red, #e52030) 0%,
            var(--bnp-red, #e52030) 48%,
            #ffffff 48%,
            #ffffff 52%,
            var(--bnp-green, #2f8f5b) 52%,
            var(--bnp-green, #2f8f5b) 100%
        );
}

/* Background shapes */

.bnp-footer-shape-one {
    border-color: rgba(229, 32, 48, 0.06);
}

.bnp-footer-shape-two {
    background: rgba(47, 143, 91, 0.06);
}

.bnp-footer-shape-three {
    border-color: rgba(255, 255, 255, 0.025);
}

/* ==========================================
   EMERGENCY TOP STRIP
========================================== */

.bnp-footer-emergency {
    border: 1px solid rgba(255, 255, 255, 0.13);
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030) 0%,
            #b50d22 58%,
            #6d1220 100%
        );
    box-shadow:
        0 24px 55px rgba(0, 0, 0, 0.24),
        0 9px 25px rgba(229, 32, 48, 0.2);
}

.bnp-footer-emergency-icon-inner {
    border-color: rgba(255, 255, 255, 0.92);
    background: rgba(255, 255, 255, 0.14);
}

.bnp-footer-request-btn:hover,
.bnp-footer-request-btn:focus {
    color: var(--bnp-red-dark, #a70b20);
    background: #ffffff;
}

.bnp-footer-call-btn > i {
    color: var(--bnp-green-dark, #1f6f45);
    background: #ffffff;
}

/* ==========================================
   MAIN FOOTER
========================================== */

.bnp-footer-main {
    padding-top: 68px;
    padding-bottom: 46px;
}

/* ==========================================
   HIGHLIGHTED LOGO CARD
========================================== */

.bnp-footer-brand-card {
    position: relative;
    max-width: 355px;
    margin-bottom: 22px;
    padding: 18px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 18px;
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.98),
            rgba(244, 251, 247, 0.96)
        );
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.22),
        0 8px 20px rgba(47, 143, 91, 0.08);
}

.bnp-footer-brand-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-red, #e52030),
            #ffffff,
            var(--bnp-green, #2f8f5b)
        );
}

.bnp-footer-logo {
    width: 100%;
    min-height: 105px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 13px;
    padding: 6px;
    border-radius: 13px;
    background: #ffffff;
}

.bnp-footer-logo img {
    width: auto;
    height: auto;
    max-width: 245px;
    max-height: 100px;
    display: block;
    object-fit: contain;
    filter: none;
    opacity: 1;
}

.bnp-footer-brand-text {
    padding-top: 13px;
    border-top: 1px solid #e8ecef;
    text-align: center;
}

.bnp-footer-brand-text strong,
.bnp-footer-brand-text span {
    display: block;
}

.bnp-footer-brand-text strong {
    margin-bottom: 4px;
    color: var(--bnp-red, #e52030);
    font-size: 15px;
    font-weight: 800;
}

.bnp-footer-brand-text span {
    color: #65706d;
    font-size: 9px;
    line-height: 1.55;
}

/* About text */

.bnp-footer-about > p {
    color: rgba(255, 255, 255, 0.69);
}

.bnp-footer-mission {
    border-color: rgba(126, 226, 169, 0.13);
    background: rgba(47, 143, 91, 0.09);
}

.bnp-footer-mission > i {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

/* ==========================================
   WIDGET TITLES
========================================== */

.bnp-footer-widget-title {
    color: #ffffff;
}

.bnp-footer-widget-title::before {
    width: 29px;
    background: var(--bnp-red, #e52030);
}

.bnp-footer-widget-title::after {
    left: 34px;
    width: 22px;
    background: var(--bnp-green, #2f8f5b);
}

/* ==========================================
   LINKS
========================================== */

.bnp-footer-links a {
    color: rgba(255, 255, 255, 0.65);
}

.bnp-footer-links a i {
    color: var(--bnp-green, #2f8f5b);
}

.bnp-footer-links a:hover {
    color: #ffffff;
}

.bnp-footer-links a:hover i {
    color: var(--bnp-red, #e52030);
}

/* ==========================================
   SOCIAL ICONS
========================================== */

.bnp-footer-social a {
    border-color: rgba(255, 255, 255, 0.11);
    color: rgba(255, 255, 255, 0.78);
    background: rgba(255, 255, 255, 0.055);
}

.bnp-footer-social a:nth-child(odd):hover {
    border-color: var(--bnp-red, #e52030);
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 12px 25px rgba(229, 32, 48, 0.25);
}

.bnp-footer-social a:nth-child(even):hover {
    border-color: var(--bnp-green, #2f8f5b);
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
    box-shadow: 0 12px 25px rgba(47, 143, 91, 0.25);
}

/* ==========================================
   CONTACT CARDS
========================================== */

.bnp-footer-contact-icon {
    border-color: rgba(126, 226, 169, 0.13);
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            rgba(47, 143, 91, 0.95),
            rgba(31, 111, 69, 0.95)
        );
}

.bnp-footer-contact-item strong {
    color: #ffffff;
}

.bnp-footer-contact-item span,
.bnp-footer-contact-item a {
    color: rgba(255, 255, 255, 0.61);
}

.bnp-footer-contact-item a:hover {
    color: #7ee2a9;
}

/* ==========================================
   NEWSLETTER
========================================== */

.bnp-footer-newsletter {
    border-color: rgba(255, 255, 255, 0.1);
    background:
        linear-gradient(
            135deg,
            rgba(229, 32, 48, 0.11),
            rgba(47, 143, 91, 0.09)
        );
}

.bnp-footer-newsletter-icon {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
    box-shadow: 0 11px 24px rgba(47, 143, 91, 0.25);
}

.bnp-footer-newsletter-field input:focus {
    border-color: rgba(47, 143, 91, 0.75);
    box-shadow: 0 0 0 4px rgba(47, 143, 91, 0.1);
}

.bnp-footer-newsletter-form button {
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-footer-newsletter-form button:hover {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
    box-shadow: 0 16px 30px rgba(47, 143, 91, 0.32);
}

/* ==========================================
   BOTTOM FOOTER
========================================== */

.bnp-footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.09);
    background:
        linear-gradient(
            90deg,
            rgba(229, 32, 48, 0.1),
            rgba(13, 18, 20, 0.7),
            rgba(47, 143, 91, 0.1)
        );
}

.bnp-footer-copyright p {
    color: rgba(255, 255, 255, 0.64);
}

.bnp-footer-copyright p strong {
    color: #ffffff;
}

.bnp-footer-copyright > span strong {
    color: #7ee2a9;
}

.bnp-footer-bottom-links a {
    color: rgba(255, 255, 255, 0.58);
}

.bnp-footer-bottom-links a:hover {
    color: #7ee2a9;
}

/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .bnp-footer-brand-card {
        max-width: 100%;
    }

    .bnp-footer-logo {
        min-height: 95px;
    }

    .bnp-footer-logo img {
        max-width: 220px;
        max-height: 88px;
    }
}

@media (max-width: 480px) {

    .bnp-footer-brand-card {
        padding: 14px;
    }

    .bnp-footer-logo img {
        max-width: 190px;
        max-height: 78px;
    }
}


/* ==========================================
   BNP PREMIUM INNER PAGE HERO
========================================== */

.bnp-inner-hero {
    position: relative;
    min-height: 500px;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #ffffff;
    background: #171a21;
}

.bnp-inner-hero-bg,
.bnp-inner-hero-overlay {
    position: absolute;
    inset: 0;
}

.bnp-inner-hero-bg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.bnp-inner-hero-overlay {
    background:
        linear-gradient(
            90deg,
            rgba(15, 18, 24, 0.96) 0%,
            rgba(47, 11, 21, 0.88) 48%,
            rgba(17, 48, 35, 0.64) 100%
        );
}

.bnp-inner-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(
            135deg,
            rgba(229, 32, 48, 0.08),
            transparent 42%,
            rgba(47, 143, 91, 0.08)
        );
}

.bnp-inner-hero .container {
    position: relative;
    z-index: 4;
    width: 100%;
    padding-top: 75px;
    padding-bottom: 70px;
}

.bnp-inner-hero-shape {
    position: absolute;
    z-index: 2;
    border-radius: 50%;
    pointer-events: none;
}

.bnp-inner-shape-one {
    top: -150px;
    right: -90px;
    width: 350px;
    height: 350px;
    border: 48px solid rgba(255, 255, 255, 0.035);
}

.bnp-inner-shape-two {
    left: -160px;
    bottom: -210px;
    width: 390px;
    height: 390px;
    background: rgba(47, 143, 91, 0.07);
}

.bnp-inner-hero-content {
    max-width: 760px;
}

.bnp-inner-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    padding: 8px 13px;
    border: 1px solid rgba(126, 226, 169, 0.25);
    border-radius: 30px;
    color: #c9f5db;
    background: rgba(47, 143, 91, 0.13);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    backdrop-filter: blur(8px);
}

.bnp-inner-live-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--bnp-green, #2f8f5b);
    box-shadow: 0 0 0 6px rgba(47, 143, 91, 0.14);
    animation: bnpInnerLive 1.8s infinite;
}

@keyframes bnpInnerLive {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.4;
    }
}

.bnp-inner-hero-content h1 {
    margin: 0;
    color: #ffffff;
    font-size: 57px;
    font-weight: 800;
    line-height: 1.07;
    letter-spacing: -1.2px;
}

.bnp-inner-hero-content h1 span {
    display: block;
    margin-top: 6px;
    color: #ff4054;
}

.bnp-inner-hero-content > p {
    max-width: 700px;
    margin: 22px 0 27px;
    color: rgba(255, 255, 255, 0.69);
    font-size: 14px;
    line-height: 1.85;
}

.bnp-inner-hero-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.bnp-inner-primary-btn,
.bnp-inner-secondary-btn {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 12px 20px;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        background 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-inner-primary-btn {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 14px 30px rgba(229, 32, 48, 0.3);
}

.bnp-inner-primary-btn:hover {
    transform: translateY(-4px);
    color: #ffffff;
    box-shadow: 0 20px 38px rgba(229, 32, 48, 0.42);
}

.bnp-inner-secondary-btn {
    border: 1px solid rgba(126, 226, 169, 0.27);
    color: #ffffff;
    background: rgba(47, 143, 91, 0.13);
    backdrop-filter: blur(9px);
}

.bnp-inner-secondary-btn i {
    color: #79dfa6;
}

.bnp-inner-secondary-btn:hover {
    transform: translateY(-4px);
    border-color: rgba(126, 226, 169, 0.5);
    color: #ffffff;
    background: rgba(47, 143, 91, 0.23);
}

.bnp-inner-hero-trust {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 25px;
}

.bnp-inner-hero-trust span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255, 255, 255, 0.55);
    font-size: 9px;
    font-weight: 700;
}

.bnp-inner-hero-trust i {
    color: #78dfa6;
    font-size: 13px;
}

/* Breadcrumb */

.bnp-inner-breadcrumb {
    position: absolute;
    right: 15px;
    bottom: -48px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 13px 17px;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 11px;
    color: #747b85;
    background: #ffffff;
    box-shadow: 0 14px 32px rgba(15, 23, 42, 0.12);
    font-size: 9px;
    font-weight: 750;
    text-transform: uppercase;
}

.bnp-inner-breadcrumb a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--bnp-red, #e52030);
}

.bnp-inner-breadcrumb a:hover {
    color: var(--bnp-green-dark, #1f6f45);
}

.bnp-inner-breadcrumb > i {
    color: #b1b6bd;
}

.bnp-inner-breadcrumb span {
    color: #505762;
}

/* About page background adjustment */

.bnp-about-hero .bnp-inner-hero-bg img {
    object-position: center 38%;
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-inner-hero {
        min-height: 450px;
    }

    .bnp-inner-hero-content h1 {
        font-size: 48px;
    }
}

@media (max-width: 767px) {

    .bnp-inner-hero {
        min-height: auto;
    }

    .bnp-inner-hero .container {
        padding-top: 58px;
        padding-bottom: 78px;
    }

    .bnp-inner-hero-content h1 {
        font-size: 36px;
    }

    .bnp-inner-hero-content > p {
        font-size: 13px;
    }

    .bnp-inner-hero-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-inner-primary-btn,
    .bnp-inner-secondary-btn {
        width: 100%;
    }

    .bnp-inner-hero-trust {
        align-items: flex-start;
        flex-direction: column;
        gap: 9px;
    }

    .bnp-inner-breadcrumb {
        right: 15px;
        bottom: -42px;
        left: 15px;
        justify-content: center;
    }
}

@media (max-width: 480px) {

    .bnp-inner-hero-content h1 {
        font-size: 31px;
    }

    .bnp-inner-hero-badge {
        font-size: 7px;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-inner-live-dot {
        animation: none;
    }
}


/*==========================================
ABOUT STORY
==========================================*/

.bnp-about-story{

padding:100px 0;

background:#ffffff;

}

.bnp-about-story-content h2{

font-size:44px;

font-weight:800;

line-height:1.2;

margin:18px 0;

color:#20242c;

}

.bnp-about-story-content h2 span{

display:block;

color:#e52030;

}

.bnp-about-story-content p{

margin-bottom:18px;

font-size:15px;

line-height:1.9;

color:#707782;

}

.bnp-about-highlights{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:15px;

margin-top:35px;

}

.bnp-about-highlights div{

display:flex;

align-items:center;

gap:10px;

padding:18px;

border-radius:14px;

background:#f7f9fb;

font-weight:700;

transition:.35s;

}

.bnp-about-highlights div:hover{

transform:translateY(-5px);

background:#fff;

box-shadow:0 18px 35px rgba(0,0,0,.08);

}

.bnp-about-highlights i{

color:#2f8f5b;

font-size:18px;

}

.bnp-about-video{

position:relative;

overflow:hidden;

border-radius:22px;

box-shadow:0 25px 60px rgba(0,0,0,.18);

}

.bnp-about-video iframe{

width:100%;

height:430px;

border:0;

display:block;

}

@media(max-width:991px){

.bnp-about-story{

padding:70px 0;

}

.bnp-about-video{

margin-top:45px;

}

}

@media(max-width:767px){

.bnp-about-story-content h2{

font-size:34px;

}

.bnp-about-highlights{

grid-template-columns:1fr;

}

.bnp-about-video iframe{

height:300px;

}

}


/*==========================================
MISSION VISION VALUES
==========================================*/

.bnp-mvv-section{

padding:100px 0;

background:#f8fafc;

}

.bnp-mvv-section .bnp-section-heading{

max-width:760px;

margin:0 auto 65px;

}

.bnp-mvv-card{

position:relative;

height:100%;

padding:45px 35px;

border-radius:24px;

background:#ffffff;

overflow:hidden;

transition:.45s;

border:1px solid rgba(0,0,0,.06);

box-shadow:0 20px 45px rgba(0,0,0,.06);

}

.bnp-mvv-card:hover{

transform:translateY(-10px);

box-shadow:0 30px 60px rgba(0,0,0,.12);

}

.bnp-mvv-card::before{

content:"";

position:absolute;

top:0;

left:0;

width:100%;

height:5px;

}

.bnp-mvv-card.mission::before{

background:#e52030;

}

.bnp-mvv-card.vision::before{

background:#2f8f5b;

}

.bnp-mvv-card.values::before{

background:linear-gradient(90deg,#e52030,#2f8f5b);

}

.bnp-mvv-icon{

width:78px;

height:78px;

display:flex;

align-items:center;

justify-content:center;

border-radius:20px;

margin-bottom:28px;

font-size:30px;

color:#ffffff;

}

.mission .bnp-mvv-icon{

background:#e52030;

}

.vision .bnp-mvv-icon{

background:#2f8f5b;

}

.values .bnp-mvv-icon{

background:linear-gradient(135deg,#e52030,#2f8f5b);

}

.bnp-mvv-card h3{

font-size:28px;

font-weight:800;

margin-bottom:18px;

color:#222;

}

.bnp-mvv-card p{

color:#6e7681;

font-size:15px;

line-height:1.9;

}

.bnp-mvv-card ul{

margin:0;

padding:0;

list-style:none;

}

.bnp-mvv-card ul li{

padding:10px 0;

font-weight:600;

color:#555;

border-bottom:1px solid #eee;

}

.bnp-mvv-card ul li:last-child{

border:none;

}

.bnp-mvv-card ul li::before{

content:"✓";

margin-right:10px;

font-weight:800;

color:#2f8f5b;

}

@media(max-width:991px){

.bnp-mvv-section{

padding:70px 0;

}

.bnp-mvv-card{

margin-bottom:30px;

}

}


/* ==========================================
   BNP PREMIUM ORGANIZATION JOURNEY
========================================== */

.bnp-journey-section {
    position: relative;
    overflow: hidden;
    padding: 100px 0;
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(229, 32, 48, 0.05),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 85%,
            rgba(47, 143, 91, 0.05),
            transparent 28%
        ),
        #ffffff;
}

.bnp-journey-section .bnp-section-heading {
    max-width: 780px;
    margin: 0 auto 70px;
}

.bnp-journey-section .bnp-section-heading h2 {
    margin: 0;
    color: #252a33;
    font-size: 42px;
    font-weight: 800;
    line-height: 1.16;
}

.bnp-journey-section .bnp-section-heading h2 span {
    display: block;
    color: var(--bnp-red, #e52030);
}

.bnp-journey-section .bnp-section-heading p {
    margin: 18px 0 0;
    color: #737a85;
    font-size: 14px;
    line-height: 1.85;
}

/* Timeline Structure */

.bnp-journey-timeline {
    position: relative;
    max-width: 1040px;
    margin: 0 auto;
}

.bnp-journey-timeline::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 4px;
    border-radius: 20px;
    background:
        linear-gradient(
            180deg,
            var(--bnp-red, #e52030),
            var(--bnp-green, #2f8f5b),
            var(--bnp-red, #e52030)
        );
    transform: translateX(-50%);
    box-shadow: 0 0 0 7px rgba(229, 32, 48, 0.045);
}

.bnp-journey-item {
    position: relative;
    width: 50%;
    margin-bottom: 42px;
}

.bnp-journey-item.left {
    padding-right: 58px;
    text-align: right;
}

.bnp-journey-item.right {
    margin-left: 50%;
    padding-left: 58px;
}

/* Timeline Marker */

.bnp-journey-marker {
    position: absolute;
    top: 23px;
    z-index: 4;
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 7px solid #ffffff;
    border-radius: 50%;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow:
        0 13px 30px rgba(229, 32, 48, 0.25),
        0 0 0 1px rgba(15, 23, 42, 0.06);
}

.bnp-journey-item.left .bnp-journey-marker {
    right: -29px;
}

.bnp-journey-item.right .bnp-journey-marker {
    left: -29px;
}

.bnp-journey-marker.green {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
    box-shadow:
        0 13px 30px rgba(47, 143, 91, 0.25),
        0 0 0 1px rgba(15, 23, 42, 0.06);
}

.bnp-journey-marker.future {
    background:
        linear-gradient(
            135deg,
            #232a34,
            #4a1521
        );
}

.bnp-journey-marker span {
    color: #ffffff;
    font-size: 18px;
}

/* Timeline Cards */

.bnp-journey-card {
    position: relative;
    padding: 27px;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 18px;
    background: #ffffff;
    box-shadow:
        0 20px 48px rgba(15, 23, 42, 0.075),
        0 5px 16px rgba(15, 23, 42, 0.035);
    transition:
        transform 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease;
}

.bnp-journey-item.left .bnp-journey-card::after,
.bnp-journey-item.right .bnp-journey-card::after {
    content: "";
    position: absolute;
    top: 33px;
    width: 16px;
    height: 16px;
    background: #ffffff;
    transform: rotate(45deg);
}

.bnp-journey-item.left .bnp-journey-card::after {
    right: -8px;
    border-top: 1px solid rgba(15, 23, 42, 0.07);
    border-right: 1px solid rgba(15, 23, 42, 0.07);
}

.bnp-journey-item.right .bnp-journey-card::after {
    left: -8px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.07);
    border-left: 1px solid rgba(15, 23, 42, 0.07);
}

.bnp-journey-card:hover {
    transform: translateY(-7px);
    border-color: rgba(47, 143, 91, 0.18);
    box-shadow:
        0 30px 62px rgba(15, 23, 42, 0.12),
        0 9px 22px rgba(47, 143, 91, 0.06);
}

.bnp-journey-card.future-card {
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f3faf6
        );
}

/* Card Header */

.bnp-journey-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}

.bnp-journey-item.left .bnp-journey-card-top {
    flex-direction: row-reverse;
}

.bnp-journey-year {
    color: var(--bnp-red, #e52030);
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
}

.bnp-journey-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 10px;
    border-radius: 20px;
    font-size: 7px;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}

.bnp-journey-status.completed {
    color: var(--bnp-red-dark, #a70b20);
    background: #fff0f2;
}

.bnp-journey-status.growing {
    color: var(--bnp-green-dark, #1f6f45);
    background: #edf9f2;
}

.bnp-journey-status.current {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-green, #2f8f5b)
        );
}

.bnp-journey-status.future {
    color: #ffffff;
    background: #252a33;
}

.bnp-journey-card h3 {
    margin: 0 0 10px;
    color: #252a33;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.35;
}

.bnp-journey-card p {
    margin: 0;
    color: #737a85;
    font-size: 11px;
    line-height: 1.75;
}

/* Card Footer */

.bnp-journey-card-footer {
    margin-top: 17px;
    padding-top: 15px;
    border-top: 1px solid #edf0f3;
}

.bnp-journey-card-footer span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #646b75;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

.bnp-journey-card-footer i {
    color: var(--bnp-green, #2f8f5b);
}

/* Roadmap CTA */

.bnp-journey-roadmap-note {
    max-width: 1040px;
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 28px auto 0;
    padding: 21px 23px;
    border: 1px solid rgba(47, 143, 91, 0.13);
    border-radius: 16px;
    background:
        linear-gradient(
            135deg,
            #ffffff,
            #f4fbf7
        );
    box-shadow: 0 17px 40px rgba(15, 23, 42, 0.07);
}

.bnp-journey-roadmap-icon {
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
    box-shadow: 0 10px 22px rgba(47, 143, 91, 0.23);
}

.bnp-journey-roadmap-note > div {
    flex: 1;
}

.bnp-journey-roadmap-note strong,
.bnp-journey-roadmap-note span {
    display: block;
}

.bnp-journey-roadmap-note strong {
    margin-bottom: 4px;
    color: #252a33;
    font-size: 13px;
    font-weight: 800;
}

.bnp-journey-roadmap-note div span {
    color: #7b828c;
    font-size: 9px;
    line-height: 1.55;
}

.bnp-journey-roadmap-note > a {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 17px;
    border-radius: 9px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 10px 22px rgba(229, 32, 48, 0.22);
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-journey-roadmap-note > a:hover {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 15px 29px rgba(229, 32, 48, 0.34);
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-journey-section {
        padding: 75px 0;
    }

    .bnp-journey-timeline::before {
        left: 29px;
    }

    .bnp-journey-item,
    .bnp-journey-item.left,
    .bnp-journey-item.right {
        width: 100%;
        margin-left: 0;
        padding-right: 0;
        padding-left: 82px;
        text-align: left;
    }

    .bnp-journey-item.left .bnp-journey-marker,
    .bnp-journey-item.right .bnp-journey-marker {
        right: auto;
        left: 0;
    }

    .bnp-journey-item.left .bnp-journey-card::after,
    .bnp-journey-item.right .bnp-journey-card::after {
        right: auto;
        left: -8px;
        border: 0;
        border-bottom: 1px solid rgba(15, 23, 42, 0.07);
        border-left: 1px solid rgba(15, 23, 42, 0.07);
    }

    .bnp-journey-item.left .bnp-journey-card-top {
        flex-direction: row;
    }

    .bnp-journey-roadmap-note {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .bnp-journey-roadmap-note > a {
        margin-left: 65px;
    }
}

@media (max-width: 767px) {

    .bnp-journey-section {
        padding: 58px 0;
    }

    .bnp-journey-section .bnp-section-heading {
        margin-bottom: 50px;
    }

    .bnp-journey-section .bnp-section-heading h2 {
        font-size: 31px;
    }

    .bnp-journey-item,
    .bnp-journey-item.left,
    .bnp-journey-item.right {
        padding-left: 68px;
    }

    .bnp-journey-timeline::before {
        left: 24px;
    }

    .bnp-journey-marker {
        width: 49px;
        height: 49px;
        border-width: 6px;
    }

    .bnp-journey-card {
        padding: 21px;
    }

    .bnp-journey-year {
        font-size: 23px;
    }

    .bnp-journey-roadmap-note > a {
        width: 100%;
        margin-left: 0;
    }
}

@media (max-width: 480px) {

    .bnp-journey-section .bnp-section-heading h2 {
        font-size: 27px;
    }

    .bnp-journey-card-top {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-journey-item.left .bnp-journey-card-top {
        flex-direction: column;
    }

    .bnp-journey-roadmap-note {
        padding: 18px;
    }
}


/* ==========================================
   BNP LEADERSHIP & COORDINATION SECTION
========================================== */

.bnp-leadership-section {
    position: relative;
    overflow: hidden;
    padding: 100px 0;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(229, 32, 48, 0.055),
            transparent 28%
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(47, 143, 91, 0.05),
            transparent 28%
        ),
        #f7f8fb;
}

/* ==========================================
   LEADERSHIP MESSAGE
========================================== */

.bnp-leadership-message {
    display: grid;
    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(350px, 0.85fr);
    align-items: center;
    gap: 58px;
    margin-bottom: 85px;
    padding: 43px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 25px;
    background:
        linear-gradient(
            135deg,
            #ffffff,
            #f4fbf7
        );
    box-shadow:
        0 25px 60px rgba(15, 23, 42, 0.1),
        0 7px 20px rgba(15, 23, 42, 0.04);
}

.bnp-leadership-message-content h2 {
    margin: 0;
    color: #252a33;
    font-size: 41px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.7px;
}

.bnp-leadership-message-content h2 span {
    display: block;
    color: var(--bnp-red, #e52030);
}

.bnp-leadership-message-content blockquote {
    position: relative;
    margin: 24px 0 20px;
    padding: 20px 22px 20px 26px;
    border: 0;
    border-left: 4px solid var(--bnp-green, #2f8f5b);
    border-radius: 0 14px 14px 0;
    color: #424954;
    background: #f3faf6;
    font-size: 15px;
    font-weight: 700;
    font-style: italic;
    line-height: 1.75;
}

.bnp-leadership-message-content > p {
    margin: 0;
    color: #737a85;
    font-size: 13px;
    line-height: 1.85;
}

.bnp-leadership-message-values {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 22px;
}

.bnp-leadership-message-values span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 12px;
    border: 1px solid rgba(47, 143, 91, 0.13);
    border-radius: 25px;
    color: #505762;
    background: #ffffff;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.35px;
    text-transform: uppercase;
}

.bnp-leadership-message-values i {
    color: var(--bnp-green, #2f8f5b);
}

/* Logo Visual */

.bnp-leadership-message-visual {
    position: relative;
    padding: 15px 12px 42px 22px;
}

.bnp-leadership-logo-card {
    position: relative;
    overflow: hidden;
    padding: 25px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 21px;
    background: #ffffff;
    box-shadow:
        0 24px 55px rgba(15, 23, 42, 0.12),
        0 7px 18px rgba(47, 143, 91, 0.06);
}

.bnp-leadership-logo-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 5px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-red, #e52030),
            #ffffff,
            var(--bnp-green, #2f8f5b)
        );
}

.bnp-leadership-logo-card img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 190px;
    display: block;
    margin: 0 auto;
    object-fit: contain;
}

.bnp-leadership-logo-caption {
    margin-top: 20px;
    padding-top: 17px;
    border-top: 1px solid #edf0f3;
    text-align: center;
}

.bnp-leadership-logo-caption strong,
.bnp-leadership-logo-caption span {
    display: block;
}

.bnp-leadership-logo-caption strong {
    margin-bottom: 4px;
    color: var(--bnp-red, #e52030);
    font-size: 15px;
    font-weight: 800;
}

.bnp-leadership-logo-caption span {
    color: #747b85;
    font-size: 8px;
    font-weight: 750;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}

.bnp-leadership-signature-card {
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 14px 16px;
    border: 1px solid rgba(47, 143, 91, 0.13);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.14);
}

.bnp-leadership-signature-icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-leadership-signature-card strong,
.bnp-leadership-signature-card span {
    display: block;
}

.bnp-leadership-signature-card strong {
    margin-bottom: 3px;
    color: #252a33;
    font-size: 11px;
    font-weight: 800;
}

.bnp-leadership-signature-card div span {
    color: #858b94;
    font-size: 8px;
}

/* ==========================================
   SECTION HEADING
========================================== */

.bnp-leadership-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 35px;
    margin-bottom: 40px;
}

.bnp-leadership-heading > div {
    max-width: 690px;
}

.bnp-leadership-heading h2 {
    margin: 0;
    color: #252a33;
    font-size: 39px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.65px;
}

.bnp-leadership-heading h2 span {
    display: block;
    color: var(--bnp-red, #e52030);
}

.bnp-leadership-heading p {
    margin: 15px 0 0;
    color: #737a85;
    font-size: 13px;
    line-height: 1.8;
}

.bnp-leadership-heading > a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 18px;
    border: 1px solid #dfe3e8;
    border-radius: 9px;
    color: #303640;
    background: #ffffff;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 9px 22px rgba(15, 23, 42, 0.05);
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        border-color 0.28s ease;
}

.bnp-leadership-heading > a:hover {
    transform: translateY(-3px);
    border-color: rgba(47, 143, 91, 0.35);
    color: var(--bnp-green-dark, #1f6f45);
}

/* ==========================================
   LEADERSHIP GRID
========================================== */

.bnp-leadership-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.bnp-leadership-card {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 23px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 17px;
    background: #ffffff;
    box-shadow:
        0 17px 40px rgba(15, 23, 42, 0.07),
        0 5px 14px rgba(15, 23, 42, 0.03);
    transition:
        transform 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease;
}

.bnp-leadership-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-red, #e52030),
            var(--bnp-green, #2f8f5b)
        );
}

.bnp-leadership-card:hover {
    transform: translateY(-8px);
    border-color: rgba(47, 143, 91, 0.17);
    box-shadow:
        0 27px 55px rgba(15, 23, 42, 0.12),
        0 8px 20px rgba(47, 143, 91, 0.05);
}

.bnp-leadership-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 20px;
}

.bnp-leadership-role-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: #ffffff;
    font-size: 17px;
}

.bnp-leadership-role-icon.red {
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-leadership-role-icon.green {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-leadership-role-icon.dark {
    background:
        linear-gradient(
            135deg,
            #444b56,
            #20242b
        );
}

.bnp-leadership-role-icon.maroon {
    background:
        linear-gradient(
            135deg,
            #75172d,
            #390a16
        );
}

.bnp-leadership-level {
    padding: 6px 8px;
    border-radius: 20px;
    color: var(--bnp-green-dark, #1f6f45);
    background: #edf9f2;
    font-size: 6px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
    text-align: center;
}

.bnp-leadership-card h3 {
    margin: 0 0 9px;
    color: #252a33;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.35;
}

.bnp-leadership-card > p {
    min-height: 76px;
    margin: 0 0 15px;
    color: #737a85;
    font-size: 10px;
    line-height: 1.7;
}

.bnp-leadership-card ul {
    margin: 0 0 20px;
    padding: 15px 0 0;
    border-top: 1px solid #edf0f3;
    list-style: none;
}

.bnp-leadership-card li {
    position: relative;
    margin-bottom: 8px;
    padding-left: 17px;
    color: #59616c;
    font-size: 9px;
    font-weight: 650;
}

.bnp-leadership-card li::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--bnp-green, #2f8f5b);
    box-shadow: 0 0 0 4px rgba(47, 143, 91, 0.1);
}

.bnp-leadership-card > a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: auto;
    color: var(--bnp-red, #e52030);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

.bnp-leadership-card > a:hover {
    color: var(--bnp-green-dark, #1f6f45);
}

/* Admin Ready Note */

.bnp-leadership-admin-note {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 27px;
    padding: 20px 22px;
    border: 1px solid rgba(47, 143, 91, 0.13);
    border-radius: 15px;
    background:
        linear-gradient(
            135deg,
            #ffffff,
            #f4fbf7
        );
    box-shadow: 0 15px 36px rgba(15, 23, 42, 0.06);
}

.bnp-leadership-admin-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-leadership-admin-note > div {
    flex: 1;
}

.bnp-leadership-admin-note strong,
.bnp-leadership-admin-note span {
    display: block;
}

.bnp-leadership-admin-note strong {
    margin-bottom: 4px;
    color: #252a33;
    font-size: 12px;
    font-weight: 800;
}

.bnp-leadership-admin-note div span {
    color: #7d848e;
    font-size: 9px;
    line-height: 1.55;
}

.bnp-leadership-admin-note > a {
    min-height: 41px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 16px;
    border-radius: 9px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 10px 22px rgba(229, 32, 48, 0.22);
}

/* Responsive */

@media (max-width: 1199px) {

    .bnp-leadership-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {

    .bnp-leadership-section {
        padding: 75px 0;
    }

    .bnp-leadership-message {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .bnp-leadership-message-visual {
        max-width: 620px;
    }

    .bnp-leadership-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767px) {

    .bnp-leadership-section {
        padding: 58px 0;
    }

    .bnp-leadership-message {
        margin-bottom: 60px;
        padding: 27px 22px;
    }

    .bnp-leadership-message-content h2,
    .bnp-leadership-heading h2 {
        font-size: 31px;
    }

    .bnp-leadership-message-visual {
        padding: 5px 0 40px;
    }

    .bnp-leadership-signature-card {
        right: 12px;
        left: 12px;
    }

    .bnp-leadership-grid {
        grid-template-columns: 1fr;
    }

    .bnp-leadership-card > p {
        min-height: 0;
    }

    .bnp-leadership-admin-note {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .bnp-leadership-admin-note > a {
        width: 100%;
    }
}

@media (max-width: 480px) {

    .bnp-leadership-message-content h2,
    .bnp-leadership-heading h2 {
        font-size: 27px;
    }

    .bnp-leadership-logo-card {
        padding: 19px;
    }

    .bnp-leadership-message-values {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-leadership-message-values span {
        justify-content: center;
    }
}


/* ==========================================
   BNP DISTRICT NETWORK & IMPACT
========================================== */

.bnp-network-section {
    position: relative;
    overflow: hidden;
    padding: 100px 0;
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(229, 32, 48, 0.09),
            transparent 30%
        ),
        radial-gradient(
            circle at 92% 85%,
            rgba(47, 143, 91, 0.08),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #171a21,
            #301019
        );
}

.bnp-network-layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(440px, 1.1fr);
    align-items: center;
    gap: 65px;
}

/* Left Content */

.bnp-network-content .bnp-section-eyebrow {
    color: #79dfa6;
}

.bnp-network-content h2 {
    margin: 0;
    color: #ffffff;
    font-size: 42px;
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -0.7px;
}

.bnp-network-content h2 span {
    display: block;
    color: #ff4054;
}

.bnp-network-content > p {
    max-width: 620px;
    margin: 20px 0 25px;
    color: rgba(255, 255, 255, 0.64);
    font-size: 13px;
    line-height: 1.85;
}

/* Feature List */

.bnp-network-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.bnp-network-features article {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 15px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.05);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
}

.bnp-network-features article:hover {
    transform: translateY(-5px);
    border-color: rgba(126, 226, 169, 0.22);
    background: rgba(255, 255, 255, 0.08);
}

.bnp-network-feature-icon {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #ffffff;
}

.bnp-network-feature-icon.red,
.bnp-network-stat-icon.red {
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-network-feature-icon.green,
.bnp-network-stat-icon.green {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-network-feature-icon.dark,
.bnp-network-stat-icon.dark {
    background:
        linear-gradient(
            135deg,
            #474e59,
            #20242b
        );
}

.bnp-network-feature-icon.maroon,
.bnp-network-stat-icon.maroon {
    background:
        linear-gradient(
            135deg,
            #7a1730,
            #390a16
        );
}

.bnp-network-features strong,
.bnp-network-features span {
    display: block;
}

.bnp-network-features strong {
    margin-bottom: 4px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
}

.bnp-network-features div span {
    color: rgba(255, 255, 255, 0.47);
    font-size: 8px;
    line-height: 1.55;
}

/* Actions */

.bnp-network-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 27px;
}

.bnp-network-primary-btn,
.bnp-network-secondary-btn {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 18px;
    border-radius: 9px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    transition:
        transform 0.28s ease,
        color 0.28s ease,
        border-color 0.28s ease,
        background 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-network-primary-btn {
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    box-shadow: 0 12px 26px rgba(229, 32, 48, 0.25);
}

.bnp-network-primary-btn:hover {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 17px 33px rgba(229, 32, 48, 0.38);
}

.bnp-network-secondary-btn {
    border: 1px solid rgba(126, 226, 169, 0.23);
    color: #ffffff;
    background: rgba(47, 143, 91, 0.12);
}

.bnp-network-secondary-btn i {
    color: #7ee2a9;
}

.bnp-network-secondary-btn:hover {
    transform: translateY(-3px);
    color: #ffffff;
    border-color: rgba(126, 226, 169, 0.45);
    background: rgba(47, 143, 91, 0.21);
}

/* Right Panel */

.bnp-network-panel {
    padding: 26px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.075);
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.23);
    backdrop-filter: blur(15px);
}

.bnp-network-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 20px;
}

.bnp-network-panel-header span {
    display: block;
    margin-bottom: 4px;
    color: #79dfa6;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.bnp-network-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-size: 22px;
    font-weight: 800;
}

.bnp-network-panel-icon {
    width: 50px;
    height: 50px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    color: #ffffff !important;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
    box-shadow: 0 10px 23px rgba(47, 143, 91, 0.25);
}

/* Stats */

.bnp-network-stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 11px;
}

.bnp-network-stats-grid article {
    padding: 17px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.05);
}

.bnp-network-stat-icon {
    width: 39px;
    height: 39px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    border-radius: 11px;
    color: #ffffff;
}

.bnp-network-stats-grid strong {
    display: block;
    margin-bottom: 5px;
    color: #ffffff;
    font-size: 27px;
    font-weight: 800;
    line-height: 1;
}

.bnp-network-stats-grid strong::after {
    content: "+";
    margin-left: 2px;
    color: #ff4054;
    font-size: 14px;
}

.bnp-network-stats-grid article > span:last-child {
    display: block;
    color: rgba(255, 255, 255, 0.5);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.45px;
    text-transform: uppercase;
}

/* Region List */

.bnp-network-regions {
    margin-top: 15px;
    padding: 17px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.045);
}

.bnp-network-regions-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 13px;
}

.bnp-network-regions-heading span {
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
}

.bnp-network-regions-heading small {
    color: rgba(255, 255, 255, 0.38);
    font-size: 7px;
    text-transform: uppercase;
}

.bnp-network-region-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 9px;
}

.bnp-network-region-list span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255, 255, 255, 0.56);
    font-size: 8px;
    font-weight: 700;
}

.bnp-network-region-list i {
    color: #79dfa6;
}

/* Live Status */

.bnp-network-live-status {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: 15px;
    padding: 14px;
    border: 1px solid rgba(126, 226, 169, 0.13);
    border-radius: 12px;
    background: rgba(47, 143, 91, 0.08);
}

.bnp-network-live-dot {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: var(--bnp-green, #2f8f5b);
    box-shadow: 0 0 0 7px rgba(47, 143, 91, 0.13);
    animation: bnpNetworkLive 1.8s infinite;
}

@keyframes bnpNetworkLive {
    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.4;
    }
}

.bnp-network-live-status strong,
.bnp-network-live-status small {
    display: block;
}

.bnp-network-live-status strong {
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
}

.bnp-network-live-status small {
    color: rgba(255, 255, 255, 0.43);
    font-size: 8px;
    line-height: 1.5;
}

/* Responsive */

@media (max-width: 991px) {

    .bnp-network-section {
        padding: 75px 0;
    }

    .bnp-network-layout {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .bnp-network-panel {
        max-width: 720px;
    }
}

@media (max-width: 767px) {

    .bnp-network-section {
        padding: 58px 0;
    }

    .bnp-network-content h2 {
        font-size: 31px;
    }

    .bnp-network-features {
        grid-template-columns: 1fr;
    }

    .bnp-network-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .bnp-network-primary-btn,
    .bnp-network-secondary-btn {
        width: 100%;
    }

    .bnp-network-panel {
        padding: 21px;
    }
}

@media (max-width: 480px) {

    .bnp-network-content h2 {
        font-size: 27px;
    }

    .bnp-network-stats-grid,
    .bnp-network-region-list {
        grid-template-columns: 1fr;
    }

    .bnp-network-regions-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bnp-network-live-dot {
        animation: none;
    }
}



/* ==========================================
   BNP ABOUT RECOGNITION & PARTNERS
========================================== */

.bnp-about-recognition-section {
    position: relative;
    overflow: hidden;
    padding: 100px 0;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(229, 32, 48, 0.05),
            transparent 28%
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(47, 143, 91, 0.045),
            transparent 28%
        ),
        #f7f8fb;
}

.bnp-about-achievements-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 21px;
}

.bnp-about-achievement-card {
    position: relative;
    padding: 25px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 18px;
    background: #ffffff;
    box-shadow:
        0 18px 42px rgba(15, 23, 42, 0.07),
        0 5px 15px rgba(15, 23, 42, 0.03);
    transition:
        transform 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease;
}

.bnp-about-achievement-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-red, #e52030),
            var(--bnp-green, #2f8f5b)
        );
}

.bnp-about-achievement-card:hover {
    transform: translateY(-8px);
    border-color: rgba(47, 143, 91, 0.18);
    box-shadow:
        0 28px 58px rgba(15, 23, 42, 0.12),
        0 8px 20px rgba(47, 143, 91, 0.05);
}

.bnp-about-achievement-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 21px;
}

.bnp-about-achievement-icon {
    width: 52px;
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    color: #ffffff;
    font-size: 19px;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.13);
}

.bnp-about-achievement-icon.red {
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-about-achievement-icon.green {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-about-achievement-icon.dark {
    background:
        linear-gradient(
            135deg,
            #474e59,
            #20242b
        );
}

.bnp-about-achievement-year {
    padding: 7px 10px;
    border-radius: 20px;
    color: var(--bnp-green-dark, #1f6f45);
    background: #edf9f2;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.bnp-about-achievement-card h3 {
    margin: 0 0 10px;
    color: #252a33;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.4;
}

.bnp-about-achievement-card p {
    min-height: 72px;
    margin: 0 0 18px;
    color: #737a85;
    font-size: 10px;
    line-height: 1.75;
}

.bnp-about-achievement-category {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding-top: 15px;
    border-top: 1px solid #edf0f3;
    color: var(--bnp-red, #e52030);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

/* Partners Panel */

.bnp-about-partners-panel {
    display: grid;
    grid-template-columns:
        minmax(280px, 0.9fr)
        minmax(350px, 1.1fr)
        auto;
    align-items: center;
    gap: 25px;
    margin-top: 28px;
    padding: 24px;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 17px 40px rgba(15, 23, 42, 0.07);
}

.bnp-about-partners-intro {
    display: flex;
    align-items: flex-start;
    gap: 13px;
}

.bnp-about-partners-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
    box-shadow: 0 10px 22px rgba(47, 143, 91, 0.22);
}

.bnp-about-partners-intro div > span {
    display: block;
    margin-bottom: 4px;
    color: var(--bnp-red, #e52030);
    font-size: 7px;
    font-weight: 800;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.bnp-about-partners-intro h3 {
    margin: 0 0 6px;
    color: #252a33;
    font-size: 15px;
    font-weight: 800;
}

.bnp-about-partners-intro p {
    margin: 0;
    color: #7d848e;
    font-size: 8px;
    line-height: 1.55;
}

.bnp-about-partners-logos {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 9px;
}

.bnp-about-partners-logos a {
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    border: 1px solid #edf0f3;
    border-radius: 10px;
    background: #fafbfc;
    filter: grayscale(1);
    opacity: 0.68;
    transition:
        transform 0.25s ease,
        filter 0.25s ease,
        opacity 0.25s ease,
        border-color 0.25s ease;
}

.bnp-about-partners-logos a:hover {
    transform: translateY(-3px);
    border-color: rgba(47, 143, 91, 0.22);
    filter: grayscale(0);
    opacity: 1;
}

.bnp-about-partners-logos img {
    max-width: 100%;
    max-height: 48px;
    object-fit: contain;
}

.bnp-about-partners-btn {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 16px;
    border-radius: 9px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: 0 10px 22px rgba(229, 32, 48, 0.22);
    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.bnp-about-partners-btn:hover {
    transform: translateY(-3px);
    color: #ffffff;
    box-shadow: 0 15px 29px rgba(229, 32, 48, 0.34);
}

/* ==========================================
   ABOUT FINAL CTA
========================================== */

.bnp-about-final-cta {
    position: relative;
    overflow: hidden;
    padding: 75px 0;
    background: #ffffff;
}

.bnp-about-final-card {
    position: relative;
    display: grid;
    grid-template-columns:
        minmax(0, 0.8fr)
        minmax(500px, 1.2fr);
    align-items: center;
    gap: 42px;
    overflow: hidden;
    padding: 40px;
    border-radius: 23px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #171a21 0%,
            #35101a 52%,
            #17432f 100%
        );
    box-shadow:
        0 28px 68px rgba(15, 23, 42, 0.18),
        0 10px 24px rgba(47, 143, 91, 0.07);
}

.bnp-about-final-card::before {
    content: "";
    position: absolute;
    top: -120px;
    right: 21%;
    width: 270px;
    height: 270px;
    border: 40px solid rgba(255, 255, 255, 0.025);
    border-radius: 50%;
}

.bnp-about-final-card::after {
    content: "";
    position: absolute;
    right: -100px;
    bottom: -130px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: rgba(47, 143, 91, 0.08);
}

.bnp-about-final-content,
.bnp-about-final-actions {
    position: relative;
    z-index: 3;
}

.bnp-about-final-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 11px;
    color: #79dfa6;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.bnp-about-final-label::before {
    content: "";
    width: 33px;
    height: 3px;
    border-radius: 20px;
    background:
        linear-gradient(
            90deg,
            var(--bnp-red, #e52030),
            var(--bnp-green, #2f8f5b)
        );
}

.bnp-about-final-content h2 {
    margin: 0;
    color: #ffffff;
    font-size: 33px;
    font-weight: 800;
    line-height: 1.17;
}

.bnp-about-final-content h2 span {
    display: block;
    color: #ff4054;
}

.bnp-about-final-content p {
    margin: 14px 0 0;
    color: rgba(255, 255, 255, 0.58);
    font-size: 11px;
    line-height: 1.7;
}

.bnp-about-final-actions {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 11px;
}

.bnp-about-final-btn {
    min-height: 88px;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.055);
    backdrop-filter: blur(10px);
    transition:
        transform 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
}

.bnp-about-final-btn:hover {
    transform: translateY(-6px);
    color: #ffffff;
}

.bnp-about-final-btn > i {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffffff;
    font-size: 16px;
}

.bnp-about-final-btn.primary > i,
.bnp-about-final-btn.request > i {
    background:
        linear-gradient(
            135deg,
            var(--bnp-red, #e52030),
            var(--bnp-red-dark, #a70b20)
        );
}

.bnp-about-final-btn.volunteer > i {
    background:
        linear-gradient(
            135deg,
            var(--bnp-green, #2f8f5b),
            var(--bnp-green-dark, #1f6f45)
        );
}

.bnp-about-final-btn.primary:hover,
.bnp-about-final-btn.request:hover {
    border-color: rgba(229, 32, 48, 0.4);
    background: rgba(229, 32, 48, 0.14);
}

.bnp-about-final-btn.volunteer:hover {
    border-color: rgba(47, 143, 91, 0.4);
    background: rgba(47, 143, 91, 0.16);
}

.bnp-about-final-btn span,
.bnp-about-final-btn small {
    display: block;
}

.bnp-about-final-btn small {
    margin-bottom: 3px;
    color: rgba(255, 255, 255, 0.43);
    font-size: 7px;
    font-weight: 700;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

.bnp-about-final-btn span {
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.4;
}

/* Responsive */

@media (max-width: 1199px) {

    .bnp-about-partners-panel {
        grid-template-columns: 1fr;
    }

    .bnp-about-partners-btn {
        justify-self: start;
    }

    .bnp-about-final-card {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991px) {

    .bnp-about-recognition-section {
        padding: 75px 0;
    }

    .bnp-about-achievements-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnp-about-final-cta {
        padding: 62px 0;
    }
}

@media (max-width: 767px) {

    .bnp-about-recognition-section {
        padding: 58px 0;
    }

    .bnp-about-achievements-grid {
        grid-template-columns: 1fr;
    }

    .bnp-about-achievement-card p {
        min-height: 0;
    }

    .bnp-about-partners-logos {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnp-about-partners-btn {
        width: 100%;
    }

    .bnp-about-final-cta {
        padding: 50px 0;
    }

    .bnp-about-final-card {
        padding: 29px 23px;
    }

    .bnp-about-final-content h2 {
        font-size: 27px;
    }

    .bnp-about-final-actions {
        grid-template-columns: 1fr;
    }

    .bnp-about-final-btn {
        min-height: 72px;
    }
}

@media (max-width: 480px) {

    .bnp-about-partners-panel {
        padding: 18px;
    }

    .bnp-about-partners-intro {
        align-items: flex-start;
        flex-direction: column;
    }

    .bnp-about-final-content h2 {
        font-size: 24px;
    }
}
