.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================
   Apollo Group TV — Global CSS (Optimized)
   - Dark UI, pink accent, clean typography
   - Safe for Elementor, WooCommerce, CartFlows
   - Uses CSS variables, small utility set
   ========================================================= */

/* -------------------- Theme Tokens -------------------- */
:root{
  --bg:#0b1220;            /* page background */
  --bg2:#0e1524;           /* deep bg */
  --panel:#121826;         /* card/panel */
  --panel2:#0e1526;

  --ring:#27314c;          /* borders */
  --text:#eaf2ff;          /* main text */
  --muted:#9fb0d5;         /* secondary text */

  --accent:#ff2e86;        /* brand pink A */
  --accent2:#ff68ad;       /* brand pink B */
  --ok:#22c55e;            /* success */
  --warn:#f59e0b;          /* warning */
  --err:#ef4444;           /* error */

  --radius:16px;           /* default radius */
  --shadow:0 16px 40px rgba(0,0,0,.45);
  --wrap:1200px;           /* container width */

  --fs-1:clamp(28px,5vw,46px); /* H1 */
  --fs-2:clamp(22px,3.8vw,34px);/* H2 */
  --fs-3:clamp(18px,2.8vw,24px);/* H3 */
  --fs-b:clamp(14px,2.2vw,18px);/* Base */

  --hero-overlay:linear-gradient(0deg, rgba(0,0,0,.68), rgba(0,0,0,.35) 50%, rgba(0,0,0,.58));
}

/* Optional: wrap your site with .theme-apollo to scope the theme
   body.theme-apollo { ... } — using body by default for full site */
body{
  color:var(--text);
  background:linear-gradient(180deg,var(--bg),var(--bg2));
  font:500 var(--fs-b)/1.65 ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji";
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}

