/*
Theme Name: Pray Socials Group
Theme URI: https://www.pray-socials.com
Author: Mama Group
Author URI: https://www.mamagroup.net
Description: Custom WordPress theme developed by Mama Group. Designed for professional, modern, and scalable websites using Bootstrap 5.
Version: 2.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mamagroup-theme
Tags: bootstrap, responsive, modern, custom-theme, multipurpose

Copyright (c) 2025 Mama Group.
All rights reserved. This theme is distributed under the terms of the GNU General Public License (GPL), but the Mama Group name, logo, brand identity, and any proprietary designs or content are protected under applicable intellectual property laws and may not be reused without explicit written permission.
*/


/* ===================================
   Base Typography Styles 
=================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&family=Playfair+Display:ital,wght@0,400;0,600;1,400&display=swap');

/* Root font size setup */
html {
  font-size: 16px;
  /* 1rem = 16px (You can scale this for responsiveness) */
  scroll-behavior: smooth;
}

body {
  font-family: 'Poppins', sans-serif;
  font-size: 1rem;
  /* Base body font size (16px) */
  line-height: 1.6;
  color: #212529;
  /* Bootstrap default text color */
  background-color: #fff;
  /* Optional */
  margin: 0;
  padding: 0;
}

/* Headings */
h1 {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
}

h2 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.3;
}

h3 {
  font-size: 1.75rem;
  font-weight: 600;
}

h4 {
  font-size: 1.5rem;
  font-weight: 500;
}

h5 {
  font-size: 1.25rem;
  font-weight: 500;
}

h6 {
  font-size: 1rem;
  font-weight: 500;
}

/* Paragraphs and links */
p {
  margin-bottom: 1.2rem;
  font-size: 1.1rem;
  font-weight: 400;
}

a {
  color: #f77d00;
  text-decoration: none;
  cursor: pointer;
}

a:hover {
  text-decoration: none;
}

/* Small text */
small {
  font-size: 0.875rem;
  color: #6c757d;
}

/* Strong and bold */
strong,
b {
  font-weight: 600;
}

/* Buttons */
button,
.btn {
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
}

/* Form inputs */
input,
textarea,
select {
  font-family: 'Poppins', sans-serif;
  font-size: 1rem;
}

/* ===========================
   HEADER : DESKTOP NAVIGATION
=========================== */

:root {
  --header-h: 96px;
  /* adjust if your header height changes */
}

/* Base header */
.header {
  z-index: 1050;
  height: var(--header-h);
  transition: background .3s ease, box-shadow .3s ease, color .3s ease;
}

@media (max-width: 991.98px) {
  .header {
    display: none !important;
  }
}

/* --- Variants --- */
.header--transparent {
  background: transparent !important;
  box-shadow: none;
}

.header--solid,
.header.scrolled {
  background: #0E54A6 !important;
  /* brand blue */
  box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
  color: #fff;
}

/* Content offset */
body:not(.page-has-hero) .site-main,
body:not(.page-has-hero) main,
body:not(.page-has-hero) #content {
  padding-top: var(--header-h);
}

/* Homepage hero overlap */
body.page-has-hero .hero-section,
body.page-has-hero .home-slider,
body.page-has-hero .page-banner,
body.page-has-hero .section--hero {
  position: relative;
  margin-top: -var(--header-h);
  padding-top: var(--header-h);
}

/* ===========================
   NAVIGATION
=========================== */
.header__menu {
  font-size: 1.1rem;
  font-weight: 600;
  list-style: none;
  margin: 0;
  padding: 0;
}

.header__menu>.header__menu-item:not(:last-child) {
  margin-right: 0.3rem;
}

.header__menu-link {
  text-decoration: none;
  transition: color 0.3s ease;
  padding: 0.1rem 0.2rem 0.2rem;
  position: relative;
  display: inline-block;
  line-height: 1.2;
}

