/*
Theme Name:        Combat Studio
Theme URI:         https://combatstudio.lk
Author:            Combat Studio
Author URI:        https://combatstudio.lk
Description:       Plug-and-play WordPress landing page theme for Combat Studio — martial arts studio management software. Targets karate schools, BJJ academies, MMA gyms and Muay Thai studios across Sri Lanka, UAE, Saudi Arabia and Asia. Features hero, feature grid, 12-slide interactive demo, pricing, comparison table, FAQ, and FormSubmit-powered contact form. Activate, set your email in Customizer, publish. Keywords: martial arts studio management software, dojo management software, BJJ gym software, karate school management, MMA gym software Sri Lanka, dojo management software UAE.
Version:           1.0.0
Requires at least: 5.8
Tested up to:      6.6
Requires PHP:      7.4
License:           GNU General Public License v2 or later
License URI:       http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:       combat-studio
Tags:              one-page, landing-page, custom-colors, full-width-template, business, portfolio
*/

/* ── WordPress baseline ─────────────────────────────── */
.wp-site-blocks, .entry-content { all: unset }
#wpadminbar ~ * { margin-top: 0 !important }
body.admin-bar nav { top: 32px !important }
@media (max-width: 782px) { body.admin-bar nav { top: 46px !important } }
img { max-width: 100%; height: auto; display: block }
*, *::before, *::after { box-sizing: border-box }

/* ── Theme styles ───────────────────────────────────── */
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}
:root{
  --bg:#FFFFFF; --bg2:#F6F5F3; --bg3:#EEECEA; --bg4:#E5E3DF;
  --red:#C41E3A; --red2:#A8182F; --red-t:rgba(196,30,58,.07);
  --gold:#9A7808; --gold2:#7D6006;
  --txt:#1A1A1A; --txt2:#555; --txt3:#888; --txt4:#BBB;
  --bdr:#E2E0DC; --bdr2:#D0CEC9; --bdr3:#B8B5AF;
  --ok:#1a9e50; --nav-h:66px;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Barlow',sans-serif;background:var(--bg);color:var(--txt);overflow-x:hidden;line-height:1.6}
a{color:inherit;text-decoration:none}
::selection{background:rgba(196,30,58,.15);color:var(--red)}
::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg2)}::-webkit-scrollbar-thumb{background:var(--bdr2)}

/* ── Reveal ── */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .55s ease,transform .55s ease}
.reveal.visible{opacity:1;transform:none}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.18s}.reveal.d3{transition-delay:.26s}.reveal.d4{transition-delay:.34s}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;height:var(--nav-h);z-index:900;
  background:rgba(255,255,255,.95);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--bdr);display:flex;align-items:center;
  justify-content:space-between;padding:0 48px;transition:box-shadow .2s}
nav.scrolled{box-shadow:0 2px 20px rgba(0,0,0,.07)}
.nav-logo{font-family:'Bebas Neue',sans-serif;font-size:22px;letter-spacing:5px;color:var(--red)}
.nav-links{display:flex;align-items:center;gap:34px}
.nav-links a{font-family:'Barlow Condensed',sans-serif;font-size:11.5px;letter-spacing:2px;
  text-transform:uppercase;color:var(--txt3);transition:color .14s}
.nav-links a:hover{color:var(--red)}
.nav-cta{background:var(--red);color:#fff;padding:9px 22px;border-radius:3px;
  font-family:'Barlow Condensed',sans-serif;font-size:12px;letter-spacing:1.5px;
  text-transform:uppercase;transition:background .14s,transform .12s;cursor:pointer;border:none}
.nav-cta:hover{background:var(--red2);transform:translateY(-1px)}
.mob-btn{display:none;background:none;border:none;color:var(--txt);font-size:24px;cursor:pointer}

/* ── HERO ── */
#hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;
  padding:calc(var(--nav-h)+70px) 48px 90px;overflow:hidden;background:var(--bg)}
.hero-grid{position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,transparent,transparent 80px,rgba(196,30,58,.04) 80px,rgba(196,30,58,.04) 81px),
             repeating-linear-gradient(90deg,transparent,transparent 80px,rgba(196,30,58,.04) 80px,rgba(196,30,58,.04) 81px)}
.hero-stripe{display:none}
.hero-inner{position:relative;z-index:2;max-width:860px;text-align:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--red-t);
  border:1px solid rgba(196,30,58,.18);border-radius:2px;padding:5px 14px;
  font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:3px;
  text-transform:uppercase;color:var(--red);margin-bottom:24px}
h1.hero-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(52px,8vw,100px);
  letter-spacing:3px;line-height:.93;margin-bottom:26px;color:var(--txt)}
