/* ══ MasterRV Template Store ══
   Loaded AFTER presentation-design-page.css – reuses its nav, footer, buttons,
   .sec-label / .sec-h2 / .cta-band. Everything here is prefixed ts- so it can
   never clash with existing site styles. */
:root{--ts-teal:#00d5a4;--ts-cyan:#00C8E0;--ts-blue:#3B5BDB;--ts-violet:#7B4ACE;--ts-deep:#1A0533;--ts-card:rgba(255,255,255,0.035);--ts-line:rgba(255,255,255,0.09);--ts-mute:rgba(255,255,255,0.55)}
.ts-wrap{max-width:1300px;margin:0 auto;padding:0 40px}
.ts-sec{padding:90px 0;background:#000;position:relative}
.ts-sec.alt{background:#04020e}
.ts-sec.grad{background:linear-gradient(135deg,#1A0533,#7F4DCB)}
.ts-center{text-align:center}
.ts-center .sec-sub{margin:0 auto}
.ts-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:44px;flex-wrap:wrap}

/* ── HERO ── */
.ts-hero{background:#000;position:relative;overflow:hidden;padding:150px 0 90px}
.ts-hero .pd-hero-bg,.ts-hero .pd-hero-grid{z-index:0}
.ts-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.ts-hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(42px,5vw,72px);font-weight:300;line-height:1.04;letter-spacing:-1.5px;color:#fff;margin-bottom:22px}
.ts-hero h1 em{font-style:italic;color:var(--ts-teal)}
.ts-hero-sub{font-size:16px;color:var(--ts-mute);line-height:1.8;margin-bottom:32px;max-width:540px}
.ts-hero-img{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--ts-line);box-shadow:0 30px 80px rgba(59,91,219,0.25)}
.ts-hero-img img{display:block;width:100%;height:auto}
.ts-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:40px;max-width:560px}
.ts-stat{border:1px solid var(--ts-line);background:var(--ts-card);border-radius:14px;padding:14px 16px}
.ts-stat b{display:block;font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:600;color:#fff;line-height:1}
.ts-stat span{font-size:11.5px;color:var(--ts-mute);letter-spacing:.3px}

/* ── TRUST STRIP ── */
.ts-trust{background:linear-gradient(135deg,#1A0533,#7F4DCB);padding:26px 0}
.ts-trust ul{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ts-trust li{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:600;color:#fff}
.ts-trust li small{display:block;font-weight:400;font-size:12px;color:rgba(255,255,255,0.6)}
.ts-ico{width:40px;height:40px;border-radius:10px;background:rgba(0,213,164,0.14);border:1px solid rgba(0,213,164,0.3);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ts-teal)}
.ts-ico svg{width:20px;height:20px}

/* ── BUTTONS ── */
.ts-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:100px;padding:14px 28px;font-family:'Inter',sans-serif;font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;border:none;transition:transform .15s,opacity .2s,background .2s;white-space:nowrap}
.ts-btn:hover{transform:translateY(-2px)}
.ts-btn-buy{background:var(--ts-teal);color:#04020e}
.ts-btn-buy:hover{opacity:.92}
.ts-btn-grad{background:linear-gradient(135deg,#1A0533,#7F4DCB);color:#fff;border:1px solid rgba(255,255,255,0.15)}
.ts-btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,0.3)}
.ts-btn-ghost:hover{border-color:rgba(255,255,255,0.7)}
.ts-btn-sm{padding:10px 18px;font-size:13.5px}
.ts-btn-block{width:100%}

/* ── BUNDLES ── */
.ts-bundles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ts-bundle{position:relative;border:1px solid var(--ts-line);background:var(--ts-card);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}
.ts-bundle:hover{border-color:rgba(0,213,164,0.45);transform:translateY(-4px)}
.ts-bundle img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.ts-bundle-body{padding:22px 22px 24px;display:flex;flex-direction:column;gap:12px;flex:1}
.ts-bundle h3{font-size:19px;font-weight:700;color:#fff;letter-spacing:-.2px}
.ts-bundle p{font-size:13.5px;color:var(--ts-mute);line-height:1.65}
.ts-bundle-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:6px}
.ts-bundle.featured{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;border-color:rgba(0,213,164,0.5);background:linear-gradient(135deg,rgba(26,5,51,0.9),rgba(127,77,203,0.35))}
.ts-bundle.featured img{height:100%;aspect-ratio:auto}
.ts-bundle.featured .ts-bundle-body{padding:44px;justify-content:center;gap:16px}
.ts-bundle.featured h3{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:400;letter-spacing:-1px;line-height:1.05}
.ts-bundle.featured h3 em{color:var(--ts-teal)}
.ts-ribbon{position:absolute;top:16px;left:16px;z-index:2;background:var(--ts-teal);color:#04020e;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;padding:6px 12px;border-radius:100px}
.ts-incl{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;margin:4px 0 8px}
.ts-incl li{font-size:13.5px;color:rgba(255,255,255,0.75);display:flex;gap:8px;align-items:flex-start}
.ts-incl li::before{content:'✓';color:var(--ts-teal);font-weight:700}

/* ── PRICE ── */
.ts-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.ts-price b{font-size:28px;font-weight:800;color:#fff;letter-spacing:-.5px}
.ts-price s{font-size:15px;color:rgba(255,255,255,0.4)}
.ts-save{font-size:11.5px;font-weight:700;color:var(--ts-teal);background:rgba(0,213,164,0.12);border:1px solid rgba(0,213,164,0.3);padding:3px 9px;border-radius:100px}

/* ── FILTERS + PRODUCT GRID ── */
.ts-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px}
.ts-filter{font-family:'Inter',sans-serif;font-size:13.5px;font-weight:600;color:rgba(255,255,255,0.75);background:var(--ts-card);border:1px solid var(--ts-line);border-radius:100px;padding:9px 18px;cursor:pointer;transition:all .2s}
.ts-filter:hover{border-color:rgba(255,255,255,0.35);color:#fff}
.ts-filter.active{background:var(--ts-teal);border-color:var(--ts-teal);color:#04020e}
.ts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ts-card{border:1px solid var(--ts-line);background:var(--ts-card);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}
.ts-card:hover{border-color:rgba(0,213,164,0.45);transform:translateY(-4px)}
.ts-card-img{display:block;aspect-ratio:4/3;overflow:hidden;background:#1A0533}
.ts-card-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.ts-card:hover .ts-card-img img{transform:scale(1.03)}
.ts-card-body{padding:20px 20px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.ts-cat{font-size:10.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ts-cyan)}
.ts-card h3{font-size:17px;font-weight:700;line-height:1.35;color:#fff}
.ts-card h3 a{color:inherit;text-decoration:none}
.ts-card p{font-size:13.5px;color:var(--ts-mute);line-height:1.6}
.ts-meta{display:flex;gap:8px;flex-wrap:wrap}
.ts-chip{font-size:11.5px;font-weight:600;color:rgba(255,255,255,0.75);border:1px solid var(--ts-line);border-radius:100px;padding:4px 10px}
.ts-card-foot{margin-top:auto;padding-top:8px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.ts-card-foot .ts-price b{font-size:22px}
.ts-hide{display:none!important}

/* ── FEATURES / STEPS ── */
.ts-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ts-feat{border:1px solid var(--ts-line);background:var(--ts-card);border-radius:16px;padding:28px}
.ts-feat .ts-ico{margin-bottom:18px}
.ts-feat h3{font-size:17px;font-weight:700;color:#fff;margin-bottom:8px}
.ts-feat p{font-size:14px;color:var(--ts-mute);line-height:1.7}
.ts-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:st}
.ts-step{border:1px solid rgba(255,255,255,0.18);background:rgba(255,255,255,0.06);border-radius:16px;padding:30px;position:relative}
.ts-step::before{counter-increment:st;content:'0' counter(st);font-family:'Cormorant Garamond',serif;font-size:54px;font-weight:300;color:var(--ts-teal);line-height:1;display:block;margin-bottom:14px}
.ts-step h3{font-size:18px;font-weight:700;color:#fff;margin-bottom:8px}
.ts-step p{font-size:14px;color:rgba(255,255,255,0.7);line-height:1.7}

/* ── FAQ (light section, same as site faq-sec) ── */
.ts-faq{background:#fff;padding:90px 0}
.ts-faq .sec-h2{color:#1a1a2e}
.ts-faq .sec-sub{color:#555}
.ts-faq-list{max-width:900px;margin:40px auto 0}
.ts-faq details{border-bottom:1px solid #e0e0d8}
.ts-faq details:first-child{border-top:1px solid #e0e0d8}
.ts-faq summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:16px;font-weight:600;color:#1a1a2e}
.ts-faq summary::-webkit-details-marker{display:none}
.ts-faq summary::after{content:'+';flex-shrink:0;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#1A0533,#7F4DCB);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:400;transition:transform .3s,background .3s}
.ts-faq details[open] summary::after{transform:rotate(45deg);background:var(--ts-teal)}
.ts-faq details p{font-size:15px;color:#555;line-height:1.75;padding-bottom:22px;max-width:820px}

/* ── PRODUCT PAGE ── */
.ts-crumbs{font-size:12.5px;color:rgba(255,255,255,0.45);margin-bottom:26px}
.ts-crumbs a{color:rgba(255,255,255,0.65);text-decoration:none}
.ts-crumbs a:hover{color:var(--ts-teal)}
.ts-crumbs span{margin:0 8px}
.ts-pd{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:start}
.ts-gallery-main{border-radius:16px;overflow:hidden;border:1px solid var(--ts-line);background:#1A0533}
.ts-gallery-main img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#0a0620}
.ts-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:12px}
.ts-thumbs button{padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;cursor:pointer;background:#1A0533;opacity:.7;transition:all .2s}
.ts-thumbs button.active,.ts-thumbs button:hover{border-color:var(--ts-teal);opacity:1}
.ts-thumbs img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.ts-buybox{position:sticky;top:96px;border:1px solid var(--ts-line);background:linear-gradient(160deg,rgba(26,5,51,0.85),rgba(4,2,14,0.9));border-radius:20px;padding:34px}
.ts-buybox h1{font-family:'Cormorant Garamond',serif;font-size:clamp(34px,3.4vw,48px);font-weight:400;line-height:1.08;letter-spacing:-1px;color:#fff;margin:6px 0 16px}
.ts-buybox h1 em{font-style:italic;color:var(--ts-teal)}
.ts-buybox .ts-lead{font-size:15px;color:var(--ts-mute);line-height:1.75;margin-bottom:22px}
.ts-buybox .ts-price b{font-size:40px}
.ts-buy-actions{display:flex;flex-direction:column;gap:12px;margin:22px 0 18px}
.ts-specs{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid var(--ts-line);padding-top:20px}
.ts-specs li{font-size:13px;color:rgba(255,255,255,0.75);display:flex;gap:8px;align-items:center}
.ts-specs li::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--ts-teal);flex-shrink:0}
.ts-upsell{margin-top:18px;border:1px dashed rgba(0,213,164,0.45);border-radius:14px;padding:16px 18px;font-size:13.5px;color:rgba(255,255,255,0.8);line-height:1.6}
.ts-upsell a{color:var(--ts-teal);font-weight:700;text-decoration:none}
.ts-secure{font-size:12px;color:rgba(255,255,255,0.45);text-align:center;display:flex;align-items:center;justify-content:center;gap:6px}
.ts-two{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.ts-prose p{font-size:15.5px;color:rgba(255,255,255,0.7);line-height:1.85;margin-bottom:16px}
.ts-prose h3{font-size:18px;color:#fff;margin:24px 0 12px}
.ts-checks{list-style:none;display:flex;flex-direction:column;gap:12px}
.ts-checks li{font-size:15px;color:rgba(255,255,255,0.8);display:flex;gap:12px;line-height:1.6}
.ts-checks li::before{content:'✓';color:var(--ts-teal);font-weight:800;flex-shrink:0}
.ts-toc{border:1px solid var(--ts-line);border-radius:16px;overflow:hidden}
.ts-toc table{width:100%;border-collapse:collapse}
.ts-toc th{text-align:left;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ts-teal);background:rgba(0,213,164,0.08);padding:14px 20px}
.ts-toc td{font-size:14.5px;color:rgba(255,255,255,0.8);padding:13px 20px;border-top:1px solid var(--ts-line)}
.ts-toc td:last-child,.ts-toc th:last-child{text-align:right;white-space:nowrap}
.ts-toc tr.total td{font-weight:700;color:#fff;background:rgba(255,255,255,0.03)}
.ts-shots{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.ts-shots figure{border-radius:14px;overflow:hidden;border:1px solid var(--ts-line);background:#fff}
.ts-shots img{display:block;width:100%;height:auto}
.ts-mobile-buy{display:none}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .ts-grid,.ts-bundles,.ts-feats{grid-template-columns:repeat(2,1fr)}
  .ts-bundle.featured{grid-template-columns:1fr}
  .ts-trust ul{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .ts-wrap{padding:0 20px}
  .ts-sec,.ts-faq{padding:60px 0}
  .ts-hero{padding:110px 0 60px}
  .ts-hero-inner,.ts-pd,.ts-two{grid-template-columns:1fr;gap:36px}
  .ts-buybox{position:static;padding:26px}
  .ts-steps{grid-template-columns:1fr}
  .ts-shots{grid-template-columns:1fr}
  .ts-mobile-buy{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:8500;background:rgba(4,2,14,0.95);backdrop-filter:blur(12px);border-top:1px solid var(--ts-line);padding:12px 20px;align-items:center;justify-content:space-between;gap:12px}
  .ts-mobile-buy b{font-size:22px;color:#fff}
}
@media(max-width:640px){
  .ts-grid,.ts-bundles,.ts-feats,.ts-trust ul,.ts-incl,.ts-specs{grid-template-columns:1fr}
  .ts-stats{grid-template-columns:repeat(2,1fr)}
  .ts-thumbs{grid-template-columns:repeat(3,1fr)}
  .ts-bundle.featured .ts-bundle-body{padding:26px}
  .ts-bundle.featured h3{font-size:34px}
}

/* ── HUB SEO TEXT ── */
.ts-seo a{color:var(--ts-teal);text-decoration:none;border-bottom:1px solid rgba(0,213,164,0.3)}
.ts-seo a:hover{border-bottom-color:var(--ts-teal)}
.ts-seo-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.ts-seo-cols h3{font-size:17px;font-weight:700;color:#fff;margin-bottom:10px}
.ts-seo-cols p{font-size:14.5px;color:var(--ts-mute);line-height:1.8}
.ts-toc a:hover{color:var(--ts-teal)!important}
/* ── ORDER PAGE ── */
.ts-order h1{font-family:'Cormorant Garamond',serif;font-size:clamp(38px,4vw,56px);font-weight:300;color:#fff;line-height:1.05;margin-bottom:14px}
.ts-order h1 em{font-style:italic;color:var(--ts-teal)}
.ts-order p{font-size:15.5px;color:rgba(255,255,255,0.7);line-height:1.8;margin-bottom:12px}
.ts-dl-list{list-style:none;display:flex;flex-direction:column;gap:12px;margin:28px 0}
.ts-dl-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--ts-line);background:var(--ts-card);border-radius:14px;padding:16px 20px;color:#fff;font-weight:600;font-size:15px}
.ts-dl-list small{display:block;font-weight:400;font-size:12.5px;color:var(--ts-mute)}
.ts-note{border-left:3px solid var(--ts-teal);background:rgba(0,213,164,0.06);padding:14px 18px;border-radius:0 10px 10px 0;font-size:14px;color:rgba(255,255,255,0.75)}
@media(max-width:900px){.ts-seo-cols{grid-template-columns:1fr}.ts-dl-list li{flex-direction:column;align-items:flex-start}}
.ts-toc{overflow-x:auto}
.ts-toc td:nth-child(2){white-space:nowrap}
.ts-toc-wide td:last-child,.ts-toc-wide th:last-child{text-align:left;white-space:normal}
.ts-toc-wide td:first-child{white-space:nowrap}
@media(max-width:640px){.ts-toc td,.ts-toc th{padding:11px 12px;font-size:13.5px}.ts-toc td:last-child,.ts-toc td:nth-child(2){white-space:normal}.ts-toc-wide td:first-child{white-space:normal}}