/* Remove Bootstrap caret */
.header .dropdown-toggle::after {
  content: none !important;
}

/* Chevron style */
.header .fa-chevron-down {
  font-size: .8rem;
  margin-left: .35rem;
  line-height: 1;
  opacity: .9;
}

/* Transparent variant link colors */
.header--transparent .header__menu-link {
  color: #A06811;
}

.header--transparent .header__menu-link:hover,
.header--transparent .header__menu-item:hover>.header__menu-link,
.header--transparent .header__menu-item.active>.header__menu-link {
  color: #AC3048;
}

/* Solid variant link colors */
.header--solid .header__menu-link,
.header.scrolled .header__menu-link {
  color: #fff;
}

.header--solid .header__menu-link:hover,
.header.scrolled .header__menu-link:hover,
.header--solid .header__menu-item.active>.header__menu-link,
.header.scrolled .header__menu-item.active>.header__menu-link {
  color: #F9C23C;
}

/* Hover underline */
.header__menu-link::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background-color: #F77D00;
  transition: width .3s ease;
}

.header__menu-link:hover::after,
.header__menu-item.active>.header__menu-link::after {
  width: 100%;
}

/* Disable underline for dropdown parents (optional) */
.header__menu-item.dropdown>.header__menu-link::after {
  display: none;
}

/* ===========================
   DROPDOWN (Unified Style)
=========================== */
.header__submenu,
.header .dropdown-menu {
  background: #fff !important;
  border: 1px solid rgba(0, 0, 0, .06);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
  padding: .5rem 0;
  min-width: 220px;
}

/* Bootstrap variables override */
.header .dropdown-menu {
  --bs-dropdown-bg: #fff;
  --bs-dropdown-color: #333;
  --bs-dropdown-link-color: #333;
  --bs-dropdown-link-hover-color: #F77D00;
  --bs-dropdown-link-hover-bg: #f8f9fa;
  --bs-dropdown-border-color: rgba(0, 0, 0, .06);
}

/* Dropdown links */
.header__submenu-link,
.header .dropdown-item {
  color: #333 !important;
  font-size: .95rem;
  font-weight: 400;
  padding: .5rem 1rem;
  transition: background-color .2s ease, color .2s ease;
}

.header__submenu-link:hover,
.header .dropdown-item:hover {
  color: #F77D00 !important;
  background: #f8f9fa !important;
}

/* Transparent variant doesn't alter dropdowns */
.header--transparent .header__submenu,
.header--transparent .dropdown-menu {
  background: #fff !important;
}

/* Open dropdown on hover (desktop only) */
@media (min-width: 992px) {

  /* Bootstrap lg+ */
  .header__menu-item.dropdown:hover>.dropdown-menu {
    display: block;
    /* show the menu */
  }

  .header__menu-item.dropdown:hover>.header__menu-link {
    /* optional: match your existing hover/active color */
    color: #F9C23C;
  }
}

/* ------------------------
  HEADER : SEARCH BAR                   
------------------------- */
#searchSuggestions {
  max-height: 250px;
  overflow-y: auto;
  background: white;
  border: 1px solid #ccc;
  border-top: none;
  border-radius: 0 0 .25rem .25rem;
}

/* ------------------------
  Offcanvas Mobile Menu
------------------------- */
.header-mobile .offcanvas-body {
  padding: 0;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.header-mobile__icon {
  color: #88940b;
  font-size: 1.1rem;
}

.header-mobile__scroll {
  flex-grow: 1;
  overflow-y: auto;
}

.header-mobile__link {
  color: #0d0e05;
  font-weight: 500;
}

.header-mobile__link:hover {
  color: #88940b
}

.header-mobile__cta {
  background-color: #fff;
  position: sticky;
  bottom: 0;
  z-index: 10;
}

/* Info and Expert */
.header-mobile__info i,
.header-mobile__expert i {
  font-size: 1rem;
}

.header-mobile__expert img {
  width: 40px;
  height: 40px;
  object-fit: cover;
}

/* ===========================
   HOME : OUR SERVICES   
=========================== */
.services {
  background-image: url('https://www.pray-socials.com/wp-content/uploads/2024/06/pexels-jimbear-998499.jpg');
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  overflow: hidden;
}

.services__overlay {
  background-color: rgba(0, 5, 10, 0.75);
  z-index: 1;
}

.services__bg {
  z-index: 0;
}

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

.services__title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 26px;
  color: #FDFEFF;
}

