/* Integrated Trucking Solution — shared styles */
:root{
  --blue:#156BAF; --navy:#002048; --navy2:#023B6D; --silver:#6C7174; --white:#FFFFFF;
  --silver-light:#E9EEF3;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Source Sans 3",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--navy);background:var(--white);line-height:1.6}
h1,h2,h3,.display{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:600;line-height:1.08;letter-spacing:.01em}
img{max-width:100%;display:block}
a{color:var(--blue)}
.container{width:min(1140px,92%);margin:0 auto}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:var(--white);border-bottom:1px solid var(--silver-light)}
.site-header-inner{width:min(1180px,94%);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0}
.brand-link img{height:58px;width:auto}
.desktop-nav{display:flex;gap:26px;align-items:center}
.desktop-nav a{color:var(--navy);text-decoration:none;font-weight:600;font-size:15px}
.desktop-nav a:hover{color:var(--blue)}
.header-apply{background:var(--blue);color:var(--white)!important;padding:10px 18px;border-radius:8px;text-decoration:none}
.header-apply:hover{background:var(--navy2)}
.header-actions{display:flex;align-items:center;gap:14px}
.header-phone{display:flex;align-items:center;gap:8px;color:var(--navy);font-weight:700;text-decoration:none;white-space:nowrap}
.header-phone svg{color:var(--blue)}
.menu-button{display:none;background:none;border:0;cursor:pointer;color:var(--navy)}
.menu-button svg{width:26px;height:26px}
.mobile-nav{display:none;flex-direction:column;gap:2px;padding:8px 4% 18px;background:var(--white);border-bottom:1px solid var(--silver-light)}
.mobile-nav a{padding:12px 6px;color:var(--navy);font-weight:600;text-decoration:none;border-bottom:1px solid var(--silver-light)}

