/* Headings */
.tv-section .elementor-heading-title.elementor-size-default{font-size:var(--tv-h2);line-height:1.2;margin:0 0 6px;}
/* Icon List → look like .tv-list-check when inside our sections */
.tv-section .elementor-widget-icon-list .elementor-icon-list-items{display:grid;gap:10px;margin:0;padding:0;}
.tv-section .elementor-widget-icon-list .elementor-icon-list-item{
  list-style:none;position:relative;padding:10px 12px 10px 38px;border:1px solid var(--tv-border);border-radius:12px;background:color-mix(in srgb,#000 70%, var(--tv-primary) 30%);color:var(--tv-text);
}
.tv-section .elementor-widget-icon-list .elementor-icon-list-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:4px;display:grid;place-items:center;background:var(--tv-accent);color:#000;}
.tv-section .elementor-widget-icon-list .elementor-icon-list-icon i{display:none;}
.tv-section .elementor-widget-icon-list .elementor-icon-list-icon::after{content:"✓";font-weight:800;font-size:12px;}
/* Elementor Button → adopt our variants when class is added */
.tv-btn-skin .elementor-button{border-radius:999px;font-weight:700;padding:12px 18px;}
.tv-btn-skin .elementor-button:not(.elementor-button-link){border:1px solid var(--tv-border);background:transparent;color:#fff;}
.tv-btn-skin .elementor-button:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.32);}
.tv-btn-skin .elementor-button.tva-accent{background:var(--tv-accent);border-color:var(--tv-accent);color:#000;}
.tv-btn-skin .elementor-button.tva-outline{background:transparent;border-color:var(--tv-accent);color:var(--tv-accent);}
.tv-btn-skin .elementor-button.tva-outline:hover{background:color-mix(in srgb,var(--tv-accent) 18%, #000 82%);color:#fff;}
/* ===== v4.1 OVERRIDES — Elementor parity for ghost/outline ===== */

/* Ghost (default button in tv-btn-skin) */
.tv-btn-skin .elementor-button{
  border: 1px solid var(--tv-border);
  background: transparent;
  color: #fff;
}
.tv-btn-skin .elementor-button:hover:not(.tva-accent):not(.tva-outline){
  background: rgba(255,255,255,.20);       /* match ghost link hover */
  border-color: rgba(255,255,255,.50);
  color: #fff;
  text-shadow: 0 0 1px rgba(0,0,0,.45);
}

/* Outline variant */
.tv-btn-skin .elementor-button.tva-outline:hover{
  background: color-mix(in srgb, var(--tv-accent) 22%, #000 78%);
  color:#fff;
}

/* Button groups inside Elementor containers */
.tv-btn-skin{ display:flex; flex-wrap:wrap; gap:16px; }