.services__subtitle {
  font-family: 'Poppins', sans-serif;
  font-weight: 400;
  color: #FFFFFF;
}

.services__card {
  background-color: #0E54A6;
  border-radius: 25px;
  padding: 30px;
  height: 100%;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.services__card:hover {
  background-color: #F9F5EA;
  color: #000;
}

.services__card-icon i {
  font-size: 35px;
  color: #F77D00;
}

.services__card-title {
  font-family: 'Helvetica', sans-serif;
  font-weight: 600;
  font-size: 20px;
  color: #fff;
  margin-bottom: 15px;
}

.services__card:hover .services__card-title {
  color: #000;
}

.services__card-text {
  font-family: 'Helvetica', sans-serif;
  font-size: 15px;
  font-weight: 400;
  color: #fff;
  margin-bottom: 20px;
}

.services__card:hover .services__card-text {
  color: #000;
}

.services__card-btn {
  font-family: 'Helvetica', sans-serif;
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  background: transparent;
  border: 1px solid #fff;
  padding: 6px 15px;
  border-radius: 3px;
  transition: all 0.3s ease;
}

.services__card:hover .services__card-btn {
  color: #FF551D;
  border-color: #FF551D;
}

/* ===========================
   HOME : WHY PRAY SOCIALS
=========================== */
.why {
  overflow: hidden;
}

.why__title {
  font-family: 'Poppins', sans-serif;
  font-size: 27px;
  font-weight: 600;
  color: #0C478A;
}

.why__subtitle {
  font-family: 'Poppins', sans-serif;
  font-size: 15px;
  font-weight: 400;
  color: #0C478A;
}

/* Decorative Arrows */
.why__arrow {
  position: absolute;
  opacity: 0.2;
  animation: arrow-bounce 2s infinite ease-in-out;
}

.why__arrow--left {
  top: 15px;
  left: -154px;
  width: 15%;
}

.why__arrow--right {
  bottom: -50px;
  right: 35px;
  width: 32%;
  opacity: 0.17;
}

@keyframes arrow-bounce {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(20px);
  }

  100% {
    transform: translateY(0);
  }
}

