/* MyGanu Responsive v4 — All Breakpoints */

/* === Desktop Large === */
@media(max-width:1200px){
  .container{max-width:960px;padding:0 20px}
  .mg-location-grid{grid-template-columns:repeat(3,1fr)!important}
}

/* === Tablet / Small Desktop === */
@media(max-width:1024px){
  .container{max-width:720px}
  .site-banner{min-height:500px!important}
  .mg-caption-v4{padding:20px 24px 18px!important;border-radius:18px!important;max-width:620px!important}
  .mg-hero-title{font-size:1.8em!important}
  .mg-hero-stats{gap:10px}
  .mg-hero-stat{padding:8px 12px;min-width:60px}
  .mg-hero-stat-num{font-size:1.15em}
  .jobscout_job_filters .search_keywords,.jobscout_job_filters .search_location,
  .jobscout_job_filters .search_categories{width:100%!important;margin-bottom:10px}
  .footer-t .grid{grid-template-columns:repeat(2,1fr)}
  .responsive-nav .primary-menu-list{position:fixed;top:0;right:-100%;width:85%;max-width:350px;height:100vh;overflow-y:auto;transition:right 0.4s cubic-bezier(0.4,0,0.2,1);z-index:10000;padding:60px 25px 25px}
  .showing-main-menu-modal .primary-menu-list,.responsive-nav .primary-menu-list.toggled{right:0}
  .responsive-nav .nav-menu li{border-bottom:1px solid var(--mg-border);padding:12px 0}
  .responsive-nav .close{position:absolute;top:15px;right:15px;font-size:1.5em;cursor:pointer;z-index:10001}
  .mg-location-grid{grid-template-columns:repeat(3,1fr)!important}
  .relatedjobs ul{grid-template-columns:1fr!important}
}

/* === Tablet Portrait === */
@media(max-width:768px){
  .container{padding:0 15px}
  .site-branding{max-width:200px}
  .site-title{font-size:1.2em!important}
  .site-banner{min-height:auto!important}
  .mg-caption-v4{padding:16px 18px 14px!important;border-radius:14px!important;max-width:90%!important}
  .mg-hero-title{font-size:1.35em!important;line-height:1.2;letter-spacing:-0.5px}
  .mg-hero-desc{font-size:0.78em}
  .mg-caption-badge{padding:4px 10px;margin-bottom:6px}
  .mg-badge-text{font-size:0.65em}
  .mg-hero-stats{flex-wrap:wrap;gap:6px;margin-bottom:10px}
  .mg-hero-stat{padding:5px 8px;min-width:48px}
  .mg-hero-stat-num{font-size:0.9em}
  .mg-hero-stat-label{font-size:0.52em}
  .banner-caption{padding:60px 10px 20px!important}
  .mg-slide-indicators{bottom:12px;gap:7px}
  .mg-slide-dot{width:10px;height:10px}
  .jobscout_job_filters .search_jobs{display:flex;flex-direction:column;gap:10px;padding:12px!important}
  .jobscout_job_filters .search_keywords,.jobscout_job_filters .search_location,
  .jobscout_job_filters .search_categories,.jobscout_job_filters .custom_search_categories,
  .jobscout_job_filters .search_submit{width:100%!important;min-width:100%!important;margin:0!important;padding:0!important}
  .jobscout_job_filters input[type="text"],.jobscout_job_filters select,.jobscout_job_filters input[type="submit"]{width:100%!important;height:45px}
  .job_listing .company-logo{width:50px!important;height:50px!important;min-width:50px}
  .job_listing .entry-title{font-size:1em}
  .section-title{font-size:1.5em!important}
  .mg-section-header{text-align:center}
  .section-title::after{left:50%;transform:translateX(-50%)}
  .top-job-section,.mg-jobs-section{padding:40px 0}
  .blog-section .blog-wrapper,.article-wrap{grid-template-columns:1fr!important}
  .footer-t .grid{grid-template-columns:1fr!important;gap:30px}
  .footer-b .container{text-align:center;flex-direction:column}
  #secondary{margin-top:30px}
  .mg-share-bar{justify-content:center}
  .mg-share-btn{font-size:0.75em;padding:6px 12px}
  .mg-cookie-bar{flex-direction:column;text-align:center;padding:12px 15px}
  .mg-location-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px}
  .mg-chip-inner{padding:10px 14px}
  .mg-filter-title{font-size:1.3em!important}
  .mg-filter-actions{justify-content:center}
  .mg-location-filter{padding:25px 0}
  /* Hero search form responsive */
  .mg-search-fields{flex-direction:column;border-radius:var(--mg-radius)!important;padding:10px;gap:0}
  .mg-search-field{padding:8px 12px}
  .mg-search-field:not(:last-of-type)::after{display:none}
  .mg-search-field+.mg-search-field{border-top:1px solid rgba(255,255,255,0.1)}
  .mg-search-btn{width:100%;justify-content:center;border-radius:var(--mg-radius-sm)!important;margin-top:6px;padding:14px 20px!important}
}

