/* ============================================================
   ब्रह्मायणी साना किसान कृषि सहकारी संस्था लिमिटेड
   Responsive Stylesheet — Fully Responsive (320px → 1200px)
   ============================================================ */

/* ---------- Global safety (all screens) ---------- */
html,
body { overflow-x: hidden; overflow-x: clip; }
img { max-width: 100%; }
.btn-group-main { display: inline-flex; }

/* ============================================================
   1) LARGE DESKTOP  (max-width: 1199.98px)
   ============================================================ */
@media (max-width: 1199.98px){
  .hero-content h1{font-size:2.4rem}
  .header-brand .logo-img{max-height:70px}
  .main-navbar .nav-link{font-size:.86rem;padding:.55rem .75rem}
  .navbar-nav{gap:1px}
  .section{padding:4rem 0}
  .product-img{height:180px}
}

/* ============================================================
   2) TABLET / MEDIUM  (max-width: 991.98px)
   ============================================================ */
@media (max-width: 991.98px){
  /* Top bar */
  .top-bar{font-size:.78rem}
  .top-bar-contact{flex-wrap:wrap!important;gap:.4rem!important}
  .top-bar-address{display:none!important}
  .top-bar-date{white-space:nowrap}
  .top-bar .row{gap:.15rem 0}
  .top-bar-contact a[href^="mailto:"]{display:none}

  /* Navbar */
  .navbar-collapse{display:none!important}
  .navbar-brand.d-lg-none{display:inline}
  .main-navbar{position:sticky;top:0}

  /* Hero */
  .hero-slider .carousel-item{min-height:440px}
  .hero-content{padding:4.5rem 0}
  .hero-content h1{font-size:2rem}
  .hero-content p{font-size:1rem}

  /* Sections / banners */
  .section{padding:3.6rem 0}
  .section-title{font-size:1.6rem}
  .section-heading{margin-bottom:2.2rem}
  .page-banner{padding:2.8rem 0 2.4rem}
  .page-banner h1{font-size:1.8rem}

  /* Stats */
  .counter{font-size:2rem}
  .stat-plus,.stat-percent{font-size:1.35rem}
}

/* ============================================================
   3) SMALL TABLET / LARGE PHONE  (max-width: 767.98px)
   ============================================================ */
@media (max-width: 767.98px){
  /* Hero */
  .hero-slider .carousel-item{min-height:380px}
  .hero-content{padding:4rem 0}
  .hero-content h1{font-size:1.7rem}
  .hero-content p{font-size:.95rem}
  .hero-badge{font-size:.72rem;padding:.3rem .85rem}
  .hero-slider .carousel-control-prev,
  .hero-slider .carousel-control-next{display:none}

  /* Top bar */
  .top-bar-contact{justify-content:center}
  .top-bar-social{justify-content:center;margin-top:.3rem}

  /* Sections */
  .section{padding:3.2rem 0}
  .section-title{font-size:1.5rem}
  .section-subtitle{font-size:.92rem}
  .title-line span{width:36px}

  /* Cards */
  .quick-service-card{padding:1.5rem 1.3rem}
  .icon-box-soft{width:54px;height:54px;font-size:1.35rem}
  .product-img{height:170px}
  .product-body{padding:1.2rem}
  .product-icon{width:46px;height:46px;font-size:1.2rem}
  .testimonial-item{padding:1.7rem}
  .chairman-box{padding:1.7rem}
  .quote-mark{top:1rem;right:1.1rem;font-size:2.4rem}
  .c-icon{width:46px;height:46px;font-size:1.15rem}

  /* Timeline (fix dot offset) */
  .timeline{padding-left:28px}
  .timeline::before{left:12px}
  .timeline-dot{left:-28px}

  /* Team */
  .team-photo{height:250px}

  /* Footer */
  .footer{padding:2.8rem 0 0}
  .footer-col{margin-bottom:1.6rem}
  .footer-bottom{margin-top:2rem}

  /* Misc */
  .back-to-top{width:40px;height:40px;bottom:18px;right:18px}
  .cta-section{padding:2.6rem 0}
  .cta-section h2{font-size:1.7rem}
  .map-placeholder{min-height:260px}
  .lightbox-nav{width:42px;height:42px}
  .lightbox-nav.prev{left:12px}
  .lightbox-nav.next{right:12px}
  .share-btn{width:34px;height:34px}
}

/* ============================================================
   4) PHONE  (max-width: 575.98px)
   ============================================================ */
