/* Phone and tablet refinements. Desktop layouts keep their existing proportions. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
img{max-width:100%}
@media(max-width:1024px){
 html{scroll-padding-top:100px}
 .header{border-top-width:5px;padding-top:env(safe-area-inset-top)}
 .header-inner{padding:10px 5.5%;gap:12px;flex-wrap:nowrap}
 .header .brand{flex:0 1 200px;min-width:0}
 .header .brand img{width:200px;max-width:100%;height:auto}
 .header-quote{display:none}
 .menu-toggle{display:flex;flex:0 0 46px;width:46px;height:46px;flex-direction:column;gap:5px;justify-content:center;align-items:center;background:transparent;border:1px solid #7b8a99;border-radius:4px;margin-left:auto}
 .menu-toggle span{width:21px;height:2px;background:#fff;transition:transform .25s ease,opacity .2s ease;transform-origin:center}
 .menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
 .menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .header #navigation{display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:12px 5.5% 18px;flex-direction:column;align-items:stretch;gap:0;background:#061e33;border-top:1px solid #ffffff16;border-bottom:1px solid #d7af5966;box-shadow:0 14px 25px #001a3033;max-height:calc(100vh - 100px);max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain}
 .header #navigation.open{display:flex;animation:marne-menu .25s var(--motion-ease) both}
 .header #navigation>a{display:flex;align-items:center;min-height:48px;padding:12px 4px;font-size:15px;line-height:1.4;border-bottom:1px solid #ffffff0d}
 .header #navigation>a:last-child{border-bottom:0}
 .header #navigation>a:after{right:auto;bottom:7px;width:28px}
 body.mobile-menu-open{overflow:hidden}
 .back-to-top{width:46px;height:46px;right:max(16px,env(safe-area-inset-right));bottom:max(18px,calc(env(safe-area-inset-bottom) + 12px))}
 .footer-directory a{min-height:44px;display:flex;align-items:center;font-size:14px;line-height:1.45;padding:9px 0}
 .footer-links{gap:14px;flex-wrap:wrap}
 .footer-links a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
 .footer-contact{gap:14px 22px;font-size:13px}
 .footer-contact svg{width:17px;height:17px}
 .footer-contact a{display:inline-flex;align-items:center;min-height:44px}
 .footer .copyright,.footer .demo-label{font-size:11px;line-height:1.6}
 .footer-directory p{font-size:14px;line-height:1.7}
 .button,.actions .button,.partnership .button{min-height:48px;font-size:12px;line-height:1.35;padding:13px 18px}
 .text-link,.card-link{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;font-size:13px}
 .content-card .card-link{justify-content:flex-start;font-size:14px}
 .faq-list summary{display:flex;align-items:center;min-height:48px;font-size:16px;line-height:1.55}
 .faq-list summary:after{top:50%;margin-top:-12px}
 .breadcrumbs{row-gap:8px;margin-bottom:24px}
 .breadcrumbs a{font-size:12px;line-height:1.5;min-height:32px;display:inline-flex;align-items:center}
 .contact-form input,.contact-form select,.contact-form textarea,.quote input,.quote select,.quote textarea{font-size:16px;line-height:1.5;padding:12px;min-height:48px}
 .contact-form textarea,.quote textarea{min-height:125px}
 .contact-form .button,.quote .button{font-size:13px;min-height:48px}
 .form-field label{font-size:14px;line-height:1.4}
 .contact-form .form-note,.quote .form-note{font-size:12px;line-height:1.65}
 .contact-form .form-status,.quote .form-status{font-size:14px;line-height:1.6}
 .download-link{padding:18px;min-height:76px;align-items:center}
 .download-link strong{font-size:16px;line-height:1.4}
 .download-link small{font-size:13px;line-height:1.6}
 .related-links a{display:inline-flex;align-items:center;min-height:44px;line-height:1.5}
 .sitemap-grid a{min-height:48px;line-height:1.5}
 .hero,.page-hero,.partnership,.quote{background-image:linear-gradient(90deg,#061e33ec,#061e33ad),url('assets/hero-mobile.webp')}
 .audience.freight{background-image:url('assets/hero-mobile.webp')}
 .audience.partners{background-image:url('assets/partners-mobile.webp')}
 .audience.driver{background-image:url('assets/driver-mobile.webp')}
 .audience.resources{background-image:url('assets/resources-mobile.webp')}
}
@media(min-width:761px) and (max-width:1024px){
 .hero{min-height:480px}
 .hero-inner{padding:38px 5.5%}
 .hero h1{font-size:42px;max-width:650px}
 .hero-copy{font-size:15px;line-height:1.65;max-width:440px;margin-top:20px}
 .hero .eyebrow{font-size:11px}
 .hero .actions{gap:14px;margin-top:24px}
 .services{padding:32px 5%}
 .services h2{font-size:30px}
 .section-heading>p:last-child{font-size:15px;line-height:1.65}
 .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
 .service-card{padding:20px 16px;min-height:245px}
 .service-card h3{font-size:16px}
 .service-card p{font-size:14px;line-height:1.6;max-width:24ch}
 .icon-circle{width:60px;height:60px;margin-bottom:14px}
 .icon-circle svg{width:40px;height:40px}
 .commitment{grid-template-columns:1fr 1fr;padding:20px 4%;gap:20px}
 .commitment-copy{padding:24px}
 .commitment-copy h2{font-size:30px}
 .commitment-copy>p:not(.eyebrow){font-size:15px;line-height:1.7}
 .commitment-values strong{font-size:13px}
 .team-photo{min-height:340px}
 .quote{grid-column:1/-1;padding:28px}
 .quote h2{font-size:29px}
 .quote>p:not(.eyebrow){font-size:15px;line-height:1.6}
 .quote form{gap:12px;margin-top:18px}
 .audiences{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0 4% 24px}
 .audience{min-height:150px;padding:20px}
 .audience h3{font-size:21px}
 .audience p{font-size:14px}
 .footer-directory{grid-template-columns:1fr 1fr;gap:28px}
 .footer-directory h3{font-size:21px}
 .footer-main{flex-wrap:wrap}
 .footer-right{margin-left:0}
 .values h3{font-size:17px}
 .values p{font-size:13px}
 .partnership-inner{grid-template-columns:1fr;gap:28px;padding:32px 5%}
 .partnership-copy>p:not(.eyebrow){font-size:15px;max-width:650px}
 .partnership h2{font-size:32px}
 .values{max-width:700px;width:100%}
}
@media(max-width:760px){
 .header-inner{padding-left:max(5.5%,env(safe-area-inset-left));padding-right:max(5.5%,env(safe-area-inset-right))}
 .header .brand{flex-basis:190px}
 .header .brand img{width:190px}
 .hero{min-height:660px;background-color:#061e33;background-image:linear-gradient(180deg,#061e33 0%,#061e33f5 36%,#061e3360 64%,#061e3300 100%),url('assets/hero-mobile.webp');background-repeat:no-repeat;background-size:100% 100%,auto 390px;background-position:center,64% bottom;align-items:flex-start}
 .hero:after{display:none}
 .hero-inner{padding:30px 5.5% 225px}
 .hero .eyebrow{font-size:10px;letter-spacing:1.3px;line-height:1.6;margin-bottom:13px}
 .hero h1{font-size:clamp(28px,8vw,39px);line-height:1.08;letter-spacing:-.6px;max-width:100%}
 .hero-copy{font-size:15px;line-height:1.65;max-width:43ch;margin-top:20px}
 .hero .actions{display:grid;grid-template-columns:1fr;gap:12px;max-width:380px;margin-top:24px}
 .hero .actions .button{width:100%;min-height:48px;font-size:12px;padding:13px 17px;gap:15px}
 .hero .button-outline{background:#061e33b8;border-color:#b2bfcc}
 .services{padding:32px 5.5%}
 .section-heading .eyebrow{font-size:11px;line-height:1.5}
 .services h2{font-size:29px;line-height:1.15}
 .section-heading>p:last-child{font-size:15px;line-height:1.65;margin-top:14px}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:24px}
 .service-card{padding:19px 12px 9px;min-height:270px}
 .service-card h3{font-size:15px;line-height:1.35}
 .service-card p{font-size:14px;line-height:1.6;max-width:26ch;margin-top:11px}
 .service-card .text-link{padding-top:6px;font-size:12px;width:100%}
 .service-card:last-child{min-height:238px}
 .icon-circle{width:58px;height:58px;margin-bottom:14px}
 .icon-circle svg{width:38px;height:38px}
 .partnership-inner{padding:32px 5.5%}
 .partnership h2{font-size:30px;line-height:1.15}
 .partnership-copy .eyebrow{font-size:10px;line-height:1.5}
 .partnership-copy>p:not(.eyebrow){font-size:15px;line-height:1.7;margin:17px 0}
 .partnership .button{font-size:12px;min-height:48px;padding:13px 18px}
 .values{grid-template-columns:1fr;gap:23px;margin-top:32px}
 .values article{display:grid;grid-template-columns:58px 1fr;column-gap:18px;min-height:0;padding:0;text-align:left}
 .values article+article:before{display:none}
 .values .ring-icon{grid-row:1 / span 2;align-self:center;width:54px;height:54px;margin:0}
 .values h3{font-size:19px;line-height:1.3;margin:0}
 .values p{font-size:14px;line-height:1.55;margin-top:5px}
 .commitment{grid-template-columns:1fr;padding:24px 5.5%;gap:19px}
 .team-photo{height:320px;min-height:0}
 .team-photo img{object-position:center 26%}
 .commitment-copy{padding:25px 22px}
 .commitment-copy .eyebrow{font-size:10px;line-height:1.5}
 .commitment-copy h2{font-size:29px;line-height:1.15}
 .commitment-copy>p:not(.eyebrow){font-size:15px;line-height:1.7;margin-top:16px}
 .commitment-values{margin-top:25px;gap:8px}
 .commitment-values strong{font-size:13px;line-height:1.4}
 .commitment-values svg{width:33px;height:33px}
 .quote{padding:24px 20px}
 .quote h2{font-size:28px;line-height:1.15}
 .quote .eyebrow{font-size:10px;line-height:1.5}
 .quote>p:not(.eyebrow){font-size:15px;line-height:1.6;margin-top:12px}
 .quote form{gap:12px;margin-top:18px}
 .quote textarea{height:125px}
 .audiences{grid-template-columns:1fr;gap:14px;padding:0 5.5% 28px}
 .audience{min-height:145px;padding:20px}
 .audience h3{font-size:22px;line-height:1.2}
 .audience p{font-size:14px;line-height:1.5;margin-top:7px}
 .audience svg{width:29px;height:29px;margin-bottom:8px}
 .page-hero{padding:22px 5.5% 32px}
 .page-hero h1{font-size:clamp(30px,8.5vw,39px);line-height:1.1;overflow-wrap:break-word}
 .page-hero .lede{font-size:16px;line-height:1.7;margin-top:18px}
 .page-shell{padding:34px 5.5%}
 .page-shell h2{font-size:28px;line-height:1.18}
 .page-shell h3{line-height:1.3}
 .page-shell p{font-size:16px;line-height:1.75}
 .content-card{padding:24px 21px}
 .content-card h3{font-size:24px}
 .content-card p{font-size:15px;line-height:1.7}
 .contact-form{padding:24px 18px}
 .contact-form form{gap:19px}
 .contact-form .submit-row,.page-cta .button{width:100%}
 .contact-form .submit-row .button{width:100%}
 .page-cta{padding:25px 22px}
 .page-cta p{font-size:15px}
 .article-copy h2{font-size:27px}
 .info-panel{padding:23px}
 .footer{padding:27px 5.5% 24px}
 .footer-main{gap:17px;align-items:flex-start}
 .footer-brand{width:190px}
 .footer-contact{flex-direction:column;align-items:flex-start;gap:7px;font-size:14px}
 .footer-directory{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:23px;row-gap:24px;margin-top:20px;padding-top:25px}
 .footer-directory>div:first-child,.footer-directory>div:last-child{grid-column:1/-1}
 .footer-directory>div:last-child{display:flex;flex-wrap:wrap;column-gap:20px}
 .footer-directory>div:last-child h3{flex-basis:100%;margin-bottom:4px}
 .footer-directory h3{font-size:19px;line-height:1.3;margin-bottom:11px}
 .footer-directory p{margin-bottom:9px}
 .footer-directory a{font-size:14px;overflow-wrap:anywhere}
 .footer .copyright,.footer .demo-label{margin-top:14px}
 .footer .demo-label{font-size:11px}
 .reveal{transition-duration:.45s}
}
@media(max-width:359px){
 .header .brand{flex-basis:175px}
 .header .brand img{width:175px}
 .hero-inner{padding-bottom:205px}
 .hero{background-size:100% 100%,auto 345px}
 .hero .eyebrow{font-size:9px;letter-spacing:1px}
 .service-grid{gap:10px}
 .service-card{padding-inline:10px}
 .service-card h3{font-size:14px}
 .service-card p{font-size:13px}
 .service-card .text-link{font-size:12px}
 .page-shell h2,.services h2{font-size:26px}
 .footer-directory{column-gap:16px}
 .footer-directory h3{font-size:18px}
}
@media(max-width:1024px) and (orientation:landscape) and (max-height:600px){
 .header-inner{padding-top:6px;padding-bottom:6px}
 .header .brand{flex-basis:165px}
 .header .brand img{width:165px}
 .header #navigation{max-height:calc(100dvh - 80px)}
 .hero{min-height:0}
 .hero-inner{padding-top:30px;padding-bottom:40px}
}
@media(prefers-reduced-motion:reduce){.reveal{transition:none!important}.header #navigation.open{animation:none!important}}
