 :root {
	 --blue: #062652;
	 --pale-blue: #C6DAEC;
	 --warm-bg: #F2E2CB;
	 --text: #1A1A1A;
	 --purple: #894D80;
	 --white-85: #FFFFFFD1;
	 
 }
  
  body {
      font-family: 'Outfit', sans-serif;
      font-size: 20px;
      font-weight: 400;
      color: var(--text);
      background: #fff;
      line-height: 27px;
      letter-spacing: 0;
    }

.post-content h2,
.post-content h3,
.post-content h4,
.elementor-widget-theme-post-content h1, 
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3, 
.elementor-widget-theme-post-content h4 {
	 color: var(--blue);
	 font-weight: 600;
	 margin: 1em 0 0.5em 0;
}
.post-content h2,
.post-content h3,
.elementor-widget-theme-post-content h1, 
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3  {
	 font-family: 'Playfair Display', sans-serif;
	  font-weight: 700;
}
.elementor-widget-theme-post-content h2:first-child {
	margin-top: 0;
}
.post-content p {
	font-weight: 300;
	color: var(--text);
}
.post-content a,
.elementor-widget-theme-post-content p a {
	color: var(--purple);
}
.elementor-widget-theme-post-content p strong , 
.elementor-widget-theme-post-content li strong {
	font-weight: 600;
}
.elementor-widget-theme-post-content ul, 
.elementor-widget-theme-post-content ol {
	margin-bottom: 1.5rem;
}

.elementor-widget-theme-post-content li {
	margin-bottom: 1rem;
}
.elementor-widget-theme-post-content blockquote {
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 1.5rem;
	margin-top: 1.5rem;
	padding: 30px;
	background: var(--warm-bg);
	border-left: 5px solid var(--purple);
	color: var(--blue);
	border-radius: 10px;
	
}
.elementor-widget-theme-post-content blockquote p {
	color: var(--blue);
}
.elementor-widget-theme-post-content blockquote cite {
	text-align: right;
	font-size: 0.875rem;
}
.post-content hr,
.elementor-widget-theme-post-content hr {
	color: var(--purple);
	margin: 3.5rem 0;
	    border: none;
    border-top: 2px solid;
}


.references ul {
	margin-top: 1.25rem;
}
.references li {
	margin-bottom: 1rem;
	font-size: 1rem;
	color: var(--blue);
}
.references hr:last-child {
	margin-bottom:0;
}
.post-content .elementor-post-navigation {
	gap: 30px;
}
.post-content .elementor-post-navigation__link a {
    padding: 15px;
    border-radius: 10px;
    background: #c6daec6b;
	transition: all 0.4s;
}
.post-content .elementor-post-navigation__link a:hover {
	background: var(--pale-blue);
}


/* Buttons */
.hover-btn .elementor-button  {
  display: inline-block;
  padding: 14px 28px;
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  border: none;
}
.hover-btn .elementor-button  {
  background-color: #1a1a1a;
  background-image: linear-gradient(to right, #894d80, #894d80 33%, rgba(138,77,128,0) 66%)!important;
  background-size: 300% 100%;
  background-position: right center;
  background-repeat: no-repeat;
  color: #fff;
  transition: background-position 0.5s ease, color 0.4s ease;
}
.hover-btn .elementor-button:hover {
  background-position: left center!important;
  color: #fff;
}
.btn-outline-light { background: transparent; color: #fff; border: 1.5px solid #fff; }


/** Header **/
#main-nav ul li a {
	position: relative;
}
#main-nav li a:after {
	content: '';
	border-top: 2px solid;
	bottom: 0;
	left: 0;
	width: 0;
	display:block;
	position: absolute;
	transition: all 0.3s;
}
#main-nav .elementor-nav-menu--dropdown  li a:after{
	border-top: 1px solid;
}
#main-nav  li a:hover:after {
	width: 100%;
}
#main-nav .elementor-nav-menu--dropdown li:last-child {
	margin-bottom: 0.75em;
}
/** Content Sections **/
.crosshair-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  width: 100vw;
  height: 100%;
  left: 0;
  top: 0;
}
.crosshair-overlay svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.crosshair-icon {
  position: absolute;
  width: 180px;
  height: 180px;
  left: 85%;
  top: 90%;
  transform: translate(-50%, -50%);
}
.crosshair-animated {
  position: absolute;
  inset: 0;
  animation: crosshairDrift 22s ease-in-out infinite;
}
@keyframes crosshairDrift {
  0%   { transform: translate(0px,  0px);  }
  11%  { transform: translate(40px, 18px); }
  24%  { transform: translate(58px, 32px); }
  35%  { transform: translate(22px, 54px); }
  47%  { transform: translate(62px, 42px); }
  58%  { transform: translate(35px, 60px); }
  70%  { transform: translate(52px, 24px); }
  83%  { transform: translate(14px, 50px); }
  100% { transform: translate(0px,  0px);  }
}


.bn-slider {
	margin: 3rem 0;
}

.bn-slider__inner {
	position: relative;
}
.bn-slider__track {
	padding-bottom: 0;
}

.bn-slider__slide {
	height: auto;
}

.bn-slider__card {
	height: 100%;
	display: flex;
    justify-content: center;
	gap: 1.75rem;
background: linear-gradient(135deg, var(--blue), var(--purple));
padding: 30px;
border-radius: 20px;
color: #fff;
}


.bn-slider__image {
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #f3f3f3;
		border-radius: 10px;
}

.bn-slider__image img.bn-slider__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;

}

.post-content .bn-slider__card  .bn-slider__content {
	    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1rem;
	color: #fff;
}
.post-content .bn-slider__card .bn-slider__link:not(:hover),
.post-content .bn-slider__card .bn-slider__link {
	font-weight: 400;
	color: #fff!important;
	
}
.post-content .bn-slider__card .bn-slider__link:not(:hover) {
	text-decoration: none;
}
.post-content .bn-slider__card .bn-slider__title {
	margin: 0;
	font-size: clamp(1.1rem, 2vw, 1.45rem);
	line-height: 1.15;
	color: #fff;
}

.bn-slider__arrow {
	font-size: 1.5rem;
	line-height: 1;
}
.bn-slider__controls {
	display: flex;
	justify-content: flex-end;
	gap: 0.75rem;
	margin-top: 1rem;
}


.bn-slider__button {
	    width: 44px;
    height: 44px;
    border-radius: 999px;
    border: 1px solid var(--blue);
    color: var(--blue);
    background: transparent;
    cursor: pointer;
    font-size: 1.25rem;
    line-height: 2;
    text-align: center;
    padding: 0;
}
.bn-slider__button:hover, 
.bn-slider__button:focus {
	background:  var(--blue);
	color: #fff;
}
.bn-slider__controls .swiper-pagination.bn-slider__pagination {
    width: calc(100% - 120px);
    text-align: left;
}
.bn-slider__pagination  .swiper-pagination-bullet {
	background: var(--purple);
	width: 25px;
	height: 10px;
	border-radius: 5px;
}
.bn-slider__pagination  .swiper-pagination-bullet-active {
	background: var(--purple);
}
@media(max-width:768px){
	.bn-slider__card {
		padding: 10px;
		border-radius: 10px;
	}
}