@media (max-width: 575.98px){
  /* Global */
  .section{padding:2.8rem 0}
  .section-title{font-size:1.35rem}
  .section-subtitle{font-size:.88rem}
  .section-heading{margin-bottom:1.8rem}
  .title-line{gap:8px;margin-bottom:.7rem}
  .title-line span{width:28px}
  .title-line i{font-size:1rem}
  .section-tag{font-size:.72rem;padding:.25rem .8rem;margin-bottom:.7rem}

  /* Preloader */
  .preloader-spinner{width:44px;height:44px}
  .preloader-text{font-size:.9rem}

  /* Top bar */
  .top-bar{font-size:.74rem}
  .top-bar-date{display:none}
  .top-bar-contact{justify-content:flex-start;gap:.35rem!important}
  .top-bar-calendar span{display:none}
  .top-bar-social a{width:26px;height:26px;font-size:.72rem}

  /* Navbar */
  .main-navbar{padding:.55rem 0}
  .main-navbar .container{gap:.5rem!important}
  .navbar-brand.d-lg-none{font-size:.95rem;line-height:1.2;max-width:50%}
  .navbar-cta{font-size:.78rem;padding:.35rem .75rem;white-space:nowrap}
  .offcanvas-nav{width:280px}
  .header-brand .logo-img{max-height:56px}

  /* Hero */
  .hero-slider .carousel-item{min-height:340px}
  .hero-content{padding:3.4rem 0}
  .hero-content h1{font-size:1.5rem;margin-bottom:.8rem}
  .hero-content p{font-size:.9rem;margin-bottom:1.2rem}
  .hero-badge{font-size:.66rem;padding:.28rem .75rem;margin-bottom:.8rem}
  .btn-group-main{width:100%;display:flex}
  .btn-group-main .btn{flex:1;padding:.55rem .8rem;font-size:.85rem}

  /* Page banner */
  .page-banner{padding:2.4rem 0 2rem}
  .page-banner h1{font-size:1.5rem}
  .breadcrumb{font-size:.85rem}

  /* Cards */
  .quick-service-card{padding:1.3rem 1.1rem}
  .quick-service-card h5{font-size:1rem}
  .quick-service-card p{font-size:.88rem}
  .icon-box-soft{width:50px;height:50px;border-radius:13px;font-size:1.25rem}
  .interest-highlight{padding:.75rem .9rem;margin:.8rem 0}
  .interest-highlight .rate{font-size:1.45rem}
  .rate-badge{font-size:.72rem;padding:.2rem .6rem}
  .check-list li{font-size:.88rem}

  /* Stats */
  .stat-card{padding:1.2rem .7rem}
  .counter{font-size:1.7rem}
  .stat-plus,.stat-percent{font-size:1.15rem}
  .stat-label{font-size:.8rem}
  .stat-icon{font-size:1.5rem;margin-bottom:.5rem}

  /* Timeline */
  .timeline{padding-left:26px}
  .timeline::before{left:11px}
  .timeline-dot{left:-26px;width:22px;height:22px}
  .timeline-card{padding:.9rem 1.1rem}
  .timeline-year{font-size:1rem}

  /* Chairman */
  .chairman-box{padding:1.3rem}
  .quote-mark{font-size:2rem;top:.8rem;right:.9rem}

  /* Team */
  .team-photo{height:230px}
  .team-body{padding:1rem}
  .team-social{top:10px;right:10px}
  .team-social a{width:32px;height:32px;font-size:.85rem}
  .team-designation{font-size:.66rem}

  /* Products */
  .product-img{height:160px}
  .product-body{padding:1rem}
  .product-icon{width:42px;height:42px;font-size:1.1rem}

  /* Downloads */
  .download-card{padding:1.2rem .9rem}
  .pdf-icon{width:52px;height:52px;font-size:1.5rem;border-radius:14px}
  .download-card h6{font-size:.85rem}
  .download-card small{font-size:.72rem}
  .download-card .btn-sm{padding:.3rem .55rem;font-size:.75rem;white-space:nowrap}
  .download-cat-icon{width:40px;height:40px;font-size:1.05rem}
  .download-help{padding:.85rem 1rem}

  /* Events */
  .event-img{height:170px}
  .event-card .card-body{padding:1rem}
  .event-date-box{min-width:50px;padding:.35rem .6rem}
  .event-date-box .day{font-size:1.15rem}

  /* Notices */
  .notice-card{padding:.9rem 1rem;gap:10px}
  .notice-cat{font-size:.66rem;padding:.2rem .6rem}
  .notice-item h6{font-size:.9rem}

  /* Gallery */
  .gallery-filter{gap:8px;margin-bottom:1.6rem}
  .gallery-filter-btn{font-size:.8rem;padding:.35rem 1rem}
  .gallery-item img{height:190px}

  /* Lightbox */
  .lightbox{padding:1rem}
  .lightbox-close{top:14px;right:14px;width:40px;height:40px}
  .lightbox-nav{width:38px;height:38px;font-size:1rem}
  .lightbox-nav.prev{left:8px}
  .lightbox-nav.next{right:8px}
  .lightbox-caption{font-size:.85rem}

  /* Testimonials */
  .testimonial-item{padding:1.3rem 1.1rem}
  .testimonial-avatar{width:64px;height:64px;margin-bottom:.7rem}
  .testimonial-item p{font-size:.92rem}

  /* FAQ */
  .faq-accordion .accordion-button{font-size:.9rem;padding:.9rem 1rem}
  .faq-accordion .accordion-body{padding:0 1rem 1rem}

  /* CTA */
  .cta-section{padding:2.2rem 0}
  .cta-section h2{font-size:1.5rem}
  .cta-section p{font-size:.9rem}

  /* Contact */
  .contact-info-card{padding:1.1rem;gap:12px}
  .contact-info-list{padding:.8rem}
  .map-placeholder{min-height:240px}

  /* Forms */
  .form-control-custom,.form-select{padding:.6rem .85rem;font-size:.88rem}

  /* Calendar */
  .calendar{padding:8px}
  .calendar td{height:48px;padding:.25rem}
  .calendar td .date{padding:.25rem .35rem;font-size:.9rem}
  .calendar th{font-size:.75rem;padding:.35rem .2rem}
  .calendar .cal-header h4{font-size:.95rem}
  .calendar .cal-actions button{padding:.3rem .5rem;font-size:.85rem}

  /* Digital */
  .digital-feature{padding:1rem;gap:10px}
  .d-feature-icon{width:40px;height:40px;font-size:1.05rem}
  .digital-feature span{font-size:.9rem}
  .phone-mockup{max-width:300px}

  /* Welcome image */
  .welcome-img-wrap::after{width:70px;height:70px;bottom:-8px;right:-8px;border-width:3px;border-radius:14px}

  /* Footer */
  .footer{padding:2.4rem 0 0}
  .footer h5{font-size:.95rem;margin-bottom:1rem}
  .footer-bottom{font-size:.78rem;padding:.9rem 0}
  .footer-links li{font-size:.85rem}

  /* Misc */
  .back-to-top{width:38px;height:38px;font-size:1rem}
  .share-btn{width:32px;height:32px;font-size:.82rem}
  .pagination .page-link{padding:.4rem .7rem;font-size:.88rem}
  .header-calendar-popover{left:10px;right:10px;width:auto;min-width:0;padding:.8rem}
}

