/* Step 028 — glass refresh for hero, cards and buy panel */
:root{
  --tmc-glass-bg: rgba(255,255,255,.62);
  --tmc-glass-bg-strong: rgba(255,255,255,.78);
  --tmc-glass-line: rgba(255,255,255,.58);
  --tmc-glass-shadow: 0 24px 70px rgba(7,20,38,.14);
  --tmc-glass-shadow-soft: 0 14px 36px rgba(7,20,38,.10);
}

.tmc24-hero{
  padding:42px 0 72px;
  background:
    radial-gradient(circle at 12% 12%, rgba(255,255,255,.95), rgba(255,255,255,0) 28%),
    radial-gradient(circle at 78% 18%, rgba(24,119,255,.22), rgba(24,119,255,0) 26%),
    radial-gradient(circle at 65% 78%, rgba(122,169,255,.18), rgba(122,169,255,0) 32%),
    linear-gradient(180deg,#f8fbff 0%,#edf4fb 48%,#edf2f9 100%);
}
.tmc24-hero:before{
  content:"";position:absolute;left:6%;top:9%;width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle at center, rgba(255,255,255,.82), rgba(255,255,255,0) 68%);
  filter:blur(12px);pointer-events:none;
}
.tmc24-hero:after{
  content:"";position:absolute;right:-60px;top:30px;width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle at center, rgba(24,119,255,.14), rgba(24,119,255,0) 72%);
  filter:blur(10px);pointer-events:none;
}
.tmc24-hero__layout{gap:34px;align-items:stretch}
.tmc24-hero__copy{
  align-self:center;position:relative;max-width:580px;padding:28px 28px 30px;border-radius:28px;
  background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.56));
  border:1px solid var(--tmc-glass-line);
  box-shadow:var(--tmc-glass-shadow);
  backdrop-filter: blur(22px) saturate(170%);
}
.tmc24-hero__copy:before{
  content:"";position:absolute;inset:1px;border-radius:27px;
  background:linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,0));
  pointer-events:none;
}
.tmc24-kicker{background:rgba(255,255,255,.84);border-color:rgba(173,212,255,.95);box-shadow:0 14px 30px rgba(24,119,255,.12)}
.tmc24-hero h1{letter-spacing:-.075em;line-height:.9}
.tmc24-hero__cash{display:inline-flex;align-items:center;padding:8px 14px;border-radius:999px;background:rgba(24,119,255,.08);border:1px solid rgba(24,119,255,.12);margin-top:4px}
.tmc24-hero__desc{max-width:520px}
.tmc24-hero__features span{
  min-height:38px;padding:0 14px;border-radius:999px;background:rgba(255,255,255,.64);
  border:1px solid rgba(216,229,243,.95);box-shadow:0 12px 24px rgba(7,20,38,.05)
}
.tmc24-btn{border-radius:16px}
.tmc24-btn--primary{box-shadow:0 16px 36px rgba(24,119,255,.26)}
.tmc24-btn--ghost{background:rgba(255,255,255,.78);border-color:rgba(222,233,245,.95);box-shadow:0 12px 28px rgba(7,20,38,.06)}
.tmc24-hero__media{
  min-height:540px;border-radius:34px;overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.50));
  border:1px solid rgba(255,255,255,.72);box-shadow:0 28px 80px rgba(7,20,38,.18);
  backdrop-filter: blur(18px) saturate(150%);
}
.tmc24-hero__media:before{
  content:"";position:absolute;inset:0;z-index:2;
  background:linear-gradient(135deg, rgba(255,255,255,.20), rgba(255,255,255,0) 28%, rgba(255,255,255,0) 72%, rgba(255,255,255,.10));
  pointer-events:none;
}
.tmc24-hero__media:after{background:linear-gradient(180deg, rgba(7,20,38,.05), rgba(255,255,255,0) 24%, rgba(24,119,255,.06) 100%)}
.tmc24-hero__media img{padding:12px;border-radius:34px;object-fit:cover}
.tmc24-price-float{
  right:26px;top:26px;padding:17px 18px;border-radius:22px;background:rgba(255,255,255,.68);
  border:1px solid rgba(255,255,255,.82);box-shadow:0 18px 40px rgba(7,20,38,.15);backdrop-filter: blur(20px) saturate(160%);
}

.tmc24-stats{
  background:linear-gradient(135deg, rgba(6,21,39,.84), rgba(12,31,58,.78));
  border-color:rgba(255,255,255,.10);backdrop-filter:blur(18px) saturate(130%);
}
.tmc24-stat{background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0))}
.tmc24-stat>span{background:rgba(255,255,255,.10);backdrop-filter:blur(10px)}

.tmc24-tabs{
  background:rgba(255,255,255,.72);border-color:rgba(255,255,255,.68);backdrop-filter:blur(18px) saturate(160%);
  box-shadow:0 20px 50px rgba(7,20,38,.10)
}
.tmc24-tabs a.is-active{background:rgba(240,247,255,.78)}

.tmc24-card,.woocommerce ul.products li.product{
  border-radius:24px!important;
  background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.76))!important;
  border:1px solid rgba(255,255,255,.82)!important;
  box-shadow:0 22px 64px rgba(7,20,38,.11)!important;
  backdrop-filter: blur(18px) saturate(155%);
}
.tmc24-card:before,.woocommerce ul.products li.product:before{
  content:"";position:absolute;left:0;right:0;top:0;height:112px;border-radius:24px 24px 0 0;
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,0));pointer-events:none;z-index:2;
}
.tmc24-card:hover,.woocommerce ul.products li.product:hover{
  transform:translateY(-5px);box-shadow:0 28px 78px rgba(7,20,38,.16)!important;border-color:rgba(190,218,255,.88)!important
}
.tmc24-card__media{aspect-ratio:1.3/1;background:linear-gradient(180deg,#dfeaf7,#d6e4f2)}
.tmc24-card__media img{transform:scale(1.001)}
.tmc24-card__badges{top:14px;left:14px;right:14px}
.tmc24-tag{
  min-height:30px;padding:0 12px;border-radius:999px;font-size:10px;
  border:1px solid rgba(255,255,255,.20);backdrop-filter:blur(12px) saturate(140%);
}
.tmc24-tag--dark{background:rgba(7,20,38,.58)}
.tmc24-card__body{
  position:relative;margin:-14px 12px 12px;padding:16px;border-radius:20px;
  background:linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.66));
  border:1px solid rgba(255,255,255,.78);box-shadow:0 16px 36px rgba(7,20,38,.08);backdrop-filter:blur(20px) saturate(150%);
}
.tmc24-card h3{min-height:0;font-size:20px;line-height:1.08;letter-spacing:-.04em}
.tmc24-card__desc{min-height:34px;color:#51627b}
.tmc24-card__cash{
  display:inline-flex;align-items:center;min-height:30px;padding:0 10px;width:max-content;max-width:100%;
  border-radius:999px;background:rgba(14,101,245,.06);border:1px solid rgba(24,119,255,.10);font-size:11px
}
.tmc24-card__meta{gap:9px}
.tmc24-card__meta div{
  padding:10px 11px;border-radius:14px;background:rgba(247,251,255,.76);
  border:1px solid rgba(216,229,243,.82);backdrop-filter:blur(10px)
}
.tmc24-progress{height:10px;background:rgba(230,237,246,.84)}
.tmc24-card__footer{grid-template-columns:1fr 48px;align-items:center}
.tmc24-card__footer .tmc24-btn{min-height:46px;border-radius:14px;padding:0 18px}
.tmc24-icon-action{min-height:46px;border-radius:14px;background:rgba(255,255,255,.82);border-color:rgba(24,119,255,.24)}
.tmc24-card.is-instant{background:linear-gradient(180deg, rgba(6,25,39,.94), rgba(6,25,39,.88))!important;border-color:rgba(95,140,190,.20)!important}
.tmc24-card.is-instant .tmc24-card__body{background:linear-gradient(180deg, rgba(8,32,51,.78), rgba(9,29,46,.62));border-color:rgba(104,136,170,.16);box-shadow:0 18px 38px rgba(0,0,0,.18)}
.tmc24-card.is-instant .tmc24-card__cash{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10);color:#cfdbeb}
.tmc24-card.is-instant .tmc24-icon-action{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#fff}

.tmc24-buy-panel,.tmc25-functional-buy-panel{
  border-radius:26px;background:linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.74));
  border:1px solid rgba(255,255,255,.80);box-shadow:0 24px 68px rgba(7,20,38,.12);backdrop-filter:blur(22px) saturate(160%);
}
.tmc24-product__meta div{background:rgba(247,251,255,.72);border:1px solid rgba(216,229,243,.84)}
.tmc25-buy-step{background:rgba(247,251,255,.58);border:1px solid rgba(216,229,243,.80);backdrop-filter:blur(14px)}
.tmc25-buy-submit{border-radius:16px!important;box-shadow:0 18px 38px rgba(24,119,255,.22)}
.tmc24-product-box{border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.80), rgba(255,255,255,.68));border:1px solid rgba(255,255,255,.80);box-shadow:0 20px 54px rgba(7,20,38,.08);backdrop-filter:blur(18px)}

