/**
 * TryyCart Production Remediation 1.2.4
 * A final, scoped customer-surface layer. It does not alter rate or cart maths.
 */

body.tryycart-production-remediation {
  --tc-remediation-ink: #102747;
  --tc-remediation-muted: #4d617b;
  --tc-remediation-line: #d7e2ee;
  --tc-remediation-orange: #c84208;
  --tc-remediation-blue: #175fc4;
}

/* 1.2.2: one authoritative eyebrow + headline component across Home. */
body.tryycart-global-theme.tryycart-production-remediation #tc-page-home :is(
  .tc-services-v2,
  .services-section,
  .problem-section,
  .trending-section,
  .steps-section,
  .faq-section,
  .testimonials
) .section-title {
  display: grid !important;
  justify-items: start !important;
  gap: 0 !important;
  margin-inline: 0 !important;
  text-align: left !important;
}

body.tryycart-global-theme.tryycart-production-remediation #tc-page-home :is(
  .tc-services-v2,
  .services-section,
  .problem-section,
  .trending-section,
  .steps-section,
  .faq-section,
  .testimonials
) .section-title > .eyebrow {
  display: inline-flex !important;
  width: max-content !important;
  max-width: 100% !important;
  min-height: 32px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 7px 14px !important;
  border: 1px solid #ff985f !important;
  border-radius: 999px !important;
  color: #c94708 !important;
  background: rgba(255, 255, 255, .96) !important;
  font-size: clamp(11.5px, .78vw, 13px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

body.tryycart-global-theme.tryycart-production-remediation #tc-page-home :is(
  .tc-services-v2,
  .services-section,
  .problem-section,
  .trending-section,
  .steps-section,
  .faq-section,
  .testimonials
) .section-title > .eyebrow::before,
body.tryycart-global-theme.tryycart-production-remediation #tc-page-home :is(
  .tc-services-v2,
  .services-section,
  .problem-section,
  .trending-section,
  .steps-section,
  .faq-section,
  .testimonials
) .section-title > .eyebrow::after,
body.tryycart-global-theme.tryycart-production-remediation #tc-page-home :is(
  .tc-services-v2,
  .services-section,
  .problem-section,
  .trending-section,
  .steps-section,
  .faq-section,
  .testimonials
) .section-title .title-bar {
  display: none !important;
}

body.tryycart-global-theme.tryycart-production-remediation #tc-page-home :is(
  .tc-services-v2,
  .services-section,
  .problem-section,
  .trending-section,
  .steps-section,
  .faq-section,
  .testimonials
) .section-title h2 {
  width: 100% !important;
  max-width: 1240px !important;
  margin: 5px 0 0 !important;
  color: #203d61 !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  font-size: clamp(34px, 2.9vw, 40px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  text-align: left !important;
  text-wrap: balance;
}

body.tryycart-global-theme.tryycart-production-remediation #tc-page-home :is(
  .tc-services-v2,
  .services-section,
  .problem-section,
  .trending-section,
  .steps-section,
  .faq-section,
  .testimonials
) .section-title h2 .gradient-text {
  display: inline !important;
  color: transparent !important;
  background: linear-gradient(
    90deg,
    #f97317 0%,
    #fb8d2d 38%,
    #9aa8b4 73%,
    #3dbbf2 100%
  ) !important;
  background-size: 100% 100% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: none !important;
}

/* Seller Marketplace already owns its complete hero; suppress the theme fallback. */
body.tryycart-production-remediation.tcsm-seller-page .placeholder-hero {
  display: none !important;
}