/* -------------------- Base Reset -------------------- */
*,
*::before,
*::after{ box-sizing:border-box }
html,body{ height:100% }
h1,h2,h3,h4,h5,h6, p,figure{ margin:0 0 .6rem }
img,svg,video{ max-width:100%; height:auto; display:block }
a{ color:#fff; text-decoration:none }
a:hover{ text-decoration:underline }
::selection{ background:rgba(255,46,134,.35) }
:focus-visible{
  outline:3px solid rgba(255,46,134,.65);
  outline-offset:2px; border-radius:10px;
}

/* Respect reduced motion */
@media (prefers-reduced-motion:reduce){
  *{ animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}

/* Scrollbar (webkit) */
*::-webkit-scrollbar{ width:10px;height:10px }
*::-webkit-scrollbar-thumb{ background:#223053; border-radius:999px }
*::-webkit-scrollbar-track{ background:#101729 }

/* -------------------- Layout Helpers -------------------- */
.wrap{ max-width:var(--wrap); margin-inline:auto; padding-inline:18px }
.section{ padding: clamp(48px,6vw,90px) 0 }
.grid{ display:grid; gap:18px }
.grid-2{ grid-template-columns:repeat(2,minmax(0,1fr)) }
.grid-3{ grid-template-columns:repeat(3,minmax(0,1fr)) }
@media (max-width:1000px){ .grid-2,.grid-3{ grid-template-columns:1fr } }

.flex{ display:flex; gap:10px }
.center{ display:grid; place-items:center }
.text-center{ text-align:center }
.m-0{ margin:0 } .mt-1{ margin-top:.5rem } .mt-2{ margin-top:1rem } .mt-3{ margin-top:1.5rem }
.mb-1{ margin-bottom:.5rem } .mb-2{ margin-bottom:1rem } .mb-3{ margin-bottom:1.5rem }
.p-1{ padding:.5rem } .p-2{ padding:1rem } .p-3{ padding:1.5rem }

/* -------------------- Typography -------------------- */
h1{ font-size:var(--fs-1); line-height:1.08; font-weight:900 }
h2{ font-size:var(--fs-2); line-height:1.12; font-weight:900 }
h3{ font-size:var(--fs-3); line-height:1.15; font-weight:800 }
.muted{ color:var(--muted) }
.gradient-text{
  background:linear-gradient(90deg,var(--accent),var(--accent2));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}

/* -------------------- Buttons -------------------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:12px 16px; border-radius:12px; font-weight:900; border:1px solid transparent;
  cursor:pointer; text-decoration:none; transition:transform .08s ease, filter .15s ease;
}
.btn:disabled{ opacity:.6; cursor:not-allowed }
.btn-primary{
  background:linear-gradient(90deg,var(--accent),var(--accent2)); color:#0b0b0b; box-shadow:0 12px 28px rgba(255,46,134,.28)
}
.btn-primary:hover{ filter:brightness(1.05); transform:translateY(-1px) }
.btn-ghost{
  background:#ffffff; color:#e00069; border:1px solid #ffd1e8;
}
.btn-outline{
  background:#0f1729; color:#fff; border:1px solid var(--ring)
}
.btn-block{ width:100% }
.btn-sm{ padding:9px 12px; border-radius:10px; font-weight:800 }
.btn-lg{ padding:14px 20px; border-radius:14px }

/* -------------------- Badges / Chips / Pills -------------------- */
.chips{ display:flex; flex-wrap:wrap; gap:10px }
.chip,.pill{
  display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px;
  border:1px solid var(--ring); background:rgba(255,255,255,.06); color:#fff; font-weight:800; font-size:12px;
}
.pill-ok{ border-color:rgba(34,197,94,.35); background:rgba(34,197,94,.10); color:#86efac }
.pill-warn{ border-color:rgba(245,158,11,.35); background:rgba(245,158,11,.10); color:#fde68a }

/* -------------------- Cards / Panels -------------------- */
.card,.panel{
  background:linear-gradient(180deg,var(--panel),var(--panel2));
  border:1px solid var(--ring); border-radius:var(--radius);
  box-shadow:var(--shadow); padding:16px;
}
.card:hover{ border-color:rgba(255,215,0,.35) }

/* -------------------- Forms (global + Woo/CF friendly) -------------------- */
input[type="text"],input[type="email"],input[type="tel"],input[type="url"],input[type="password"],
input[type="search"],input[type="number"],textarea,select{
  width:100%; background:#0f1729; color:var(--text);
  border:1px solid var(--ring); border-radius:12px; padding:12px 14px; line-height:1.4;
}
textarea{ min-height:120px; resize:vertical }
input::placeholder,textarea::placeholder{ color:#91a2c2 }
input:focus,textarea:focus,select:focus{
  outline:none; border-color:rgba(255,46,134,.65); box-shadow:0 0 0 3px rgba(255,46,134,.22)
}

/* Select2 (Woo country/state) */
.select2-container--default .select2-selection--single{
  height:44px; display:flex; align-items:center; background:#0f1729; border:1px solid var(--ring); border-radius:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{ color:var(--text); padding-left:10px }
.select2-dropdown{ background:#0f1729; border:1px solid var(--ring); color:var(--text) }
.select2-results__option--highlighted[aria-selected]{ background:rgba(255,46,134,.18); color:#fff }

/* Woo tables + notices (checkout, account, thank you) */
.shop_table, .woocommerce-checkout-review-order-table{ color:var(--text); border-color:var(--ring) }
.shop_table th, .shop_table td{ border-color:var(--ring) }
.woocommerce-error,.woocommerce-message,.woocommerce-info{
  border-radius:12px; border:1px solid var(--ring); background:#0f1729; color:var(--text); padding:12px 14px;
}

/* Place order / Woo buttons unify */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, #place_order{
  composes: btn btn-primary;
}
#place_order, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:14px 18px; border-radius:12px; font-weight:900;
  background:linear-gradient(90deg,var(--accent),var(--accent2)); color:#0b0b0b; border:1px solid transparent; box-shadow:0 12px 28px rgba(255,46,134,.28)
}

/* Force true one-column Woo rows on tight themes */
.form-row-first,.form-row-last{ width:100% !important; float:none !important }

/* -------------------- Header / Nav -------------------- */
.site-header{
  position:sticky; top:0; z-index:1000;
  background:rgba(11,18,32,.72); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--ring); transition:background .2s, box-shadow .2s, border-color .2s;
}
.site-header.is-scrolled{ background:rgba(11,18,32,.92); box-shadow:0 10px 28px rgba(0,0,0,.35); border-bottom-color:rgba(39,49,76,.9) }
.site-header .bar{ max-width:var(--wrap); margin:auto; padding:10px 18px; display:grid; grid-template-columns:auto 1fr auto; gap:18px; align-items:center }
.site-header .brand{ display:flex; align-items:center; gap:10px; color:#fff; text-decoration:none }
.site-header .brand img{ height:30px; width:auto; display:block }
.site-header nav ul{ display:flex; gap:18px; list-style:none; margin:0; padding:0 }
.site-header nav a{ font-weight:800; color:#fff; text-decoration:none }
.site-header nav a:hover{ text-decoration:underline }
@media (max-width:900px){ .site-header nav{ display:none } }

/* -------------------- Hero -------------------- */
.hero{
  position:relative; border-radius:18px; overflow:hidden;
  background-image: var(--hero-overlay), var(--hero, none);
  background-size:cover; background-position:center; background-repeat:no-repeat;
  padding: clamp(48px,6vw,84px) 18px; text-align:center;
}
.hero h1{ margin-bottom:8px }
.hero .lead{ color:var(--muted); max-width:70ch; margin-inline:auto }
.hero .actions{ margin-top:14px; display:flex; gap:10px; flex-wrap:wrap; justify-content:center }

/* Set with: .hero{ --hero: url("…/image.jpg") } */

/* -------------------- Pricing (cards) -------------------- */
.pricing{ display:grid; gap:18px; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)) }
.pricing .plan{ composes: card }
.pricing .price{ font:900 34px/1 ui-sans-serif; color:#ffd700; margin:6px 0 2px }
.pricing .per{ font:700 12px/1.2 ui-sans-serif; color:var(--muted); margin-bottom:10px }
.pricing .save{ display:inline-block; background:rgba(34,197,94,.12); color:#86efac; border:1px solid rgba(34,197,94,.25); padding:4px 8px; border-radius:999px; font:800 11px/1; margin-bottom:10px }
.pricing ul{ list-style:none; padding:0; margin:8px 0 16px }
.pricing li{ display:flex; align-items:flex-start; gap:8px; padding:7px 0; border-bottom:1px solid var(--ring); color:var(--muted); font-size:14px }
.pricing li:before{ content:"✔"; color:#ffd700; font-weight:900 }

/* -------------------- Footer -------------------- */
.site-footer{
  border-top:1px solid var(--ring); background:linear-gradient(180deg,#0a1020,#0b1220);
  padding:30px 0; color:var(--muted)
}
.site-footer .wrap{ display:grid; gap:18px; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) }
.site-footer a{ color:#fff }
.site-footer .copyright{ margin-top:14px; text-align:center; font-weight:700; color:#cfe1ff; opacity:.9 }

/* -------------------- Notices / Alerts -------------------- */
.notice{ composes: card; padding:12px 14px }
.notice.ok{ border-color:rgba(34,197,94,.45); background:rgba(34,197,94,.10) }
.notice.warn{ border-color:rgba(245,158,11,.45); background:rgba(245,158,11,.10) }
.notice.err{ border-color:rgba(239,68,68,.45); background:rgba(239,68,68,.10) }

/* -------------------- Utilities (extras) -------------------- */
.hide{ display:none !important }
.shadow{ box-shadow:var(--shadow) }
.round{ border-radius:var(--radius) }
.border{ border:1px solid var(--ring) }
.bg-panel{ background:linear-gradient(180deg,var(--panel),var(--panel2)) }
.border-accent{ border-color:rgba(255,46,134,.45) }
.text-accent{ color:#ffb3d2 }

/* -------------------- Header scroll JS helper (optional) -------------------- */
/* Add this tiny snippet once in your site if you use .site-header:
<script>
  (function(){const h=document.querySelector('.site-header'); if(!h) return;
    const on=()=>h.classList.toggle('is-scrolled',(window.pageYOffset||0)>10);
    window.addEventListener('scroll',on,{passive:true}); on();
  })();
</script>
*//* End custom CSS */