/* Accordion Styles */
.why__accordion-item {
  background-color: #0E54A6;
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 10px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.why__accordion-btn {
  font-family: 'Poppins', sans-serif;
  font-size: 16px;
  font-weight: 600;
  color: #FFFFFF;
  background-color: #0E54A6;
}

.why__accordion-btn:not(.collapsed) {
  background-color: #FD9123;
  color: #fff;
}

.why__accordion-btn:focus {
  box-shadow: none;
}

.why__accordion-body {
  background-color: #FFFFFF;
  color: #023674;
  font-family: 'Poppins', sans-serif;
  font-size: 15px;
  font-weight: 400;
}

/* ===========================
   HOME : RECENT JOBS
=========================== */
.recent-jobs__title {
  color: #061747;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 27px;
}

.recent-jobs__pagination .page-numbers {
  display: inline-block;
  padding: 6px 12px;
  margin: 0 2px;
  border: 1px solid #ddd;
  border-radius: 4px;
  text-decoration: none;
  color: #0061CF;
}

.recent-jobs__pagination .page-numbers.current {
  background-color: #0061CF;
  color: #fff;
  border-color: #0061CF;
}


/* ===========================
   TEMPLATE PARTS : JOB CARD  
=========================== */
.job-card {
  border: 1px solid #A5816A;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 0 8px -1px rgba(0, 0, 0, 0.5);
  background-color: #fff;
}

.job-card__title {
  font-family: 'Poppins', sans-serif;
  font-size: 20px;
  font-weight: 600;
  color: #2A1102;
}

.job-card__title a {
  color: inherit;
}

.job-card__meta {
  font-family: 'Poppins', sans-serif;
  font-size: 15px;
  color: #222;
}

.job-card__meta i {
  color: #00131B;
  font-size: 15px;
}

.job-card__actions .btn-outline-primary {
  font-size: 13px;
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  border: 2px solid #0061CF;
  color: #0061CF;
}

.job-card__actions .btn-outline-primary:hover {
  background-color: #0061CF;
  color: #fff;
}

.job-card__actions .btn-warning {
  font-size: 13px;
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  border: 2px solid #F77D00;
}

.job-card__actions .btn-warning:hover {
  background-color: #B64F02;
  border-color: #B64F02;
}

/* ===========================
   BLOG SINGLE PAGE TEMPLATE  
=========================== */
.pt-custom {
  padding-top: 10rem;
  padding-bottom: 2rem;
}

/* Mobile adjustments */
@media (max-width: 767.98px) {
  .pt-custom {
    padding-top: 1.5rem;
  }
}

/* ===========================
   TEMPLATE PARTS: TESTIMONIAL CARD 
=========================== */
.testimonial-card {
  background-color: #fff;
}

.testimonial-card__rating i {
  font-size: 14px;
  margin-right: 2px;
}

.testimonial-card__author {
  background: transparent;
}

.testimonial-card__image img {
  object-fit: cover;
}

/* ===========================
   HOME : TESTIMONIALS SECTION   
=========================== */
.testimonial-section .swiper {
  padding-bottom: 40px;
}

/* ==========================
   PAGE HEADER HERO PADDING
/* ========================= */
.section-hero-padding {
  padding-top: 180px;
  /* Desktop default */
  padding-bottom: 158px;
}

@media (max-width: 768px) {
  .section-hero-padding {
    padding-top: 50px;
    /* Mobile */
    padding-bottom: 80px;
  }
}

/* ===========================
   SINGLE BLOG PAGE
=========================== */
/* Social Share Sticky (Desktop & Tablet) */
.social-share {
  position: fixed;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 10px;
  z-index: 1000;
}

/* Social Share Section (Mobile) - Placed at the End */
.social-share-mobile {
  position: sticky;
  bottom: 0;
  left: 12px;
  width: 100%;
  padding: 15px 0;
  text-align: center;
  z-index: 999;
}

/* Social Icon Buttons */
.social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  font-size: 18px;
  color: white;
  transition: all 0.3s ease-in-out;
}

/* Individual Colors */
.facebook {
  background: #1877F2;
}

.messenger {
  background: #0084FF;
}

.viber {
  background: #7C4DFF;
}

.whatsapp {
  background: #25D366;
}

.telegram {
  background: #0088CC;
}

.email {
  background: #D44638;
}

/* Hover Effect */
.social-icon:hover {
  opacity: 0.8;
  transform: scale(1.1);
}

/* Mobile Visibility */
@media (max-width: 768px) {
  .social-share {
    display: none;
    /* Hide Desktop Sticky Share */
  }

  .social-share-mobile {
    display: flex;
  }
}

/* ===========================
   PAGE : ABOUT US
=========================== */
.accordion-button {
  font-size: 1rem !important;
  font-weight: 600 !important;
}

.accordion-body {
  font-size: 0.9rem !important;
}

