/* =========================
   HERO SECTION FIXES
   ========================= */

/* Hero ko anchor banao + clipping hatao */
.iivr-hero{
  position: relative !important;
  overflow: visible !important;
  z-index: 1;
}

/* Elementor inner wrappers par bhi overflow open */
.iivr-hero .elementor-container,
.iivr-hero .elementor-widget-wrap{
  overflow: visible !important;
}

/* Social icons ko hero ke upar chipkao (sirf hero ke andar) */
.iivr-hero .iivr-social{
  position: absolute !important;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2147483647 !important;
  pointer-events: auto;
}

/* Agar slider arrows upar aa rahe ho to unka z-index kam rakho */
.iivr-hero .elementor-swiper-button{
  z-index: 2 !important;
}

/* Mobile tweak */
@media (max-width: 767px){
  .iivr-hero .iivr-social{ left: 8px; }
}

/* =========================
   FIXED SOCIAL BAR (SITE-WIDE)
   ========================= */

.iivr-social-fixed{
  position: fixed !important;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2147483647 !important;
  pointer-events: auto;
}

/* Admin bar adjustment */
.admin-bar .iivr-social-fixed{
  top: calc(50% + 14px);
}

/* Mobile tweak */
@media (max-width: 767px){
  .iivr-social-fixed{ left: 8px; }
}

/* =========================
   GLOBAL BACKGROUND + LAYOUT
   ========================= */

body{
  background-image: url('https://icariivr.org.in/wp-content/uploads/2025/10/iivr-hero-image-2-2.jpg');
  background-color: #f5f1e8;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  background-attachment: fixed;
  overflow-x: hidden;
}

/* Soft handmade paper overlay */
body::before{
  content: "";
  position: fixed;
  inset: 0;
  background: rgba(255,255,255,0.15);
  pointer-events: none;
  z-index: 0;
}

/* White content containers */
.site,
.elementor-section,
.elementor-container,
.elementor-widget-wrap{
  background-color: #ffffff !important;
  position: relative;
  z-index: 1;
}

/* Header & footer layering safety */
header,
footer{
  background-color: #ffffff !important;
  z-index: 2;
}

/* iOS Safari background fix */
@supports (-webkit-touch-callout: none){
  body{ background-attachment: scroll; }
}

/* =========================
   FOOTER FIXES
   ========================= */

footer,
.iivr-footer{
  background-color: #591C50 !important;
  color: #ffffff !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative;
  z-index: 10;
  padding: 28px 0 14px;
}

.iivr-footer a{
  color: #ffffff !important;
  text-decoration: none;
}
.iivr-footer a:hover{
  text-decoration: underline;
}

/* Ensure overlay does not dim footer */
body::before{
  z-index: 0 !important;
}

/* =========================
   GLOBAL WHITE CONTAINER RULE
   ========================= */

.elementor-section:not(.elementor-location-footer),
.elementor-container,
.elementor-widget-wrap{
  background-color:#ffffff !important;
}

/* =========================
   UTILITY / ZERO SPACE BAR
   ========================= */

.utility-bar-zero-space,
selector{
  margin: 0 !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
  border: none !important;
  box-shadow: none !important;
  background-color: #FAF0D3 !important;
  line-height: 1.2;
}
/* =====================================================
   FONT IMPORT (single source)
   ===================================================== */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Devanagari:wght@600;700&family=Roboto:wght@400;500;700&display=swap');

/* =====================================================
   HEADER BASE
   ===================================================== */
.iivr-header{
  background:#ffffff;
  margin:0;
  padding:8px 0;
  border:0;
  position:relative;
  z-index:999;
}

/* Layout: logo | title | logo */
.iivr-row{
  max-width:1200px;
  margin:0 auto;
  padding:0 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:nowrap;
}

/* Logos */
.iivr-logo-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.iivr-logo{
  height:44px;
  width:auto;
  object-fit:contain;
  display:block;
}

