/* BEGIN Enable BYOC page - Turn each payment-method choice into a bordered card instead of a bare radio row */
.kb-field4755fld-luuxzu1a .kb-radio-check-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    border: 1.5px solid #dddddd;
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 10px;
    background: #F5F5F5;
}

/* Remove the bottom margin on the last card so spacing stays even */
.kb-field4755fld-luuxzu1a .kb-radio-check-item:last-child {
    margin-bottom: 0;
}

/* Make the whole card clickable, not just the tiny radio dot */
.kb-field4755fld-luuxzu1a .kb-radio-check-item label {
    cursor: pointer;
    flex: 1;
}

/* Recolor the native radio dot to brand red instead of default blue */
.kb-field4755fld-luuxzu1a .kb-radio-style {
    accent-color: #CE0108;
    margin-top: 3px;
    flex-shrink: 0;
}

/* Highlight the card that's currently selected, using the browser's own :checked state */
.kb-field4755fld-luuxzu1a .kb-radio-check-item:has(.kb-radio-style:checked) {
    border-color: #CE0108;
    background: #fdecec;
}

/* Stack the legend (question text) above the cards with breathing room */
.kb-field4755fld-luuxzu1a .kb-adv-form-label {
    display: block;
    margin-bottom: 10px;
    font-weight: 600;
}
/* END Enable BYOC page - Turn each payment-method choice into a bordered card instead of a bare radio row */



/* Hero row (tablet) - show full image, no cropping */
@media (max-width: 1024px) {
  .kb-row-layout-wrap.kb-row-layout-id4_2884b9-5f {
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
  }
}


/* About page - How You Roll - stretch columns so buttons align to bottom */
@media (max-width: 1200px) {
  .kb-row-layout-idb3b744 .kt-inside-inner-col {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .kb-row-layout-idb3b744 .kt-inside-inner-col .wp-block-kadence-advancedbtn {
    margin-top: auto;
  }
}
/* All Checkboxes and radio circles - style */
.kb-checkbox-style, .kb-radio-style {
  width: 22px !important;
  height: 22px !important;
	margin-top: 5px !important;
	margin-bottom: 5px !important;
  border: 2px solid #1B2A4A !important;   /* navy, clearly visible */
}

/* All Forms Labels - put space below label & font-weight 600 */
.kb-adv-form-label {
	padding-bottom: 10px !important;
	font-weight: 600 !important; }



/* Edit Company Page - Billing form row - equalize field heights */
/* Company Settings form - equalise select + text input heights */
.kadence-form-166_c7923a-1c .kb-field {
  height: 46px !important;
  min-height: 46px !important;
  line-height: 1.4 !important;
  box-sizing: border-box !important;
  padding: 8px 14px !important;
}


/* ==========================================================================
   Sign In page - style the custom HTML login form to match Kadence branding
   Navy base, red CTA, Montserrat. Scoped under .login-card so it won't leak.
   ========================================================================== */

/* Card wrapper (the Kadence column already gives border/shadow/radius,
   so this just controls inner spacing and text) */
.login-card,
.kt-inside-inner-col form[action="/login"] {
  font-family: Montserrat, sans-serif;
}

/* Tagline under the heading */
.login-tagline {
  text-align: center;
  color: #5f5e5a;
  font-size: 15px;
  margin: 0 0 24px;
}

/* Each labelled field group */
.form-field {
  margin-bottom: 18px;
}

/* Field labels */
.form-field label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #1B2A4A;                 /* navy */
  margin-bottom: 6px;
  letter-spacing: 0.02em;
}

/* Required asterisk */
.required-indicator {
  color: #CC2222;                 /* brand red */
  margin-left: 2px;
}

/* Text / email / password inputs */
.form-field input[type="email"],
.form-field input[type="password"],
.form-field input[type="text"] {
  width: 100%;
  padding: 12px 14px;
  font-size: 16px;
  font-family: Montserrat, sans-serif;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  box-sizing: border-box;
  transition: border-color 0.15s ease;
}

/* Focus state - navy border */
.form-field input:focus {
  outline: none;
  border-color: #1B2A4A;
  box-shadow: 0 0 0 3px rgba(27, 42, 74, 0.12);
}

/* Password row - input + Show button side by side */
.password-row {
  display: flex;
  gap: 8px;
  align-items: stretch;
}
.password-row input {
  flex: 1;
}

/* "Show" password button - secondary style */
.btn-secondary {
  background: #ffffff;
  color: #1B2A4A;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  padding: 0 16px;
  font-size: 14px;
  font-weight: 500;
  font-family: Montserrat, sans-serif;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s ease;
}
.btn-secondary:hover {
  background: #f3f4f6;
}

/* Remember-me row */
.remember-row {
  margin: 4px 0 16px;
}
.checkbox-label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #333;
  cursor: pointer;
}
.checkbox-label input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: #1B2A4A;
}

/* Forgot-password link row */
.help-row {
  text-align: right;
  margin-bottom: 20px;
}
.help-row a,
.resend-toggle {
  color: #CC2222;
  font-size: 14px;
  text-decoration: none;
}
.help-row a:hover,
.resend-toggle:hover {
  text-decoration: underline;
}