/* ===========================
   PAGE : OUR VOICE 
=========================== */
/* Base palette + tokens (Blue = default: Yoganath) */
:root {
  --ps-blue-600: #1E459C;
  --ps-blue-700: #0E54A6;
  --ps-brown-700: #995324;

  --radius-lg: 24px;

  /* Theme tokens (overridden per-variant) */
  --card-grad-start: rgba(14, 84, 166, 0.06);
  --card-grad-end: rgba(14, 84, 166, 0.02);
  --card-quote: rgba(14, 84, 166, 0.12);
  --img-border: var(--ps-blue-600);
}

.pray-our-voice__quote {
  font-family: 'Merriweather', Georgia, serif;
  font-size: 1rem;
}

/* Force Read more/less to align left */
.pray-our-voice__toggle {
  display: inline-block;  
  text-align: left;
  margin-left: 0;    
  text-decoration: none;     
}

/* Brown variant (Raghunath) — override tokens only */
.pray-our-voice.variant-brown {
  --card-grad-start: rgba(153, 83, 36, 0.07);
  --card-grad-end: rgba(153, 83, 36, 0.03);
  --card-quote: rgba(153, 83, 36, 0.14);
  --img-border: var(--ps-brown-700);
}

/* Emerald variant (Dilliram) — cool contrast to brown/saffron */
.pray-our-voice.variant-emerald {
  --card-grad-start: rgba(14, 159, 110, 0.08);
  /* teal glow */
  --card-grad-end: rgba(14, 159, 110, 0.03);
  --card-quote: rgba(14, 159, 110, 0.16);
  --img-border: #0E9F6E;
  /* emerald border */
}


/* ---- Card (full container width, modern style) ---- */
.pray-our-voice__card {
  width: 100%;
  border: 0;
  border-radius: var(--radius-lg);
  overflow: hidden;
  background:
    linear-gradient(180deg, var(--card-grad-start), var(--card-grad-end)) border-box,
    #fff padding-box;
  position: relative;
}

.pray-our-voice__card-body {
  position: relative;
}

/* Decorative quote mark */
.pray-our-voice__card-body::before {
  content: "“";
  position: absolute;
  top: 12px;
  left: 16px;
  font-size: 64px;
  line-height: 1;
  font-weight: 700;
  color: var(--card-quote);
  pointer-events: none;
}

@media (max-width: 576px) {
  .pray-our-voice__card-body::before {
    font-size: 48px;
    top: 8px;
    left: 12px;
  }
}

/* ---- Square portrait inside the card (top) ---- */
.pray-our-voice__image-wrap {
  width: 100%;
  max-width: 300px;
  aspect-ratio: 1/1;
  margin-left: auto;
  margin-right: auto;
}

.pray-our-voice__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border: 3px solid var(--img-border);
  border-radius: 0;
}

/* ---- Typography ---- */
.pray-our-voice__title {
  color: #0f172a;
}

.pray-our-voice__meta {
  font-size: .95rem;
}

.pray-our-voice__quote p {
  color: #1f2937;
}

.pray-our-voice__cite {
  color: #6b7280;
  font-style: normal;
}

/* ---- Hover polish ---- */
@media (hover:hover) {
  .pray-our-voice__card {
    transition: box-shadow .25s ease, transform .25s ease;
  }

  .pray-our-voice__card:hover {
    box-shadow: 0 10px 28px rgba(0, 0, 0, .08);
    transform: translateY(-1px);
  }
}

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

  .pray-our-voice__card,
  .pray-our-voice__card:hover {
    transition: none;
    transform: none;
  }
}

/* Two-up: white card */
.pray-our-voice.two-up .pray-our-voice__card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 24px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
  overflow: hidden;
}

.pray-our-voice.two-up .pray-our-voice__card-body::before {
  content: none;
}

.pray-our-voice.two-up .pray-our-voice__image-wrap {
  width: 100%;
  max-width: 260px;
  aspect-ratio: 1 / 1;
}

.pray-our-voice.two-up .pray-our-voice__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border: 3px solid var(--img-border, #1E459C);
  border-radius: 0;
}