/* ============================================================
   5) VERY SMALL PHONE  (max-width: 400px)
   ============================================================ */
@media (max-width: 400px){
  /* Global */
  .section{padding:2.4rem 0}
  .section-title{font-size:1.2rem}
  .section-subtitle{font-size:.85rem}
  .section-heading{margin-bottom:1.5rem}
  .section-tag{font-size:.68rem}

  /* Top bar */
  .top-bar{font-size:.72rem}
  .top-bar-contact a{white-space:normal;line-height:1.25;font-size:.74rem}
  .top-bar-contact a[href^="mailto:"]{display:none}
  .top-bar-contact{gap:.3rem!important}

  /* Navbar */
  .navbar-brand.d-lg-none{font-size:.85rem;max-width:48%}
  .navbar-cta{font-size:.72rem;padding:.3rem .6rem}
  .offcanvas-nav{width:85vw;max-width:300px}
  .header-brand .logo-img{max-height:50px}

  /* Hero */
  .hero-slider .carousel-item{min-height:320px}
  .hero-content{padding:3rem 0}
  .hero-content h1{font-size:1.35rem}
  .hero-content p{font-size:.86rem}
  .btn-group-main{gap:8px}
  .btn-group-main .btn{flex:1 1 100%;font-size:.82rem}

  /* Page banner */
  .page-banner{padding:2.1rem 0 1.7rem}
  .page-banner h1{font-size:1.3rem}
  .breadcrumb{font-size:.78rem}

  /* Cards */
  .quick-service-card{padding:1.1rem .9rem}
  .icon-box-soft{width:46px;height:46px;font-size:1.15rem;border-radius:12px}
  .interest-highlight .rate{font-size:1.3rem}
  .month{font-size:.72rem}
  .check-list li{font-size:.84rem;padding-left:22px;margin-bottom:.4rem}
  .check-list li::before{width:16px;height:16px;font-size:.6rem}

  /* Stats */
  .stat-card{padding:1rem .6rem}
  .counter{font-size:1.4rem}
  .stat-plus,.stat-percent{font-size:1rem}
  .stat-label{font-size:.74rem}
  .stat-icon{font-size:1.35rem}

  /* Timeline */
  .timeline{padding-left:24px}
  .timeline::before{left:10px}
  .timeline-dot{left:-24px;width:20px;height:20px;font-size:.5rem}
  .timeline-item{padding-bottom:1.4rem}
  .timeline-card{padding:.8rem 1rem}

  /* Chairman */
  .chairman-box{padding:1.15rem}
  .quote-mark{font-size:1.8rem}
  .chairman-box p{font-size:.9rem}

  /* Team */
  .team-photo{height:210px}

  /* Products */
  .product-img{height:150px}
  .product-body{padding:.9rem}

  /* Downloads */
  .pdf-icon{width:46px;height:46px;font-size:1.3rem}
  .download-card{padding:1rem .7rem}
  .download-card h6{font-size:.8rem}
  .download-card .btn-sm{font-size:.7rem;padding:.28rem .45rem}

  /* Events */
  .event-img{height:155px}
  .event-date-box{min-width:46px;padding:.3rem .5rem}

  /* Notices */
  .notice-card{padding:.85rem .8rem;gap:8px}
  .notice-item h6{font-size:.85rem}
  .notice-item p{font-size:.8rem}

  /* Gallery */
  .gallery-filter-btn{font-size:.74rem;padding:.3rem .8rem}
  .gallery-item img{height:160px}

  /* Lightbox */
  .lightbox-close{top:10px;right:10px;width:36px;height:36px;font-size:1rem}
  .lightbox-nav{width:34px;height:34px}
  .lightbox-nav.prev{left:6px}
  .lightbox-nav.next{right:6px}

  /* Testimonials */
  .testimonial-item{padding:1.15rem .9rem}
  .testimonial-avatar{width:58px;height:58px}

  /* FAQ */
  .faq-accordion .accordion-button{font-size:.86rem;padding:.8rem .9rem}
  .faq-accordion .accordion-body{font-size:.87rem}

  /* CTA */
  .cta-section h2{font-size:1.35rem}
  .cta-section p{font-size:.86rem}
  .cta-section .btn{padding:.55rem 1.1rem;font-size:.85rem}

  /* Contact */
  .contact-info-card{padding:1rem;gap:10px}
  .contact-info-card h6{font-size:.9rem}

  /* Forms */
  .form-control-custom,.form-select{padding:.55rem .75rem;font-size:.85rem}
  .form-label-custom{font-size:.82rem}

  /* Calendar */
  .calendar td{height:42px}
  .calendar td .date{font-size:.82rem;padding:.2rem .3rem}
  .mini-cal-title{font-size:.82rem}
  .mini-cal-date{font-size:.72rem}

  /* Digital */
  .digital-feature{padding:.85rem;gap:8px}
  .d-feature-icon{width:36px;height:36px;font-size:.95rem}
  .digital-feature span{font-size:.84rem}
  .phone-mockup{max-width:250px}

  /* Welcome image */
  .welcome-img-wrap::after{width:55px;height:55px;bottom:-6px;right:-6px}

  /* Footer */
  .footer-bottom{font-size:.72rem}
  .footer-bottom .row{gap:.4rem 0}
  .footer-about{font-size:.84rem}
  .footer-social a{width:32px;height:32px;font-size:.82rem}

  /* Misc */
  .back-to-top{width:34px;height:34px;bottom:12px;right:12px;font-size:.9rem}
  .share-btn{width:30px;height:30px;font-size:.78rem}
  .pagination .page-link{padding:.35rem .6rem;font-size:.82rem}
  .header-calendar-popover{left:6px;right:6px;padding:.7rem}
  .header-calendar-head strong{font-size:.85rem}
}