@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700;9..144,900&family=Inter:wght@400;500;600;700;800;900&display=swap');

/* ═══════════════════════════════════════════════════════════════════
   TOURNEYCOMMAND — TOURNAMENT SITE TEMPLATE
   tc-template-v6.css · consolidated 2026-07-22 (PayForm selectors
   rewritten against the live DOM, not inferred)
   Replaces: kit v1 block + FIXES 01 + FIXES 02. This is now the ONE
   file. Back up the current Additional CSS before pasting this over it.

   Covers: hero section (tc-hero-v2.json). Later sections append below
   the marker at the end of this file.

   TWO RULES THIS FILE OBEYS
   1. Content is visible without JavaScript. Animation only engages
      when tc-template.js has loaded and set html.tc-js.
   2. Elementor puts _css_classes on the widget WRAPPER, so widget
      styling uses descendant selectors (.tc-x .elementor-heading-title).

   Palette variables are rewritten per-site by the Factory (6 presets).
   ═══════════════════════════════════════════════════════════════════ */

/* ── palette + type tokens ─────────────────────────────────────── */
/* One page background. Sections are transparent unless they are a
   deliberate band — this is what removes the white seam the command
   bar was straddling (transparent section over Hello's white body). */
body{background:var(--tc-bg)}

:root{
  --tc-p:#1f6f6a;--tc-p2:#2f918a;--tc-deep:#123f3c;--tc-acc:#e0b357;
  --tc-ink:#13201f;--tc-mut:#4e5f5a;--tc-bg:#f5faf9;--tc-tint:#e0f0ee;
  --tc-onp:#ffffff;--tc-ona:#111111;
  --tc-fh:'Fraunces',Georgia,serif;--tc-fb:'Inter',system-ui,sans-serif;
  --tc-mx:70%;--tc-my:26%;
  --t2p:#1f6f6a;--t2p2:#2f918a;--t2deep:#123f3c;--t2acc:#e0b357;
  --t2ink:#13201f;--t2mut:#4e5f5a;--t2bg:#f5faf9;--t2paper:#f5faf9;
  --t2tint:#e0f0ee;--t2onacc:#111111;
  --t2fh:'Fraunces',Georgia,serif;--t2fb:'Inter',system-ui,sans-serif;
}
/* ── reveal (progressive enhancement) ──────────────────────────── */
.tc-reveal{opacity:1;transform:none}
html.tc-js .tc-reveal{opacity:0;transform:translateY(30px);
  transition:opacity .8s cubic-bezier(.16,1,.3,1),
             transform .8s cubic-bezier(.16,1,.3,1)}
html.tc-js .tc-reveal.tc-in{opacity:1;transform:none}
html.tc-js .tc-d1{transition-delay:.08s}
html.tc-js .tc-d2{transition-delay:.16s}
html.tc-js .tc-d3{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){
  html.tc-js .tc-reveal{opacity:1;transform:none;transition:none}
  .tc-hero::before{animation:none}
}

/* ── hero shell ────────────────────────────────────────────────── */
.tc-hero{position:relative;overflow:hidden;background:transparent}
.tc-hero::before{content:"";position:absolute;inset:-15%;z-index:0;pointer-events:none;
  background:
    radial-gradient(38% 46% at 80% 16%,color-mix(in srgb,var(--tc-acc) 26%,transparent),transparent 70%),
    radial-gradient(52% 60% at 70% 42%,color-mix(in srgb,var(--tc-p2) 30%,transparent),transparent 72%),
    radial-gradient(46% 52% at 12% 16%,color-mix(in srgb,var(--tc-p) 16%,transparent),transparent 70%);
  animation:tc-drift 22s ease-in-out infinite alternate}
@keyframes tc-drift{
  0%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(2%,-1.5%,0) scale(1.06)}
  100%{transform:translate3d(-2%,1%,0) scale(1.03)}}
.tc-hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  transition:background .2s;
  background:radial-gradient(300px 300px at var(--tc-mx) var(--tc-my),
    color-mix(in srgb,var(--tc-acc) 22%,transparent),transparent 70%)}

/* ghost year — watermark behind the copy */
.tc-ghost{position:absolute;top:2%;right:-2%;z-index:0;pointer-events:none;
  user-select:none;max-width:60%;overflow:hidden}
.tc-ghost .elementor-heading-title{font-family:var(--tc-fh);font-weight:900;
  font-size:clamp(120px,17vw,260px);line-height:.8;
  color:color-mix(in srgb,var(--tc-p) 5%,transparent)!important}
@media(max-width:1100px){.tc-ghost{display:none}}

/* ── hero layout ───────────────────────────────────────────────── */
.tc-hero-wrap{position:relative;z-index:2;max-width:1180px;width:100%;margin:0 auto;
  display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:start}
@media(max-width:900px){.tc-hero-wrap{grid-template-columns:1fr;gap:40px}}
.tc-hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:0}

/* ── hero type ─────────────────────────────────────────────────── */
.tc-pill .elementor-heading-title{display:inline-flex;align-items:center;gap:8px;
  font-family:var(--tc-fb);font-size:13px;font-weight:600;letter-spacing:.4px;
  color:var(--tc-p)!important;background:var(--tc-tint);
  padding:10px 20px;border-radius:999px;
  border:1px solid color-mix(in srgb,var(--tc-p) 18%,transparent)}

.tc-hero-h1{margin:22px 0 18px}
.tc-hero-h1 .elementor-heading-title{font-family:var(--tc-fh);font-weight:600;
  font-size:clamp(40px,5.4vw,66px);line-height:1.02;letter-spacing:-.02em;
  color:var(--tc-ink)!important}
