.elementor-14679 .elementor-element.elementor-element-2055e16a{--display:flex;}.elementor-14679 .elementor-element.elementor-element-1b44396{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-14679 .elementor-element.elementor-element-2055e16a{--content-width:1400px;}}/* Start custom CSS *//* SA hub 14679 — align theme header with widened Elementor band */
.page-id-14679 .page-header {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px !important;
  padding-right: 10px !important;
  box-sizing: border-box;
}
.page-id-14679 .page-header .entry-title,
.page-id-14679 .page-header h1 {
  max-width: none !important;
}
@media (max-width: 767px) {
  .page-id-14679 .page-header {
    max-width: none;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .page-id-14679 .page-header h1,
  .page-id-14679 .entry-title {
    max-width: none !important;
  }
}
@media (min-width: 1421px) {
  .page-id-14679 .page-header {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  
}/* TSL_SA_HUB_V1 — San Antonio hub (post 14679) — STAGING. Scoped to .tsl-sa wrappers (+ body.page-id-14679). */
body.page-id-14679 .tsl-sa,.tsl-sa{--bg:#0a0a10;--cream:#fff4e0;--lilac:#c9bfe0;--gold:#ffc83d;--cyan:#22e6ff;--pink:#ff3ea5;--coral:#ff7a59;--glass:rgba(255,255,255,.05);--line:rgba(255,255,255,.12);
 /* set hero art on apply: */ --sa-hero-img:none;color:var(--lilac);font:400 17px/1.6 Inter,system-ui,sans-serif}
.tsl-sa *{box-sizing:border-box}
.tsl-sa a{color:var(--cyan)}.tsl-sa a:focus-visible,.tsl-sa summary:focus-visible{outline:3px solid var(--pink);outline-offset:3px;border-radius:8px}
.tsl-sa .wrap{max-width:1400px;margin:0 auto;padding:0 24px}
.tsl-sa .mono{font-family:'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;font-size:12px}
.tsl-sa h1,.tsl-sa h2,.tsl-sa h3{color:var(--cream);line-height:1.15;margin:0}
.tsl-sa section{padding:72px 0}.tsl-sa section.pt0{padding-top:0}.tsl-sa .c{text-align:center}
.tsl-sa h2{font-size:clamp(28px,4vw,44px);margin-bottom:12px}.tsl-sa .sub{max-width:640px;margin:0 auto 36px;text-align:center}
.tsl-sa .eyebrow{color:var(--coral);display:inline-block;border:1px solid var(--coral);border-radius:99px;padding:6px 14px;margin-bottom:20px}
.tsl-sa .hero{z-index:0}
/* If theme also prints its own H1/page title on 14679, hide it so the Epic H1 is the only H1: */
body.page-id-14679 .page-header .entry-title{display:none}
.elementor-14679 .elementor-widget-html{width:100%}
.tsl-sa .hero{position:relative;overflow:hidden;padding:110px 0 90px;text-align:center}
.tsl-sa .hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,16,.55),rgba(10,10,16,.92) 75%,var(--bg)),var(--sa-hero-img,none) center/cover;z-index:-2}
.tsl-sa .hero:after{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(34,230,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(34,230,255,.08) 1px,transparent 1px);background-size:56px 56px;mask:radial-gradient(ellipse at center,#000 30%,transparent 75%);animation:tslSaGrid 18s linear infinite}
@keyframes tslSaGrid{to{background-position:56px 56px}}
.tsl-sa .hero h1{font-size:clamp(36px,6.4vw,80px);font-weight:800;max-width:1000px;margin:0 auto}
.tsl-sa .mkt{background:linear-gradient(180deg,#fff36b,#fff);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:2px var(--cyan);filter:drop-shadow(0 0 14px rgba(34,230,255,.6));display:inline-block}
.tsl-sa .hero p.lead{font-size:clamp(17px,2vw,21px);max-width:680px;margin:22px auto 32px;color:#e3dbf5}
.tsl-sa .btn{display:inline-block;font-weight:800;text-decoration:none;border-radius:99px;padding:16px 30px;transition:transform .2s,box-shadow .2s}
.tsl-sa .btn-gold{background:var(--gold);color:#1a1200;box-shadow:0 0 0 0 rgba(255,200,61,.5),0 10px 40px rgba(255,200,61,.25)}
.tsl-sa .btn-gold:hover{transform:translateY(-2px);box-shadow:0 0 30px rgba(255,200,61,.6)}
.tsl-sa .btn-out{border:2px solid var(--gold);color:var(--gold)}
.tsl-sa .alt{display:block;margin-top:14px;color:var(--lilac)}
.tsl-sa .alt a{color:var(--cream)}
.tsl-sa .pills{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:30px}
.tsl-sa .pill{background:var(--glass);border:1px solid var(--line);border-radius:99px;padding:8px 16px;color:var(--cream);font-size:14px;backdrop-filter:blur(8px)}
.tsl-sa .pill b{color:var(--gold)}
.tsl-sa /* trust */
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:0}
.tsl-sa .chip{border:1px solid rgba(255,122,89,.45);background:linear-gradient(180deg,rgba(255,122,89,.08),transparent);border-radius:18px;padding:22px;text-align:center}
.tsl-sa .chip strong{display:block;color:var(--cream);font-size:28px}
.tsl-sa .chip span{color:var(--coral)}
.tsl-sa .qa{max-width:900px;margin:28px auto 0;padding:18px 22px;border-left:3px solid var(--cyan);background:var(--glass);border-radius:12px;font-size:15px}
.tsl-sa /* cards */
.grid{display:grid;gap:20px}
.tsl-sa .g2{grid-template-columns:repeat(2,1fr)}
.tsl-sa .g5{grid-template-columns:repeat(5,1fr)}
.tsl-sa .card{position:relative;background:var(--glass);border:1px solid var(--line);border-radius:22px;padding:28px;overflow:hidden;transition:border-color .25s,transform .25s}
.tsl-sa .card:hover{border-color:rgba(34,230,255,.5);transform:translateY(-3px)}
.tsl-sa .card:before{content:"";position:absolute;width:240px;height:240px;top:-120px;right:-120px;background:radial-gradient(circle,rgba(255,62,165,.25),transparent 70%)}
.tsl-sa .num{font-family:'JetBrains Mono';color:var(--cyan);font-size:14px;border:1px solid var(--cyan);border-radius:10px;padding:4px 10px;display:inline-block;margin-bottom:14px;box-shadow:0 0 14px rgba(34,230,255,.35)}
.tsl-sa .card h3{font-size:22px;margin-bottom:8px}
.tsl-sa .area{padding:22px;border-top:3px solid var(--coral)}
.tsl-sa .area h3{font-size:18px}
.tsl-sa .area p{font-size:14.5px;margin:6px 0 14px}
.tsl-sa .area a{font-weight:600;text-decoration:none}
.tsl-sa .area .tag{color:var(--coral);font-size:11px}
.tsl-sa .mid{text-align:center;margin-top:40px}
.tsl-sa ul.ticks{list-style:none;padding:0;margin:0}
.tsl-sa ul.ticks li{padding:10px 0 10px 30px;border-bottom:1px dashed var(--line);position:relative}
.tsl-sa ul.ticks li:before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:800}
.tsl-sa .spec{border-color:rgba(255,200,61,.45)}
.tsl-sa .foot{font-size:13px;opacity:.85}
.tsl-sa .bpills{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.tsl-sa .bpills a{border:1px solid var(--coral);color:var(--cream);text-decoration:none;border-radius:99px;padding:12px 20px;background:rgba(255,122,89,.07)}
.tsl-sa .bpills a:hover{background:rgba(255,122,89,.2)}
.tsl-sa /* reviews */
.masonry{columns:4 260px;column-gap:20px}
.tsl-sa .rev{break-inside:avoid;margin-bottom:20px;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid var(--line);border-radius:20px;padding:24px}
.tsl-sa .rev:nth-child(even){transform:rotate(1deg)}
.tsl-sa .rev:nth-child(odd){transform:rotate(-1deg)}
.tsl-sa .stars{color:var(--gold);letter-spacing:3px}
.tsl-sa .rev p{color:#eae3f7}
.tsl-sa .who{color:var(--coral);font-size:12px}
.tsl-sa /* faq */
.faq{max-width:900px;margin:0 auto}
.tsl-sa details{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:16px;margin-bottom:12px;backdrop-filter:blur(10px)}
.tsl-sa details[open]{border-color:rgba(255,62,165,.5);box-shadow:0 0 30px rgba(255,62,165,.12)}
.tsl-sa summary{cursor:pointer;list-style:none;padding:20px 56px 20px 22px;color:var(--cream);font-weight:600;font-size:18px;position:relative}
.tsl-sa summary::-webkit-details-marker{display:none}
.tsl-sa summary:after{content:"+";position:absolute;right:22px;top:14px;font-size:28px;color:var(--cyan);transition:transform .2s}
.tsl-sa details[open] summary:after{transform:rotate(45deg)}
.tsl-sa details p{padding:0 22px 20px;margin:0}
.tsl-sa /* closing */
.close{margin:40px auto 80px;max-width:1100px;text-align:center;border-radius:32px;padding:64px 24px;background:radial-gradient(600px 300px at 50% 0%,rgba(255,200,61,.18),transparent),linear-gradient(135deg,rgba(255,62,165,.18),rgba(34,230,255,.12));border:1px solid rgba(255,200,61,.4)}
@media(max-width:1100px){
.tsl-sa .g5{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
.tsl-sa .trust{grid-template-columns:repeat(2,1fr)}
.tsl-sa .g2,.tsl-sa .g5{grid-template-columns:1fr}
.tsl-sa section,.tsl-sa .tsl-sec{padding:52px 0}
.tsl-sa .hero{padding:70px 0 60px}
.tsl-sa .btn{display:block;padding:16px 18px}
.tsl-sa .rev{transform:none!important}
.tsl-sa .mkt{-webkit-text-stroke:1.2px var(--cyan)}
}
@media(prefers-reduced-motion:reduce){
.tsl-sa *,.tsl-sa *:before,.tsl-sa *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media(prefers-reduced-motion:reduce){.tsl-sa *,.tsl-sa *:before,.tsl-sa *:after{animation:none!important;transition:none!important}}/* End custom CSS */