/* Customer access and registration pages. Scoped to avoid checkout/customer account forms. */
body.page-authentication .breadcrumb__wrapper,
body.page-registration .breadcrumb__wrapper { display:none !important; }
html body.page-authentication .columns-container,
html body.page-authentication .columns-container.container,
html body.page-registration .columns-container,
html body.page-registration .columns-container.container { max-width:none !important; padding:0 0 44px !important; background:#fff !important; }
body.page-authentication .center-column,
body.page-registration .center-column { width:100% !important; max-width:none !important; padding:0 !important; }
body.page-authentication .page-content,
body.page-registration .page-content { padding:0 !important; background:transparent !important; }
.fa-account-landing { --fa-blue:#064e9c; --fa-navy:#092e60; --fa-line:#d8dde6; width:min(100%, 860px); margin:0 auto; color:#152b4b; font-family:var(--sans,Arial,sans-serif); }
.fa-auth-landing-hero { display:block; padding:42px 20px 34px; text-align:center; }.fa-auth-landing-hero h1 { margin:0; color:var(--fa-navy); font-size:clamp(35px,4vw,48px); font-weight:800; line-height:1.05; letter-spacing:-.03em; }.fa-auth-landing-mobile-break { display:none; }.fa-auth-landing-title-tail::before { content:' '; }.fa-auth-landing-hero p { margin:20px 0 31px; color:#5b6678; font-size:clamp(14px,2vw,19px); line-height:1.45; }.fa-auth-landing-perks { display:flex; justify-content:center; gap:42px; }.fa-auth-landing-perks > div { display:grid; grid-template-columns:50px auto; grid-template-rows:1fr 1fr; min-width:150px; text-align:left; }.fa-auth-landing-perk-icon { grid-row:1 / 3; display:grid; place-items:center; width:48px; height:48px; margin-right:9px; border-radius:50%; color:#0871ca; background:#e8f2ff; font-size:32px; font-weight:400; line-height:1; }.fa-auth-landing-perks b,.fa-auth-landing-perks small { align-self:end; color:#344254; font-size:15px; font-weight:800; line-height:1.1; }.fa-auth-landing-perks small { align-self:start; font-size:14px; }
.fa-auth-landing-truck { display:block; width:30px; height:30px; }
.fa-auth-landing-repair { display:block; width:30px; height:30px; transform:translate(-6.5%,-6.5%); }
.fa-auth-landing-card { display:block; width:calc(100% - 54px); max-width:720px; margin:0 auto 24px; padding:0; overflow:hidden; border:1px solid #d8dde5; border-radius:15px; background:#fff; box-shadow:0 2px 8px rgba(20,44,77,.05); }
.fa-account-tabs { display:grid; grid-template-columns:1fr 1fr; min-height:64px; border-bottom:1px solid #dfe3e9; }
.fa-account-tabs > * { position:relative; display:flex; align-items:center; justify-content:center; gap:9px; padding:0 10px; color:#737b88; font-size:17px; font-weight:700; text-decoration:none !important; }
.fa-account-tabs > :first-child { border-right:1px solid #e2e5ea; }
.fa-account-tabs .is-active { color:#075eaf; }
.fa-account-tabs .is-active::after { content:""; position:absolute; right:15px; bottom:-1px; left:15px; height:3px; background:#0870c9; }
.fa-account-tab-user { position:relative; display:inline-block; width:22px; height:24px; flex:0 0 22px; }.fa-account-tab-user::before { content:""; position:absolute; top:0; left:7px; width:8px; height:8px; border:2px solid currentColor; border-radius:50%; }.fa-account-tab-user::after { content:""; position:absolute; bottom:0; left:2px; width:18px; height:11px; border:2px solid currentColor; border-bottom:0; border-radius:12px 12px 0 0; }
.fa-auth-landing-card__body { padding:29px 42px 25px; }
/* Login form. */
.fa-account-landing #login-form,.fa-account-landing #customer-form { padding:0 !important; box-shadow:none !important; }
.fa-account-landing #login-form .mb-3,.fa-account-landing #customer-form .mb-3 { margin:0 0 18px !important; }
.fa-account-landing :is(#login-form,#customer-form) .form-label { display:block; margin:0 0 7px; color:#1b2d47; font-size:15px; font-weight:800; }
.fa-account-landing .fa-optional-field { color:#6c7788; font-size:12px; font-weight:500; }
.fa-account-landing :is(#login-form,#customer-form) .form-control { min-height:48px; border:1px solid #cdd3de !important; border-radius:9px !important; box-shadow:none !important; color:#253750; font-size:16px; }
.fa-account-landing :is(#login-form,#customer-form) .form-control::placeholder { color:#9aa4b4; opacity:1; }
.fa-account-landing .password-field { display:flex; }
.fa-account-landing .password-field .form-control { border-radius:9px 0 0 9px !important; }
.fa-account-landing .password-field .btn { width:48px; border:1px solid #0755a8 !important; border-left:0 !important; border-radius:0 9px 9px 0 !important; color:#fff !important; background:#0755a8 !important; }
.fa-account-landing .password-field .btn::after { content:"◉"; font-size:19px; }
.fa-account-landing .password-field .btn i { display:none; }
.fa-account-landing .fa-login-options { margin:0 0 18px; }
.fa-account-landing .fa-login-remember { display:inline-flex !important; align-items:center; gap:8px; width:auto !important; margin:0 !important; color:#33475f !important; font-size:13px !important; font-weight:700 !important; line-height:1.2; cursor:pointer; }
.fa-account-landing .fa-login-remember input[type="checkbox"] { flex:0 0 17px; width:17px !important; height:17px !important; min-height:17px !important; margin:0; accent-color:#0755a8; }
.fa-account-landing .login-form .btn-basic { display:block; margin:0 0 18px auto; color:#0862b5 !important; font-size:14px !important; font-weight:700 !important; text-decoration:none !important; }
.fa-account-landing #submit-login,.fa-account-landing #customer-form .form-control-submit { width:100%; min-height:52px; border:0 !important; border-radius:8px !important; color:#fff !important; background:#0755a8 !important; box-shadow:none !important; font-size:16px !important; font-weight:700 !important; text-transform:none !important; }
.fa-account-divider { display:flex; align-items:center; gap:12px; margin:24px 0 18px; color:#5a6473; font-size:14px; text-align:center; }
.fa-account-divider::before,.fa-account-divider::after { content:""; flex:1; height:1px; background:#dfe3e9; }
.fa-account-social #wkSocialLoginBlock { padding:0; }
.fa-account-social .button-display { justify-content:center; }
.fa-account-landing .password-field .btn { display:inline-flex; align-items:center; justify-content:center; font-size:0; }
.fa-account-landing .password-field .btn::after { content:none !important; display:none !important; }
.fa-account-landing .password-field .btn .material-icons,.fa-account-landing .password-field .btn i { display:inline-block !important; color:currentColor !important; font-family:"Material Icons" !important; font-size:22px !important; line-height:1 !important; }
/* Treat the visibility toggle as the closing segment of the password field. */
.fa-account-landing :is(#login-form,#customer-form) .password-field { display:flex !important; align-items:stretch; overflow:hidden; box-sizing:border-box; border:1px solid #cdd3de; border-radius:9px; background:#fff; }
.fa-account-landing :is(#login-form,#customer-form) .password-field .form-control { flex:1 1 0; min-width:0; border:0 !important; border-radius:0 !important; }
.fa-account-landing :is(#login-form,#customer-form) .password-field .btn { flex:0 0 44px; width:44px; min-width:44px; min-height:0; height:auto; margin:0; border:0 !important; border-radius:0 !important; }
.fa-google-connect { display:flex; align-items:center; justify-content:center; gap:12px; width:fit-content; min-width:250px; min-height:50px; margin:0 auto; padding:0 24px; border:1.5px solid #0755a8; border-radius:9px; color:#0755a8; background:#fff; font:700 16px var(--sans,Arial,sans-serif); cursor:default; }.fa-google-connect img { width:23px; height:23px; object-fit:contain; }.fa-google-connect:focus { outline:2px solid #8dbde8; outline-offset:2px; }
/* Registration: only the fields needed to create the account are prominent. */
.fa-auth-landing-card--register #customer-form > section > .mb-3:first-child,.fa-auth-landing-card--register #customer-form .mb-3:has([name="birthday"]),.fa-auth-landing-card--register #customer-form .mb-3:has([name="optin"]),.fa-auth-landing-card--register #customer-form .mb-3:has([name="newsletter"]) { display:none; }
.fa-auth-landing-card--register #customer-form .form-text { display:none; }.fa-auth-landing-card--register #customer-form .form-check { display:flex; gap:9px; align-items:flex-start; }.fa-auth-landing-card--register #customer-form .mb-3:has(.form-check) { margin-bottom:8px !important; }.fa-auth-landing-card--register #customer-form .form-check-input { flex:0 0 20px; width:20px; height:20px; margin:1px 0 0; border-color:#aeb8c6; }.fa-auth-landing-card--register #customer-form .form-check-label { color:#536074; font-size:13px; line-height:1.45; }.fa-auth-landing-card--register #customer-form .form-check-label a { color:#0755a8; font-weight:700; text-decoration:underline; }.fa-auth-landing-card--register #customer-form .form-check-label em { display:none; }.fa-auth-landing-card--register #customer-form .fa-password-confirmation .invalid-feedback { display:none !important; margin:8px 0 0; color:#d93025; font-size:12px; font-weight:600; }.fa-auth-landing-card--register #customer-form .fa-password-confirmation.is-invalid .invalid-feedback { display:block !important; }.fa-auth-landing-card--register #customer-form .fa-password-confirmation.is-invalid .form-control { border-color:#d93025 !important; box-shadow:0 0 0 1px rgba(217,48,37,.14) !important; }.fa-auth-landing-card--register #customer-form .buttons-wrapper { margin-top:18px; }.fa-auth-landing-card--register #customer-form .form-control-submit { margin:0; }
/* Account value panel. */
.fa-account-benefits { width:calc(100% - 54px); max-width:800px; margin:0 auto; overflow:hidden; border:1px solid #ccdced; border-radius:12px; background:#eff6ff; text-align:center; }
.fa-account-benefits__main { padding:17px 12px 13px; }
.fa-account-benefits h2 { margin:0; color:#173d70; font-size:18px; font-weight:800; }
.fa-account-benefits p { margin:3px 0 14px; color:#5f6d7d; font-size:13px; }
.fa-account-benefits__grid { display:grid; grid-template-columns:repeat(6,1fr); }.fa-account-benefits__grid > div { display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:6px; min-height:72px; padding:0 7px; border-right:1px solid #d3dfed; text-align:center; }.fa-account-benefits__grid > div:last-child { border:0; }.fa-account-benefits__grid .material-icons { color:#0871c8; font-size:25px; }.fa-account-benefits__grid b { color:#34485f; font-size:11px; font-weight:700; line-height:1.22; }
.fa-account-benefits__truck { display:block; width:25px; height:25px; flex:0 0 25px; color:#0871c8; }
.fa-account-benefits__assurances { display:grid; grid-template-columns:repeat(3,1fr); gap:0; padding:11px 8px; border-top:1px solid #cfdded; background:#e0ecfa; }.fa-account-benefits__assurances > div { display:flex; align-items:center; justify-content:center; gap:9px; min-width:0; padding:0 10px; text-align:left; }.fa-account-benefits__assurances .material-icons { flex:0 0 auto; color:#0871c8; font-size:24px; }.fa-account-benefits__assurances span { display:flex; flex-direction:column; min-width:0; }.fa-account-benefits__assurances b,.fa-account-benefits__assurances small { color:#34485f; font-size:12px; font-weight:800; line-height:1.2; }.fa-account-benefits__assurances small { color:#6e7b8b; font-size:11px; font-weight:500; }
.fa-account-benefits__assurances .fa-account-benefits__truck { width:24px; height:24px; flex:0 0 24px; }
@media (max-width:767px) { body.page-authentication .columns-container,body.page-registration .columns-container { padding-bottom:24px !important; } body.page-authentication .fa-account-landing,body.page-registration .fa-account-landing { width:calc(100% + 36px); margin-left:-18px; margin-right:-18px; } .fa-auth-landing-hero { padding-top:36px; } .fa-auth-landing-mobile-break { display:inline; }.fa-auth-landing-title-tail { white-space:nowrap; }.fa-auth-landing-title-tail::before { content:''; } .fa-auth-landing-perks { width:100%; gap:0; padding:0 6px; justify-content:space-evenly; } .fa-auth-landing-perks > div { display:flex; flex:1 1 0; flex-direction:column; align-items:center; min-width:0; text-align:center; } .fa-auth-landing-perk-icon { width:40px; height:40px; margin:0 0 5px; font-size:26px; } .fa-auth-landing-truck { width:25px; height:25px; } .fa-auth-landing-perks b,.fa-auth-landing-perks small { align-self:auto; font-size:12px; } .fa-auth-landing-card__body { padding:23px 20px 20px; } .fa-account-tabs > * { font-size:14px; } .fa-account-tabs span span,.fa-account-tabs a span { font-size:22px; } .fa-account-benefits__grid { grid-template-columns:repeat(3,1fr); row-gap:13px; } .fa-account-benefits__grid > div:nth-child(3) { border-right:0; } .fa-account-benefits__assurances { grid-template-columns:1fr; gap:10px; } .fa-account-benefits__assurances > div { justify-content:flex-start; } }
@media (max-width:420px) { .fa-account-hero h1 { font-size:37px; } .fa-account-hero p { font-size:14px; } .fa-account-perks { gap:4px; } .fa-account-perks > div { grid-template-columns:37px auto; } .fa-account-perk-icon { width:35px; height:35px; font-size:22px; } .fa-account-perks b,.fa-account-perks small { font-size:11px; } .fa-account-card,.fa-account-benefits { width:calc(100% - 28px); } .fa-account-card__body { padding-right:16px; padding-left:16px; } .fa-account-tabs > * { gap:5px; font-size:13px; } }

/* Compact access page: keep the hierarchy without an oversized login action. */
.fa-account-landing { width:min(100%, 720px); }
.fa-auth-landing-hero { padding:28px 20px 24px; }
.fa-auth-landing-hero h1 { font-size:clamp(30px, 3.2vw, 39px); }
.fa-auth-landing-hero p { margin:14px 0 22px; font-size:clamp(13px, 1.4vw, 16px); }
.fa-auth-landing-perks { gap:26px; }
.fa-auth-landing-perks > div { grid-template-columns:42px auto; min-width:126px; }
.fa-auth-landing-perk-icon { width:40px; height:40px; margin-right:7px; font-size:26px; }
.fa-auth-landing-truck { width:25px; height:25px; }
.fa-auth-landing-perks b { font-size:13px; }
.fa-auth-landing-perks small { font-size:12px; }
.fa-auth-landing-card { width:calc(100% - 40px); max-width:600px; margin-bottom:16px; border-radius:12px; }
.fa-account-tabs { min-height:54px; }
.fa-account-tabs > * { font-size:15px; }
.fa-auth-landing-card__body { padding:22px 28px 20px; }
.fa-account-landing #login-form .mb-3,.fa-account-landing #customer-form .mb-3 { margin-bottom:14px !important; }
.fa-account-landing :is(#login-form,#customer-form) .form-label { margin-bottom:5px; font-size:13px; }
.fa-account-landing :is(#login-form,#customer-form) .form-control { min-height:44px; }
.fa-account-landing .password-field .btn { width:44px; }
.fa-account-landing .fa-login-options { margin-bottom:14px; }
.fa-account-landing .login-form .btn-basic { margin-bottom:14px; font-size:13px !important; }
.fa-account-landing #submit-login,.fa-account-landing #customer-form .form-control-submit { min-height:48px; font-size:15px !important; }
.fa-account-divider { margin:18px 0 14px; font-size:13px; }
.fa-google-connect { min-height:46px; min-width:230px; font-size:14px; }
.fa-account-benefits { width:calc(100% - 40px); max-width:680px; }
.fa-account-benefits__main { padding:14px 12px 11px; }
.fa-account-benefits h2 { font-size:16px; }

@media (max-width:767px) {
  .fa-auth-landing-hero { padding:24px 16px 20px; }
  .fa-auth-landing-hero h1 { font-size:30px; }
  .fa-auth-landing-hero p { margin:12px 0 18px; font-size:13px; }
  .fa-auth-landing-perks { padding:0 4px; }
  .fa-auth-landing-perks > div { min-width:0; }
  .fa-auth-landing-perk-icon { width:36px; height:36px; margin-bottom:4px; font-size:23px; }
  .fa-auth-landing-truck,.fa-auth-landing-repair { width:22px; height:22px; }
  .fa-auth-landing-perks b { font-size:11px; }
  .fa-auth-landing-perks small { font-size:10px; }
  .fa-auth-landing-card { width:calc(100% - 28px); }
  .fa-account-tabs { min-height:52px; }
  .fa-account-tabs > * { font-size:13px; }
  .fa-auth-landing-card__body { padding:18px 16px; }
  .fa-account-benefits { width:calc(100% - 28px); }
}
