/* Inner pages in the same white, lavender and violet identity as the homepage. */
.inner-page main{min-height:50vh}
.inner-page h1{font-size:clamp(34px,4.1vw,52px);line-height:1.12;letter-spacing:-.035em;color:#151020;text-wrap:balance}
.inner-page .section-heading{max-width:760px;margin:0 auto 42px;text-align:center}
.inner-page .section-heading h1{margin:0 0 20px}
.inner-page .section-heading p{max-width:680px;margin:0 auto;color:#62596e;font-size:16px;line-height:1.75}
.inner-page .section-heading em{color:#7c3aed}
.inner-page .narrow{max-width:980px}
.page-heading{padding:30px 0 42px;background:linear-gradient(180deg,#faf8fe,#fff)}
.page-heading .section-heading{margin-top:36px;margin-bottom:0}
.breadcrumb{font-size:12px;line-height:1.5;color:#756b81}
a.breadcrumb:hover{color:#7c3aed}
.breadcrumb-divider{margin:0 12px;color:#c4b5d8}
.inner-page .tint,.inner-page .steps-section{background:#faf8fe}
.center-action{display:flex;justify-content:center;flex-wrap:wrap;margin-top:30px;text-align:center}

/* Installation and player guides. */
.steps{align-items:stretch}
.steps article{min-width:0;border:1px solid #e5e2ec;border-radius:20px;background:#fff;padding:28px;text-align:left}
.step-number{display:block;margin-bottom:20px;color:#7c3aed;font-size:36px;line-height:1;font-weight:700;letter-spacing:-.04em}
.steps h3{font-size:19px;line-height:1.35;margin-bottom:12px;color:#151020}
.steps p{font-size:14px;line-height:1.7;margin:0;color:#62596e}
.app-grid{align-items:stretch}
.app-card{display:flex;flex-direction:column;min-width:0;padding:26px}
.app-top{margin-bottom:20px}
.tag{display:inline-flex;padding:5px 10px;border:1px solid #e9dffa;border-radius:999px;background:#f5f0ff;color:#6d28d9;font-size:10px;line-height:1.4;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.app-card h3{color:#151020;font-size:23px;line-height:1.25;margin-bottom:14px}
.app-card>p{flex:1;color:#62596e;font-size:14px;line-height:1.75;margin-bottom:18px}
.app-meta{padding:18px 16px;margin:0 0 22px;background:#faf8fe;border:1px solid #eee8f6;border-radius:12px;color:#7c7188;font-size:12px;line-height:1.9}
.app-meta strong{color:#51475f;font-weight:600}
.app-card>.button{width:100%;margin-top:auto}
.app-card>small{display:block;color:#82788e;font-size:11px;line-height:1.6;margin-top:12px;min-height:35px}
.downloader{padding-top:76px}
.downloader-grid{gap:18px}
.downloader-grid button{display:flex;align-items:center;gap:18px;min-width:0;padding:22px 24px;background:#fff;border:1px solid #e5e2ec;border-radius:16px;text-align:left;font:inherit;color:#151020;cursor:pointer;transition:border-color .18s,background .18s}
.downloader-grid button:hover{border-color:#bda5ed;background:#fcfaff}
.downloader-grid button:focus-visible{outline:3px solid #c4b5fd;outline-offset:4px}
.guide-index{display:grid;place-items:center;flex:0 0 38px;height:38px;color:#7c3aed;background:#f5f0ff;border-radius:10px;font-size:12px;font-weight:700}
.downloader-grid button>span:nth-child(2){min-width:0;flex:1}
.downloader-grid strong{display:block;color:#151020;font-size:15px;line-height:1.4;font-weight:600}
.downloader-grid small{display:block;color:#82788e;font-size:10px;line-height:1.5;letter-spacing:.07em;text-transform:uppercase;margin-top:4px}
.downloader-grid b{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#f5f0ff;color:#7c3aed;font-size:15px;font-weight:500}
.devices{margin:0;padding:0}
.device-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.device-grid>div{display:flex;align-items:center;justify-content:center;text-align:center;min-height:106px;padding:20px 12px;border:1px solid #e5e2ec;border-radius:16px;background:#fff;color:#51475f}
.device-grid strong{font-size:13px;line-height:1.5;font-weight:600}

/* Supporting editorial panels. */
.editorial-image{position:relative;overflow:hidden;border-radius:22px;background:#f1ecf8;margin:0;isolation:isolate}
.editorial-image img{display:block;width:100%;height:350px;object-fit:cover}
.editorial-image figcaption{position:absolute;inset:auto 0 0;padding:70px 30px 26px;background:linear-gradient(transparent,#10071de8);color:#e0d9ec;font-size:13px;line-height:1.7}
.editorial-image figcaption span{display:block;color:#fff;font-size:23px;line-height:1.3;font-weight:600;letter-spacing:-.02em;margin-bottom:4px}
.installation-image{max-width:1100px;margin:0 auto 24px}
.guide-image{margin:30px 0 40px}
.guide-image img{height:330px}

/* Long-form guidance. */
.guide{max-width:820px;margin:0 auto;color:#62596e}
.guide>.eyebrow{margin-bottom:18px}
.guide>h1{max-width:800px;margin:0 0 24px}
.guide h2{font-size:clamp(26px,3vw,34px);line-height:1.2;letter-spacing:-.025em;margin:42px 0 18px;color:#151020}
.guide h3{font-size:21px;line-height:1.35;margin:34px 0 14px;color:#151020}
.guide p{font-size:15px;line-height:1.9;margin-bottom:20px;color:#62596e}
.guide p strong,.guide li strong{color:#3c314c}
.guide a{color:#6d28d9;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#d7c6f2}
.guide a:hover{color:#5b21b6;text-decoration-color:#7c3aed}
.guide ul,.guide ol{padding-left:22px}
.guide li{font-size:14px;line-height:1.8;margin-bottom:10px}

/* FAQs use native details elements and remain usable without JavaScript. */
.faq-container{max-width:860px}
.faq-section{background:#fff}
.faq-list{display:flex;flex-direction:column;gap:12px}
.faq-list details{min-width:0;margin:0;background:#fff;border:1px solid #e5e2ec;border-radius:16px;overflow:hidden;box-shadow:0 4px 18px #15102005}
.faq-list details[open]{background:#fcfaff;border-color:#cbb8ee}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;color:#23182f;font-size:15px;line-height:1.5;font-weight:600;list-style:none;cursor:pointer}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::marker{content:""}
.faq-list summary::after{content:"+";display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border:1px solid #e4d8f6;border-radius:50%;background:#f5f0ff;color:#7c3aed;font-size:18px;line-height:1;font-weight:400}
.faq-list details[open] summary{color:#6d28d9}
.faq-list details[open] summary::after{content:"−";background:#7c3aed;color:#fff;border-color:#7c3aed}
.faq-list details p{padding:0 24px 24px;margin:0;color:#62596e;font-size:14px;line-height:1.8}
.faq-list summary:focus-visible{outline:3px solid #c4b5fd;outline-offset:-4px;border-radius:16px}

/* Customer feedback. */
.rating{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:26px}
.rating>strong{color:#7c3aed;font-size:42px;line-height:1;letter-spacing:-.05em}
.rating small{display:block;max-width:190px;text-align:left;color:#756b81;font-size:12px;line-height:1.6}
.stars:empty{display:none}
.review{display:flex;flex-direction:column;min-width:0;padding:26px}
.review blockquote{flex:1;color:#62596e;font-size:14px;line-height:1.85;margin:0 0 24px}
.review-author{display:flex;align-items:center;gap:12px;border-top:1px solid #e9e3f0;padding-top:20px;margin-top:auto}
.review-author>span{display:grid;place-items:center;flex:0 0 40px;height:40px;background:#f1e9fc;color:#6d28d9;border-radius:50%;font-size:12px;font-weight:700}
.review-author>div{min-width:0}
.review-author strong{display:block;color:#23182f;font-size:13px;font-weight:600;line-height:1.5}
.review-author small{display:block;color:#82788e;font-size:11px;line-height:1.6;margin-top:2px}

/* Direct contact. */
.contact-section{padding-top:16px}
.contact-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:26px}
.contact-card h2{font-size:25px;line-height:1.3;color:#151020;margin:0 0 16px}
.contact-card p{flex:1;color:#62596e;font-size:14px;line-height:1.8;margin-bottom:22px}
.contact-card>strong{display:block;max-width:100%;overflow-wrap:anywhere;color:#6d28d9;font-size:14px;line-height:1.5;margin-bottom:24px;font-weight:600}
.contact-card>.button{width:100%;margin-top:auto}
.contact-help{max-width:800px;padding-top:68px;text-align:center}
.contact-help h2{color:#151020;font-size:28px;line-height:1.25;margin-bottom:16px}
.contact-help p{color:#62596e;font-size:15px;line-height:1.8;margin-bottom:25px}

/* Existing pricing page headings and accompanying note. */
.page-prices{background:#fff}
.page-prices .pricing{padding-top:0}
.pricing-group-label{grid-column:1/-1;color:#151020;font-size:26px;line-height:1.3;letter-spacing:-.025em;margin:24px 0 8px}
.pricing-group-label span{display:block;color:#756b81;font-size:13px;font-weight:400;line-height:1.7;letter-spacing:0;margin-top:10px}
.price-help{display:flex;justify-content:space-between;gap:28px;padding:22px 0 0;margin-top:28px;border-top:1px solid #e5e2ec;color:#756b81;font-size:12px;line-height:1.7}
.price-help strong{color:#3c314c}

@media(max-width:1000px){
 .device-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .inner-page .app-grid{grid-template-columns:minmax(0,1fr)}
 .app-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 30px}
 .app-top{grid-column:1/-1}
 .app-card h3,.app-card>p{grid-column:1}
 .app-meta{grid-column:2;grid-row:2/4}
 .app-card>.button{grid-column:1;margin-top:0}
 .app-card>small{grid-column:2;margin:0;align-self:center;min-height:0}
}
@media(max-width:760px){
 .inner-page h1{font-size:clamp(30px,7.6vw,40px);line-height:1.13;letter-spacing:-.03em}
 .page-heading{padding:24px 0 32px}
 .page-heading .section-heading{margin-top:30px}
 .inner-page .section-heading{margin-bottom:30px}
 .inner-page .section-heading p{font-size:15px}
 .inner-page .steps{grid-template-columns:minmax(0,1fr);gap:16px}
 .steps article{padding:24px}
 .step-number{font-size:30px;margin-bottom:16px}
 .app-card{display:flex;padding:24px;gap:0}
 .app-card h3{font-size:22px}
 .app-meta{width:100%;margin:0 0 20px}
 .app-card>small{margin-top:12px;align-self:auto}
 .downloader{padding-top:55px}
 .inner-page .downloader-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .downloader-grid button{padding:18px;gap:13px}
 .downloader-grid strong{font-size:14px}
 .downloader-grid small{font-size:9px}
 .guide-index{flex-basis:32px;height:32px;font-size:11px}
 .device-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 .device-grid>div{min-height:90px;padding:18px 10px;border-radius:14px}
 .device-grid strong{font-size:11px}
 .editorial-image{border-radius:18px}
 .editorial-image img,.guide-image img{height:270px}
 .editorial-image figcaption{padding:55px 20px 20px;font-size:11px}
 .editorial-image figcaption span{font-size:20px}
 .installation-image{margin-bottom:0}
 .guide-image{margin:25px 0 30px}
 .guide h2{font-size:27px;margin-top:34px}
 .guide h3{font-size:20px;margin-top:28px}
 .guide p{font-size:14px;line-height:1.85}
 .faq-list summary{padding:19px 18px;gap:14px;font-size:14px}
 .faq-list details p{padding:0 18px 20px;font-size:13px}
 .rating>strong{font-size:36px}
 .rating small{font-size:11px;max-width:160px}
 .review{padding:24px}
 .contact-card{padding:24px}
 .contact-help{padding-top:48px}
 .contact-help h2{font-size:25px}
 .pricing-group-label{font-size:23px;margin-top:20px}
 .price-help{flex-direction:column;gap:10px}
}
@media(max-width:380px){.device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-index{display:none}}
@media(prefers-reduced-motion:reduce){.downloader-grid button{transition:none}}