h1.hero-title em{color:var(--red);font-style:normal}
.hero-sub{font-size:clamp(15px,1.8vw,17.5px);color:var(--txt2);max-width:600px;
  margin:0 auto 42px;font-weight:300;line-height:1.8}
.hero-sub strong{color:var(--txt);font-weight:600}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-bottom:48px}
.btn-p{background:var(--red);color:#fff;padding:14px 32px;border-radius:3px;
  font-family:'Bebas Neue',sans-serif;font-size:18px;letter-spacing:2px;
  transition:background .14s,transform .12s;cursor:pointer;border:none;
  display:inline-flex;align-items:center;gap:8px}
.btn-p:hover{background:var(--red2);transform:translateY(-2px)}
.btn-o{background:transparent;color:var(--txt);padding:14px 32px;border-radius:3px;
  border:1.5px solid var(--bdr2);font-family:'Bebas Neue',sans-serif;font-size:18px;
  letter-spacing:2px;transition:border-color .14s,color .14s,transform .12s;
  cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.btn-o:hover{border-color:var(--red);color:var(--red);transform:translateY(-2px)}
.trust-row{display:flex;gap:22px;flex-wrap:wrap;justify-content:center}
.trust-item{display:flex;align-items:center;gap:7px;
  font-family:'Barlow Condensed',sans-serif;font-size:11.5px;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--txt3)}
.trust-dot{width:5px;height:5px;border-radius:50%;background:var(--ok)}

/* ── STATS ── */
#stats{background:var(--red);padding:24px 48px}
.stats-g{max-width:960px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);
  gap:20px;text-align:center}
.stat-n{font-family:'Bebas Neue',sans-serif;font-size:38px;letter-spacing:2px;color:#fff;line-height:1}
.stat-l{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:2.5px;
  text-transform:uppercase;color:rgba(255,255,255,.7);margin-top:2px}

/* ── SECTION WRAPPER ── */
.sec{padding:96px 48px}
.sec-inner{max-width:1120px;margin:0 auto}

/* ── FEATURES ── */
#features{background:var(--bg2)}
.feat-header{text-align:center;max-width:680px;margin:0 auto 56px}
.feat-eyebrow{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:4px;
  text-transform:uppercase;color:var(--red);margin-bottom:12px}
.feat-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(36px,5vw,54px);
  letter-spacing:3px;line-height:1;margin-bottom:18px;color:var(--txt)}
.feat-title em{color:var(--red);font-style:normal}
.feat-sub{font-size:15.5px;color:var(--txt2);line-height:1.75;max-width:560px;margin:0 auto}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--bdr)}
.feat-item{background:var(--bg);padding:38px 32px;transition:background .15s,transform .15s;
  display:flex;flex-direction:column;gap:0}
.feat-item:hover{background:#fff;transform:translateY(-2px)}
.feat-icon-wrap{width:46px;height:46px;border-radius:10px;background:var(--red-t);
  border:1px solid rgba(196,30,58,.12);display:flex;align-items:center;
  justify-content:center;font-size:22px;margin-bottom:18px;flex-shrink:0}
.feat-name{font-family:'Barlow Condensed',sans-serif;font-size:14px;letter-spacing:2px;
  text-transform:uppercase;font-weight:700;margin-bottom:10px;color:var(--txt)}
.feat-desc{font-size:14px;color:var(--txt2);line-height:1.75;flex:1}
.feat-extra{font-size:12.5px;color:var(--txt3);margin-top:12px;line-height:1.6;
  padding-top:12px;border-top:1px solid var(--bdr)}

/* ── PRICING ── */
#pricing{background:var(--bg);padding:96px 0}
.p-wrap{max-width:1060px;margin:0 auto;padding:0 48px}
.p-eyebrow{text-align:center;font-family:'Barlow Condensed',sans-serif;font-size:10px;
  letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:12px}
.p-title{text-align:center;font-family:'Bebas Neue',sans-serif;
  font-size:clamp(38px,5vw,58px);letter-spacing:3px;margin-bottom:12px;color:var(--txt)}
.p-sub{text-align:center;font-size:14.5px;color:var(--txt2);margin-bottom:60px;line-height:1.7}
.p-sub strong{color:var(--red);font-weight:600}
.fight-label{text-align:center;font-family:'Barlow Condensed',sans-serif;font-size:10px;
  letter-spacing:4px;text-transform:uppercase;color:var(--txt4);margin-bottom:18px;
  display:flex;align-items:center;gap:16px;justify-content:center}
.fight-label::before,.fight-label::after{content:'';flex:1;height:1px;background:var(--bdr)}
.p-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--bdr)}
.plan{background:var(--bg);position:relative;border-right:1px solid var(--bdr)}
.plan:last-child{border-right:none}
.plan-inner{padding:36px 30px;height:100%;display:flex;flex-direction:column}
.plan.standard{background:var(--bg2)}
.plan.standard::before{content:'★ MOST POPULAR';position:absolute;top:-1px;left:50%;
  transform:translateX(-50%);background:var(--red);color:#fff;padding:5px 18px;
  font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:2.5px;
  text-transform:uppercase;white-space:nowrap}
