/* Phone usability refinements. Desktop artwork and layout stay unchanged. */
@media (max-width:800px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  header .menu{min-height:44px;min-width:76px;justify-content:center}
  header nav#navigation{max-height:calc(100vh - 86px);max-height:calc(100dvh - 86px);overflow-y:auto;overscroll-behavior:contain}
  header nav#navigation.open{flex-direction:column;align-items:stretch;gap:0}
  header nav#navigation a{display:flex;align-items:center;min-height:48px;padding:12px 0;font-size:16px;white-space:normal}
  .button,.enquire,.header-enquire,.header-action,.white-action,.business-more,.transport-cta>a{min-height:44px}
  .footer-grid a,.footer-links a,.footer-cta,.footer-link{min-height:44px;display:flex;align-items:center;padding-block:10px;font-size:14px;line-height:1.4}
  .site-footer nav a{font-size:14px}
  .role,.role:not(:first-child){grid-template-columns:62px minmax(0,1fr)}
  .role>div,.form-row>label,.contact-form-grid>label{min-width:0}
  .role h3,.role:last-child h3{white-space:normal;line-height:1.15}
  .role .button{min-width:0;max-width:100%;white-space:normal;gap:16px}
  .career-form input:not([type=radio]):not([type=file]),.career-form textarea{min-height:48px}
  .career-form label,legend{font-size:14px}
  .contact-form-grid,.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-form input,.contact-form select,.contact-form textarea{min-width:0;max-width:100%}
  .reference-reach .atlas-center{padding-top:0}
}
@media (max-width:520px){
  .header,.reference-header,.reference-reach .reference-header,.contact-page header{height:76px;min-height:76px;padding-inline:5%;gap:12px}
  .header .brand img,.reference-header .reference-brand img,.reference-reach .reference-brand img,.contact-page .brand img{width:60px;height:60px;min-width:0;min-height:0;max-height:60px;object-fit:contain}
  header>.enquire,header>.header-enquire,header>.header-action{display:none}
  header .menu{margin-left:auto;font-size:14px;padding:10px 12px}
  header nav#navigation,.contact-page nav#navigation{top:76px;margin:0;max-height:calc(100vh - 76px);max-height:calc(100dvh - 76px)}
  .contact-form-grid,.form-row{grid-template-columns:minmax(0,1fr)}
  .career-form .role-options{grid-template-columns:1fr;gap:10px}
  .career-form .role-option{min-height:52px;flex-wrap:nowrap;justify-content:flex-start;padding:10px 12px;font-size:14px;gap:12px}
  .role-option span{width:auto;text-align:left}
  .cv-row input{width:100%;font-size:14px;min-height:44px}
  .footer-grid,.footer{font-size:14px;line-height:1.6}
  .footer-grid{grid-template-columns:1fr;gap:24px}
  .footer>div:not(:first-child){min-width:0}
  .footer strong,.footer-brand strong{font-size:13px;white-space:normal}
  .footer-legal{font-size:12px;line-height:1.5}
  .business-more{font-size:14px}
  .service-card>div{min-width:0}
  .service-card h3{font-size:17px;line-height:1.3}
  .service-card p{font-size:14px}
  .division-content,.cargo .division-content{grid-template-columns:44px minmax(0,1fr);gap:14px}
  .division .button{min-width:0;max-width:100%;white-space:normal;font-size:14px;gap:14px}
  .hero-lead br{display:none}
}
@media (max-width:380px){
  .role,.role:not(:first-child){grid-template-columns:44px minmax(0,1fr);gap:14px}
  .role>.role-icon{width:42px;height:42px}
  .career-form .role-option .role-icon{width:28px;height:28px}
}