.pray-our-voice.two-up .pray-our-voice__title {
  font-weight: 700;
  color: #111827;
}

.pray-our-voice.two-up .pray-our-voice__meta {
  font-size: .98rem;
  color: #374151;
}

.pray-our-voice.two-up .pray-our-voice__text p {
  color: #1f2937;
  line-height: 1.75;
  margin-bottom: 1rem;
}

@media (max-width: 991.98px) {
  .pray-our-voice.two-up .pray-our-voice__image-wrap {
    max-width: 300px;
  }
}

/* ============================
  PAGE : ACADEMIC ALLIES
=========================== */
/* Accordion Media Layout Template */
.accordion-body .edu-media {
  display: block;
}

.accordion-body .edu-media-left,
.accordion-body .edu-media-right {
  width: 100%;
}

@media (min-width: 768px) {
  .accordion-body .edu-media {
    display: flex;
    align-items: flex-start;
    gap: 1rem; /* space between text and image */
  }

  /* Image on LEFT */
  .accordion-body .edu-media.image-left .edu-media-left {
    flex: 0 0 30%;
    max-width: 30%;
    order: 1;
  }
  .accordion-body .edu-media.image-left .edu-media-right {
    flex: 0 0 70%;
    max-width: 70%;
    order: 2;
  }

  /* Image on RIGHT */
  .accordion-body .edu-media.image-right .edu-media-left {
    flex: 0 0 70%;
    max-width: 70%;
    order: 1;
  }
  .accordion-body .edu-media.image-right .edu-media-right {
    flex: 0 0 30%;
    max-width: 30%;
    order: 2;
  }
}

/* Image styling */
.accordion-body .edu-media-left img,
.accordion-body .edu-media-right img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: .5rem;
  max-height: 220px; /* lock image height for consistency */
}

/* ============================
   PAGE: CONTACT US
=========================== */

/* Brand colors */
.social-link.si-whatsapp {
  color: #25D366;
}

.social-link.si-facebook {
  color: #1877F2;
}

.social-link.si-youtube {
  color: #FF0000;
}

.social-link.si-tiktok {
  color: #000000;
}

.social-link.si-linkedin {
  color: #0A66C2;
}

/* Make X visible: choose ONE of these depending on background */
/* On light backgrounds: */
.social-link.si-x {
  color: #000 !important;
}

/* On dark backgrounds, swap to white (comment the line above and uncomment this): */
/* .social-link.si-x { color:#fff !important; } */

.social-link i,
.social-link svg {
  transition: transform .15s ease, color .15s ease;
  line-height: 1;
}

.social-link:hover i,
.social-link:hover svg {
  transform: translateY(-1px);
}

/* ============================
   CONTACT FORM 7: CUSTOM STYLES
=========================== */
/* Contact Form 7 x Bootstrap — clean theme
   -------------------------------------------------- */
:root{
  --brand:#F77D00;
  --brand-600:#0b4486;           /* hover */
  --border:#e5e7eb;              /* neutral border */
  --error:#dc3545;               /* Bootstrap danger */
  --success:#198754;             /* Bootstrap success */
}

/* Layout niceties */
.wpcf7 form .form-label{margin-bottom:.375rem;font-weight:500}
.wpcf7 form .form-check{user-select:none}
.wpcf7 form .form-check-input{cursor:pointer}

/* Inputs */
.wpcf7 form .form-control{
  border-color:var(--border);
  border-radius:.5rem;
  padding:.65rem .9rem;
  min-height:44px;               /* comfortable tap target */
}
.wpcf7 form textarea.form-control{min-height:140px;resize:vertical}

.wpcf7 form .form-control:focus{
  border-color:var(--brand);
  box-shadow:0 0 0 .2rem rgba(14,84,166,.15);
}