.plan.pro::before{content:'⚔ CHAMPION TIER';position:absolute;top:-1px;left:50%;
  transform:translateX(-50%);background:var(--gold);color:#fff;padding:5px 18px;
  font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:2.5px;
  text-transform:uppercase;white-space:nowrap}
.plan-belt{height:3px;margin-bottom:28px}
.starter .plan-belt{background:#3498db}
.standard .plan-belt{background:var(--red)}
.pro .plan-belt{background:var(--gold)}
.plan-name{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:3px;
  text-transform:uppercase;color:var(--txt3);margin-bottom:4px}
.standard .plan-name{color:var(--red)}
.pro .plan-name{color:var(--gold)}
.plan-price{font-family:'Bebas Neue',sans-serif;font-size:64px;letter-spacing:2px;
  line-height:1;color:var(--txt);margin-bottom:2px;display:flex;align-items:flex-start;gap:3px}
.plan-price sup{font-size:26px;margin-top:10px;font-family:'Barlow Condensed',sans-serif}
.plan-price sub{font-size:15px;align-self:flex-end;margin-bottom:7px;color:var(--txt3);
  font-family:'Barlow',sans-serif;font-weight:300}
.plan-tagline{font-size:13px;color:var(--txt2);margin-bottom:20px;line-height:1.6;min-height:40px}
.plan-limit{background:var(--bg3);border-radius:3px;padding:10px 13px;margin-bottom:20px;
  font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--txt3);border:1px solid var(--bdr)}
.plan-limit strong{color:var(--txt);font-size:15px;display:block;margin-bottom:1px;letter-spacing:0}
.standard .plan-limit{background:rgba(196,30,58,.05);border-color:rgba(196,30,58,.12)}
.standard .plan-limit strong{color:var(--red)}
.pro .plan-limit{background:rgba(154,120,8,.05);border-color:rgba(154,120,8,.15)}
.pro .plan-limit strong{color:var(--gold)}
.plan-feats{list-style:none;display:flex;flex-direction:column;gap:9px;flex:1}
.plan-feats li{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;color:var(--txt2);line-height:1.5}
.plan-feats li.y{color:var(--txt)}
.plan-feats li.n{color:var(--txt4);text-decoration:line-through}
.fck{flex-shrink:0;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:9px;margin-top:2px}
.y .fck{background:rgba(26,158,80,.12);color:var(--ok)}
.n .fck{background:var(--bg3);color:var(--txt4)}
.plan-cta-btn{display:block;text-align:center;margin-top:26px;padding:12px;border-radius:3px;
  font-family:'Bebas Neue',sans-serif;font-size:16px;letter-spacing:2px;cursor:pointer;
  transition:all .15s;border:none;width:100%}