/* === Mobile === */
@media(max-width:480px){
  body{font-size:15px}
  .container{padding:0 12px}
  .site-branding{max-width:150px}
  .site-title{font-size:1em!important}
  .site-description{display:none}
  .header-main{padding:8px 0!important}
  .site-banner{min-height:auto!important}
  .mg-caption-v4{padding:12px 14px 10px!important;border-radius:12px!important;max-width:94%!important}
  .mg-hero-title{font-size:1.15em!important}
  .mg-hero-desc,.mg-hero-desc p{font-size:0.7em!important;margin-bottom:8px!important}
  .mg-caption-badge{padding:3px 8px;margin-bottom:5px}
  .mg-badge-text{font-size:0.58em}
  .mg-hero-stats{gap:4px;margin-bottom:8px}
  .mg-hero-stat{padding:4px 6px;min-width:40px;border-radius:8px}
  .mg-hero-stat-num{font-size:0.8em}
  .mg-hero-stat-label{font-size:0.45em}
  .banner-caption{padding:50px 8px 15px!important}
  .mg-search-btn{padding:8px 14px!important;font-size:0.78em}
  .mg-search-field input[type="text"]{font-size:0.78em}
  .mg-search-field{padding:5px 8px}
  .mg-search-fields{padding:6px!important}
  .mg-search-wrap .search-filter-wrap{max-width:100%}
  .jobscout_job_filters .search_jobs{padding:10px!important}
  .jobscout_job_filters input[type="text"],.jobscout_job_filters select{height:40px;font-size:0.85em}
  .job_listing{padding:14px!important}
  .job_listing .company-logo{width:40px!important;height:40px!important;min-width:40px}
  .job_listing .entry-title{font-size:0.9em}
  .section-title{font-size:1.2em!important}
  #secondary .widget{padding:15px;margin-bottom:15px}
  .mg-share-btn{padding:5px 10px;font-size:0.7em}
  .mg-theme-toggle{width:42px;height:42px;font-size:1.1em;bottom:16px;right:16px}
  .mg-location-grid{grid-template-columns:1fr!important;gap:8px}
  .mg-chip-inner{padding:10px 12px}
  .mg-chip-icon{font-size:1.1em}
  .mg-chip-text{font-size:0.82em}
  .mg-filter-btn{padding:8px 16px!important;font-size:0.8em!important}
  .mg-slide-indicators{bottom:10px;gap:6px}
  .mg-slide-dot{width:8px;height:8px}
}

/* === Very Small === */
@media(max-width:360px){
  .mg-hero-title{font-size:1.15em!important}
  .mg-caption-v4{padding:12px 14px 10px!important;max-width:96%!important}
  .mg-hero-stats{flex-direction:column;gap:5px}
  .mg-hero-stat{flex-direction:row;gap:8px;padding:6px 10px;min-width:auto}
  .mg-hero-stat-num{font-size:0.9em}
  .mg-caption-badge{display:none}
  .site-banner{min-height:auto!important}
}

/* === Global Overflow Fix === */
html,body{overflow-x:hidden;max-width:100vw}
img,video,iframe,embed,object{max-width:100%;height:auto}
.container{width:100%;box-sizing:border-box}
pre,code{overflow-x:auto;max-width:100%;word-wrap:break-word}

/* === Print === */
@media print{
  .site-header,.site-footer,.mg-share-bar,.mg-cookie-bar,.toggle-btn,.mg-theme-toggle,.mg-particles,.mg-location-filter,.mg-slide-indicators,.mg-page-loader,.mg-hero-stats,.mg-caption-badge{display:none!important}
  body{background:#fff!important;color:#000!important}
  .site-banner{min-height:auto!important;max-height:none!important}
}