@media (max-width: 1024px){
  .tmc24-hero__copy{padding:24px 22px 24px}
  .tmc24-hero__media{min-height:470px}
  .tmc24-card__body{margin:-10px 10px 10px;padding:14px}
}

@media (max-width: 767px){
  .tmc24-hero{padding:0 0 18px}
  .tmc24-hero__media{background:#e8f0f9;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
  .tmc24-hero__media img{padding:0;border-radius:0}
  .tmc24-hero__copy{
    margin-top:-36px;padding:18px 16px 16px;border-radius:24px;
    background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.84));
    box-shadow:0 20px 46px rgba(7,20,38,.12)
  }
  .tmc24-card,.woocommerce ul.products li.product{border-radius:22px!important}
  .tmc24-card:before{height:90px}
  .tmc24-card__body{margin:-10px 10px 10px;padding:13px;border-radius:18px}
  .tmc24-card__meta div{padding:8px 9px;border-radius:12px}
  .tmc24-tabs{background:rgba(255,255,255,.82)}
  .tmc24-buy-panel,.tmc25-functional-buy-panel,.tmc24-product-box{border-radius:22px}
}

@media (max-width: 430px){
  .tmc24-hero__copy{margin-top:-28px;padding:16px 14px 14px}
  .tmc24-card__body{margin:-8px 8px 8px;padding:12px}
  .tmc24-card__footer .tmc24-btn{min-height:44px}
}


/* Step 029 — refined trend polish: loaded after the base stylesheet. */
:root{
  --tmc-font-sans:"Inter","SF Pro Display","Segoe UI Variable Text","Segoe UI",Roboto,"Helvetica Neue",Arial,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  --tmc-bg:#f4f7fb;
  --tmc-ink:#081522;
  --tmc-muted:#607086;
  --tmc-line:rgba(171,190,213,.46);
  --tmc-blue:#176bff;
  --tmc-blue-2:#5fb4ff;
  --tmc-radius:24px;
  --tmc-blur:blur(24px) saturate(165%);
  --tmc-glass-bg:rgba(255,255,255,.56);
  --tmc-glass-bg-strong:rgba(255,255,255,.72);
  --tmc-glass-line:rgba(255,255,255,.70);
  --tmc-glass-shadow:0 30px 90px rgba(10,28,52,.13);
  --tmc-glass-shadow-soft:0 18px 48px rgba(10,28,52,.09);
}

