/* =========================================================
   TGC SOURCING — MOBILE FIX V22
   Append this AFTER the existing style.css
   ========================================================= */

@media (max-width: 900px){
  html,body{overflow-x:hidden!important}
  .container{width:min(100% - 28px,1180px)!important}

  /* HEADER */
  .site-header{height:74px!important}
  .nav-wrap{gap:14px!important}
  .brand-main{font-size:25px!important}
  .brand-tag{font-size:6px!important;letter-spacing:2.4px!important}
  .lang-switch{margin-left:auto!important;font-size:12px!important}
  .menu-btn{display:block!important;width:42px!important;height:42px!important;flex:0 0 42px!important}
  .nav-actions{gap:8px!important}

  /* HERO */
  .tgc-hero-v19{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;background:#f7fbff!important}
  .tgc-hero-v19__content{order:1!important;height:auto!important;padding:0 20px!important}
  .tgc-hero-v19__copy{width:100%!important;max-width:none!important;margin:0 auto!important;padding:34px 0 24px!important;transform:none!important}
  .tgc-hero-v19 h1{font-size:40px!important;line-height:.98!important;letter-spacing:-2px!important;margin-bottom:16px!important}
  .tgc-hero-v19 p{font-size:14px!important;line-height:1.6!important;margin-bottom:18px!important;max-width:none!important}
  .tgc-hero-v19__rfq{width:100%!important;grid-template-columns:1fr!important;gap:10px!important;padding:10px!important;border-radius:18px!important}
  .tgc-hero-v19__search,.tgc-hero-v19__upload,.tgc-hero-v19__button{height:48px!important;width:100%!important}
  .tgc-hero-v19__note{font-size:11px!important;margin-top:9px!important}
  .tgc-hero-v19__media{position:relative!important;order:2!important;height:250px!important;z-index:0!important;overflow:hidden!important;border-top:1px solid #e6edf5!important;border-bottom:1px solid #e6edf5!important}
  .tgc-hero-v19__media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:78% 50%!important;transform:scale(1.08)!important;transform-origin:center!important}
  .tgc-hero-v19__overlay{display:none!important}

  /* TRUST STRIP */
  .trust-grid{grid-template-columns:1fr!important}
  .trust-item{padding:18px 20px!important;border-right:0!important;border-bottom:1px solid #e5edf5!important}
  .trust-item:last-child{border-bottom:0!important}
  .trust-item strong{font-size:15px!important}
  .trust-item span{font-size:12px!important}
  .trust-item svg{width:30px!important;height:30px!important}

  /* GENERIC SECTION */
  .section{padding:46px 0!important}
  .section-heading.inline{display:block!important}
  .section-heading.inline .text-link{display:inline-block!important;margin-top:12px!important}
  .section h2,.page-hero h1{font-size:30px!important;line-height:1.08!important;letter-spacing:-1px!important}
  .section-heading p,.page-hero p{font-size:13px!important;line-height:1.55!important}

  /* CATEGORIES */
  .category-grid-v10{grid-template-columns:1fr!important;gap:14px!important}
  .category-card-v10{grid-template-columns:40% 60%!important;min-height:180px!important;border-radius:16px!important}
  .category-photo{height:auto!important;min-height:180px!important}
  .category-body{padding:18px 16px!important;min-height:180px!important}
  .category-body h3{font-size:17px!important}
  .category-body p{font-size:11px!important}
  .category-wide-cta{flex-direction:column!important;align-items:flex-start!important;padding:22px!important}
  .category-wide-cta .btn{width:100%!important}

  /* PROCESS: remove giant empty navy space */
  .process-section{padding:0!important}
  .process-v10{display:block!important;padding:42px 0!important}
  .process-copy{max-width:none!important;margin-bottom:28px!important}
  .process-copy h2{font-size:32px!important;line-height:1.08!important}
  .process-copy p{font-size:13px!important;line-height:1.6!important}
  .process-track{grid-template-columns:1fr!important;border-radius:16px!important;overflow:hidden!important}
  .process-step-v10{min-height:0!important;padding:22px 20px!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.1)!important}
  .process-step-v10:last-child{border-bottom:0!important}
  .process-step-top{margin-bottom:16px!important}
  .process-step-v10 h3{font-size:16px!important}
  .process-step-v10 p{font-size:11px!important}
  .process-arrow{display:none!important}

  /* CONTROL TOWER */
  .control-shell{grid-template-columns:1fr!important;padding:28px 18px!important;border-radius:20px!important;gap:26px!important}
  .control-copy h2{font-size:31px!important;line-height:1.08!important}
  .control-copy p{font-size:12px!important}
  .control-ui{transform:none!important;border-radius:16px!important;width:100%!important;min-width:0!important}
  .control-ui-top{padding:14px!important;gap:8px!important;align-items:flex-start!important;flex-wrap:wrap!important}
  .control-grid{grid-template-columns:1fr!important;min-height:0!important}
  .control-sidebar{display:none!important}
  .control-main{padding:14px!important;min-width:0!important}
  .control-kpis{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .control-kpis>div:first-child{grid-column:1/-1!important}
  .control-progress{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:0!important;margin:24px 0 20px!important}
  .control-progress:before{left:8%!important;right:8%!important}
  .control-progress span{font-size:6.5px!important;line-height:1.15!important;white-space:normal!important;word-break:normal!important;padding:0 2px!important}
  .control-progress i{width:12px!important;height:12px!important}
  .control-cards{grid-template-columns:1fr!important;gap:10px!important}
  .control-cards article{padding:14px!important}
  .control-cards h4{font-size:12px!important}
  .control-cards p{font-size:9px!important}

  /* WHY */
  .why-grid-v10{grid-template-columns:1fr!important}
  .why-grid-v10 article,.why-grid-v10 article:first-child{padding:20px 0!important;border-right:0!important;border-bottom:1px solid #dbe6f0!important}
  .why-grid-v10 article:last-child{border-bottom:0!important}

  /* TEAM — fixes the narrow sliver cards */
  .team-contact-grid{display:block!important}
  .team-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;width:100%!important}
  .team-card{display:grid!important;grid-template-columns:112px 1fr!important;min-width:0!important;border-radius:15px!important;overflow:hidden!important}
  .team-card img{width:112px!important;height:140px!important;object-fit:cover!important}
  .team-card>div{padding:16px!important;min-width:0!important}
  .team-card h3{font-size:16px!important;margin-bottom:4px!important}
  .team-card p{font-size:11px!important}
  .team-card a{display:block!important;font-size:10px!important;word-break:break-all!important;line-height:1.35!important}
  .home-contact-card{margin-top:18px!important;padding:22px!important;border-radius:16px!important;min-height:0!important}
  .home-contact-card h3{font-size:27px!important}
  .home-contact-card p{font-size:12px!important}
  .home-contact-card>a:not(.btn),.home-contact-card>span:not(.eyebrow){font-size:11px!important;line-height:1.5!important;overflow-wrap:anywhere!important}

  /* CTA — stop text/button overflowing sideways */
  .cta-inner{grid-template-columns:1fr!important;gap:18px!important;padding:28px 0!important;min-height:0!important}
  .cta-inner h2{font-size:28px!important;line-height:1.08!important;max-width:100%!important}
  .cta-inner p{font-size:12px!important;line-height:1.55!important;max-width:100%!important}
  .cta-inner .btn{width:100%!important;min-width:0!important}
  .script-note{display:none!important}

  /* FOOTER */
  .footer{padding:38px 0 24px!important}
  .footer-grid{grid-template-columns:1fr!important;gap:26px!important}
  .footer-grid>div:first-child{grid-column:auto!important}
  .footer p{font-size:12px!important;max-width:none!important}
  .footer h4{font-size:11px!important;margin-top:6px!important}
  .footer a,.footer span{font-size:11px!important}
  .footer-bottom{display:block!important;font-size:10px!important;line-height:1.5!important}

  /* DASHBOARDS / PORTALS */
  .app-layout{display:block!important}
  .app-sidebar{position:relative!important;height:auto!important;padding:18px!important}
  .app-nav{grid-template-columns:1fr 1fr!important;margin-top:18px!important}
  .app-user{position:static!important;margin-top:18px!important}
  .app-main{padding:14px!important;max-width:none!important}
  .stat-grid{grid-template-columns:1fr 1fr!important}
  .panel{padding:14px!important}
  .proposal-grid,.supplier-rfq-grid,.admin-card-grid,.admin-rfq-bottom{grid-template-columns:1fr!important}
  .quote-form{grid-template-columns:1fr!important}
  .profile-status-row{grid-template-columns:1fr!important}
}

@media (max-width: 520px){
  .container{width:calc(100% - 24px)!important}
  .brand-main{font-size:22px!important}
  .brand-tag{font-size:5.5px!important;letter-spacing:2.1px!important}
  .tgc-hero-v19__content{padding:0 14px!important}
  .tgc-hero-v19 h1{font-size:35px!important;letter-spacing:-1.4px!important}
  .tgc-hero-v19__media{height:230px!important}
  .tgc-hero-v19__media img{object-position:82% 50%!important;transform:scale(1.11)!important}
  .category-card-v10{grid-template-columns:1fr!important}
  .category-photo{height:190px!important;min-height:190px!important}
  .category-body{min-height:0!important}
  .team-card{grid-template-columns:96px 1fr!important}
  .team-card img{width:96px!important;height:126px!important}
  .control-progress span{font-size:6px!important}
  .stat-grid{grid-template-columns:1fr!important}
  .app-nav{grid-template-columns:1fr!important}
}
