/* Small additions to the byte-identical original website stylesheet. */
.tvpt-device-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:1.5rem 0 1rem; text-align:left; }
.tvpt-device-card { min-width:0; display:flex; flex-direction:column; gap:.7rem; padding:1.8rem; border:1px solid #c9a4537a; border-radius:1rem; color:#f5f1e7; background:linear-gradient(135deg,#211d16,#111117); box-shadow:0 12px 28px #0003; text-decoration:none; transition:transform 180ms ease,border-color 180ms ease,background 180ms ease; }
.tvpt-device-card strong { display:flex; justify-content:space-between; gap:1rem; font-size:1.8rem; line-height:1.15; font-weight:750; color:#f2d38a; }
.tvpt-device-card>span { line-height:1.5; }
.tvpt-device-card small { margin-top:auto; padding-top:.5rem; color:#c4bfb3; font-size:.8rem; }
.tvpt-device-card:hover { border-color:#f2d38a; background:linear-gradient(135deg,#30281a,#15151d); transform:translateY(-3px); }
.tvpt-device-card:focus-visible,.tvpt-secondary-link:focus-visible,.tvpt-app-help summary:focus-visible,.tvpt-simple-footer a:focus-visible { outline:3px solid #f2d38a; outline-offset:5px; }
.tvpt-device-grid--compact { gap:.8rem; }
.tvpt-device-grid--compact .tvpt-device-card { padding:1rem; gap:.5rem; }
.tvpt-device-grid--compact .tvpt-device-card strong { font-size:1.45rem; }
.tvpt-device-grid--compact .tvpt-device-card>span { font-size:.95rem; }
.tvpt-secondary-link { display:inline-flex; align-items:center; min-height:44px; color:#e7cd93; text-underline-offset:.25em; gap:.5rem; }
.tvpt-app-entry { max-width:56rem; padding-block:1.5rem 3rem; text-align:center; }
.tvpt-brand-plaque { position:relative; isolation:isolate; width:clamp(9rem,16vw,11rem); margin:0 auto 1.3rem; padding:.75rem; border:1px solid #494034; border-radius:1.65rem; background:linear-gradient(145deg,#22201c 0%,#050505 38%,#101010 85%,#27231b); box-shadow:0 16px 32px #0007,inset 0 1px 0 #ffffff15,inset 0 0 0 5px #070707; }
.tvpt-brand-plaque::before { content:""; position:absolute; inset:.55rem; z-index:-1; border:1px solid #b9944f40; border-radius:1.08rem; background:#000; }
.tvpt-named-logo { display:block; width:100%; height:auto; border-radius:.85rem; background:#000; }
.tvpt-app-entry h1 { margin:.75rem 0 1.2rem; font-size:clamp(2.15rem,5.3vw,4rem); letter-spacing:-.055em; line-height:1.07; font-weight:750; }
.tvpt-app-entry h1 span { color:#f2d38a; }
.tvpt-device-icon { width:2.5rem; height:2.5rem; margin-bottom:.4rem; fill:none; stroke:#d8b25f; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.tvpt-entry-hint { color:#c4bfb3; font-size:.9rem; line-height:1.6; margin:1rem auto; max-width:38rem; }
.tvpt-entry-secondary { display:flex; justify-content:center; flex-wrap:wrap; gap:.5rem 2rem; font-size:.9rem; }
.tvpt-app-status { padding:.8rem 1rem; border:1px solid #c9a45370; border-radius:.5rem; background:#201d16; color:#f2ddb3; line-height:1.6; font-size:.9rem; }
.tvpt-app-status[hidden] { display:none; }
.tvpt-app-help { text-align:left; border-top:1px solid #c9a45340; margin-top:1.6rem; padding-top:.8rem; color:#c4bfb3; font-size:.9rem; }
.tvpt-app-help summary { padding:.6rem 0; min-height:44px; cursor:pointer; color:#e7cd93; }
.tvpt-app-help p { line-height:1.7; margin:.7rem 0; }
.tvpt-app-help a { color:#f2d38a; }
.tvpt-simple-footer { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:.5rem 2rem; padding-block:1rem 2rem; border-top:1px solid #c9a45340; color:#aaa7b2; font-size:.8rem; }
.tvpt-simple-footer nav { display:flex; flex-wrap:wrap; gap:1.2rem; }
.tvpt-simple-footer a { display:inline-flex; align-items:center; min-height:44px; }
.tvpt-vip-card { gap:1rem; }
.tvpt-vip-card>span { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.6rem; min-height:2rem; }
.tvpt-vip-card .tvpt-vip-rate { display:flex; flex-wrap:wrap; align-items:baseline; gap:.4rem .65rem; font-size:clamp(2.1rem,4.5vw,3.2rem); letter-spacing:-.05em; line-height:1.15; color:#f2d38a; }
.tvpt-vip-card .tvpt-vip-rate small { font-size:1rem; letter-spacing:0; font-weight:500; color:#d4c8b2; }
.tvpt-vip-card>b { font-size:1.15rem; line-height:1.4; letter-spacing:-.02em; color:#f6efe2; }
.tvpt-vip-card>p { font-size:.95rem; line-height:1.6; margin:0; color:#cbc6bb; max-width:38ch; }
.tvpt-vip-badge { display:inline-flex; padding:.3rem .55rem; border:1px solid #bea36565; border-radius:2rem; font-style:normal; font-size:.69rem; font-weight:650; letter-spacing:.03em; background:#b9944f14; }
.tvpt-vip-card .tvpt-vip-value { margin-top:auto; padding-top:.8rem; border-top:1px solid #b9944f33; color:#c9c2b4; font-size:.82rem; line-height:1.6; }
.tvpt-vip-note { max-width:78ch; margin:1rem 0 0; font-size:.82rem; color:#bdb6a7; line-height:1.65; }
.tvpt-vip-card:focus-visible { outline:3px solid #f2d38a; outline-offset:5px; }
@media(min-width:48rem) { .tvpt-vip-card>p { min-height:4.8em; } }
/* Keep the existing navigation reachable when JavaScript is unavailable. */
html:not(.js) .site-nav { display:block; visibility:visible; opacity:1; position:static; transform:none; pointer-events:auto; }
html:not(.js) .site-header { position:relative; }
html:not(.js) .has-site-header { padding-top:0; }
html:not(.js) .site-header__inner { flex-wrap:wrap; }
html:not(.js) .nav-toggle { display:none; }
@media(max-width:39.999rem) {
  .tvpt-device-grid { grid-template-columns:minmax(0,1fr); gap:.75rem; }
  .tvpt-device-card { padding:1.15rem; gap:.5rem; }
  .tvpt-device-card strong { font-size:1.6rem; }
  .tvpt-device-icon { width:1.8rem; height:1.8rem; margin-bottom:0; }
  .tvpt-brand-plaque { width:8.5rem; margin-bottom:1rem; padding:.65rem; }
  .tvpt-app-entry { padding-top:.8rem; }
  .tvpt-notice { font-size:.73rem; }
  .tvpt-simple-footer { display:block; }
  .tvpt-device-grid--compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tvpt-device-grid--compact .tvpt-device-card { padding:.8rem; }
  .tvpt-device-grid--compact .tvpt-device-card strong { font-size:1.2rem; }
  .tvpt-device-grid--compact .tvpt-device-card>span { font-size:.85rem; }
}
@media(max-width:22rem) { .tvpt-device-grid--compact { grid-template-columns:minmax(0,1fr); } }
@media(prefers-reduced-motion:reduce) { .tvpt-device-card { transition:none; } .tvpt-device-card:hover { transform:none; } }

/* Partner information uses the existing TVPT typography, surfaces and motion. */
.tvpt-partner-home { border-block:1px solid var(--line); }
.tvpt-partner-home__inner { display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center; }
.tvpt-partner-home h2 { margin:.5rem 0; }
.tvpt-partner-home h2 span,.tvpt-partner-hero h1 span { color:#f2d38a; }
.tvpt-partner-home p,.tvpt-partner-model p { color:var(--text-muted);line-height:1.7; }
.tvpt-partner-hero__inner { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:4rem;align-items:center; }
.tvpt-partner-hero h1 { font-size:clamp(2.65rem,5.4vw,4.7rem);line-height:1.07;letter-spacing:-.05em;font-weight:750;margin:1rem 0 1.5rem; }
.tvpt-partner-lead { max-width:42rem;font-size:1.08rem;line-height:1.7;color:var(--text-muted); }
.tvpt-partner-fine { font-size:.82rem;line-height:1.65;color:#bdb6a7;margin-top:1.25rem; }
.tvpt-partner-workflow { border:1px solid var(--line);border-radius:1.25rem;padding:2rem;background:linear-gradient(140deg,#1c1914,#101016); }
.tvpt-partner-workflow .tvpt-brand-plaque { width:8rem;padding:.55rem; }
.tvpt-partner-workflow h2 { font-size:1.4rem;text-align:center;margin:1.2rem 0;letter-spacing:-.025em; }
.tvpt-partner-workflow ol { list-style:none;padding:0;margin:0;display:grid;gap:0; }
.tvpt-partner-workflow li { display:grid;grid-template-columns:2.5rem 1fr;gap:.25rem .7rem;padding:1rem 0;border-top:1px solid var(--line); }
.tvpt-partner-workflow li>span { grid-row:1/3;color:var(--gold);font-size:.85rem; }
.tvpt-partner-workflow small { color:var(--text-muted);line-height:1.5; }
.tvpt-partner-benefits { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem; }
.tvpt-partner-benefits article { padding:1.65rem;border:1px solid var(--line);border-radius:1rem;background:#101016; }
.tvpt-partner-benefits article>span { color:var(--gold);font-size:.78rem; }
.tvpt-partner-benefits h3 { font-size:1.35rem;line-height:1.3;letter-spacing:-.03em;margin:1rem 0; }
.tvpt-partner-benefits p,.tvpt-partner-steps p { color:var(--text-muted);line-height:1.7;font-size:.97rem; }
.tvpt-partner-model { display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center; }
.tvpt-partner-model__card { padding:2rem;border:1px solid var(--line);border-radius:1rem;background:#16151a; }
.tvpt-partner-model__card h3 { font-size:1.5rem;line-height:1.3;margin-top:0; }
.tvpt-partner-model__card ul { padding-left:1.2rem;display:grid;gap:1rem;line-height:1.65; }
.tvpt-partner-model__card li::marker { color:var(--gold); }
.tvpt-partner-steps { list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem; }
.tvpt-partner-steps li { border-top:1px solid var(--line);padding-top:1rem; }
.tvpt-partner-steps li>span { color:var(--gold);font-size:1.4rem; }
.tvpt-partner-steps h3 { font-size:1.2rem;line-height:1.35;margin-top:1rem; }
.tvpt-partner-start { display:flex;align-items:center;flex-wrap:wrap;gap:1rem 2rem;margin-top:2rem; }
.tvpt-partner-start p { font-size:.85rem;line-height:1.7;color:var(--text-muted); }
.tvpt-partner-faq { max-width:56rem; }
.tvpt-partner-faq details { border-bottom:1px solid var(--line);padding:1rem 0; }
.tvpt-partner-faq summary { cursor:pointer;font-weight:650;line-height:1.5;min-height:44px;display:list-item;align-content:center; }
.tvpt-partner-faq summary:focus-visible { outline:3px solid #f2d38a;outline-offset:4px; }
.tvpt-partner-faq details p { line-height:1.7;color:var(--text-muted);max-width:70ch; }
.tvpt-partner-faq a { text-decoration:underline;text-underline-offset:.2em; }
@media(max-width:69.999rem) { .tvpt-partner-hero__inner { gap:2rem; }.tvpt-partner-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); }.tvpt-partner-steps { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:47.999rem) { .tvpt-partner-hero__inner,.tvpt-partner-model,.tvpt-partner-home__inner { grid-template-columns:minmax(0,1fr);gap:2rem; }.tvpt-partner-benefits { grid-template-columns:minmax(0,1fr); }.tvpt-partner-workflow,.tvpt-partner-model__card { padding:1.4rem; }.tvpt-partner-benefits article { padding:1.35rem; }.tvpt-partner-home__inner { gap:1rem; }.tvpt-partner-start { align-items:flex-start; } }
@media(max-width:29.999rem) { .tvpt-partner-steps { grid-template-columns:minmax(0,1fr);gap:1rem; }.tvpt-partner-steps h3 { margin:.5rem 0; } }