/* Title block */
.iivr-title{
  flex:1 1 auto;
  min-width:0;
  text-align:center;
  line-height:1.25;
  padding:2px 0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

/* Text lines */
.iivr-line.hi{
  font-family:'Noto Sans Devanagari', sans-serif;
  font-weight:700;
  font-size:clamp(18px, 2vw, 24px);
  color:#111;
  white-space:nowrap;
}

.iivr-line.en{
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:clamp(16px, 1.9vw, 22px);
  color:#111;
  white-space:nowrap;
  letter-spacing:0.2px;
}

.iivr-ministry{
  font-family:'Roboto', sans-serif;
  font-size:clamp(13px, 1.6vw, 17px);
  font-weight:500;
  color:#222;
  white-space:nowrap;
}

.iivr-iso{
  font-family:'Roboto', sans-serif;
  font-size:clamp(11px, 1.4vw, 15px);
  font-style:italic;
  color:#1e4faf;
  white-space:nowrap;
}

/* =====================================================
   MOBILE HEADER (≤767px)
   ===================================================== */
@media (max-width:767px){

  /* Hide theme default site title (double text fix) */
  header .site-branding .site-title,
  header .site-branding .site-description{
    display:none !important;
  }

  /* Grid layout: logo | text | logo */
  .iivr-row{
    display:grid;
    grid-template-columns:36px 1fr 36px;
    column-gap:8px;
    padding:0 8px;
  }

  .iivr-logo{ height:28px; }

  .iivr-title{
    line-height:1.2;
    row-gap:2px;
  }

  .iivr-line.hi{ font-size:14px; }
  .iivr-line.en{ font-size:13.5px; }
  .iivr-ministry{ font-size:12px; }
  .iivr-iso{ font-size:11px; }
}

/* Extra small phones */
@media (max-width:360px){
  .iivr-logo{ height:25px; }
  .iivr-line.hi{ font-size:13px; }
  .iivr-line.en{ font-size:12.5px; }
  .iivr-ministry{ font-size:11px; }
  .iivr-iso{ font-size:10px; }
}

/* =====================================================
   MAIN MENU – DESKTOP
   ===================================================== */

/* Parent menu item clickable but clean */
.elementor-nav-menu > li > a{
  font-weight:500;
  text-decoration:none;
}

/* Dropdown base */
.elementor-nav-menu .sub-menu{
  background:#ffffff;
  border-radius:8px;
  padding:6px 0;
  box-shadow:0 6px 18px rgba(0,0,0,0.12);
  min-width:260px;
  z-index:9999;
}

/* Dropdown links */
.elementor-nav-menu .sub-menu a{
  padding:10px 16px;
  line-height:1.4;
  white-space:normal;
}
/* =====================================================
   MAIN MENU – DESKTOP (RESTORED DEFAULT LOOK)
   ===================================================== */

/* Parent menu item */
.elementor-nav-menu > li > a{
  font-weight:500;
  text-decoration:none;
}

/* Dropdown base – NO fixed width */
.elementor-nav-menu .sub-menu{
  background:#ffffff;
  border-radius:8px;
  padding:6px 0;
  box-shadow:0 6px 18px rgba(0,0,0,0.12);
  z-index:9999;

  /* IMPORTANT: reset width behaviour */
  width:auto;
  min-width:unset;
  max-width:none;
}

/* Dropdown links */
.elementor-nav-menu .sub-menu a{
  padding:10px 16px;
  line-height:1.4;
  white-space:normal;
}


/* =====================================================
   MAIN MENU – MOBILE DROPDOWN (UNCHANGED)
   ===================================================== */

@media (max-width:767px){

  .elementor-nav-menu--dropdown{
    width:100%;
    position:static;
    max-height:80vh;
    overflow-y:auto;
    background:#ffffff;
    z-index:9999;
  }

  .elementor-nav-menu--dropdown .sub-menu{
    display:none;
    position:static;
    box-shadow:none;
    padding:0;
    margin:0;
    width:100%;
  }

  .elementor-nav-menu--dropdown
  .menu-item-has-children.is-open > .sub-menu{
    display:block;
  }

  .elementor-nav-menu--dropdown a.elementor-item{
    padding:12px 16px;
    line-height:1.35;
    white-space:normal;
  }
}
/* =================================================
   Elementor Pro – Container ↔ Image Carousel Gap Fix
================================================= */

/* Remove widget margin */
.elementor-widget-image-carousel{
  margin: 0 !important;
}

/* Remove extra space from carousel wrapper */
.elementor-widget-image-carousel .elementor-image-carousel-wrapper{
  margin: 0 !important;
  padding: 0 !important;
}

/* Fix slide image spacing */
.elementor-widget-image-carousel img{
  display: block;
  margin: 0 !important;
}

/* Kill flex container bottom gap */
.e-con{
  padding-bottom: 0 !important;
}

/* Remove gap between container and next widget */
.e-con > .elementor-widget:not(:last-child){
  margin-bottom: 0 !important;
}
/* =========================================
   DISABLE BREADCRUMB LINKS – SITE WIDE
========================================= */

/* Breadcrumb links non-clickable */
.breadcrumb a,
.breadcrumbs a,
nav[aria-label="Breadcrumb"] a,
.iivr-aboutv3-bc a{
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}
/* =========================================
   BREADCRUMB – SAME LOOK, NO CLICK (GLOBAL)
========================================= */

/* Breadcrumb wrapper */
nav[aria-label="Breadcrumb"],
.iivr-aboutv3-bc{
  background: #faf5dc; /* same light cream */
}

/* First breadcrumb item (green) */
nav[aria-label="Breadcrumb"] a:first-child,
.iivr-aboutv3-bc a:first-child{
  color: #2f6f60 !important;   /* IIVR green */
  font-weight: 500;
  pointer-events: none;       /* not clickable */
  cursor: default;
}

/* Slash separator */
nav[aria-label="Breadcrumb"] span,
.iivr-aboutv3-bc span{
  color: #777 !important;
}

/* Last breadcrumb text (grey) */
nav[aria-label="Breadcrumb"] .iivr-bc-current,
nav[aria-label="Breadcrumb"] a:not(:first-child),
.iivr-aboutv3-bc .iivr-bc-current{
  color: #777 !important;
  font-weight: 400;
  pointer-events: none;       /* not clickable */
  cursor: default;
  text-decoration: none;
}

/* Remove hover effects */
nav[aria-label="Breadcrumb"] a:hover,
.iivr-aboutv3-bc a:hover{
  text-decoration: none;
}