.starter .plan-cta-btn{background:transparent;color:var(--txt3);border:1.5px solid var(--bdr2)}
.starter .plan-cta-btn:hover{border-color:var(--txt);color:var(--txt)}
.standard .plan-cta-btn{background:var(--red);color:#fff}
.standard .plan-cta-btn:hover{background:var(--red2)}
.pro .plan-cta-btn{background:var(--gold);color:#fff}
.pro .plan-cta-btn:hover{background:var(--gold2)}

/* ── COMPARE TABLE ── */
#compare{background:var(--bg2)}
.cmp-tbl{width:100%;border-collapse:collapse;font-size:13.5px}
.cmp-tbl thead th{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:2.5px;
  text-transform:uppercase;color:var(--txt3);padding:14px 18px;border-bottom:1px solid var(--bdr);
  text-align:left;background:var(--bg3)}
.cmp-tbl thead th:not(:first-child){text-align:center}
.cmp-tbl thead th.cs{color:var(--red)}.cmp-tbl thead th.cp{color:var(--gold)}
.cat-r td{background:var(--bg3);padding:10px 18px;font-family:'Barlow Condensed',sans-serif;
  font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--txt3);
  border-bottom:1px solid var(--bdr)}
.cmp-tbl tbody tr:not(.cat-r){border-bottom:1px solid var(--bdr)}
.cmp-tbl tbody tr:not(.cat-r):hover{background:rgba(0,0,0,.02)}
.cmp-tbl td{padding:12px 18px;color:var(--txt2)}
.cmp-tbl td:not(:first-child){text-align:center}
.cmp-tbl td.fl{color:var(--txt);font-size:13px}
.cy{color:var(--ok);font-size:16px}.cn{color:var(--txt4);font-size:14px}
.cv{font-family:'Barlow Condensed',sans-serif;font-size:12px;letter-spacing:1px;color:var(--txt3)}
.cv.hi{color:var(--txt)}
.cmp-tbl tfoot td{padding:16px 18px;border-top:1px solid var(--bdr);background:var(--bg3)}

/* ── HOW ── */
#how{background:var(--bg)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--bdr)}
.step{padding:52px 44px;border-right:1px solid var(--bdr)}
.step:last-child{border-right:none}
.step-n{font-family:'Bebas Neue',sans-serif;font-size:84px;letter-spacing:2px;
  color:var(--bdr2);line-height:1;margin-bottom:18px;display:block}
.step-name{font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:3px;
  margin-bottom:10px;color:var(--txt)}
.step-desc{font-size:14px;color:var(--txt2);line-height:1.8}

/* ── FAQ ── */
#faq{background:var(--bg2)}
.faq-list{max-width:720px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--bdr)}
.faq-q{padding:22px 0;display:flex;align-items:center;justify-content:space-between;
  gap:16px;cursor:pointer;user-select:none}
.faq-qt{font-size:15px;font-weight:500;color:var(--txt);line-height:1.4}
.faq-ic{width:22px;height:22px;border-radius:50%;background:var(--bg3);border:1px solid var(--bdr);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px;
  color:var(--txt3);transition:all .2s}
.faq-item.open .faq-ic{background:var(--red);border-color:var(--red);color:#fff;transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;font-size:14px;color:var(--txt2);line-height:1.8}
.faq-item.open .faq-a{max-height:400px;padding-bottom:22px}

/* ── FINAL CTA ── */
#cta-final{background:var(--red);padding:110px 48px;text-align:center;position:relative;overflow:hidden}
#cta-final::before{content:'';position:absolute;inset:0;
  background:repeating-linear-gradient(0deg,transparent,transparent 60px,rgba(255,255,255,.04) 60px,rgba(255,255,255,.04) 61px),
             repeating-linear-gradient(90deg,transparent,transparent 60px,rgba(255,255,255,.04) 60px,rgba(255,255,255,.04) 61px);
  pointer-events:none}
.cta-inner{position:relative;z-index:2}
.cta-kicker{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:4px;
  text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:16px}
.cta-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(40px,6vw,70px);letter-spacing:3px;
  line-height:1;margin-bottom:18px;color:#fff}
.cta-sub{font-size:15px;color:rgba(255,255,255,.8);max-width:500px;margin:0 auto 42px;line-height:1.75}
.btn-white{background:#fff;color:var(--red);padding:15px 36px;border-radius:3px;
  font-family:'Bebas Neue',sans-serif;font-size:18px;letter-spacing:2px;
  transition:all .14s;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:8px}