.tc-hero-h1 .tc-accent{display:block;
  background:linear-gradient(120deg,var(--tc-p),var(--tc-p2));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

.tc-lede{margin-bottom:32px}
.tc-lede .elementor-widget-container p,
.tc-lede p{font-family:var(--tc-fb);font-size:clamp(17px,2vw,20px)!important;
  line-height:1.6!important;color:var(--tc-mut)!important;max-width:520px;margin:0}

/* ── buttons ───────────────────────────────────────────────────── */
.tc-cta-row{display:flex!important;flex-direction:row!important;
  gap:12px;flex-wrap:wrap;width:auto}
.tc-btn .elementor-button{font-family:var(--tc-fb);font-weight:700;font-size:16px;
  padding:17px 34px;border-radius:13px;border:0;white-space:nowrap;
  text-decoration:none!important;
  transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s}
.tc-btn .elementor-button:hover,
.tc-btn .elementor-button:focus{text-decoration:none!important}
.tc-btn .elementor-button:hover{transform:translateY(-3px)}
.tc-btn-p .elementor-button{color:var(--tc-onp)!important;
  background:linear-gradient(135deg,var(--tc-p),var(--tc-p2));
  box-shadow:0 10px 30px color-mix(in srgb,var(--tc-p) 40%,transparent)}
.tc-btn-ghost .elementor-button{color:var(--tc-p)!important;
  background:color-mix(in srgb,var(--tc-p) 7%,#fff);
  border:1px solid color-mix(in srgb,var(--tc-p) 28%,transparent)}
.tc-btn-acc .elementor-button{color:var(--tc-ona)!important;
  background:linear-gradient(135deg,var(--tc-acc),
    color-mix(in srgb,var(--tc-acc) 68%,#fff));
  box-shadow:0 10px 30px color-mix(in srgb,var(--tc-acc) 34%,transparent)}

/* ── glass live cards ──────────────────────────────────────────── */
.tc-hero-stack{display:flex;flex-direction:column;gap:16px;width:100%}
.tc-glass{background:color-mix(in srgb,#fff 72%,transparent);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.85);border-radius:20px;
  box-shadow:0 16px 50px rgba(15,23,42,.12)}
.tc-livecard{padding:24px 26px;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.tc-livecard:hover{transform:translateY(-4px)}
.tc-lc-body p{margin:0}

.tc-lc-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.tc-lc-label{font-size:13px;font-weight:600;color:var(--tc-mut)}
.tc-lc-live{font-size:11px;font-weight:700;letter-spacing:.5px;color:#0b6b3a;
  background:#d3f0df;padding:4px 11px;border-radius:999px;
  display:inline-flex;align-items:center;gap:6px}
.tc-lc-live::before{content:"";width:6px;height:6px;border-radius:50%;
  background:#0f9d58;animation:tc-pulse 2s infinite}
@keyframes tc-pulse{
  0%{box-shadow:0 0 0 0 rgba(15,157,88,.5)}
  70%{box-shadow:0 0 0 9px rgba(15,157,88,0)}
  100%{box-shadow:0 0 0 0 rgba(15,157,88,0)}}

/* ── PayForm progress, restyled inside the glass card ──────────── */
.tc-livecard .pfwp-progress-wrap{background:none!important;border:0!important;
  box-shadow:none!important;padding:0!important;margin:0!important}
.tc-livecard .pfwp-progress-header{display:flex;align-items:baseline;
  justify-content:space-between;gap:12px}
.tc-livecard .pfwp-progress-raised{display:block;line-height:1.15}
.tc-livecard .pfwp-progress-amount{display:block;font-family:var(--tc-fh);
  font-weight:800;font-size:clamp(28px,3.4vw,34px);color:var(--tc-p);line-height:1}
.tc-livecard .pfwp-progress-amount-unit{font-family:var(--tc-fb);font-size:16px;
  font-weight:600;color:var(--tc-p);opacity:.55}
.tc-livecard .pfwp-progress-label{display:block;font-family:var(--tc-fb);
  font-size:13px;font-weight:600;color:var(--tc-mut);margin-top:5px}
.tc-livecard .pfwp-progress-pct{font-family:var(--tc-fh);font-size:20px;
  font-weight:800;color:var(--tc-acc)}
.tc-livecard .pfwp-progress-bar{height:9px;border-radius:999px;overflow:hidden;
  margin-top:15px;background:color-mix(in srgb,var(--tc-p) 12%,#eee)}
.tc-livecard .pfwp-progress-fill{height:100%;border-radius:999px;
  background:linear-gradient(90deg,var(--tc-p),var(--tc-p2));
  transition:width 1.4s cubic-bezier(.16,1,.3,1)}
.tc-livecard .pfwp-progress-footer{display:flex;align-items:center;
  justify-content:space-between;gap:12px;margin-top:12px;
  font-size:13px;color:var(--tc-mut)}
.tc-livecard .pfwp-progress-donate-link{color:var(--tc-p);font-weight:700;
  text-decoration:none}
.tc-livecard .pfwp-progress-donate-link:hover{text-decoration:underline}

/* ═══ SECTIONS BELOW THIS LINE — append, never edit above ═══ */


/* ═══════════════════════════════════════════════════════════════════
   SECTIONS 2 · 4 · 5 · 6 · 7  —  ported from the skeleton, not invented.
   Every value below is the skeleton's, mapped onto Elementor's markup.
   ═══════════════════════════════════════════════════════════════════ */

.tc-wrap{max-width:1180px;width:100%;margin:0 auto}
.tc-section{background:transparent;position:relative;z-index:2;
  padding:56px 24px!important}
@media(max-width:820px){.tc-section{padding:34px 18px!important}}

/* section heads are CENTRED with a lede — this was the biggest miss */
.tc-shead{text-align:center;max-width:680px;width:100%;margin:0 auto 32px!important;
  align-items:center!important}
.tc-eyebrow .elementor-heading-title{font-family:var(--tc-fb);font-size:12px;
  font-weight:800;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--tc-p)!important}
.tc-h2 .elementor-heading-title{font-family:var(--tc-fh);font-weight:600;
  letter-spacing:-.02em;font-size:clamp(30px,4vw,42px);line-height:1.08;
  color:var(--tc-ink)!important;margin:14px 0}
.tc-shead .tc-body p{font-size:18px;color:var(--tc-mut);margin:0}
.tc-body p{font-family:var(--tc-fb);font-size:16px;line-height:1.65;
  color:var(--tc-mut);margin:14px 0 0}

/* ── 2 · command bar ──────────────────────────────────────────── */
.tc-cmdbar{position:relative;z-index:3;margin-top:-34px;background:transparent;
  padding:0 24px!important}
.tc-cmd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
  max-width:1180px;width:100%;margin:0 auto}
.tc-cmd{padding:24px 26px;position:relative;
  transition:transform .25s,box-shadow .25s}
.tc-cmd:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(15,23,42,.14)}
.tc-cmd .elementor-icon-box-wrapper{display:flex;align-items:center;gap:16px;
  text-align:left;padding-right:26px}
.tc-cmd .elementor-icon-box-icon{margin:0!important;flex:0 0 auto}
.tc-cmd .elementor-icon{width:50px;height:50px;border-radius:14px;font-size:23px;
  display:flex;align-items:center;justify-content:center;background:var(--tc-tint)}
.tc-cmd .elementor-icon,
.tc-cmd .elementor-icon i,
.tc-cmd .elementor-icon svg{color:var(--tc-p)!important;fill:var(--tc-p)!important}
.tc-cmd .elementor-icon-box-title,
.tc-cmd .elementor-icon-box-title a{font-family:var(--tc-fh);font-size:17px;
  font-weight:700;color:var(--tc-ink)!important;text-decoration:none!important;
  margin:0 0 2px!important}
.tc-cmd .elementor-icon-box-description{font-family:var(--tc-fb);font-size:13px;
  color:var(--tc-mut);margin:0}
.tc-cmd::after{content:"\2192";position:absolute;right:26px;top:50%;
  transform:translateY(-50%);font-size:20px;color:var(--tc-p);
  transition:transform .25s}
.tc-cmd:hover::after{transform:translateY(-50%) translateX(5px)}
@media(max-width:820px){
  .tc-cmd-grid{grid-template-columns:1fr}
  .tc-cmdbar{margin-top:26px}}

/* ── 4 · cause ────────────────────────────────────────────────── */
.tc-cause-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;
  align-items:center}
@media(max-width:820px){.tc-cause-grid{grid-template-columns:1fr;gap:34px}}
.tc-cause-copy{display:flex;flex-direction:column;align-items:flex-start}
.tc-cause .tc-h2 .elementor-heading-title{font-size:clamp(28px,3.6vw,40px);
  line-height:1.12;margin:14px 0 20px}
.tc-cause .tc-body p{font-size:17px;line-height:1.7;margin:0 0 16px}
.tc-mission{padding:34px 36px!important;border-left:4px solid var(--tc-p);
  display:flex;flex-direction:column;align-items:flex-start}
.tc-mission .tc-h4 .elementor-heading-title{font-family:var(--tc-fh);font-size:18px;
  font-weight:800;color:var(--tc-p)!important;margin:0 0 10px}

/* ── 5 · impact ───────────────────────────────────────────────── */
.tc-impact{background:#fff}
.tc-igrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;width:100%}
@media(max-width:820px){.tc-igrid{grid-template-columns:1fr}}
.tc-icard{position:relative;overflow:hidden;border-radius:20px;
  padding:34px 30px!important;background:var(--tc-bg);
  border:1px solid color-mix(in srgb,var(--tc-ink) 8%,transparent);
  display:flex;flex-direction:column;align-items:flex-start;
  transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-color .3s}
.tc-icard::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--tc-p),var(--tc-acc));
  transform:scaleX(0);transform-origin:left;transition:transform .35s}
.tc-icard:hover{transform:translateY(-8px);
  border-color:color-mix(in srgb,var(--tc-p) 22%,transparent);
  box-shadow:0 26px 60px color-mix(in srgb,var(--tc-p) 14%,transparent)}
.tc-icard:hover::before{transform:scaleX(1)}
.tc-icard-ic{width:58px;height:58px;border-radius:16px;margin-bottom:18px;
  display:flex!important;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--tc-tint),
    color-mix(in srgb,var(--tc-p) 12%,#fff))}
.tc-icard-ic .elementor-heading-title{font-size:28px;line-height:1;margin:0;
  color:var(--tc-ink)!important}
.tc-icard .tc-h4 .elementor-heading-title{font-family:var(--tc-fh);font-size:20px;
  font-weight:800;color:var(--tc-ink)!important;margin:0 0 9px}
.tc-icard .tc-body p{font-size:14px;line-height:1.65;margin:0}

/* ── 6 · event rail — ONE bordered slab, three divided cells ──── */
.tc-rail{display:grid;grid-template-columns:repeat(3,1fr);width:100%;
  border:1px solid color-mix(in srgb,var(--tc-ink) 8%,transparent);
  border-radius:22px;overflow:hidden;background:#fff;
  box-shadow:0 14px 44px rgba(15,23,42,.06)}
@media(max-width:820px){.tc-rail{grid-template-columns:1fr}}
.tc-cell{padding:38px 32px!important;background:transparent;border-radius:0;
  display:grid!important;grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;column-gap:20px;align-items:center;
  border-right:1px solid color-mix(in srgb,var(--tc-ink) 8%,transparent);
  transition:background .25s}
.tc-cell:hover{background:var(--tc-tint)}
.tc-cell:last-child{border-right:0}
@media(max-width:820px){
  .tc-cell{border-right:0;
    border-bottom:1px solid color-mix(in srgb,var(--tc-ink) 8%,transparent)}
  .tc-cell:last-child{border-bottom:0}}
.tc-cell-ic{grid-column:1;grid-row:1/3;width:56px;height:56px;border-radius:50%;
  display:flex!important;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--tc-tint),
    color-mix(in srgb,var(--tc-p) 10%,#fff))}
.tc-cell-ic .elementor-icon{font-size:25px;margin:0}
.tc-cell-ic .elementor-icon,
.tc-cell-ic .elementor-icon i,
.tc-cell-ic .elementor-icon svg{color:var(--tc-p)!important;fill:var(--tc-p)!important}
.tc-cell-k{grid-column:2;grid-row:1;align-self:end}
.tc-cell-v{grid-column:2;grid-row:2;align-self:start}
.tc-cell-k .elementor-heading-title{font-family:var(--tc-fb);font-size:12px;
  font-weight:700;letter-spacing:1.2px;text-transform:uppercase;
  color:var(--tc-mut)!important;margin:0}
.tc-cell-v .elementor-heading-title{font-family:var(--tc-fh);font-size:21px;
  font-weight:800;color:var(--tc-ink)!important;margin:4px 0 0}

/* ── 7 · closing CTA — centred, deeper, bigger ────────────────── */
.tc-cta-sec{padding-top:0!important}
.tc-ctacard{position:relative;overflow:hidden;border-radius:30px;width:100%;
  padding:68px 48px!important;text-align:center;color:#fff;
  display:flex;flex-direction:column;align-items:center;
  background:linear-gradient(140deg,var(--tc-deep),
    color-mix(in srgb,var(--tc-p) 76%,#000));
  box-shadow:0 34px 80px color-mix(in srgb,var(--tc-deep) 45%,transparent)}
@media(max-width:760px){.tc-ctacard{padding:40px 24px!important}}
.tc-ctacard::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(45% 70% at 50% 0%,color-mix(in srgb,var(--tc-p2) 55%,transparent),transparent 70%),
    radial-gradient(30% 50% at 85% 100%,color-mix(in srgb,var(--tc-acc) 25%,transparent),transparent 70%)}
.tc-ctacard>*{position:relative;z-index:1}
.tc-ctacard .tc-h2 .elementor-heading-title{font-size:clamp(30px,4.2vw,44px);
  color:#fff!important;margin:0 0 16px}
.tc-ctacard .tc-body p{font-size:18px;color:rgba(255,255,255,.85);
  max-width:600px;margin:0 auto 30px}
.tc-ctacard .tc-cta-row{justify-content:center}
.tc-btn-onDark .elementor-button{color:#fff!important;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.32)}

/* small utilities still referenced by the kit */
.tc-event{background:transparent}
.tc-sm p{font-size:14.5px}
.tc-on-dark .elementor-heading-title{color:#fff!important}
.tc-on-dark p{color:rgba(255,255,255,.85)}

/* ═══ craft layers ═══════════════════════════════════════════════ */
body::after{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;
  opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

.tc-hero::before{
  background:
    repeating-radial-gradient(circle at 72% 24%,transparent 0 58px,
      color-mix(in srgb,var(--tc-p) 3.5%,transparent) 58px 60px),
    radial-gradient(38% 46% at 80% 16%,color-mix(in srgb,var(--tc-acc) 26%,transparent),transparent 70%),
    radial-gradient(52% 60% at 70% 42%,color-mix(in srgb,var(--tc-p2) 30%,transparent),transparent 72%),
    radial-gradient(46% 52% at 12% 16%,color-mix(in srgb,var(--tc-p) 16%,transparent),transparent 70%)}

.tc-btn .elementor-button{position:relative;overflow:hidden}
.tc-btn .elementor-button::after{content:"";position:absolute;top:0;left:-120%;
  width:60%;height:100%;transform:skewX(-20deg);transition:left .6s;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent)}
.tc-btn .elementor-button:hover::after{left:140%}

.tc-hero-stack{perspective:1000px}
.tc-hero-stack:hover .tc-livecard{transform:rotateY(-4deg) rotateX(2deg)}
.tc-hero-stack .tc-livecard:hover{transform:translateY(-4px);z-index:2}

.tc-glass{border:1px solid rgba(255,255,255,.9);
  box-shadow:0 16px 50px rgba(15,23,42,.10),
             0 1px 0 rgba(255,255,255,.6) inset}


/* ═══════════════════════════════════════════════════════════════════
   HEADER + FOOTER  (tc-header-v1.json / tc-footer-v1.json)
   Built as UAE/HFE templates so they apply site-wide, not per page.
   ═══════════════════════════════════════════════════════════════════ */

/* ── sticky glass header ──────────────────────────────────────── */
.tc-hdr{position:sticky;top:0;z-index:100;width:100%;
  background:color-mix(in srgb,var(--tc-bg) 82%,transparent);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid color-mix(in srgb,var(--tc-ink) 9%,transparent)}
.tc-hdr-wrap{max-width:1180px;width:100%;margin:0 auto;
  display:flex!important;flex-direction:row!important;
  align-items:center;justify-content:space-between;min-height:74px}

.tc-logo{display:flex!important;flex-direction:row!important;align-items:center;
  gap:11px;width:auto}
.tc-mark .elementor-heading-title{width:36px;height:36px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;font-size:19px;
  color:var(--tc-onp)!important;
  background:linear-gradient(135deg,var(--tc-p),var(--tc-p2));
  box-shadow:0 4px 14px color-mix(in srgb,var(--tc-p) 35%,transparent)}
.tc-mark .elementor-heading-title a{color:var(--tc-onp)!important;
  text-decoration:none!important}
.tc-logo-t .elementor-heading-title,
.tc-logo-t .elementor-heading-title a{font-family:var(--tc-fh);font-size:20px;
  font-weight:800;letter-spacing:-.01em;color:var(--tc-ink)!important;
  text-decoration:none!important}

.tc-nav{display:flex!important;flex-direction:row!important;align-items:center;
  gap:30px;width:auto}
.tc-navlink .elementor-button{background:transparent!important;padding:0!important;
  font-family:var(--tc-fb);font-size:15px;font-weight:600;
  color:var(--tc-ink)!important;opacity:.7;box-shadow:none!important;
  border:0!important;text-decoration:none!important;
  transition:opacity .15s,color .15s}
.tc-navlink .elementor-button:hover{opacity:1;color:var(--tc-p)!important;
  transform:none}
.tc-navlink .elementor-button::after{display:none}
.tc-btn-sm .elementor-button{padding:12px 24px;font-size:15px;border-radius:11px}
@media(max-width:880px){
  .tc-navlink{display:none}
  .tc-nav{gap:0}}

/* ── dark footer ──────────────────────────────────────────────── */
.tc-ftr{background:var(--tc-deep);width:100%;position:relative;z-index:2;
  color:rgba(255,255,255,.75)}
.tc-ftr-wrap{max-width:1180px;width:100%;margin:0 auto}
.tc-ftr-top{display:flex!important;flex-direction:row!important;
  justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap;
  border-bottom:1px solid rgba(255,255,255,.1);
  padding-bottom:32px;margin-bottom:24px;width:100%}
.tc-ftr-brand{display:flex;flex-direction:column;align-items:flex-start;width:auto}
.tc-logo-dark .tc-logo-t .elementor-heading-title{color:#fff!important}
.tc-powered .elementor-heading-title{font-family:var(--tc-fb);font-size:12px;
  font-weight:500;letter-spacing:.3px;color:rgba(255,255,255,.65)!important;
  margin-top:7px}

.tc-flinks{display:flex!important;flex-direction:row!important;flex-wrap:wrap;
  gap:28px;width:auto}
.tc-flink .elementor-button{background:transparent!important;padding:0!important;
  border:0!important;box-shadow:none!important;font-family:var(--tc-fb);
  font-size:14px;font-weight:500;color:rgba(255,255,255,.82)!important;
  text-decoration:none!important;transition:color .15s}
.tc-flink .elementor-button:hover{color:#fff!important;transform:none}
.tc-flink .elementor-button::after{display:none}

.tc-fine .elementor-heading-title{font-family:var(--tc-fb);font-size:13px;
  font-weight:400;color:rgba(255,255,255,.6)!important}

@media(max-width:760px){
  .tc-ftr-top{flex-direction:column!important;gap:26px}}


/* ═══════════════════════════════════════════════════════════════════
   GLOBAL-KIT OVERRIDES
   The kit now supplies the defaults: Fraunces headings, Inter body,
   green primary, gold accent. This block is the short list of places
   that must DIFFER from those defaults — small utility labels that
   need the body face, and the two button variants that must not take
   the accent colour. Nothing else should ever need to be listed here.
   ═══════════════════════════════════════════════════════════════════ */

/* utility labels belong to the body face, not the heading face */
.tc-eyebrow .elementor-heading-title,
.tc-pill .elementor-heading-title,
.tc-powered .elementor-heading-title,
.tc-fine .elementor-heading-title,
.tc-cell-k .elementor-heading-title,
.tc-navlink .elementor-button,
.tc-flink .elementor-button,
.tc-btn .elementor-button,
.tc-lede p,
.tc-body p,
.tc-lc-label,
.tc-lc-live,
.tc-livecard .pfwp-progress-label,
.tc-livecard .pfwp-progress-amount-unit,
.tc-livecard .pfwp-progress-footer{font-family:var(--tc-fb)!important}

/* the two variants that must not inherit the kit's accent */
.tc-btn-ghost .elementor-button{
  background:color-mix(in srgb,var(--tc-p) 7%,#fff)!important;
  background-image:none!important;
  color:var(--tc-p)!important;
  border:1px solid color-mix(in srgb,var(--tc-p) 28%,transparent)!important;
  box-shadow:none!important}
.tc-btn-onDark .elementor-button{
  background:rgba(255,255,255,.12)!important;
  background-image:none!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.32)!important;
  box-shadow:none!important}

/* impact icon tile: the {{I1_ICON}} placeholder is far wider than the
   58px tile it will hold a single emoji in. Clip it so the placeholder
   reads as a tile rather than as spilled text. */
.tc-icard-ic{overflow:hidden;flex:0 0 auto}
.tc-icard-ic .elementor-heading-title{max-width:58px;text-align:center;
  white-space:nowrap;overflow:hidden}

/* ═══ site chrome ═══════════════════════════════════════════════════
   The page supplies its own headings; Hello's page title is a duplicate.
   Also make sure a full-width page is not boxed by the theme's content
   column — the Elementor Full Width template releases it, this is belt
   and braces for any page that ends up on another template. */
body.page .entry-title{display:none}
body.page .site-main,
body.page .page-content{max-width:none;padding-left:0;padding-right:0}

/* ══════════════════════════════════════════════════════════════════
   THE FOUR PAYFORM PAGES — added 0.18.0
   Additive only; every rule is scoped to a tc-r* class or to a .pfwp-*
   selector inside one. Classic's own vocabulary does the heavy lifting:
   .tc-section .tc-wrap .tc-shead .tc-glass .tc-igrid .tc-icard
   .tc-ctacard .tc-cta-row .tc-btn-* are all reused unchanged.
   House rules: target the INNER element, !important on colour/font,
   force flex direction, pin gap AND padding on containers.
   ══════════════════════════════════════════════════════════════════ */

/* ── hero: Classic's shell, centred ── */
.tc-rhero{padding:0!important;position:relative}
/* .tc-ghost is position:absolute already; this stops the flex parent from
   reserving a row for it and keeps it behind the copy */
.tc-rhero > .tc-ghost{position:absolute!important;z-index:0}
.tc-rhero .tc-hero-wrap{padding:84px 24px 68px!important}
.tc-rhero-copy{align-items:center!important;text-align:center;gap:0!important;
  padding:0!important;width:100%}
.tc-rhero-copy .tc-body p{max-width:56ch;margin:0 auto;text-align:center;font-size:18px}
.tc-rmeta .elementor-heading-title{display:flex;align-items:center;justify-content:center;
  gap:16px;flex-wrap:wrap;margin-top:30px;font-family:var(--tc-fb)!important;
  font-weight:700;font-size:11.5px;letter-spacing:2px;text-transform:uppercase;
  color:var(--tc-mut)!important}
.tc-rmeta .dot{display:inline-block;width:4px;height:4px;border-radius:50%;
  background:var(--tc-acc);flex:0 0 auto}
@media(max-width:820px){
  .tc-rhero .tc-hero-wrap{padding:60px 18px 48px!important}
  .tc-rmeta .elementor-heading-title{gap:10px;font-size:10.5px}
}

/* ── progress strip: the command bar, two up ── */
.tc-rbar-grid{display:grid!important;grid-template-columns:repeat(2,1fr);gap:16px;
  max-width:1180px;width:100%!important;margin:0 auto;padding:0!important}
.tc-rprog{padding:22px 24px!important;gap:0!important}
.tc-rprogin{width:100%}
@media(max-width:820px){.tc-rbar-grid{grid-template-columns:1fr}}

/* ── what's included ── */
.tc-rinc .tc-icard{align-items:center;text-align:center;padding:28px 22px!important}
.tc-rinc .tc-h4 .elementor-heading-title{font-family:var(--tc-fb)!important;
  font-weight:600;font-size:15.5px;line-height:1.45;color:var(--tc-ink)!important;
  text-align:center;margin:0}

/* ── sponsorship tiers ──
   .tc-igrid is hardcoded to repeat(3,1fr) — it was built for exactly three
   impact cards on the home page. Four tiers wrapped 3+1. Override here rather
   than touching .tc-igrid, which is rendering correctly where it already is. */
.tc-rtiergrid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important}
@media(max-width:820px){.tc-rtiergrid{grid-template-columns:1fr!important}}
.tc-rtier{gap:0!important;padding:32px 28px!important}
.tc-rtierbadge{padding:0!important;margin-bottom:10px}
.tc-rtier .tc-h4 .elementor-heading-title{font-family:var(--tc-fh)!important;
  font-weight:600;font-size:22px;line-height:1.15;color:var(--tc-ink)!important;margin:0 0 6px}
.tc-rtieramt .elementor-heading-title{font-family:var(--tc-fh)!important;font-weight:700;
  font-size:36px;line-height:1;letter-spacing:-.02em;color:var(--tc-p)!important;
  margin:0 0 18px}
.tc-rtierperks{padding:0!important;margin-bottom:16px;width:100%}
.tc-rtierp ul{list-style:none;margin:0;padding:0}
.tc-rtierp li{position:relative;padding-left:22px;margin-bottom:9px;
  font-family:var(--tc-fb)!important;font-size:14px;line-height:1.5;color:var(--tc-mut)}
.tc-rtierp li::before{content:"";position:absolute;left:0;top:7px;width:9px;height:5px;
  border-left:2px solid var(--tc-p);border-bottom:2px solid var(--tc-p);
  transform:rotate(-45deg)}
.tc-rtierqty{margin-top:auto;padding:14px 0 0!important;width:100%;
  border-top:1px solid color-mix(in srgb,var(--tc-ink) 10%,transparent)}
.tc-rtierq .elementor-heading-title{font-family:var(--tc-fb)!important;font-weight:700;
  font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--tc-mut)!important}

/* ── form + sidebar ──
   The COLUMN is the card: .tc-rformcol carries .tc-glass and stretches with the
   row, so the form panel is always exactly as tall as the sidebar without
   depending on PayForm's internal wrappers. */
/* The command bar sits on margin-top:-34px so it overlaps the hero. With no
   top padding here the form section began almost against it. */
.tc-rmain{padding-top:44px!important}
@media(max-width:820px){.tc-rmain{padding-top:32px!important}}
.tc-rmainin{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
  align-items:stretch!important;gap:36px;padding:0!important}
.tc-rformcol{flex:1 1 auto!important;width:auto!important;min-width:0;
  display:flex!important;flex-direction:column!important;gap:0!important;
  padding:48px 40px!important}
.tc-rside{flex:0 0 340px!important;width:340px!important;min-width:0;
  display:flex!important;flex-direction:column!important;gap:18px!important;
  padding:0!important}
.tc-rside > .e-con-inner{flex:1 1 auto!important;height:100%!important;
  display:flex!important;flex-direction:column!important;gap:18px!important;
  padding:0!important}
.tc-rside .tc-rcard,.tc-rside .tc-rquote{flex:0 0 auto!important}
.tc-rside .tc-rcard:last-child,.tc-rside .tc-rquote:last-child{flex:1 1 auto!important}
.tc-rside > *{flex:0 0 auto!important}
.tc-rside > .tc-rcard:last-child,.tc-rside > .tc-rquote:last-child{flex:1 1 auto!important}
.tc-rcard{padding:26px!important;gap:0!important}
.tc-rcard .tc-h4 .elementor-heading-title{font-family:var(--tc-fh)!important;
  font-weight:600;font-size:20px;color:var(--tc-ink)!important;margin:0 0 14px;
  padding-bottom:12px;
  border-bottom:1px solid color-mix(in srgb,var(--tc-ink) 12%,transparent)}
.tc-rrows{display:flex!important;flex-direction:column!important;
  gap:13px!important;padding:0!important}
.tc-rrow{gap:2px!important;padding:0!important}
.tc-rrowk .elementor-heading-title{font-family:var(--tc-fb)!important;font-weight:800;
  font-size:10px;letter-spacing:1.8px;text-transform:uppercase;
  color:var(--tc-mut)!important;margin-bottom:2px}
.tc-rrowv .elementor-heading-title{font-family:var(--tc-fh)!important;font-weight:600;
  font-size:15.5px;line-height:1.35;color:var(--tc-ink)!important;margin:0}
.tc-rsched{margin-top:16px;padding:14px 0 0!important;gap:0!important;
  border-top:1px solid color-mix(in srgb,var(--tc-ink) 12%,transparent)}
.tc-rsubh .elementor-heading-title{font-family:var(--tc-fb)!important;font-weight:800;
  font-size:10px;letter-spacing:1.8px;text-transform:uppercase;
  color:var(--tc-mut)!important;margin-bottom:10px}
.tc-rschlist{display:flex!important;flex-direction:column!important;
  gap:8px!important;padding:0!important}
.tc-rschrow{display:flex!important;flex-direction:row!important;gap:12px!important;
  align-items:baseline;width:100%;padding:0!important}
.tc-rschtime .elementor-heading-title{font-family:var(--tc-fb)!important;font-weight:800;
  font-size:11.5px;color:var(--tc-p)!important;white-space:nowrap}
.tc-rschttl .elementor-heading-title{font-family:var(--tc-fb)!important;font-weight:500;
  font-size:14px;line-height:1.45;color:var(--tc-ink)!important}
.tc-rimprow{padding:11px 0!important;gap:3px!important;
  border-bottom:1px solid color-mix(in srgb,var(--tc-ink) 8%,transparent)}
.tc-rimprow:first-child{padding-top:0!important}
.tc-rimprow:last-child{border-bottom:0;padding-bottom:0!important}
.tc-rimpt .elementor-heading-title{font-family:var(--tc-fb)!important;font-weight:700;
  font-size:14px;line-height:1.3;color:var(--tc-p)!important;margin-bottom:2px}
.tc-rimpb p{font-family:var(--tc-fb)!important;font-size:13.5px;line-height:1.55;
  color:var(--tc-mut)!important;margin:0}
.tc-rquote{background:var(--tc-tint);border-radius:20px;padding:24px!important;
  gap:0!important}
.tc-rqt p{font-family:var(--tc-fh)!important;font-style:italic;font-size:16px;
  line-height:1.6;color:var(--tc-deep)!important;margin:0}
.tc-rqa .elementor-heading-title{font-family:var(--tc-fb)!important;font-weight:700;
  font-size:11.5px;color:var(--tc-mut)!important;margin-top:14px}
@media(max-width:980px){
  .tc-rmainin{flex-direction:column!important;flex-wrap:wrap!important;gap:26px}
  .tc-rformcol,.tc-rside{flex:1 1 auto!important;width:100%!important}
  .tc-rside > *:last-child{flex:0 0 auto!important}
  .tc-rformcol{padding:32px 22px!important}
}

/* ── sponsor ticker ── */
.tc-rwallin{width:100%!important;padding:0!important}
.tc-rwall .pfwp-sponsor-ticker{background:transparent!important;padding:0!important}
.tc-rwall .pfwp-sponsor-ticker-eyebrow{display:none}
.tc-rwall .pfwp-sponsor-ticker-item{color:var(--tc-ink)}
.tc-rwall .pfwp-sponsor-ticker-placeholder{color:var(--tc-mut);
  font-family:var(--tc-fb)!important;border-color:color-mix(in srgb,var(--tc-p) 40%,transparent)}
.tc-rwall .pfwp-sponsor-ticker-fallback{font-family:var(--tc-fh)!important;color:var(--tc-ink)}

/* ══ PayForm form skin — ported from the-card into Classic's namespace ══
   Without this the form renders in PayForm's stock styling and reads as a
   different product bolted into the page. */
.tc-rformcol .pfwp-form-wrap{font-family:var(--tc-fb)}
.tc-rformcol .pfwp-form-card{background:transparent!important;border:0!important;
  box-shadow:none!important;padding:0!important;border-radius:0!important}
.tc-rformcol > *,
.tc-rformcol > .e-con-inner,
.tc-rformcol .elementor-element,
.tc-rformcol .elementor-widget-container,
.tc-rformcol .pfwp-form-wrap,
.tc-rformcol .pfwp-form-card,
.tc-rformcol .pfwp-step-panel.active{
  flex:1 1 auto!important;display:flex!important;flex-direction:column!important;
  min-height:0}
.tc-rformcol .pfwp-nav-row{margin-top:auto!important;padding-top:28px}

.tc-rformcol .pfwp-form-header{text-align:center;padding-bottom:22px;
  border-bottom:1px solid color-mix(in srgb,var(--tc-ink) 12%,transparent)}
.tc-rformcol .pfwp-badge{font-family:var(--tc-fb)!important;font-weight:800!important;
  font-size:11px!important;letter-spacing:1.8px!important;text-transform:uppercase;
  border-radius:999px}
.tc-rformcol .pfwp-form-header h2,
.tc-rformcol .pfwp-form-header h3{font-family:var(--tc-fh)!important;font-weight:600!important;
  letter-spacing:-.02em;color:var(--tc-ink)!important}
.tc-rformcol .pfwp-section-title{font-family:var(--tc-fb)!important;font-weight:800!important;
  font-size:11px!important;letter-spacing:1.8px!important;text-transform:uppercase;
  color:var(--tc-p)!important}
.tc-rformcol .pfwp-text-muted,.tc-rformcol .pfwp-consent-hint,
.tc-rformcol .pfwp-privacy-notice{font-family:var(--tc-fb)!important;
  font-size:12.5px!important;color:var(--tc-mut)!important}
.tc-rformcol .pfwp-spots-remaining{font-family:var(--tc-fb)!important;font-weight:700;
  color:var(--tc-p)!important}
.tc-rformcol .pfwp-step-dot{background:color-mix(in srgb,var(--tc-ink) 16%,transparent)}
.tc-rformcol .pfwp-step-dot.active{background:var(--tc-p)}
.tc-rformcol .pfwp-option-card{border-radius:14px;
  border:1px solid color-mix(in srgb,var(--tc-ink) 12%,transparent)}
.tc-rformcol .pfwp-option-card:hover{border-color:color-mix(in srgb,var(--tc-p) 40%,transparent)}
.tc-rformcol input[type=text],.tc-rformcol input[type=email],
.tc-rformcol input[type=tel],.tc-rformcol input[type=number],
.tc-rformcol select,.tc-rformcol textarea{font-family:var(--tc-fb)!important;
  border-radius:12px!important;
  border:1px solid color-mix(in srgb,var(--tc-ink) 16%,transparent)!important}
.tc-rformcol input:focus,.tc-rformcol select:focus,.tc-rformcol textarea:focus{
  border-color:var(--tc-p)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--tc-p) 14%,transparent)!important}
.tc-rformcol .pfwp-btn{font-family:var(--tc-fb)!important;font-weight:700!important;
  border-radius:14px!important;letter-spacing:.2px}
.tc-rformcol .pfwp-btn-primary{background:var(--tc-p)!important;
  color:var(--tc-onp)!important;border:0!important}
.tc-rformcol .pfwp-btn-primary:hover{background:var(--tc-deep)!important}
.tc-rformcol .pfwp-btn-secondary,.tc-rformcol .pfwp-btn-outline{
  background:transparent!important;color:var(--tc-p)!important;
  border:1px solid color-mix(in srgb,var(--tc-p) 45%,transparent)!important}
.tc-rformcol .pfwp-summary{background:var(--tc-tint);border-radius:14px}
.tc-rformcol .pfwp-summary-row,.tc-rformcol .pfwp-summary-amount{
  font-family:var(--tc-fb)!important;color:var(--tc-ink)!important}
.tc-rformcol .pfwp-consent-block{margin-top:20px;padding-top:16px;
  border-top:1px solid color-mix(in srgb,var(--tc-ink) 12%,transparent)}
.tc-rformcol .pfwp-success-screen{font-family:var(--tc-fb)}
.tc-rformcol .pfwp-success-name,.tc-rformcol .pfwp-success-package{
  font-family:var(--tc-fh)!important;font-weight:600!important;color:var(--tc-ink)!important}
.tc-rformcol .pfwp-success-subtitle,.tc-rformcol .pfwp-success-note{color:var(--tc-mut)!important}

/* ── 0.25.1 — live sponsor tiers (see the-card/template.css for the why) ──
   Mirrors the original .tc-rtier card so every palette stays legible. */
.pfwp-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;
  align-items:stretch;}
.pfwp-tier{background:#fff;border:1px solid rgba(20,32,27,.10);border-radius:16px;
  padding:32px 28px;display:flex;flex-direction:column;text-align:left;
  box-shadow:0 6px 22px rgba(20,32,27,.06);}
.pfwp-tier__name{font-family:var(--tc-fh);font-weight:600;font-size:22px;line-height:1.15;
  color:var(--tc-ink);margin:0 0 6px;}
.pfwp-tier__amt{font-family:var(--tc-fh);font-weight:700;font-size:36px;line-height:1;
  letter-spacing:-.02em;color:var(--tc-p);margin-bottom:14px;}
.pfwp-tier__perks{list-style:none;margin:0 0 18px;padding:0;}
.pfwp-tier__perks li{position:relative;padding-left:22px;margin-bottom:9px;
  font-family:var(--tc-fb);font-size:14px;line-height:1.5;color:var(--tc-mut);}
.pfwp-tier__perks li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:5px;
  border-top:1px solid var(--tc-acc);}
.pfwp-tier__qty{margin-top:auto;padding-top:14px;border-top:1px solid rgba(20,32,27,.10);
  font-family:var(--tc-fb);font-weight:700;font-size:10px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--tc-mut);}
@media (max-width:767px){.pfwp-tier{padding:24px 20px;}}

/* 0.30.2 — organiser logo, height-constrained. See the-card for the reasoning. */
.tc-logo-img{flex:0 0 auto;padding:0}
.tc-logo-i img{max-height:46px!important;width:auto!important;max-width:210px!important;
  height:auto!important;display:block;object-fit:contain}
@media(max-width:640px){.tc-logo-i img{max-height:36px!important;max-width:140px!important}}