/* Placeholder */
.wpcf7 form .form-control::placeholder{color:#98a2b3;opacity:1}

/* Checkbox (Bootstrap-compatible) */
.wpcf7 form .form-check-input:checked{
  background-color:var(--brand);
  border-color:var(--brand);
}
.wpcf7 form .form-check-input:focus{
  box-shadow:0 0 0 .2rem rgba(14,84,166,.15);
  border-color:var(--brand);
}

/* Submit button */
.wpcf7 form .btn-brand{
  color:#fff;
  background-color:var(--brand);
  border:2px solid var(--brand);
  display:inline-flex;
  align-items:center;
  justify-content:center;        /* centers the label */
  letter-spacing:.02em;
}
.wpcf7 form .btn-brand:hover,
.wpcf7 form .btn-brand:focus{
  background-color:var(--brand-600);
  border-color:var(--brand-600);
  color:#fff;
}
.wpcf7 form .btn-brand:focus-visible{
  box-shadow:0 0 0 .2rem rgba(14,84,166,.35);
  outline:0;
}
.wpcf7 form .btn-brand:disabled{
  opacity:.65; cursor:not-allowed;
}

/* CF7 validation states */
.wpcf7-not-valid{ border-color: var(--error) !important; }
.wpcf7-not-valid-tip{
  color:var(--error); font-size:.875rem; margin-top:.25rem;
}

/* CF7 response messages */
.wpcf7 form .wpcf7-response-output{
  margin-top:1rem; border-radius:.5rem; border-width:2px;
}
.wpcf7 form .wpcf7-mail-sent-ok{
  border-color:var(--success); color:var(--success);
  background:rgba(25,135,84,.05);
}
.wpcf7 form .wpcf7-validation-errors,
.wpcf7 form .wpcf7-acceptance-missing{
  border-color:var(--error); color:var(--error);
  background:rgba(220,53,69,.05);
}

/* Spinner next to submit */
.wpcf7 form .wpcf7-spinner{ margin-left:.5rem; }


/* ============================
   CARD: COLLABORATION PARTNERS
=========================== */
.collab-section__title {
  color: #0F0F0F;
  font-family: 'Poppins', sans-serif;
  font-size: 26px;
}

/* Swiper alignment */
.collaborationSwiper .swiper-wrapper { align-items: stretch; }
.collaborationSwiper .swiper-slide {
  display: flex;
  justify-content: center;
  /* Key: slide width matches card size when using slidesPerView:'auto' */
  width: 500px; /* desktop default */
}

/* ===== Collaboration Card (fixed 500x500) ===== */
.collab-card {
  --card-size: 500px;   /* exact requested dimensions */
  --footer-h: 120px;    /* adjust if your titles wrap more */
  --border: 1px solid #C56A02;

  width: var(--card-size);
  height: var(--card-size);
  background: transparent;
  overflow: hidden;
  border-radius: 10px;
}

/* Logo/media area = card size minus footer */
.collab-card__media {
  height: calc(var(--card-size) - var(--footer-h));
  border: var(--border);
  background: #fff;
  padding: 12px;
  border-radius: 10px 10px 0 0;
}

/* Logo sizing */
.collab-card__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* Footer */
.collab-card__footer {
  height: var(--footer-h);
  background: #0E54A6;
  color: #fff;
  padding: 12px;
  border-radius: 0 0 10px 10px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Typography */
.collab-card__title {
  font-family: 'Poppins', sans-serif;
  font-size: 18px;
  line-height: 1.2;
  margin: 0 0 4px 0;
}
.collab-card__title-link { color: #FFCD9A; }
.collab-card__title-link:hover,
.collab-card__title-link:focus { text-decoration: underline; }

.collab-card__address {
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  margin: 0;
  color: #FFFFFF;
}

/* Optional: Swiper controls visual tweaks */
.collaborationSwiper .swiper-button-prev,
.collaborationSwiper .swiper-button-next {
  width: 36px; height: 36px;
  border-radius: 50%;
  background: rgba(14,84,166,0.9);
}
.collaborationSwiper .swiper-button-prev::after,
.collaborationSwiper .swiper-button-next::after { font-size: 16px; color: #fff; }
.collaborationSwiper .swiper-pagination-bullet { opacity: .5; }
.collaborationSwiper .swiper-pagination-bullet-active { opacity: 1; }

/* ---------- Responsive scaling (optional) ---------- */
@media (max-width: 575.98px) {
  .collaborationSwiper .swiper-slide { width: 320px; }
  .collab-card { --card-size: 320px; --footer-h: 110px; }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .collaborationSwiper .swiper-slide { width: 380px; }
  .collab-card { --card-size: 380px; --footer-h: 115px; }
}

/* ============================
   FOOTER : STICKY MENU BAR
=========================== */

@media (max-width: 768px) {
  body {
    padding-bottom: 50px !important;
    /* Prevent content overlap */
  }

  .fixed-bottom.z-1030 {
    z-index: 1030;
    /* Keeps menu above other content */
  }

  .fixed-bottom a.active,
  .fixed-bottom a.text-danger {
    color: #dc3545 !important;
    /* Bootstrap danger color */
  }
}

/* ============================
  BUTTON GLOBAL PRIMARY CTA
=========================== */
/* Global Primary CTA Button */
.btn-primary-cta {
  background-color: #FFD52E;
  color: #212529;
  border: none;
  border-radius: 0.5rem;
  font-weight: 600;
  font-size: 1rem;
  letter-spacing: 0.5px;
  padding: 0.6rem 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  text-decoration: none;
}

.btn-primary-cta:hover,
.btn-primary-cta:focus {
  background-color: #f5c518;
  color: #000;
  text-decoration: none;
  transform: translateY(-1px);
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
}

.btn-primary-cta:active {
  transform: translateY(1px);
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);
}

.btn-primary-cta i {
  font-size: 0.9rem;
}

/* ===========================
   FOOTER: GTranslate Floating Button
=========================== */
#floating-gtranslate {
  position: fixed;
  bottom: 80px;
  left: 20px;
  z-index: 9999;
  background-color: rgba(209, 205, 205, 0.7);
  /* optional background */
  padding: 5px 10px;
  border-radius: 8px;
  color: #fff;
}

/* ===========================
   FLOATING CHAT BUTTON
=========================== */
.chat-bubble {
  position: fixed;
  bottom: 80px;
  right: 20px;
  z-index: 1100;
}

/* Toggle Button */
.chat-toggle {
  width: 60px;
  height: 60px;
  background: #F77D00;
  /* Pray Socials Accent Color */
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}

.chat-toggle:hover {
  background: #FFCD9A;
  /* Highlight Beige */
  color: #0E54A6;
  /* Primary Blue Text */
}

/* Options Container */
.chat-options {
  position: absolute;
  bottom: 70px;
  right: 5px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

.chat-options.show {
  opacity: 1;
  visibility: visible;
}

/* Chat Icons */
.chat-icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: white;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

.chat-icon:hover {
  opacity: 0.85;
}

/* Icon Colors using BEM - Kept service colors for recognition */
.quick-chat__icon--messenger {
  background: #0084FF;
}

.quick-chat__icon--whatsapp {
  background: #25D366;
}

.quick-chat__icon--viber {
  background: #7360F2;
}

.quick-chat__icon--email {
  background: #D44638;
}

.quick-chat__icon--maps {
  background: #FF5733;
}

.quick-chat__icon--phone {
  background: #0E54A6;
}

/* Primary Blue */

/* Responsive for mobile */
@media (max-width: 768px) {
  .chat-bubble {
    bottom: 100px;
  }
}

/* =======================
TUTOR LMS : CUSTOM CSS
======================== */
.tutor-dashboard .tutor-frontend-dashboard-header {
  position: relative;
  padding-bottom: 25px;
  margin-top: 110px;
}