.btn-white:hover{background:var(--bg2);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:#fff;padding:15px 36px;border-radius:3px;
  border:1.5px solid rgba(255,255,255,.4);font-family:'Bebas Neue',sans-serif;font-size:18px;
  letter-spacing:2px;transition:all .14s;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.btn-ghost:hover{border-color:#fff;transform:translateY(-2px)}
.cta-note{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:2px;
  text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:24px}

/* ── CONTACT FORM ── */
#contact{background:var(--bg);padding:96px 48px}
.contact-inner{max-width:860px;margin:0 auto}
.form-header{margin-bottom:48px}
.form-header .sec-eyebrow{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:12px}
.form-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(36px,5vw,52px);letter-spacing:3px;margin-bottom:14px;color:var(--txt)}
.form-title em{color:var(--red);font-style:normal}
.form-sub{font-size:15px;color:var(--txt2);line-height:1.75;max-width:500px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-input{width:100%;padding:13px 16px;background:var(--bg2);border:1.5px solid var(--bdr);
  border-radius:4px;font-family:'Barlow',sans-serif;font-size:14px;color:var(--txt);
  transition:border-color .14s;outline:none}
.form-input:focus{border-color:var(--red);background:var(--bg)}
.form-input::placeholder{color:var(--txt4)}
textarea.form-input{resize:vertical;min-height:150px;grid-column:1/-1}
.form-submit{grid-column:1/-1}

/* ── FOOTER ── */
footer{background:var(--bg2);border-top:1px solid var(--bdr);padding:48px}
.foot-in{max-width:1060px;margin:0 auto;display:flex;justify-content:space-between;
  align-items:flex-start;flex-wrap:wrap;gap:32px}
.foot-logo{font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:5px;
  color:var(--red);margin-bottom:6px}
.foot-tag{font-size:12.5px;color:var(--txt3)}
.foot-links{display:flex;gap:28px;flex-wrap:wrap}
.foot-links a{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:2px;
  text-transform:uppercase;color:var(--txt3);transition:color .14s}
.foot-links a:hover{color:var(--red)}
.foot-copy{font-size:12px;color:var(--txt4);margin-top:36px;text-align:center;
  border-top:1px solid var(--bdr);padding-top:24px;max-width:1060px;margin-left:auto;margin-right:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  nav{padding:0 20px}.nav-links{display:none}.mob-btn{display:block}
  #hero{padding:calc(var(--nav-h)+40px) 24px 60px}
  .hero-stripe{display:none}
  .sec{padding:60px 24px}
  #contact{padding:60px 24px}
  #cta-final{padding:80px 24px}
  .feat-grid{grid-template-columns:repeat(2,1fr)}
  .p-grid{grid-template-columns:1fr;border:1px solid var(--bdr)}
  .plan{border-right:none;border-bottom:1px solid var(--bdr)}
  .plan:last-child{border-bottom:none}
  .steps{grid-template-columns:1fr;border-top:none}
  .step{border-right:none;border-top:1px solid var(--bdr);padding:32px 24px}
  .step:first-child{border-top:none}
  .stats-g{grid-template-columns:repeat(2,1fr)}
  .p-wrap{padding:0 24px}
  .foot-in{flex-direction:column}
  .form-grid{grid-template-columns:1fr}
  textarea.form-input{grid-column:auto}
  .form-submit{grid-column:auto}
  footer{padding:40px 24px}
}
@media(max-width:600px){
  .feat-grid{grid-template-columns:1fr}
  h1.hero-title{letter-spacing:2px}
  .foot-links{flex-direction:column;gap:14px}
  .hero-ctas{flex-direction:column}
}

/* ═══ DEMO SECTION ══════════════════════════════════════════════════ */
#demo{background:#07070A;padding:0;overflow:hidden}
.demo-hdr{padding:80px 48px 52px;text-align:center;max-width:860px;margin:0 auto}
.demo-hdr .feat-eyebrow{color:var(--red)}
.demo-hdr .feat-title{color:#F0EBE3}
.demo-hdr .feat-sub{color:#8A8A8A;max-width:600px;margin:0 auto}
.demo-note{text-align:center;padding:20px 24px 48px;font-family:'Barlow Condensed',sans-serif;
  font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#3a3a3a}
.demo-note span{color:#555;margin:0 10px}

/* deck wrapper */
#demo-deck{width:1280px;height:720px;position:relative;overflow:hidden;
  background:#07070A;margin:0 auto;border-top:1px solid #111;border-bottom:1px solid #111}
@media(max-width:1300px){#demo-deck{width:100vw;height:calc(100vw * 9/16)}}

/* slides */
#demo-deck .slide{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;
  justify-content:center;opacity:0;pointer-events:none;transition:opacity .5s ease}
#demo-deck .slide.active{opacity:1;pointer-events:auto}

/* backgrounds */
#demo-deck .bg-grid{position:absolute;inset:0;pointer-events:none;z-index:0;
  background:repeating-linear-gradient(0deg,transparent,transparent 60px,rgba(196,30,58,.04) 60px,rgba(196,30,58,.04) 61px),
             repeating-linear-gradient(90deg,transparent,transparent 60px,rgba(196,30,58,.04) 60px,rgba(196,30,58,.04) 61px)}
#demo-deck .bg-glow{position:absolute;width:700px;height:700px;border-radius:50%;
  background:radial-gradient(circle,rgba(196,30,58,.12) 0%,transparent 70%);
  top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:0}
#demo-deck .bg-glow-gold{background:radial-gradient(circle,rgba(201,162,39,.1) 0%,transparent 70%)}
#demo-deck .dk-content{position:relative;z-index:2;width:100%;padding:60px 80px}
#demo-deck .split{display:grid;grid-template-columns:1fr 1fr;height:100%;align-items:center}
#demo-deck .split-l{padding:60px 70px;background:#0f0f14;height:100%;display:flex;flex-direction:column;
  justify-content:center;position:relative;z-index:2}
#demo-deck .split-r{padding:60px 70px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}

/* typography */
#demo-deck .kicker{font-family:'Barlow Condensed',sans-serif;font-size:13px;letter-spacing:4px;
  text-transform:uppercase;color:#C41E3A;margin-bottom:16px}
#demo-deck .kicker.gold{color:#C9A227}
#demo-deck .mega{font-family:'Bebas Neue',sans-serif;font-size:96px;letter-spacing:4px;line-height:.92;color:#F0EBE3}
#demo-deck .mega em{color:#C41E3A;font-style:normal}
#demo-deck .mega.sm{font-size:72px}
#demo-deck .mega.xs{font-size:54px}
#demo-deck .tagline{font-size:20px;color:#9a9a9a;font-weight:300;line-height:1.65;max-width:680px;margin-top:20px}
#demo-deck .tagline strong{color:#F0EBE3;font-weight:500}
#demo-deck .sub-t{font-size:16px;color:#9a9a9a;line-height:1.7;max-width:580px}
#demo-deck .sub-t strong{color:#F0EBE3;font-weight:500}

/* feature cards */
#demo-deck .dk-feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:100%;margin-top:32px}
#demo-deck .dk-fc{background:#16161c;border:1px solid rgba(255,255,255,.06);border-radius:5px;padding:22px 20px;
  opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease}
#demo-deck .dk-fc.in{opacity:1;transform:translateY(0)}
#demo-deck .dk-fc-icon{font-size:24px;margin-bottom:10px}
#demo-deck .dk-fc-name{font-family:'Barlow Condensed',sans-serif;font-size:12px;letter-spacing:2px;
  text-transform:uppercase;color:#F0EBE3;font-weight:700;margin-bottom:6px}
#demo-deck .dk-fc-desc{font-size:12px;color:#9a9a9a;line-height:1.6}
#demo-deck .dk-fc.highlight{border-color:rgba(196,30,58,.35);background:rgba(196,30,58,.06)}

/* stat blocks */
#demo-deck .stat-row{display:flex;gap:28px;margin-top:32px;flex-wrap:wrap}
#demo-deck .dk-stat-blk{text-align:center;padding:20px 28px;background:#16161c;border:1px solid rgba(255,255,255,.06);
  border-radius:4px;flex:1;min-width:120px;opacity:0;transform:translateY(16px);
  transition:opacity .5s ease,transform .5s ease}
#demo-deck .dk-stat-blk.in{opacity:1;transform:translateY(0)}
#demo-deck .dk-stat-n{font-family:'Bebas Neue',sans-serif;font-size:52px;color:#C41E3A;line-height:1}
#demo-deck .dk-stat-l{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:2px;
  text-transform:uppercase;color:#444;margin-top:4px}

/* plan cards */
#demo-deck .plan-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;width:100%;margin-top:28px}
#demo-deck .dk-pc{background:#16161c;border:1px solid rgba(255,255,255,.07);border-radius:5px;
  padding:24px 20px;opacity:0;transform:translateY(18px);
  transition:opacity .5s ease,transform .5s ease;position:relative}