/* Primary submit button - red CTA, full width 
.btn-submit,
.btn-resend {
  width: 100%;
  background: #CC2222;
  color: #ffffff;
  border: none;
  padding: 14px 20px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  font-family: Montserrat, sans-serif;
  cursor: pointer;
  transition: background 0.15s ease;
}
.btn-submit:hover,
.btn-resend:hover {
  background: #a91b1b;
}

/* Disabled state (before valid input) 
.btn-submit:disabled,
.btn-resend:disabled {
  background: #d1a3a3;
  cursor: not-allowed;
}

/* Resend-verification section 
.resend-section {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid #ececec;
  text-align: center;
}
.resend-form-wrapper {
  margin-top: 14px;
  text-align: left;
}

/* ==========================================================================
   End - Sign In page - style the custom HTML login form to match Kadence branding
   Navy base, red CTA, Montserrat. Scoped under .login-card so it won't leak.
   ========================================================================== */



/* Communications Preferences page - Pin the "Which Emails" field to the top of its column
   instead of letting it float vertically centered */
.kb-form-field-4 {
    align-self: flex-start !important;
    align-items: flex-start !important;
}
/* User Dashboard page - key metrics - anchor bottom text to bottom of column. */
.key-metrics-row.kt-row-column-wrap > .wp-block-kadence-column {
  display: flex;
  overflow: hidden;
  border-radius: 10px; /* match your existing radius */
}
.key-metrics-row.kt-row-column-wrap .kt-inside-inner-col {
  display: flex;
  flex-direction: column;
  flex: 1;
  height: auto;
  background: transparent;
}
.key-metrics-row.kt-row-column-wrap .kt-inside-inner-col .wp-block-heading {
  margin-top: auto;
  margin-bottom: 0;
}

/* Not sure what this is for 
.wp-block-kadence-column .kb-form-field-container {
    align-self: flex-start !important;
}

/* User Dashboard Page - Enter Tracking Token */
.tracking-lookup {
  display: flex;
  gap: 12px;
  align-items: center;
}

.tracking-lookup input {
  flex: 1;
  padding: 12px 16px;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  font-size: 17px;
	font-family: Montserrat;
}

.tracking-lookup input:focus {
  outline: none;
  border-color: #2563eb;
 }

form.tracking-lookup {
		box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.3);
		margin-right: auto;
		margin-left: auto; }


.tracking-lookup button {
  background: #2563eb;
  color: #fff;
  border: none;
  padding: 12px 28px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
}

.tracking-lookup button:hover {
  background: #1d4ed8;
}





/* Align Columns text at top */
td {
    vertical-align: top;
}

/* Get Rates Page - Ship From / Ship To - add space above Residential Address checkbox */
.kb-field3931efab07-34 {
    margin-top: 1rem;
}

/* Get Rates Page - Ship From / Ship To - put Residential Address label beside the checkbox */
.kb-field3931efab07-34 .kb-adv-form-label {
    display: none;  /* hide the legend that sits above */
}
.kb-field3931efab07-34 .kb-radio-check-item label::after {
    content: "Residential address";  /* add label text beside the box */
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.05em;
    color: #5f5e5a;
    margin-left: 8px;
}
.kb-field3931efab07-34 .kb-radio-check-item {
    display: flex;
    align-items: center;
}





/* Address Book - Drop CSV here or click to browse - centre align */
.wp-block-kadence-advanced-form2288-cpt-id .kb-adv-form-label {
    text-align: center;
}


/* Plans page: bullet list grows to push price/button/footer to consistent position */
.kt-inside-inner-col > .wp-block-kadence-iconlist {
    flex-grow: 1 !important;
}

/* Pricing Page - space between icon list bullets */
.kt-svg-icon-list-text {
padding-bottom: 1.5rem !important; }


/* Your Shipping Discounts Page - Gold up to - bar */

.sas-bar-track {
    height: 14px;
    background: #cdd3da;
    border-radius: 999px;
    position: relative;
    overflow: hidden;
    margin: 12px 0 6px;
}

.sas-bar-track::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 60%; /* change this % to set fill level */
    background: #f5a623;
    border-radius: 999px;
}

.sas-badge-gold {
    display: inline-block;
    background: #f5a623;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    padding: 3px 8px;
    border-radius: 4px;
    margin-right: 8px;
}

.sas-tier-pill {
    display: inline-block;
    border: 1px solid #cdd3da;
    color: #4a5568;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.5px;
    padding: 3px 10px;
    border-radius: 4px;
    margin-left: 6px;
}


/* Footer: widen brand column, narrow Company column */
.site-top-footer-inner-wrap.site-footer-row-columns-4 {
    grid-template-columns: 1.5fr 0.9fr 1fr 1fr !important;
}

/* Footer icon list: manual nudge to align icon with text */
#block-24 .kb-svg-icon-wrap {
    position: relative !important;
    bottom: 10px !important;
}
/* Footer "Get in touch": push icon list down to match other columns */
#block-24 .kt-svg-icon-list {
    margin-top: 20px !important;
}