/* Combined Responsive CSS: chatfun-responsive.css + main-responsive.min.css */

/* Chatfun responsive rules */
/* Desktop heading sizes reduced by ~20% */
@media (min-width: 769px) {
  h1 { font-size: 34px !important; }
  h2 { font-size: 28px !important; }
  h3 { font-size: 23px !important; }
  h4 { font-size: 19px !important; }
  h5 { font-size: 16px !important; }
  h6 { font-size: 13px !important; }
}

/* Features grid breakpoints */
@media (max-width: 992px) { .features-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .features-grid { grid-template-columns: 1fr; } }

/* Header/footer and nav control <=1050px */
@media (max-width: 1050px) {
  .mobile-menu-control-wrapper { display: flex !important; align-items: center; }
  .mobile-menu-control-wrapper .menu-toggle { display: block !important; }
  .inside-header .mobile-menu-control-wrapper ~ .main-navigation .menu-toggle { display: none !important; }
  .inside-header { justify-content: space-between !important; }
  .inside-header .mobile-menu-control-wrapper { margin-left: auto !important; order: 1000 !important; }
  .inside-header .menu-toggle { margin-left: 0 !important; }
  .main-navigation .main-nav > ul { display: none !important; }
  .main-navigation.toggled .main-nav > ul { display: block !important; }
  .inside-site-info { display: flex !important; flex-direction: column; align-items: center; justify-content: center; gap: 14px; grid-template-columns: none !important; }
  .footer-section { width: 100%; text-align: center; }
  .footer-section--social { order: 1; }
  .footer-section--menu { order: 2; }
  .footer-section--copyright { order: 3; }
  .footer-social { justify-content: center; }
  .footer-bar { justify-self: center; }
  .footer-bar .footer-nav > ul.footer-menu { display: inline-flex; gap: 12px; flex-wrap: wrap; justify-content: center; }
  .footer-bar .footer-nav { text-align: center; }
  .copyright-bar { justify-self: center; text-align: center; }
}

/* <=768 hero and header adjustments */
@media (max-width: 768px) {
  .hero-content h2 { font-size: 1.8rem; }
  .hero-content p { font-size: 1rem; }
  .inside-header { flex-direction: row !important; align-items: center !important; justify-content: space-between !important; text-align: initial !important; gap: 12px; flex-wrap: nowrap !important; }
  .inside-header .site-branding-container, .inside-header .site-logo { margin-right: auto; order: 0; }
  .inside-header .mobile-menu-control-wrapper { display: flex !important; margin-left: auto; order: 1000; align-items: center; }
  .inside-header .menu-toggle { margin-left: 0; }
  h1 { font-size: 25px !important; }
  h2 { font-size: 21px !important; }
  h3 { font-size: 17px !important; }
  h4 { font-size: 14px !important; }
  h5 { font-size: 12px !important; }
  h6 { font-size: 11px !important; }
}

/* Grid responsive columns */
@media (min-width: 640px) { .grid-4-columns { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .grid-4-columns { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1200px) { .grid-4-columns { grid-template-columns: repeat(4, 1fr); } }

/* Mobile container paddings and full width */
@media (max-width: 768px) {
  .separate-containers .inside-article,
  .separate-containers .page-header,
  .one-container .site-content,
  .inside-page-header {
    padding: 5px;
  }
  
  /* Ensure full width on mobile */
  .grid-container,
  .container.grid-container,
  .site-content,
  .inside-article,
  .inside-page-header,
  .page-header,
  .site-main {
    max-width: 100% !important;
    width: 100% !important;
  }
  
  /* Mobile full width for sections */
  .features-section .container,
  .hero-section .container,
  .faq-section .container {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 15px !important;
  }
}

/* Core theme responsive (extracted from main.min.css) */
@media (max-width:768px){.hide-on-mobile{display:none!important}a,body,button,input,select,textarea{transition:all 0s ease-in-out}.inside-header{flex-direction:column;text-align:center}.site-header .header-widget{margin-top:1.5em;margin-left:auto;margin-right:auto;text-align:center}.site-content{flex-direction:column;max-width:100%!important;width:100%!important}.container .site-content .content-area{width:100%!important;max-width:100%!important}.is-left-sidebar.sidebar,.is-right-sidebar.sidebar{display:none!important}.is-left-sidebar+.is-right-sidebar .inside-right-sidebar{margin-top:0}.both-left .inside-left-sidebar,.both-left .inside-right-sidebar,.both-right .inside-left-sidebar,.both-right .inside-right-sidebar{margin-right:0;margin-left:0}#main{margin-left:0;margin-right:0;max-width:100%!important;width:100%!important}body:not(.no-sidebar) #main{margin-bottom:0}.alignleft,.alignright{float:none;display:block;margin-left:auto;margin-right:auto}.comment .children{padding-left:10px;margin-left:0}.entry-meta{font-size:inherit}.entry-meta a{line-height:1.8em}
  
  /* Force no sidebar on mobile */
  .sidebar, .is-left-sidebar, .is-right-sidebar, .inside-left-sidebar, .inside-right-sidebar, #secondary, .widget-area {
    display: none !important;
  }
  
  .content-area {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  
  /* Ensure green colors on mobile */
  .main-navigation,
  .main-navigation ul ul {
    background: green !important;
  }
  
  /* Mobile submenu colors */
  .main-navigation .main-nav ul ul li a {
    background: green !important;
    color: #fff !important;
  }
  
  .main-navigation .main-nav ul ul li:hover > a,
  .main-navigation .main-nav ul ul li.sfHover > a {
    background: #2e7d32 !important;
    color: #fff !important;
  }
  
  .menu-toggle {
    background: green !important;
    color: #fff !important;
  }
  
  .main-navigation a,
  .mobile-menu {
    color: #fff !important;
  }
  
  /* Mobile buttons */
  button,
  input[type="submit"],
  .button {
    background: linear-gradient(135deg, #2e7d32 0%, #4caf50 100%) !important;
    color: #fff !important;
  }
  
  /* Mobile links */
  a {
    color: #4caf50 !important;
  }
  
  a:hover {
    color: #2e7d32 !important;
  }
}
@media (min-width:769px) and (max-width:1024px){.hide-on-tablet{display:none!important}}
@media (min-width:1025px){.hide-on-desktop{display:none!important}}