#demo-deck .dk-pc.in{opacity:1;transform:translateY(0)}
#demo-deck .dk-pc.featured{border-color:#C41E3A;background:rgba(196,30,58,.07)}
#demo-deck .dk-pc.champion{border-color:rgba(201,162,39,.4);background:rgba(201,162,39,.05)}
#demo-deck .dk-pc-badge{position:absolute;top:-10px;left:50%;transform:translateX(-50%);
  background:#C41E3A;color:#fff;padding:3px 14px;font-family:'Barlow Condensed',sans-serif;
  font-size:9px;letter-spacing:2px;text-transform:uppercase;white-space:nowrap;border-radius:1px}
#demo-deck .dk-pc.champion .dk-pc-badge{background:#C9A227;color:#000}
#demo-deck .dk-pc-name{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:2.5px;
  text-transform:uppercase;color:#9a9a9a;margin-bottom:6px}
#demo-deck .dk-pc.featured .dk-pc-name{color:rgba(196,30,58,.8)}
#demo-deck .dk-pc.champion .dk-pc-name{color:#C9A227}
#demo-deck .dk-pc-price{font-family:'Bebas Neue',sans-serif;font-size:48px;color:#F0EBE3;line-height:1;margin-bottom:8px}
#demo-deck .dk-pc-price sup{font-size:22px;vertical-align:top;margin-top:8px;display:inline-block}
#demo-deck .dk-pc-price span{font-size:14px;color:#555;font-family:'Barlow',sans-serif;font-weight:300}
#demo-deck .dk-pc-feat{list-style:none;margin-top:12px;display:flex;flex-direction:column;gap:7px}
#demo-deck .dk-pc-feat li{font-size:12px;color:#9a9a9a;display:flex;align-items:flex-start;gap:7px;line-height:1.4}
#demo-deck .dk-pc-feat li::before{content:'✓';color:#2ECC71;font-size:11px;flex-shrink:0;margin-top:1px}
#demo-deck .dk-pc-feat li.no{color:#444;text-decoration:line-through}
#demo-deck .dk-pc-feat li.no::before{content:'✕';color:#444}