body.tryycart-production-remediation.tcsm-seller-page .tcsm-hero h1 {
  max-width: 18ch;
  margin: 6px 0 12px !important;
  color: var(--tc-remediation-ink) !important;
  font-size: clamp(40px, 4.2vw, 58px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance;
}

/* Customer rate cards were readable only at 8.8-10.4px on desktop. */
body.tryycart-production-remediation .tc-rate-quote-card .tc-rate-route-type {
  color: #415570 !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

body.tryycart-production-remediation .tc-rate-quote-card dt {
  color: #52657d !important;
  font-size: 10.5px !important;
  font-weight: 850 !important;
  line-height: 1.3 !important;
}

body.tryycart-production-remediation .tc-rate-quote-card dd {
  color: var(--tc-remediation-ink) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

body.tryycart-production-remediation .tc-rate-quote-card footer {
  color: #415570 !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

/* Checkout data is operational content, not decorative micro-copy. */
body.tryycart-production-remediation .tc-checkout-shell :is(
  .tc-checkout-card-head small,
  .tc-address-intro small,
  .tc-service-cell small,
  .tc-value-cell small,
  .tc-logistics-cell small,
  .tc-content-totals small,
  .tc-product-description,
  .tc-product-facts dt,
  .tc-product-facts dd
) {
  color: #415570 !important;
  font-size: 11.5px !important;
  line-height: 1.45 !important;
}

body.tryycart-production-remediation .tc-checkout-shell .tc-checkout-table-head span {
  color: #40536d !important;
  font-size: 10.5px !important;
  font-weight: 850 !important;
  line-height: 1.3 !important;
}

@media (max-width: 680px) {
  body.tryycart-global-theme.tryycart-production-remediation #tc-page-home :is(
    .tc-services-v2,
    .services-section,
    .problem-section,
    .trending-section,
    .steps-section,
    .faq-section,
    .testimonials
  ) .section-title h2 {
    font-size: clamp(29px, 8.2vw, 36px) !important;
  }
}

/* Keep every service title visible and aligned with the homepage hierarchy. */
body.tryycart-global-theme.tryycart-production-remediation.tryycart-service-page .tc-service-page-hero h1 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-width: 19ch;
  margin: 8px 0 14px !important;
  color: #fff !important;
  font-size: clamp(40px, 4.2vw, 62px) !important;
  font-weight: 900 !important;
  line-height: 1.02 !important;
  letter-spacing: -0.045em !important;
  text-wrap: balance;
}

body.tryycart-global-theme.tryycart-production-remediation :is(
  .tc-panel-heading h2,
  .tc-confidence-heading h2,
  .tc-service-faq h2,
  .tc-rate-section-head h2,
  .tc-rate-calculator > header h2,
  .tc-courier-main > header h2,
  .tc-courier-compare h2,
  .tc-rate-cta h2
) {
  margin-block: 6px 12px !important;
  color: var(--tc-remediation-ink) !important;
  font-size: clamp(34px, 3.2vw, 40px) !important;
  font-weight: 875 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  text-wrap: balance;
}

/* Reuse the homepage's eyebrow + balanced headline language on service pages. */
body.tryycart-global-theme.tryycart-production-remediation :is(
  .tc-panel-heading small,
  .tc-confidence-heading > .tc-section-pill,
  .tc-service-faq .tc-section-pill,
  .tc-rate-section-label,
  .tc-courier-main > header > span,
  .tc-account-welcome > div > span
) {
  display: inline-flex !important;
  align-items: center;
  width: fit-content;
  margin: 0 0 6px !important;
  color: var(--tc-remediation-orange) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-account-welcome h2 {
  margin: 6px 0 12px !important;
  color: #fff !important;
  font-size: clamp(34px, 3.2vw, 40px) !important;
  font-weight: 875 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  text-wrap: balance;
}

body.tryycart-global-theme.tryycart-production-remediation.tryycart-account-page :is(
  .tc-account-page-intro h2,
  .woocommerce-MyAccount-content > h2,
  .woocommerce-MyAccount-content > form > h2,
  .woocommerce-MyAccount-content .woocommerce-Address-title h2
) {
  margin: 0 0 14px !important;
  color: var(--tc-remediation-ink) !important;
  font-size: clamp(29px, 2.8vw, 34px) !important;
  font-weight: 875 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.035em !important;
}

/* Readable controls and supporting copy outside Core's isolated wallet. */
body.tryycart-global-theme.tryycart-production-remediation :is(
  .hero-metric-copy b,
  .hero-metric-copy small,
  .trust-line b,
  .trust-line small,
  .tc-marquee-copy b,
  .tc-marquee-copy small,
  .tc-currency-selector small,
  #tc-page-shop select,
  .tc-shop select,
  .woocommerce-ordering select,
  .tryycart-rate-form label,
  .tc-rate-assurance small,
  .tc-panel-heading p,
  .tc-confidence-heading p,
  .tc-service-page-hero p,
  .tc-courier-benefits small
) {
  color: var(--tc-remediation-muted) !important;
  font-size: max(12px, 0.75rem) !important;
  line-height: 1.45 !important;
}

/* Dark panels need an explicit light-title branch after the shared rules. */
body.tryycart-global-theme.tryycart-production-remediation :is(
  .tc-service-page-hero h1,
  .tc-rate-cta h2,
  .tc-india-closing h2,
  .tc-import-panel > header .tc-panel-heading h2
) {
  color: #fff !important;
}

body.tryycart-global-theme.tryycart-production-remediation :is(
  .tc-service-page-hero p,
  .tc-rate-cta p,
  .tc-india-closing p,
  .tc-import-panel > header .tc-panel-heading p,
  .tc-account-welcome p
) {
  color: #d8e6f7 !important;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-service-page-hero .tc-courier-benefits small {
  color: #d8e6f7 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

body.tryycart-global-theme.tryycart-production-remediation :is(
  .tc-rate-cta .tc-rate-section-label,
  .tc-india-closing .tc-service-container > div:first-child > span,
  .tc-import-panel > header .tc-panel-heading small,
  .tc-account-welcome > div > span
) {
  color: #fed7aa !important;
}

body.tryycart-global-theme.tryycart-production-remediation :is(
  .hero-metric-copy b,
  .trust-line b,
  .tc-marquee-copy b,
  .tryycart-rate-form label
) {
  color: var(--tc-remediation-ink) !important;
  font-weight: 800 !important;
}

/* 1.2.2: compact, separated proof cards with explicit dark-strip contrast. */
body.tryycart-global-theme.tryycart-production-remediation .brand-marquee.tc-proof-marquee {
  min-height: 52px !important;
  padding-block: 5px !important;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-proof-marquee-group {
  gap: 30px !important;
  padding-right: 40px !important;
}

body.tryycart-global-theme.tryycart-production-remediation :is(
  .tc-worldwide-block,
  .tc-proof-block
) {
  gap: 18px !important;
}

body.tryycart-global-theme.tryycart-production-remediation :is(
  .tc-marquee-lead,
  .tc-proof-chip,
  .tc-marquee-trust
) {
  min-height: 40px !important;
  border-color: rgba(184, 211, 248, .42) !important;
  border-radius: 10px !important;
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, .15),
    rgba(77, 121, 193, .12)
  ) !important;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-proof-saving {
  border-color: rgba(255, 178, 106, .58) !important;
  background: linear-gradient(
    145deg,
    rgba(255, 119, 35, .22),
    rgba(75, 107, 196, .14)
  ) !important;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-marquee-trust {
  gap: 9px !important;
  padding: 5px 14px 5px 10px !important;
  border-color: rgba(169, 202, 249, .54) !important;
  background: linear-gradient(
    105deg,
    rgba(255, 112, 32, .2),
    rgba(43, 89, 171, .34) 48%,
    rgba(72, 72, 185, .25)
  ) !important;
}

body.tryycart-global-theme.tryycart-production-remediation :is(
  .tc-marquee-lead,
  .tc-proof-chip
) {
  gap: 8px !important;
  padding: 5px 11px 5px 8px !important;
}

body.tryycart-global-theme.tryycart-production-remediation :is(
  .tc-marquee-lead > .tc-line-icon,
  .tc-proof-chip > .tc-line-icon,
  .tc-proof-symbol
) {
  width: 25px !important;
  min-width: 25px !important;
  height: 25px !important;
  min-height: 25px !important;
  border-radius: 7px !important;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-marquee-copy {
  gap: 2px !important;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-proof-marquee .tc-marquee-copy b {
  color: #fff !important;
  font-size: 11.5px !important;
  font-weight: 850 !important;
  line-height: 1.05 !important;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-proof-marquee .tc-marquee-copy small {
  color: #c9dcf6 !important;
  font-size: 9.5px !important;
  font-weight: 750 !important;
  line-height: 1.05 !important;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-proof-marquee .tc-marquee-lead .tc-marquee-copy small {
  color: #ffd4b5 !important;
}

body.tryycart-global-theme.tryycart-production-remediation .tc-marquee-divider {
  height: 30px !important;
  margin-inline: 6px !important;
}

body.tryycart-global-theme.tryycart-production-remediation :is(
  #tc-page-shop select,
  .tc-shop select,
  .woocommerce-ordering select,
  .tryycart-rate-form input,
  .tryycart-rate-form select
) {
  min-height: 44px;
  border-color: #afc0d3 !important;
  background-color: #fff !important;
  color: #152b48 !important;
}

body.tryycart-global-theme.tryycart-production-remediation :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid rgba(23, 95, 196, 0.55) !important;
  outline-offset: 3px !important;
}

body.tryycart-production-remediation .tc-remediation-compact-alert-title {
  overflow: hidden;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin-bottom: 5px !important;
  color: #a92f18 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

/* Keep WooCommerce's empty-cart state below the fixed site header and make it useful. */
body.tryycart-production-remediation.woocommerce-cart .woocommerce:has(.cart-empty) {
  width: min(920px, calc(100% - 32px));
  min-height: min(660px, 72vh);
  margin-inline: auto;
  padding: clamp(118px, 10vw, 158px) 0 clamp(44px, 7vw, 80px) !important;
}

body.tryycart-production-remediation.woocommerce-cart .cart-empty.woocommerce-info {
  max-width: 780px;
  margin: 0 auto 18px !important;
  padding: 18px 22px !important;
  border: 1px solid var(--tc-remediation-line) !important;
  border-radius: 15px !important;
  background: #fff !important;
  box-shadow: 0 16px 38px rgba(16, 39, 71, 0.09);
  color: var(--tc-remediation-ink) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.5 !important;
}

body.tryycart-production-remediation .tc-remediation-empty-cart {
  max-width: 780px;
  margin: 0 auto;
  padding: clamp(24px, 4vw, 38px);
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 20px;
  border: 1px solid #c9d8e8;
  border-radius: 22px;
  background: linear-gradient(135deg, #ffffff, #f5f9ff 58%, #fff7f2);
  box-shadow: 0 22px 55px rgba(16, 39, 71, 0.12);
}

body.tryycart-production-remediation .tc-remediation-empty-cart-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  background: linear-gradient(145deg, #f66d1d, #c83d00);
  box-shadow: 0 10px 22px rgba(200, 61, 0, 0.24);
  color: #fff;
  font-size: 30px;
  font-weight: 900;
}

body.tryycart-production-remediation .tc-remediation-empty-cart h2 {
  margin: 1px 0 9px !important;
  color: var(--tc-remediation-ink) !important;
  font-size: clamp(27px, 3.4vw, 36px) !important;
  font-weight: 875 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
}

body.tryycart-production-remediation .tc-remediation-empty-cart p {
  max-width: 58ch;
  margin: 0 !important;
  color: var(--tc-remediation-muted) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

body.tryycart-production-remediation .tc-remediation-empty-cart-buttons {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.tryycart-production-remediation .tc-remediation-empty-cart-buttons .button {
  min-height: 44px;
  padding: 11px 18px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #c83d00 !important;
  border-radius: 10px !important;
  background: linear-gradient(90deg, #f0520a, #c83d00) !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
}

body.tryycart-production-remediation .tc-remediation-empty-cart-buttons .button-outline {
  border-color: #9bb2ca !important;
  background: #fff !important;
  color: var(--tc-remediation-blue) !important;
}

/* A purposeful recovery state replaces WooCommerce's unstyled blocked message. */
body.tryycart-production-remediation .tc-remediation-checkout-blocked {
  width: min(760px, calc(100% - 32px));
  min-height: 230px;
  margin: clamp(38px, 7vw, 88px) auto;
  padding: clamp(24px, 4vw, 42px);
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: start;
  gap: 20px;
  border: 1px solid #f1b89c;
  border-radius: 22px;
  background: linear-gradient(135deg, #fff8f3, #fff 55%, #f4f8ff);
  box-shadow: 0 22px 55px rgba(16, 39, 71, 0.12);
  color: var(--tc-remediation-ink);
}

body.tryycart-production-remediation .tc-remediation-checkout-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  background: linear-gradient(145deg, #f66d1d, #c83d00);
  box-shadow: 0 10px 22px rgba(200, 61, 0, 0.24);
  color: #fff;
  font-size: 30px;
  font-weight: 900;
}

body.tryycart-production-remediation .tc-remediation-checkout-blocked h2 {
  margin: 2px 0 10px !important;
  color: var(--tc-remediation-ink) !important;
  font-size: clamp(28px, 4vw, 38px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em;
}

body.tryycart-production-remediation .tc-remediation-checkout-blocked :is(p, ul, li) {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--tc-remediation-muted) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  list-style: none;
}

body.tryycart-production-remediation .tc-remediation-checkout-blocked a {
  width: fit-content;
  min-height: 44px;
  margin-top: 20px;
  padding: 11px 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: linear-gradient(90deg, #f0520a, #c83d00);
  color: #fff !important;
  font-size: 14px;
  font-weight: 850;
  text-decoration: none !important;
}

/* Never present an enabled payment path until WooCommerce has a live route. */
body.tryycart-production-remediation .tc-remediation-route-guard {
  margin: 14px 0 12px;
  padding: 14px 15px;
  border: 1px solid #efb394;
  border-left: 4px solid var(--tc-remediation-orange);
  border-radius: 12px;
  background: linear-gradient(115deg, #fff7f1, #fff);
  color: var(--tc-remediation-ink);
}

body.tryycart-production-remediation .tc-remediation-route-guard strong {
  display: block;
  margin-bottom: 4px;
  color: #982f17;
  font-size: 14px;
  font-weight: 900;
}

body.tryycart-production-remediation .tc-remediation-route-guard p {
  margin: 0 !important;
  color: var(--tc-remediation-muted) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

body.tryycart-production-remediation #place_order.tc-remediation-route-disabled,
body.tryycart-production-remediation #place_order.tc-remediation-route-disabled:hover {
  border-color: #9aa9ba !important;
  background: #aab5c2 !important;
  box-shadow: none !important;
  color: #fff !important;
  cursor: not-allowed !important;
  filter: none !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Billing-only WooCommerce configurations still expose a complete address. */
body.tryycart-production-remediation .tc-remediation-billing-fallback {
  cursor: default;
}

body.tryycart-production-remediation .tc-remediation-billing-fallback input {
  display: none !important;
}

/* A broken remote product image becomes a branded, stable placeholder. */
body.tryycart-production-remediation img.tc-remediation-image-fallback {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  background: #f5f8fc !important;
}

@media (max-width: 767px) {
  body.tryycart-global-theme.tryycart-production-remediation.tryycart-service-page .tc-service-page-hero h1 {
    max-width: none;
    font-size: clamp(34px, 10.2vw, 46px) !important;
  }

  body.tryycart-global-theme.tryycart-production-remediation :is(
    .tc-panel-heading h2,
    .tc-confidence-heading h2,
    .tc-service-faq h2,
    .tc-rate-section-head h2,
    .tc-rate-calculator > header h2,
    .tc-courier-main > header h2,
    .tc-courier-compare h2,
    .tc-rate-cta h2
  ) {
    font-size: clamp(28px, 8.2vw, 32px) !important;
  }

  body.tryycart-production-remediation .tc-remediation-checkout-blocked {
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 14px;
    border-radius: 16px;
  }

  body.tryycart-production-remediation .tc-remediation-checkout-icon {
    width: 46px;
    height: 46px;
    border-radius: 13px;
    font-size: 24px;
  }
}

@media (max-width: 460px) {
	body.tryycart-production-remediation.woocommerce-cart .woocommerce:has(.cart-empty) {
		width: calc(100% - 20px);
		padding-top: 112px !important;
	}

	body.tryycart-production-remediation .tc-remediation-empty-cart {
		padding: 21px 17px;
		grid-template-columns: 1fr;
		gap: 14px;
		border-radius: 17px;
	}

	body.tryycart-production-remediation .tc-remediation-empty-cart-icon {
		width: 48px;
		height: 48px;
		border-radius: 14px;
		font-size: 24px;
	}

	body.tryycart-production-remediation .tc-remediation-empty-cart-buttons .button {
		width: 100%;
	}

  body.tryycart-production-remediation .tc-remediation-route-guard {
    padding: 13px;
  }

  body.tryycart-production-remediation .tc-remediation-checkout-blocked {
    width: calc(100% - 20px);
    min-height: 0;
    padding: 20px 16px;
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.tryycart-production-remediation *,
  body.tryycart-production-remediation *::before,
  body.tryycart-production-remediation *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