body{
  font-family:var(--tmc-font-sans);
  font-weight:400;
  letter-spacing:-.012em;
  background:
    radial-gradient(circle at 10% 0%, rgba(255,255,255,.95), transparent 34%),
    radial-gradient(circle at 82% 8%, rgba(102,164,255,.18), transparent 32%),
    linear-gradient(180deg,#f7faff 0%,#eef4fb 52%,#f6f8fb 100%);
}

.tmc24-logo__mark{font-weight:780;letter-spacing:-.105em}.tmc24-logo__text strong{font-weight:720;letter-spacing:.13em}.tmc24-logo__text span{font-weight:560;letter-spacing:.28em}.tmc24-menu a,.tmc24-topbar,.tmc24-tabs a{font-weight:600}.tmc24-btn{font-weight:720;letter-spacing:-.01em}.tmc24-section-head span,.tmc24-kicker{font-weight:680;letter-spacing:.10em}.tmc24-section-head h2,.tmc24-hero h1,.tmc25-functional-buy-panel h1,.tmc24-product-box h2{font-weight:760;text-transform:none;letter-spacing:-.065em}.tmc24-card h3{font-weight:700}.tmc24-card__meta strong,.tmc24-stat b{font-weight:720}.tmc24-card__meta span,.tmc24-card__desc,.tmc24-section-head p,.tmc24-hero__desc{font-weight:430}.tmc24-tag{font-weight:680;letter-spacing:.045em}.tmc24-progress span{background:linear-gradient(90deg,var(--tmc-blue),var(--tmc-blue-2))}

.tmc24-header{
  background:rgba(255,255,255,.70);
  border-bottom:1px solid rgba(255,255,255,.72);
  box-shadow:0 16px 42px rgba(10,28,52,.055);
  backdrop-filter:var(--tmc-blur);
}
.tmc24-icon-btn,.tmc24-mobile-toggle{
  background:rgba(255,255,255,.64);
  border-color:rgba(255,255,255,.78);
  box-shadow:0 12px 30px rgba(10,28,52,.07);
  backdrop-filter:var(--tmc-blur);
}

.tmc24-hero{
  padding:56px 0 82px;
  isolation:isolate;
  background:
    radial-gradient(circle at 7% 14%, rgba(255,255,255,.92), rgba(255,255,255,0) 29%),
    radial-gradient(circle at 78% 12%, rgba(74,144,255,.21), rgba(74,144,255,0) 28%),
    radial-gradient(circle at 58% 82%, rgba(143,196,255,.20), rgba(143,196,255,0) 34%),
    linear-gradient(180deg,#fbfdff 0%,#edf4fb 100%);
}
.tmc24-hero:before{
  width:380px;height:380px;left:2%;top:4%;
  background:radial-gradient(circle,rgba(255,255,255,.90),rgba(255,255,255,0) 70%);
  filter:blur(18px);opacity:.78;
}
.tmc24-hero:after{
  right:-7%;top:4%;width:460px;height:460px;
  background:radial-gradient(circle,rgba(23,107,255,.16),rgba(23,107,255,0) 70%);
  filter:blur(20px);opacity:.9;
}
.tmc24-hero__layout{gap:38px;align-items:center}.tmc24-hero__copy{
  max-width:600px;padding:34px 34px 36px;border-radius:34px;
  background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(255,255,255,.46));
  border:1px solid var(--tmc-glass-line);
  box-shadow:var(--tmc-glass-shadow);
  backdrop-filter:var(--tmc-blur);
}
.tmc24-hero__copy:before{border-radius:33px;background:linear-gradient(145deg,rgba(255,255,255,.34),rgba(255,255,255,0) 56%)}
.tmc24-hero h1{font-size:clamp(46px,5.25vw,78px);line-height:.94;margin-top:20px;color:#061523}.tmc24-hero__cash{color:#0f62f0;background:rgba(23,107,255,.075);border-color:rgba(23,107,255,.14);font-weight:650}.tmc24-hero__desc{color:#53647b;font-size:17px;line-height:1.62}.tmc24-hero__features{gap:10px;color:#243247;font-weight:520}.tmc24-hero__features span{background:rgba(255,255,255,.58);border-color:rgba(255,255,255,.76);box-shadow:0 12px 28px rgba(10,28,52,.055);backdrop-filter:blur(18px) saturate(150%)}
.tmc24-hero__media{
  min-height:540px;border-radius:36px;
  background:linear-gradient(145deg,rgba(255,255,255,.64),rgba(255,255,255,.34));
  border:1px solid rgba(255,255,255,.74);
  box-shadow:0 34px 96px rgba(10,28,52,.16);
}
.tmc24-hero__media img{padding:10px;border-radius:34px}.tmc24-price-float{background:rgba(255,255,255,.64);border-color:rgba(255,255,255,.82);box-shadow:0 20px 48px rgba(10,28,52,.13)}.tmc24-price-float b{font-weight:730;color:#0f62f0}

.tmc24-stats,.tmc24-tabs,.tmc24-card,.woocommerce ul.products li.product,.tmc25-functional-buy-panel,.tmc24-buy-panel,.tmc24-product-box,.tmc25-product-box{
  backdrop-filter:var(--tmc-blur);
  -webkit-backdrop-filter:var(--tmc-blur);
}
.tmc24-stats{border-radius:26px;background:linear-gradient(135deg,rgba(6,19,35,.78),rgba(15,35,62,.68));box-shadow:0 26px 74px rgba(10,28,52,.18)}
.tmc24-tabs{border-radius:999px;background:rgba(255,255,255,.58);border-color:rgba(255,255,255,.76);box-shadow:0 22px 54px rgba(10,28,52,.08)}
.tmc24-tabs a{color:#25344a}.tmc24-tabs a.is-active{background:rgba(255,255,255,.68);color:#0f62f0;box-shadow:inset 0 0 0 1px rgba(23,107,255,.10)}

.tmc24-card,.woocommerce ul.products li.product{
  border-radius:28px!important;
  background:linear-gradient(152deg,rgba(255,255,255,.78),rgba(255,255,255,.54))!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:0 22px 66px rgba(10,28,52,.10)!important;
}
.tmc24-card:before,.woocommerce ul.products li.product:before{height:140px;border-radius:28px 28px 0 0;background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,0))}.tmc24-card:hover,.woocommerce ul.products li.product:hover{transform:translateY(-6px);box-shadow:0 34px 90px rgba(10,28,52,.15)!important;border-color:rgba(196,223,255,.92)!important}.tmc24-card__media{background:linear-gradient(180deg,#e6eef8,#d8e5f3)}.tmc24-card__body{margin:-16px 12px 12px;padding:17px;border-radius:24px;background:linear-gradient(160deg,rgba(255,255,255,.76),rgba(255,255,255,.56));border:1px solid rgba(255,255,255,.78);box-shadow:0 18px 44px rgba(10,28,52,.075)}.tmc24-card__desc{color:#627187;line-height:1.55}.tmc24-card__cash{font-weight:600;color:#31506d;background:rgba(255,255,255,.48);border-color:rgba(23,107,255,.12)}.tmc24-card__meta div{background:rgba(255,255,255,.52);border-color:rgba(255,255,255,.68)}.tmc24-card__footer .tmc24-btn{border-radius:16px}.tmc24-icon-action{border-radius:16px;background:rgba(255,255,255,.56);border-color:rgba(255,255,255,.78)}

.tmc24-card.is-instant{background:linear-gradient(160deg,rgba(10,28,48,.88),rgba(13,34,57,.78))!important;border-color:rgba(255,255,255,.12)!important}.tmc24-card.is-instant .tmc24-card__body{background:linear-gradient(160deg,rgba(18,43,68,.74),rgba(8,25,42,.56));border-color:rgba(255,255,255,.13)}.tmc24-card.is-instant h3,.tmc24-card.is-instant .tmc24-card__meta strong{color:#fff}.tmc24-card.is-instant .tmc24-card__desc{color:#c4d2e3}.tmc24-card.is-instant .tmc24-card__meta div{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}

.tmc25-functional-buy-panel,.tmc24-buy-panel{background:linear-gradient(155deg,rgba(255,255,255,.78),rgba(255,255,255,.56));border-color:rgba(255,255,255,.78);box-shadow:0 30px 86px rgba(10,28,52,.12)}.tmc25-buy-step{background:rgba(255,255,255,.48);border-color:rgba(255,255,255,.68)}.tmc24-product-box,.tmc25-product-box{background:linear-gradient(155deg,rgba(255,255,255,.72),rgba(255,255,255,.52));border-color:rgba(255,255,255,.76)}

@media (max-width: 767px){
  .tmc24-hero{padding:0 0 22px}.tmc24-hero__copy{margin-top:-34px;padding:20px 16px 18px;border-radius:26px}.tmc24-hero h1{font-size:clamp(38px,11vw,48px);line-height:.96}.tmc24-hero__desc{font-size:15px;line-height:1.55}.tmc24-card,.woocommerce ul.products li.product{border-radius:24px!important}.tmc24-card__body{border-radius:20px}.tmc24-tabs a{font-size:13px;font-weight:560}
}


/* Step 030 — shortcode page glass/readability fix.
   The live/instant/result pages render plugin shortcodes, not the home-page theme card markup.
   This scoped layer prevents the plugin's light surfaces from inheriting old white text variables. */
.tmc24-theme .tmc24-page-hero{
  position:relative;
  overflow:hidden;
  padding:54px 0 38px;
  color:#081522;
  background:
    radial-gradient(circle at 12% 8%, rgba(255,255,255,.94), transparent 36%),
    radial-gradient(circle at 88% 0%, rgba(91,157,255,.18), transparent 34%),
    linear-gradient(180deg, rgba(249,252,255,.96), rgba(236,244,253,.88));
  border-bottom:1px solid rgba(184,202,226,.46);
}
.tmc24-theme .tmc24-page-hero:before{
  content:"";
  position:absolute;
  inset:10px 3% auto auto;
  width:360px;
  height:220px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(23,107,255,.13), rgba(23,107,255,0) 70%);
  filter:blur(18px);
  pointer-events:none;
}
.tmc24-theme .tmc24-page-hero .tmc24-container{position:relative;z-index:1}
.tmc24-theme .tmc24-page-hero h1{
  color:#081522!important;
  margin:14px 0 8px;
  font-size:clamp(42px,5vw,70px);
  line-height:.96;
  font-weight:740;
  text-transform:none;
  letter-spacing:-.065em;
}
.tmc24-theme .tmc24-page-hero p{color:#5b6b82!important;font-weight:430;line-height:1.62}

.tmc24-theme .tmc-competition-grid,
.tmc24-theme .tmc-winner-list,
.tmc24-theme .tmc-single-competition-layout,
.tmc24-theme .tmc-ticket-picker,
.tmc24-theme .tmc-table,
.tmc24-theme .tmc-empty{
  --tmc-text:#081522;
  --tmc-muted:#5f7087;
  --tmc-surface:rgba(255,255,255,.78);
  --tmc-surface-2:rgba(255,255,255,.58);
  --tmc-border:rgba(182,202,226,.58);
  --tmc-accent:#176bff;
  --tmc-accent-2:#67bbff;
}
.tmc24-theme .tmc-competition-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:24px!important;
  margin:26px 0 0!important;
}
.tmc24-theme .tmc-competition-card--production{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-width:0;
  border-radius:28px!important;
  color:#081522!important;
  background:linear-gradient(152deg,rgba(255,255,255,.82),rgba(255,255,255,.60))!important;
  border:1px solid rgba(255,255,255,.82)!important;
  box-shadow:0 24px 70px rgba(10,28,52,.115)!important;
  backdrop-filter:blur(24px) saturate(165%);
  -webkit-backdrop-filter:blur(24px) saturate(165%);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.tmc24-theme .tmc-competition-card--production:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:138px;
  background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,0));
  pointer-events:none;
  z-index:2;
}
.tmc24-theme .tmc-competition-card--production:hover{
  transform:translateY(-5px);
  border-color:rgba(197,224,255,.92)!important;
  box-shadow:0 34px 92px rgba(10,28,52,.16)!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-image{
  position:relative;
  display:block;
  aspect-ratio:1.34/1;
  background:linear-gradient(180deg,#e6eef8,#d9e6f4)!important;
  overflow:hidden;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-image__shade{
  background:linear-gradient(180deg,rgba(5,16,31,.04),rgba(5,16,31,.08))!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-body{
  position:relative;
  z-index:3;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:-12px 12px 12px;
  padding:16px;
  border-radius:24px;
  background:linear-gradient(160deg,rgba(255,255,255,.84),rgba(255,255,255,.66))!important;
  border:1px solid rgba(255,255,255,.82)!important;
  box-shadow:0 18px 44px rgba(10,28,52,.08)!important;
  backdrop-filter:blur(20px) saturate(155%);
  -webkit-backdrop-filter:blur(20px) saturate(155%);
}
.tmc24-theme .tmc-competition-card--production .tmc-card-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-badge{
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  color:#0d1725!important;
  background:linear-gradient(135deg,#ffc84a,#ff7a1a)!important;
  box-shadow:0 10px 24px rgba(255,122,26,.20)!important;
  font-size:11px;
  font-weight:720;
  letter-spacing:.015em;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-draw-label{
  margin:0!important;
  color:#d78300!important;
  background:transparent!important;
  padding:0!important;
  font-size:12px;
  font-weight:620;
}
.tmc24-theme .tmc-competition-card--production h3{
  min-height:44px;
  margin:4px 0 0!important;
  font-size:20px;
  line-height:1.12;
  font-weight:700;
  letter-spacing:-.045em;
}
.tmc24-theme .tmc-competition-card--production h3,
.tmc24-theme .tmc-competition-card--production h3 a{
  color:#081522!important;
  text-decoration:none!important;
  text-shadow:none!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-progress{
  height:10px;
  background:rgba(230,237,246,.86)!important;
  border:0!important;
  border-radius:999px;
  overflow:hidden;
}
.tmc24-theme .tmc-competition-card--production .tmc-progress-bar{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#ffc84a,#ff7a1a)!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin:6px 0!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span{
  display:block;
  min-width:0;
  padding:10px 9px;
  border-radius:15px;
  color:#65758d!important;
  background:rgba(255,255,255,.56)!important;
  border:1px solid rgba(198,215,235,.68)!important;
  font-size:12px;
  font-weight:430;
  line-height:1.25;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong{
  display:block;
  margin-top:4px;
  color:#0d1b2d!important;
  font-size:13px;
  font-weight:620;
  line-height:1.18;
  white-space:normal;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-cash,
.tmc24-theme .tmc-competition-card--production .tmc-card-instant{
  margin:2px 0 0!important;
  color:#5f7087!important;
  font-size:13px;
  font-weight:430;
  line-height:1.35;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-cta{
  margin-top:auto!important;
  min-height:46px;
  border-radius:15px;
  color:#0f62f0!important;
  background:rgba(255,255,255,.54)!important;
  border:1px solid rgba(23,107,255,.82)!important;
  box-shadow:0 12px 28px rgba(23,107,255,.08)!important;
  font-size:15px;
  font-weight:700;
  text-decoration:none!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-cta:hover{
  color:#fff!important;
  background:linear-gradient(135deg,#1d8cff,#176bff)!important;
}

.tmc24-theme .tmc-table,
.tmc24-theme .tmc-winner-card,
.tmc24-theme .tmc-single-panel,
.tmc24-theme .tmc-competition-summary,
.tmc24-theme .tmc-competition-question,
.tmc24-theme .tmc-free-entry-route,
.tmc24-theme .tmc-ticket-picker,
.tmc24-theme .tmc-empty{
  color:#081522!important;
  background:linear-gradient(152deg,rgba(255,255,255,.82),rgba(255,255,255,.62))!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:0 20px 60px rgba(10,28,52,.09)!important;
  backdrop-filter:blur(22px) saturate(160%);
  -webkit-backdrop-filter:blur(22px) saturate(160%);
}
.tmc24-theme .tmc-table th,
.tmc24-theme .tmc-table td{color:#081522!important;border-bottom-color:rgba(182,202,226,.50)!important}
.tmc24-theme .tmc-winner-card p,
.tmc24-theme .tmc-single-panel p,
.tmc24-theme .tmc-empty{color:#5f7087!important}
.tmc24-theme .tmc-ticket-cell{background:rgba(255,255,255,.62)!important;color:#101828!important;border-color:rgba(182,202,226,.62)!important}
.tmc24-theme .tmc-ticket-cell.is-available{background:rgba(38,208,124,.12)!important;border-color:rgba(38,208,124,.45)!important}
.tmc24-theme .tmc-ticket-cell.is-selected{background:#176bff!important;color:#fff!important;border-color:#176bff!important}

.tmc24-theme .tmc25-free-entry-callout{
  position:relative;
  overflow:hidden;
  margin:18px 0;
  padding:18px;
  border-radius:22px;
  color:#081522;
  background:linear-gradient(152deg,rgba(255,255,255,.86),rgba(255,255,255,.62))!important;
  border:1px solid rgba(255,255,255,.82)!important;
  box-shadow:0 18px 50px rgba(10,28,52,.10)!important;
  backdrop-filter:blur(22px) saturate(160%);
  -webkit-backdrop-filter:blur(22px) saturate(160%);
}
.tmc24-theme .tmc25-free-entry-callout:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(180deg,#ffc84a,#ff7a1a);
}
.tmc24-theme .tmc25-free-entry-callout__eyebrow{
  display:inline-flex;
  min-height:28px;
  align-items:center;
  padding:0 10px;
  border-radius:999px;
  color:#3d2700;
  background:linear-gradient(135deg,#ffe39a,#ffc84a);
  font-size:11px;
  font-weight:760;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.tmc24-theme .tmc25-free-entry-callout h2{
  margin:12px 0 8px!important;
  color:#081522!important;
  font-size:22px!important;
  line-height:1.05!important;
  letter-spacing:-.04em!important;
}
.tmc24-theme .tmc25-free-entry-callout p{
  margin:0 0 13px!important;
  color:#5f7087!important;
  font-size:14px;
  line-height:1.52;
}
.tmc24-theme .tmc25-free-entry-callout__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 14px;
  border-radius:13px;
  color:#0f62f0!important;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(23,107,255,.36);
  font-size:14px;
  font-weight:720;
  text-decoration:none!important;
}
.tmc24-theme .tmc25-free-entry-callout__link:hover{
  color:#fff!important;
  background:linear-gradient(135deg,#1d8cff,#176bff);
}
.tmc24-theme .tmc25-free-entry-callout--details{
  margin:0;
  height:100%;
}

@media (max-width: 1180px){
  .tmc24-theme .tmc-competition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width: 860px){
  .tmc24-theme .tmc24-page-hero{padding:38px 0 28px}
  .tmc24-theme .tmc-competition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
  .tmc24-theme .tmc-competition-card--production .tmc-card-body{margin:-10px 10px 10px;padding:13px;border-radius:20px}
  .tmc24-theme .tmc-competition-card--production h3{font-size:16px;min-height:38px}
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span:nth-child(3){grid-column:1/-1}
}
@media (max-width: 430px){
  .tmc24-theme .tmc-competition-grid{gap:11px!important}
  .tmc24-theme .tmc-competition-card--production{border-radius:22px!important}
  .tmc24-theme .tmc-competition-card--production .tmc-card-image{aspect-ratio:1/1}
  .tmc24-theme .tmc-competition-card--production .tmc-card-badge{font-size:9px;min-height:25px;padding:0 9px}
  .tmc24-theme .tmc-competition-card--production .tmc-card-draw-label{font-size:10px}
  .tmc24-theme .tmc-competition-card--production h3{font-size:14px;min-height:34px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{grid-template-columns:1fr}
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span:nth-child(3){display:none}
  .tmc24-theme .tmc-competition-card--production .tmc-card-cash{display:none}
}

/* Step 031 — card grid stability/readability fix.
   This layer keeps the existing visual design and only corrects the responsive grid,
   card stretching, stat columns, and price wrapping on narrow screens. */
.tmc24-theme .tmc24-grid,
.tmc24-theme .woocommerce ul.products,
.tmc24-theme .products,
.tmc24-theme .tmc-competition-grid{
  align-items:stretch!important;
}
.tmc24-theme .tmc24-card,
.tmc24-theme .woocommerce ul.products li.product,
.tmc24-theme .tmc-competition-card--production{
  height:100%;
  min-width:0;
}
.tmc24-theme .tmc24-card{
  display:flex!important;
  flex-direction:column;
}
.tmc24-theme .tmc24-card__media{
  flex:0 0 auto;
}
.tmc24-theme .tmc24-card__body{
  flex:1 1 auto;
  display:flex!important;
  flex-direction:column;
}
.tmc24-theme .tmc24-card__footer,
.tmc24-theme .tmc-competition-card--production .tmc-card-cta{
  margin-top:auto!important;
}
.tmc24-theme .tmc24-card__meta,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{
  min-width:0;
}
.tmc24-theme .tmc24-card__meta div,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span{
  min-width:0;
  overflow:hidden;
}
.tmc24-theme .tmc24-card__meta strong,
.tmc24-theme .tmc24-card__meta strong *,
.tmc24-theme .tmc24-card__meta strong bdi,
.tmc24-theme .tmc24-card__meta .woocommerce-Price-amount,
.tmc24-theme .tmc24-card__meta .woocommerce-Price-currencySymbol,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong,
.tmc24-theme .tmc24-product__price,
.tmc24-theme .tmc24-product__price *,
.tmc24-theme .tmc24-mobile-buy strong,
.tmc24-theme .tmc24-mobile-buy strong *{
  white-space:nowrap!important;
}
.tmc24-theme .tmc24-card__meta strong,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong{
  overflow:hidden;
  text-overflow:ellipsis;
}
.tmc24-theme .tmc24-card__badges{
  flex-wrap:nowrap;
}
.tmc24-theme .tmc24-tag{
  max-width:calc(50% - 4px);
  overflow:hidden;
  text-overflow:ellipsis;
}
.tmc24-theme .tmc24-tag--dark{
  margin-left:auto;
}
@media (min-width: 1181px){
  .tmc24-theme .tmc24-grid,
  .tmc24-theme .woocommerce ul.products,
  .tmc24-theme .products,
  .tmc24-theme .tmc-competition-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}
@media (max-width: 1180px) and (min-width: 861px){
  .tmc24-theme .tmc24-grid,
  .tmc24-theme .woocommerce ul.products,
  .tmc24-theme .products,
  .tmc24-theme .tmc-competition-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width: 860px) and (min-width: 641px){
  .tmc24-theme .tmc24-grid,
  .tmc24-theme .woocommerce ul.products,
  .tmc24-theme .products,
  .tmc24-theme .tmc-competition-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
}
@media (max-width: 640px){
  .tmc24-theme .tmc24-grid,
  .tmc24-theme .woocommerce ul.products,
  .tmc24-theme .products,
  .tmc24-theme .tmc-competition-grid{
    grid-template-columns:minmax(0,1fr)!important;
    width:min(100%,390px);
    margin-left:auto!important;
    margin-right:auto!important;
    gap:18px!important;
  }
  .tmc24-theme .tmc24-card,
  .tmc24-theme .tmc-competition-card--production{
    border-radius:26px!important;
  }
  .tmc24-theme .tmc24-card__media{
    aspect-ratio:1.22/1!important;
  }
  .tmc24-theme .tmc24-card__badges{
    top:12px;
    left:12px;
    right:12px;
    gap:8px;
  }
  .tmc24-theme .tmc24-tag{
    min-height:30px;
    padding:0 12px;
    font-size:11px;
    letter-spacing:-.005em;
  }
  .tmc24-theme .tmc24-card__body{
    gap:10px!important;
    padding:16px!important;
  }
  .tmc24-theme .tmc24-card h3{
    min-height:auto!important;
    font-size:20px!important;
    line-height:1.08!important;
    -webkit-line-clamp:2;
  }
  .tmc24-theme .tmc24-card__desc{
    display:block!important;
    min-height:auto!important;
    font-size:13px!important;
    line-height:1.42!important;
  }
  .tmc24-theme .tmc24-card__cash{
    display:inline-flex!important;
    align-items:center;
    width:max-content;
    max-width:100%;
    min-height:32px;
    padding:0 12px;
    border-radius:999px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .tmc24-theme .tmc24-card__meta{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .tmc24-theme .tmc24-card__meta div:nth-child(3){
    display:block!important;
    grid-column:auto!important;
  }
  .tmc24-theme .tmc24-card__meta div{
    padding:10px 8px!important;
    text-align:left;
  }
  .tmc24-theme .tmc24-card__meta span{
    font-size:10px!important;
  }
  .tmc24-theme .tmc24-card__meta strong{
    font-size:14px!important;
    line-height:1.12!important;
  }
  .tmc24-theme .tmc24-progress{
    height:8px!important;
  }
  .tmc24-theme .tmc24-card__footer{
    grid-template-columns:minmax(0,1fr) 54px!important;
    gap:10px!important;
  }
  .tmc24-theme .tmc24-card__footer .tmc24-btn{
    min-height:50px!important;
    border-radius:16px!important;
    font-size:15px!important;
  }
  .tmc24-theme .tmc24-icon-action{
    display:grid!important;
    min-height:50px!important;
    border-radius:16px!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-image{
    aspect-ratio:1.22/1!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-body{
    margin:-14px 12px 12px!important;
    padding:16px!important;
    border-radius:22px!important;
    gap:10px!important;
  }
  .tmc24-theme .tmc-competition-card--production h3{
    min-height:auto!important;
    font-size:20px!important;
    line-height:1.08!important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span:nth-child(3){
    display:block!important;
    grid-column:auto!important;
    padding:10px 8px!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong{
    font-size:13px!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-cash{
    display:block!important;
  }
}
@media (max-width: 360px){
  .tmc24-theme .tmc24-card__meta,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .tmc24-theme .tmc24-card__meta div,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span{
    padding:8px 6px!important;
  }
  .tmc24-theme .tmc24-card__meta strong,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong{
    font-size:12px!important;
  }
  .tmc24-theme .tmc24-card__footer{
    grid-template-columns:minmax(0,1fr) 48px!important;
  }
}

/* Step 032 — verified grid-only correction.
   This final layer intentionally keeps the visual design and only fixes the card grid, column widths,
   currency wrapping, CTA alignment, and shortcode/WooCommerce card consistency. It is placed last so
   older responsive rules cannot reintroduce cramped two-column mobile cards or broken £ price lines. */
.tmc24-theme .tmc24-grid,
.tmc24-theme .woocommerce ul.products,
.tmc24-theme .products,
.tmc24-theme .tmc-competition-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
.tmc24-theme .tmc24-card,
.tmc24-theme .woocommerce ul.products li.product,
.tmc24-theme .tmc-competition-card,
.tmc24-theme .tmc-competition-card--production{
  width:100%!important;
  min-width:0!important;
  height:100%!important;
}
.tmc24-theme .tmc24-card,
.tmc24-theme .tmc-competition-card--production{
  display:flex!important;
  flex-direction:column!important;
}
.tmc24-theme .tmc24-card__body,
.tmc24-theme .tmc-competition-card--production .tmc-card-body{
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
}
.tmc24-theme .tmc24-card__footer,
.tmc24-theme .tmc-competition-card--production .tmc-card-cta{
  margin-top:auto!important;
}
.tmc24-theme .tmc24-card__meta,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
  min-width:0!important;
}
.tmc24-theme .tmc24-card__meta div,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span:nth-child(3){
  display:block!important;
  grid-column:auto!important;
  min-width:0!important;
  overflow:hidden!important;
}
.tmc24-theme .tmc24-card__meta strong,
.tmc24-theme .tmc24-card__meta strong *,
.tmc24-theme .tmc24-card__meta strong bdi,
.tmc24-theme .tmc24-card__meta .amount,
.tmc24-theme .tmc24-card__meta .woocommerce-Price-amount,
.tmc24-theme .tmc24-card__meta .woocommerce-Price-amount bdi,
.tmc24-theme .tmc24-card__meta .woocommerce-Price-currencySymbol,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong,
.tmc24-theme .tmc24-product__price,
.tmc24-theme .tmc24-product__price *,
.tmc24-theme .woocommerce ul.products li.product .price,
.tmc24-theme .woocommerce ul.products li.product .price *,
.tmc24-theme .tmc24-mobile-buy strong,
.tmc24-theme .tmc24-mobile-buy strong *{
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
}
.tmc24-theme .tmc24-card__meta .amount,
.tmc24-theme .tmc24-card__meta .woocommerce-Price-amount,
.tmc24-theme .tmc24-card__meta .woocommerce-Price-amount bdi,
.tmc24-theme .tmc24-card__meta .woocommerce-Price-currencySymbol,
.tmc24-theme .woocommerce ul.products li.product .price .amount,
.tmc24-theme .woocommerce ul.products li.product .price .woocommerce-Price-amount,
.tmc24-theme .woocommerce ul.products li.product .price .woocommerce-Price-amount bdi,
.tmc24-theme .woocommerce ul.products li.product .price .woocommerce-Price-currencySymbol{
  display:inline!important;
  vertical-align:baseline!important;
}
.tmc24-theme .tmc24-card__meta strong,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.tmc24-theme .tmc24-card__footer{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 54px!important;
  gap:10px!important;
  align-items:stretch!important;
}
.tmc24-theme .tmc24-card__footer .tmc24-btn,
.tmc24-theme .tmc24-icon-action{
  min-height:50px!important;
}
@media (min-width:1380px){
  .tmc24-theme .tmc24-grid,
  .tmc24-theme .woocommerce ul.products,
  .tmc24-theme .products,
  .tmc24-theme .tmc-competition-grid{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important;
  }
}
@media (max-width:760px){
  .tmc24-theme .tmc24-grid,
  .tmc24-theme .woocommerce ul.products,
  .tmc24-theme .products,
  .tmc24-theme .tmc-competition-grid{
    grid-template-columns:minmax(0,1fr)!important;
    width:min(100%,420px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    gap:18px!important;
  }
  .tmc24-theme .tmc24-card__media,
  .tmc24-theme .tmc-competition-card--production .tmc-card-image{
    aspect-ratio:1.22/1!important;
  }
  .tmc24-theme .tmc24-card__body,
  .tmc24-theme .tmc-competition-card--production .tmc-card-body{
    padding:16px!important;
  }
  .tmc24-theme .tmc24-card h3,
  .tmc24-theme .tmc-competition-card--production h3{
    min-height:auto!important;
    font-size:20px!important;
    line-height:1.08!important;
  }
  .tmc24-theme .tmc24-card__cash,
  .tmc24-theme .tmc-competition-card--production .tmc-card-cash{
    display:block!important;
  }
}
@media (max-width:390px){
  .tmc24-theme .tmc24-card__meta,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{
    gap:6px!important;
  }
  .tmc24-theme .tmc24-card__meta div,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span:nth-child(3){
    padding:8px 6px!important;
  }
  .tmc24-theme .tmc24-card__meta span,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span{
    font-size:10px!important;
  }
  .tmc24-theme .tmc24-card__meta strong,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong{
    font-size:12px!important;
  }
  .tmc24-theme .tmc24-card__footer{
    grid-template-columns:minmax(0,1fr) 48px!important;
  }
}

/* Step 034 — shortcode card grid correction only.
   Fixes the Instant Wins / Live Draws shortcode pages where one card was stretched to full page width.
   Keeps the existing glass design, colours, typography and card UI, but forces sane grid tracks,
   prevents currency wrapping, and keeps image/body proportions stable across desktop and mobile. */
.tmc24-theme .tmc24-section .tmc-competition-grid,
.tmc24-theme .tmc-competition-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(280px,292px))!important;
  justify-content:center!important;
  align-items:stretch!important;
  gap:24px!important;
  width:100%!important;
  max-width:100%!important;
  margin:24px auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.tmc24-theme .tmc-competition-grid > .tmc-competition-card,
.tmc24-theme .tmc-competition-grid > .tmc-competition-card--production{
  width:100%!important;
  max-width:292px!important;
  min-width:0!important;
  justify-self:stretch!important;
  align-self:stretch!important;
}
.tmc24-theme .tmc-competition-card--production{
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  border-radius:26px!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-image{
  width:100%!important;
  max-width:100%!important;
  aspect-ratio:1.22/1!important;
  min-height:0!important;
  max-height:240px!important;
  flex:0 0 auto!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-image img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-body{
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  margin:-16px 12px 12px!important;
  padding:16px!important;
  border-radius:22px!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-body h3{
  min-height:auto!important;
  margin:10px 0 10px!important;
  font-size:19px!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-topline{
  gap:8px!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-badge,
.tmc24-theme .tmc-competition-card--production .tmc-card-draw-label{
  max-width:100%!important;
  white-space:nowrap!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-progress{
  width:100%!important;
  height:8px!important;
  margin:10px 0 12px!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  width:100%!important;
  margin:12px 0!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span:nth-child(3){
  display:block!important;
  grid-column:auto!important;
  min-width:0!important;
  padding:9px 7px!important;
  overflow:hidden!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong,
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong *,
.tmc24-theme .tmc-competition-card--production .tmc-card-price,
.tmc24-theme .tmc-competition-card--production .tmc-card-price *,
.tmc24-theme .tmc-competition-card--production .amount,
.tmc24-theme .tmc-competition-card--production .woocommerce-Price-amount,
.tmc24-theme .tmc-competition-card--production .woocommerce-Price-amount bdi,
.tmc24-theme .tmc-competition-card--production .woocommerce-Price-currencySymbol{
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  font-variant-numeric:tabular-nums!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:13px!important;
  line-height:1.15!important;
}
.tmc24-theme .tmc-competition-card--production .tmc-card-cta{
  margin-top:auto!important;
  width:100%!important;
  min-height:48px!important;
  border-radius:16px!important;
}
@media (min-width:1540px){
  .tmc24-theme .tmc24-section .tmc-competition-grid,
  .tmc24-theme .tmc-competition-grid{
    grid-template-columns:repeat(auto-fill,minmax(292px,312px))!important;
  }
  .tmc24-theme .tmc-competition-grid > .tmc-competition-card,
  .tmc24-theme .tmc-competition-grid > .tmc-competition-card--production{
    max-width:312px!important;
  }
}
@media (max-width:1180px){
  .tmc24-theme .tmc24-section .tmc-competition-grid,
  .tmc24-theme .tmc-competition-grid{
    grid-template-columns:repeat(auto-fill,minmax(270px,320px))!important;
  }
  .tmc24-theme .tmc-competition-grid > .tmc-competition-card,
  .tmc24-theme .tmc-competition-grid > .tmc-competition-card--production{
    max-width:320px!important;
  }
}
@media (max-width:760px){
  .tmc24-theme .tmc24-section .tmc-competition-grid,
  .tmc24-theme .tmc-competition-grid{
    grid-template-columns:minmax(0,1fr)!important;
    width:min(100%,420px)!important;
    max-width:420px!important;
    gap:18px!important;
  }
  .tmc24-theme .tmc-competition-grid > .tmc-competition-card,
  .tmc24-theme .tmc-competition-grid > .tmc-competition-card--production{
    max-width:420px!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-image{
    aspect-ratio:1.22/1!important;
    max-height:none!important;
  }
}
@media (max-width:390px){
  .tmc24-theme .tmc24-section .tmc-competition-grid,
  .tmc24-theme .tmc-competition-grid{
    width:100%!important;
    max-width:100%!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-body{
    margin:-14px 10px 10px!important;
    padding:15px!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-body h3{
    font-size:18px!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row{
    gap:6px!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span,
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span:nth-child(3){
    padding:8px 5px!important;
  }
  .tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong{
    font-size:12px!important;
  }
}


/* Step 041 — All Competitions archive correction.
   This keeps the existing glass card design and fixes only the WooCommerce shop/archive wording and grid behavior.
   The public /shop/ page is now presented as the All Competitions storefront instead of a generic WooCommerce shop. */
.tmc24-theme .tmc24-product-archive-hero .tmc24-kicker{
  color:#1877ff!important;
  border-color:rgba(24,119,255,.30)!important;
  background:rgba(255,255,255,.60)!important;
}
.tmc24-theme .tmc24-product-archive-hero h1{
  max-width:780px;
}
.tmc24-theme .tmc24-product-archive-section .woocommerce ul.products,
.tmc24-theme.woocommerce-shop ul.products,
.tmc24-theme.post-type-archive-product ul.products{
  float:none!important;
  clear:both!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(282px,1fr))!important;
  justify-content:start!important;
  align-items:stretch!important;
  gap:24px!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.tmc24-theme .tmc24-product-archive-section .woocommerce ul.products:before,
.tmc24-theme .tmc24-product-archive-section .woocommerce ul.products:after,
.tmc24-theme.woocommerce-shop ul.products:before,
.tmc24-theme.woocommerce-shop ul.products:after{
  content:none!important;
  display:none!important;
}
.tmc24-theme .tmc24-product-archive-section .woocommerce ul.products li.product,
.tmc24-theme.woocommerce-shop ul.products li.product,
.tmc24-theme.post-type-archive-product ul.products li.product{
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.tmc24-theme .tmc24-product-archive-section .tmc24-card{
  height:100%!important;
}
@media (min-width:1180px){
  .tmc24-theme .tmc24-product-archive-section .woocommerce ul.products,
  .tmc24-theme.woocommerce-shop ul.products,
  .tmc24-theme.post-type-archive-product ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}
@media (max-width:1179px) and (min-width:861px){
  .tmc24-theme .tmc24-product-archive-section .woocommerce ul.products,
  .tmc24-theme.woocommerce-shop ul.products,
  .tmc24-theme.post-type-archive-product ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:860px) and (min-width:641px){
  .tmc24-theme .tmc24-product-archive-section .woocommerce ul.products,
  .tmc24-theme.woocommerce-shop ul.products,
  .tmc24-theme.post-type-archive-product ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-width:640px){
  .tmc24-theme .tmc24-product-archive-section .woocommerce ul.products,
  .tmc24-theme.woocommerce-shop ul.products,
  .tmc24-theme.post-type-archive-product ul.products{
    grid-template-columns:minmax(0,1fr)!important;
    width:min(100%,420px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}
/* Instant Wins shortcode cards: cleaner storefront treatment. */
.tmc24-theme .tmc-competition-card--production{
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid rgba(216,226,239,.95)!important;
  box-shadow:0 18px 46px rgba(10,28,52,.10)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

.tmc24-theme .tmc-competition-card--production:before{
  display:none!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-image{
  aspect-ratio:1/1!important;
  border-radius:22px 22px 0 0!important;
  background:#f4f8fd!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-image img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  background:#f4f8fd!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-image__shade{
  display:none!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-body{
  margin:0!important;
  padding:18px!important;
  border-radius:0 0 22px 22px!important;
  background:#fff!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  gap:12px!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-topline{
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-badge{
  min-height:28px!important;
  padding:0 12px!important;
  color:#071426!important;
  background:linear-gradient(135deg,#ffd35a,#ff8a1c)!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:950!important;
  text-transform:uppercase!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-draw-label{
  color:#b45b00!important;
  font-size:12px!important;
  font-weight:850!important;
}

.tmc24-theme .tmc-competition-card--production h3{
  min-height:0!important;
  margin:0!important;
  font-size:20px!important;
  line-height:1.08!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row span{
  padding:10px!important;
  border-radius:12px!important;
  background:#f4f8fd!important;
  border:1px solid #dfe8f4!important;
  color:#657389!important;
  font-size:11px!important;
  font-weight:800!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-meta-row strong{
  color:#071426!important;
  font-size:12px!important;
  font-weight:950!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-instant{
  display:inline-flex!important;
  align-self:flex-start!important;
  margin:0!important;
  min-height:28px!important;
  padding:0 11px!important;
  border-radius:999px!important;
  background:#fff7ed!important;
  border:1px solid #fed7aa!important;
  color:#9a3412!important;
  font-size:12px!important;
  font-weight:900!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-cash{
  margin:0!important;
  color:#53647c!important;
  font-size:13px!important;
  font-weight:750!important;
}

.tmc24-theme .tmc-competition-card--production .tmc-card-cta{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:48px!important;
  margin-top:auto!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#1d8cff,#1665f5)!important;
  border:0!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(24,119,255,.24)!important;
  font-size:15px!important;
  font-weight:950!important;
}

.tmc24-theme .tmc-competition-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(280px,320px))!important;
  justify-content:start!important;
  align-items:start!important;
  gap:24px!important;
  margin:0!important;
}

.tmc24-theme .tmc24-page-hero + .tmc24-section .tmc24-container{
  display:block!important;
}

/* Step 043 — homepage image-only fallback hero and animated stat polish. */
.tmc24-hero__media img,
.tmc24-hero__media video{
  object-fit:var(--tmc-hero-fit, cover)!important;
  object-position:var(--tmc-hero-position, center center)!important;
  image-rendering:auto;
  backface-visibility:hidden;
  transform:translateZ(0);
}
.tmc24-hero--image-only .tmc24-hero__layout{display:block;max-width:none;width:100%;padding:0;}
.tmc24-hero--image-only .tmc24-hero__media{display:block;width:100%;min-height:520px;border-radius:0;box-shadow:none;border:0;background:#eef3f9;}
.tmc24-hero--image-only .tmc24-hero__media:before,
.tmc24-hero--image-only .tmc24-hero__media:after{display:none!important;content:none!important;}
.tmc24-hero--image-only .tmc24-hero__media img,
.tmc24-hero--image-only .tmc24-hero__media video{padding:0!important;border-radius:0!important;width:100%;height:100%;}
.tmc24-stat [data-tmc-count-to]{font-variant-numeric:tabular-nums;will-change:contents;}
.tmc24-stat.is-counting b{letter-spacing:-.035em;}
@media (prefers-reduced-motion: reduce){
  .tmc24-stat [data-tmc-count-to]{transition:none!important;}
}

/* Step 044 — fallback hero controls when the non-slider hero is used. */
.tmc44-hero-no-text .tmc24-hero__copy,
.tmc44-hero-no-text .tmc24-price-float,
.tmc44-hero-no-text .tmc24-hero__media:before,
.tmc44-hero-no-text .tmc24-hero__media:after,
.tmc44-hero-no-stats .tmc24-stats-wrap{display:none!important;content:none!important;}
.tmc44-hero-no-text .tmc24-hero__media img,
.tmc44-hero-no-text .tmc24-hero__media video,
.tmc24-hero__media img,
.tmc24-hero__media video{filter:none!important;transform:none!important;object-fit:var(--tmc-hero-fit, cover)!important;object-position:var(--tmc-hero-position, center center)!important;}
.tmc44-hero-no-text .tmc24-hero__layout{display:block;max-width:none;width:100%;padding:0;}
.tmc44-hero-no-text .tmc24-hero__media{display:block;width:100%;min-height:560px;border-radius:0;box-shadow:none;border:0;}


/* Step 045 — hard fallback hero banner text switch. */
.tmc24-hero[data-tmc-hero-show-text="0"] .tmc24-hero__copy,
.tmc24-hero[data-tmc-hero-show-text="0"] .tmc24-price-float,
.tmc24-hero[data-tmc-hero-show-text="0"] .tmc24-hero__media:before,
.tmc24-hero[data-tmc-hero-show-text="0"] .tmc24-hero__media:after{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
.tmc24-hero[data-tmc-hero-show-text="0"] .tmc24-hero__media img,
.tmc24-hero[data-tmc-hero-show-text="0"] .tmc24-hero__media video{
  filter:none!important;
  transform:none!important;
  object-fit:var(--tmc-hero-fit,cover)!important;
  object-position:var(--tmc-hero-position,center center)!important;
}

/* TMC 0.47: rating/trustpilot toggle removes the rating cell from the homepage stats strip. */
.tmc24-stats-wrap--no-rating .tmc24-stats{grid-template-columns:repeat(3,minmax(0,1fr));}
.tmc47-no-rating-text .tmc24-stat--rating,
.tmc47-no-rating-text .tmc24-topbar__left,
.tmc47-no-rating-text .tmc35-trustpilot{display:none!important;visibility:hidden!important;content:none!important;}
@media(max-width:760px){.tmc24-stats-wrap--no-rating .tmc24-stats{grid-template-columns:1fr;}}

/* TMC 0.48: strict Trustpilot/rating toggle. The rating cell is never shown unless the saved option is exactly enabled. */
.tmc24-stats-wrap--no-rating .tmc24-stat--rating{display:none!important;visibility:hidden!important;content:none!important;}
body.tmc47-no-rating-text .tmc24-stat--rating,body.tmc47-no-rating-text .tmc24-topbar__left,body.tmc47-no-rating-text .tmc35-trustpilot{display:none!important;visibility:hidden!important;content:none!important;}

/* TMC 0.49 — blurred side-fill for image-only product banners. */
.tmc24-hero--blur-edges .tmc24-hero__media{position:relative;overflow:hidden;background:#0b1220;}
.tmc24-hero--blur-edges .tmc24-hero__media::before{content:"";position:absolute;inset:-42px;z-index:0;background-image:var(--tmc-hero-bg-image, none);background-size:cover;background-position:var(--tmc-hero-position, center center);background-repeat:no-repeat;filter:blur(34px) saturate(1.14);transform:scale(1.08);opacity:.95;}
.tmc24-hero--blur-edges .tmc24-hero__media img,.tmc24-hero--blur-edges .tmc24-hero__media video{position:relative;z-index:1;object-fit:contain!important;object-position:var(--tmc-hero-position,center center)!important;filter:none!important;transform:none!important;image-rendering:auto!important;}

/* TMC 0.71.1: canonical single CTA label. Prevent duplicate text nodes injected by old caches/scripts. */
.tmc24-card__footer .tmc24-btn > .tmc-real-price-label{display:none!important;}
.tmc24-card__footer .tmc24-btn > .tmc24-btn__label,
.tmc24-card__footer .tmc24-btn > span:not(.screen-reader-text):not(.tmc-real-price-label){
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  text-align:center!important;
}