/* checklist */
#demo-deck .check-list{display:flex;flex-direction:column;gap:14px;margin-top:22px}
#demo-deck .cl-item{display:flex;align-items:flex-start;gap:14px;
  opacity:0;transform:translateX(-14px);transition:opacity .45s ease,transform .45s ease}
#demo-deck .cl-item.in{opacity:1;transform:translateX(0)}
#demo-deck .cl-dot{width:22px;height:22px;border-radius:50%;background:rgba(46,204,113,.15);
  border:1px solid rgba(46,204,113,.3);display:flex;align-items:center;justify-content:center;
  font-size:11px;color:#2ECC71;flex-shrink:0;margin-top:1px}
#demo-deck .cl-text{font-size:15px;color:#9a9a9a;line-height:1.5}
#demo-deck .cl-text strong{color:#F0EBE3;font-weight:500}

/* flow steps */
#demo-deck .flow{display:flex;align-items:center;gap:0;margin-top:28px;width:100%}
#demo-deck .flow-step{flex:1;text-align:center;padding:24px 16px;background:#16161c;
  border:1px solid rgba(255,255,255,.06);border-radius:4px;margin:0 6px;
  opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
#demo-deck .flow-step.in{opacity:1;transform:translateY(0)}
#demo-deck .flow-n{font-family:'Bebas Neue',sans-serif;font-size:40px;color:#C41E3A;line-height:1;margin-bottom:10px}
#demo-deck .flow-title{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:2px;
  text-transform:uppercase;color:#F0EBE3;font-weight:700;margin-bottom:7px}
#demo-deck .flow-desc{font-size:11.5px;color:#9a9a9a;line-height:1.55}

/* UI mockup */
#demo-deck .ui-mock{background:#16161c;border:1px solid rgba(255,255,255,.08);border-radius:6px;
  overflow:hidden;width:480px;box-shadow:0 24px 60px rgba(0,0,0,.6)}
#demo-deck .mock-bar{background:#0f0f14;padding:10px 16px;display:flex;align-items:center;gap:8px;
  border-bottom:1px solid rgba(255,255,255,.06)}
#demo-deck .mock-dot{width:10px;height:10px;border-radius:50%}
#demo-deck .mock-title{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:2px;
  text-transform:uppercase;color:#444;margin-left:8px}
#demo-deck .mock-body{padding:18px}
#demo-deck .mock-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}
#demo-deck .ms{background:#0f0f14;border-radius:4px;padding:10px 12px;border-left:3px solid #C41E3A}
#demo-deck .ms.g{border-left-color:#2ECC71}#demo-deck .ms.y{border-left-color:#C9A227}
#demo-deck .ms-n{font-family:'Bebas Neue',sans-serif;font-size:28px;color:#F0EBE3;line-height:1}
#demo-deck .ms-l{font-size:9px;color:#444;font-family:'Barlow Condensed',sans-serif;letter-spacing:1px;text-transform:uppercase;margin-top:2px}
#demo-deck .mock-table{width:100%}
#demo-deck .mock-table th{font-size:9px;font-family:'Barlow Condensed',sans-serif;letter-spacing:1.5px;
  text-transform:uppercase;color:#444;padding:7px 10px;text-align:left;border-bottom:1px solid rgba(255,255,255,.05)}
#demo-deck .mock-table td{font-size:11px;color:#9a9a9a;padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.04)}
#demo-deck .tag{display:inline-block;padding:1px 7px;border-radius:2px;font-size:9px;font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:1px}
#demo-deck .tag.g{background:rgba(46,204,113,.12);color:#2ECC71}
#demo-deck .tag.r{background:rgba(231,76,60,.12);color:#e74c3c}
#demo-deck .tag.au{background:rgba(201,162,39,.12);color:#C9A227}

/* end card price chips */
#demo-deck .end-url{font-family:'Bebas Neue',sans-serif;font-size:26px;letter-spacing:4px;
  color:rgba(196,30,58,.6);margin-top:28px;border-top:1px solid rgba(196,30,58,.2);
  padding-top:18px;width:100%;text-align:center}