/* Buttons */
.button{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:10px;font-weight:700;text-decoration:none;font-size:16px;border:2px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.button-primary{background:var(--blue);color:var(--white)}
.button-primary:hover{background:var(--navy2)}
.button-outline{border-color:var(--white);color:var(--white);background:transparent}
.button-outline:hover{background:rgba(255,255,255,.12)}
.button-white{background:var(--white);color:var(--navy)}
.button-white:hover{background:var(--silver-light)}

/* Hero */
.home-hero{position:relative;min-height:78vh;display:flex;align-items:center;color:var(--white);overflow:hidden}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,32,72,.92) 0%,rgba(0,32,72,.68) 48%,rgba(0,32,72,.25) 100%)}
.home-hero-content{position:relative;width:min(1140px,92%);margin:0 auto;padding:90px 0}
.home-hero-content h1{font-size:clamp(42px,6vw,74px);max-width:13ch;margin:18px 0}
.home-hero-content h1 em{color:#7FB6E4;font-style:normal}
.home-hero-content p{max-width:52ch;font-size:19px;color:#DCE8F3}
.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.14em;font-size:13px;font-weight:700;color:#BFD9EE}
.eyebrow span{width:34px;height:2px;background:var(--blue);display:inline-block}
.hero-buttons{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0 22px}
.hero-note{display:flex;align-items:center;gap:10px;color:#C9DDEE;font-size:15px}
.hero-note svg{color:#7FB6E4;flex-shrink:0}

/* Trust strip */
.trust-strip{background:var(--navy);color:var(--white)}
.trust-strip .strip-inner{width:min(1140px,92%);margin:0 auto;display:flex;flex-wrap:wrap;gap:14px 40px;justify-content:center;padding:16px 0;font-weight:600;font-size:15px}
.trust-strip .strip-inner div{display:flex;align-items:center;gap:8px}
.trust-strip svg{color:#7FB6E4}

/* Sections */
.content-band{padding:88px 0}
.section-kicker{color:var(--blue);text-transform:uppercase;letter-spacing:.14em;font-weight:700;font-size:13px;margin-bottom:10px}
.section-kicker.light{color:#7FB6E4}
.content-band h2{font-size:clamp(32px,4vw,48px)}
.section-lead{color:var(--silver);font-size:18px;max-width:60ch;margin-top:12px}
.promise-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-top:44px}
.promise-card{background:var(--white);border:1px solid var(--silver-light);border-radius:14px;padding:30px;box-shadow:0 8px 24px rgba(0,32,72,.05)}
.promise-card h3{font-size:24px;margin:16px 0 8px}
.promise-card p{color:var(--silver);font-size:15.5px}
.icon-box{width:52px;height:52px;border-radius:12px;background:rgba(21,107,175,.1);color:var(--blue);display:flex;align-items:center;justify-content:center}
.icon-box svg{width:26px;height:26px}

/* Process */
.process-band{background:linear-gradient(135deg,var(--navy),var(--navy2));color:var(--white);padding:88px 0}
.process-inner{width:min(1140px,92%);margin:0 auto}
.process-heading h2{font-size:clamp(32px,4vw,46px)}
.steps{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:28px;margin-top:44px}
.steps li{display:flex;gap:16px}
.steps li>span{font-family:"Barlow Condensed",sans-serif;font-size:40px;color:#7FB6E4;line-height:1}
.steps h3{font-size:22px;margin-bottom:6px}
.steps p{color:#C9DDEE;font-size:15px}

/* Fit band */
.fit-band .band-inner{width:min(1140px,92%);margin:0 auto;display:grid;grid-template-columns:1.35fr 1fr;gap:48px;align-items:start}
.fit-copy ul{list-style:none;margin-top:22px;display:grid;gap:12px}
.fit-copy li{display:flex;gap:10px;align-items:flex-start;color:var(--navy);font-weight:600}
.fit-copy li svg{color:var(--blue);flex-shrink:0;margin-top:3px}
.fit-copy p{color:var(--silver);margin-top:12px}
.recruiter-card{background:var(--navy);color:var(--white);border-radius:16px;padding:34px}
.recruiter-card svg{color:#7FB6E4;width:30px;height:30px}
.recruiter-card .quote{font-family:"Barlow Condensed",sans-serif;font-size:28px;line-height:1.15;margin:16px 0 10px}
.recruiter-card p{color:#C9DDEE;font-size:15px}
.recruiter-card a{display:inline-flex;align-items:center;gap:10px;margin-top:20px;color:var(--white);font-weight:700;text-decoration:none;background:var(--blue);padding:12px 20px;border-radius:10px}
.recruiter-card a:hover{background:var(--navy2)}

/* Final CTA */
.final-cta{background:var(--blue);color:var(--white);text-align:center;padding:84px 5%}
.final-cta svg{width:44px;height:44px}
.final-cta h2{font-size:clamp(34px,4.5vw,52px);margin:16px 0 8px}
.final-cta p{color:#DCEBFA;font-size:18px;margin-bottom:26px}

/* Apply page */
.apply-page{background:linear-gradient(180deg,var(--navy) 0,var(--navy) 320px,#F4F8FC 320px);min-height:100vh}
.apply-intro{width:min(1140px,92%);margin:0 auto;padding:64px 0 40px;color:var(--white);display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;align-items:flex-end}
.apply-intro h1{font-size:clamp(38px,5vw,58px)}
.apply-intro p{color:#C9DDEE;max-width:52ch;margin-top:10px}
.apply-help{display:flex;gap:14px;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:14px 20px}
.apply-help svg{color:#7FB6E4}
.apply-help span{display:block;font-size:13px;color:#C9DDEE}
.apply-help a{color:var(--white);font-weight:700;font-size:18px;text-decoration:none}
.apply-layout{width:min(1140px,92%);margin:0 auto;padding:0 0 90px;display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start}
.form-panel{background:var(--white);border-radius:16px;padding:36px;box-shadow:0 18px 50px rgba(0,32,72,.12)}
.progress-head{display:flex;justify-content:space-between;font-size:14px;color:var(--silver);font-weight:600}
.progress-head span{color:var(--blue)}
.progress-track{height:6px;background:var(--silver-light);border-radius:999px;margin:10px 0 30px;overflow:hidden}
.progress-track i{display:block;height:100%;background:var(--blue);border-radius:999px;transition:width .3s}
fieldset{border:0}
legend{font-family:"Barlow Condensed",sans-serif;font-size:30px;font-weight:600;margin-bottom:4px}
.form-subtitle{color:var(--silver);margin-bottom:24px}
.field-grid{display:grid;gap:18px;margin-bottom:18px}
.field-grid.two{grid-template-columns:1fr 1fr}
.field-grid.location{grid-template-columns:1.2fr .8fr .8fr}
.form-field{display:grid;gap:6px}
.form-field span{font-weight:600;font-size:14px;color:var(--navy)}
.form-field input,.form-field select{padding:12px 14px;border:1.5px solid #C9D4DF;border-radius:10px;font-size:16px;font-family:inherit;color:var(--navy);background:var(--white);width:100%}
.form-field input:focus,.form-field select:focus{outline:2px solid rgba(21,107,175,.35);border-color:var(--blue)}
.honey{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.choice-group{margin-bottom:26px}
.choice-group>p{font-weight:700;margin-bottom:12px}
.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.choice-grid button{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1.5px solid #C9D4DF;border-radius:10px;background:var(--white);font-size:15px;font-weight:600;color:var(--navy);cursor:pointer;font-family:inherit;text-align:left}
.choice-grid button:hover{border-color:var(--blue)}
.choice-grid button.selected{border-color:var(--blue);background:rgba(21,107,175,.07)}
.radio-dot{width:18px;height:18px;border-radius:50%;border:2px solid #C9D4DF;flex-shrink:0;position:relative}
.choice-grid button.selected .radio-dot{border-color:var(--blue)}
.choice-grid button.selected .radio-dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--blue)}
.consent-row{display:flex;gap:12px;align-items:flex-start;margin-top:8px;cursor:pointer}
.consent-row input{width:20px;height:20px;margin-top:2px;accent-color:var(--blue);flex-shrink:0}
.consent-row span{font-size:14.5px;color:var(--silver)}
.form-error{background:#FDECEA;color:#B3261E;border:1px solid #F5C6C0;border-radius:10px;padding:12px 16px;font-weight:600;font-size:14.5px;margin-top:18px}
.form-controls{display:flex;justify-content:space-between;align-items:center;margin-top:28px;gap:12px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:10px;font-weight:700;font-size:16px;cursor:pointer;border:0;font-family:inherit}
.btn-primary{background:var(--blue);color:var(--white)}
.btn-primary:hover{background:var(--navy2)}
.btn-primary:disabled{opacity:.6;cursor:not-allowed}
.btn-outline{background:var(--white);color:var(--navy);border:1.5px solid #C9D4DF}
.btn-outline:hover{border-color:var(--navy)}
.apply-aside{background:var(--navy);color:var(--white);border-radius:16px;padding:34px;position:sticky;top:96px}
.apply-aside>svg{color:#7FB6E4;width:32px;height:32px}
.apply-aside h2{font-size:26px;margin:14px 0 8px}
.apply-aside p{color:#C9DDEE;font-size:15px}
.apply-aside ul{list-style:none;margin:20px 0;display:grid;gap:10px}
.apply-aside li{display:flex;gap:10px;align-items:center;font-weight:600}
.apply-aside li svg{color:#7FB6E4;flex-shrink:0}
.secure-note{display:flex;align-items:center;gap:10px;border-top:1px solid rgba(255,255,255,.15);padding-top:18px;color:#C9DDEE;font-size:14px}

/* Thank you page */
.thank-page{background:#F4F8FC;padding:80px 5%;display:grid;grid-template-columns:1.5fr 1fr;gap:32px;max-width:1140px;margin:0 auto;align-items:start}
.thank-panel{background:var(--white);border-radius:16px;padding:44px;box-shadow:0 18px 50px rgba(0,32,72,.08)}
.success-mark{width:64px;height:64px;border-radius:50%;background:rgba(21,107,175,.1);color:var(--blue);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.success-mark svg{width:32px;height:32px}
.thank-panel h1{font-size:clamp(34px,4.5vw,50px)}
.thank-lead{color:var(--silver);font-size:17px;margin:12px 0 28px;max-width:52ch}
.next-card{border:1px solid var(--silver-light);border-radius:14px;padding:26px;display:grid;gap:18px}
.next-card h2{font-size:26px}
.next-card div{display:flex;gap:14px}
.next-card div>span{width:30px;height:30px;border-radius:50%;background:var(--blue);color:var(--white);display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0;font-size:14px}
.next-card p{font-size:15px;color:var(--silver)}
.next-card strong{color:var(--navy)}
.thank-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:28px 0 18px}
.text-link{color:var(--blue);font-weight:700;text-decoration:none}
.text-link:hover{text-decoration:underline}
.privacy-note{display:flex;gap:8px;align-items:center;color:var(--silver);font-size:14px}
.thank-aside{background:var(--navy);color:var(--white);border-radius:16px;padding:34px}
.thank-aside svg{color:#7FB6E4;width:30px;height:30px}
.thank-aside h2{font-size:26px;margin:14px 0 8px}
.thank-aside p{color:#C9DDEE;font-size:15px;margin-bottom:16px}
.thank-aside a{color:#7FB6E4;font-weight:600;word-break:break-all}

/* Footer */
.site-footer{background:var(--navy);color:#C9DDEE}
.footer-inner{width:min(1140px,92%);margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding:60px 0 40px}
.footer-wordmark{font-family:"Barlow Condensed",sans-serif;font-size:26px;color:var(--white);text-decoration:none;display:block;margin-bottom:10px}
.footer-wordmark span{color:#7FB6E4}
.site-footer h2{font-size:18px;color:var(--white);margin-bottom:12px}
.site-footer a:not(.footer-wordmark){display:block;color:#C9DDEE;text-decoration:none;margin-bottom:8px}
.site-footer a:hover{color:var(--white)}
.footer-brand p{font-size:14.5px;max-width:34ch}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);text-align:center;padding:18px 5%;font-size:13.5px}

/* Responsive */
@media (max-width:960px){
  .desktop-nav{display:none}
  .menu-button{display:block}
  .mobile-nav.open{display:flex}
  .fit-band .band-inner,.apply-layout,.thank-page,.footer-inner{grid-template-columns:1fr}
  .apply-aside{position:static}
}
@media (max-width:640px){
  .header-phone span{display:none}
  .field-grid.two,.field-grid.location{grid-template-columns:1fr}
  .form-panel{padding:26px 20px}
  .thank-panel{padding:30px 22px}
  .brand-link img{height:48px}
  .home-hero{min-height:70vh}
}