#demo-deck .price-row{display:flex;gap:24px;margin-top:24px;justify-content:center}
#demo-deck .price-chip{padding:10px 24px;border-radius:3px;text-align:center}
#demo-deck .price-chip .amt{font-family:'Bebas Neue',sans-serif;font-size:34px;letter-spacing:2px}
#demo-deck .price-chip .lbl{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:2px;
  text-transform:uppercase;color:#444;margin-top:2px}
#demo-deck .price-chip.s{background:#16161c;border:1px solid rgba(255,255,255,.08)}
#demo-deck .price-chip.m{background:rgba(196,30,58,.1);border:1px solid rgba(196,30,58,.3)}
#demo-deck .price-chip.m .amt{color:#C41E3A}
#demo-deck .price-chip.p{background:rgba(201,162,39,.08);border:1px solid rgba(201,162,39,.3)}
#demo-deck .price-chip.p .amt{color:#C9A227}

/* deck controls */
#dk-progress{position:absolute;bottom:0;left:0;height:3px;background:#C41E3A;transition:width .7s ease;z-index:100}
#dk-counter{position:absolute;bottom:18px;right:28px;font-family:'Barlow Condensed',sans-serif;
  font-size:11px;letter-spacing:2px;color:#333;z-index:100;text-transform:uppercase}
#dk-skip{position:absolute;top:18px;right:20px;font-family:'Barlow Condensed',sans-serif;
  font-size:11px;letter-spacing:2px;color:#444;z-index:100;text-transform:uppercase;
  background:none;border:1px solid #333;border-radius:2px;padding:5px 14px;cursor:pointer;transition:all .15s}
#dk-skip:hover{color:#F0EBE3;border-color:#555}
#dk-playpause{position:absolute;bottom:12px;left:20px;font-family:'Barlow Condensed',sans-serif;
  font-size:11px;letter-spacing:2px;color:#444;z-index:100;text-transform:uppercase;
  background:none;border:1px solid #333;border-radius:2px;padding:5px 14px;cursor:pointer;transition:all .15s}
#dk-playpause:hover{color:#F0EBE3;border-color:#555}

/* deck keyframes */
@keyframes dkSlideUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes dkFade{from{opacity:0}to{opacity:1}}
@keyframes dkScale{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
#demo-deck .anim-up{animation:dkSlideUp .7s ease both}
#demo-deck .anim-fade{animation:dkFade .8s ease both}
#demo-deck .anim-scale{animation:dkScale .6s ease both}
#demo-deck .d1{animation-delay:.1s}#demo-deck .d2{animation-delay:.25s}
#demo-deck .d3{animation-delay:.4s}#demo-deck .d4{animation-delay:.55s}

@media(max-width:900px){
  .demo-hdr{padding:60px 24px 36px}
  .demo-note{padding:14px 24px 36px}
  #demo-deck .dk-feat-grid{grid-template-columns:1fr 1fr}
  #demo-deck .split{grid-template-columns:1fr}
  #demo-deck .split-l,.demo-deck .split-r{padding:30px 24px}
  #demo-deck .mega{font-size:56px}
  #demo-deck .mega.sm{font-size:46px}
  #demo-deck .mega.xs{font-size:36px}
  #demo-deck .dk-content{padding:30px 24px}
  #demo-deck .ui-mock{width:100%;max-width:400px}
  #demo-deck .plan-row{grid-template-columns:1fr}
  #demo-deck .flow{flex-direction:column}
  #demo-deck .flow-step{width:100%;margin:4px 0}
  #demo-deck .tagline{font-size:15px}
}

/* ── WhatsApp float ─────────────────────────────────── */
.cs-wa-btn {
  position: fixed; bottom: 28px; right: 28px; z-index: 800;
  width: 54px; height: 54px; border-radius: 50%; background: #25D366;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 18px rgba(0,0,0,.25); font-size: 26px;
  text-decoration: none; transition: transform .15s, box-shadow .15s;
}
.cs-wa-btn:hover { transform: scale(1.1); box-shadow: 0 6px 24px rgba(0,0,0,.35) }

/* ── Thank-you banner ───────────────────────────────── */
.cs-thankyou {
  background: rgba(26,158,80,.06); border: 1px solid rgba(26,158,80,.2);
  border-left: 4px solid var(--ok); border-radius: 4px;
  padding: 24px 28px; margin-bottom: 32px;
}
.cs-thankyou .ty-title {
  font-family: 'Bebas Neue', sans-serif; font-size: 22px;
  letter-spacing: 2px; color: var(--ok); margin-bottom: 8px;
}
.cs-thankyou p { font-size: 14px; color: var(--txt2); line-height: 1.7 }
.cs-thankyou a { color: var(--red) }
