.app-download-page { background:var(--surface,#fff); color:var(--text,#151b2c); }
.app-download-page *, .app-download-page *::before, .app-download-page *::after { box-sizing:border-box; }
.ad-wrap { width:min(1160px,calc(100% - 64px)); margin-inline:auto; }
.ad-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:64px; align-items:center; padding-block:52px 64px; }
.ad-intro,.ad-product,.ad-roles article,.ad-guidance > div { min-width:0; }
.app-download-page [id] { scroll-margin-top:100px; }
body.public-design #main-content .app-download-page :is(h1,h2,h3,p) { overflow-wrap:break-word; }
body.public-design #main-content .app-download-page h1 { margin:0 0 20px; font-size:var(--marketing-title,2.5rem); font-weight:600; line-height:1.25; letter-spacing:-.025em; }
body.public-design #main-content .app-download-page h2 { margin:0 0 20px; font-size:var(--marketing-heading,2.5rem); font-weight:600; line-height:1.3; text-wrap:balance; }
body.public-design #main-content .app-download-page h3 { margin:8px 0 12px; font-size:1.375rem; font-weight:600; line-height:1.4; }
.app-download-page :is(h1,h2) span { color:var(--brand-purple-ink,#6B48E0); }
body.public-design #main-content .app-download-page :is(p,li) { margin-top:0; font-size:1rem; line-height:1.6; }
.app-download-page p { margin-bottom:16px; }
body.public-design #main-content .app-download-page .ad-lead { font-size:1.125rem; line-height:1.6; }
body.public-design #main-content .app-download-page .ad-eyebrow { margin:0 0 14px; color:var(--link-ink,#006CB4); font-size:.75rem; font-weight:700; line-height:1.5; letter-spacing:.1em; text-transform:uppercase; }
body.public-design #main-content .app-download-page .ad-small { color:var(--text-muted,#526174); font-size:.875rem; line-height:1.5; }
.ad-downloads { display:flex; flex-wrap:wrap; align-items:start; gap:20px; margin-block:24px 12px; }
.ad-store-option { display:grid; gap:8px; }
.ad-platform,.ad-role-label { font:600 1rem/1.5 "Open Sans",sans-serif; }
.ad-store { display:block; width:fit-content; border-radius:6px; }
.ad-store img { display:block; width:auto; height:52px; max-width:100%; }
.ad-browser { margin-block:24px; padding-top:20px; border-top:1px solid var(--border,#dadce3); }
body.public-design #main-content .app-download-page .ad-browser h2 { margin:0 0 8px; font-size:1.25rem; line-height:1.4; }
.ad-browser p { margin-bottom:14px; }
.app-download-page .ad-action { display:inline-flex; align-items:center; justify-content:center; width:fit-content; max-width:100%; min-height:36px; padding:8px 16px; border:1px solid transparent; border-radius:6px; background:var(--btn-primary-bg,#00C434); color:var(--btn-primary-fg,#1B1C1A); font:700 .75rem/1.5 "Open Sans",sans-serif; letter-spacing:.04em; text-transform:uppercase; text-align:center; text-decoration:none; transition:background-color .4s ease,color .4s ease; }
.app-download-page .ad-action:is(:hover,:focus-visible) { background:var(--btn-primary-hover,#1B1C1A); color:var(--btn-primary-hover-fg,#fff); }
.app-download-page .ad-action:active { background:var(--btn-product-press,#00A82D); color:var(--btn-primary-fg,#1B1C1A); }
.app-download-page :is(a,summary):focus-visible { outline:2px solid var(--brand-purple-ink,#6B48E0); outline-offset:4px; }
body.public-design #main-content .app-download-page .ad-availability { margin-bottom:0; color:var(--text-muted,#526174); font-size:.875rem; line-height:1.6; }
.ad-product { display:grid; justify-items:center; }
.ad-product .rental-film-inline { width:min(100%,320px); }
.ad-product video { object-fit:contain; border:0; border-radius:0; }
.ad-product figcaption { text-align:center; }
.ad-role-section { padding-block:56px; background:var(--surface-muted,#f7f8fa); border-block:1px solid var(--border,#dadce3); }
.ad-section-heading { max-width:740px; margin-bottom:28px; }
.ad-roles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:56px; }
.ad-role-label { color:var(--brand-purple-ink,#6B48E0); }
.ad-roles ol { margin:16px 0 8px; padding-left:22px; list-style:decimal; }
.ad-roles li { padding-left:4px; margin-bottom:8px; }
.ad-text-link,.ad-closing-links a { display:inline-flex; align-items:center; min-height:44px; padding-block:8px; font-weight:600; }
.ad-vendor { margin:24px 0 0!important; padding-top:20px; border-top:1px solid var(--border,#dadce3); }
.ad-section { padding-block:64px; }
.ad-guidance { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:56px; }
.ad-fee-note { padding:16px 0 0; border-top:1px solid var(--border,#dadce3); }
.ad-fee-note strong { display:block; margin-bottom:6px; }
.ad-fee-note p { margin-bottom:0; }
.ad-help details,.ad-tours details { border-bottom:1px solid var(--border,#dadce3); }
.app-download-page summary { position:relative; min-height:52px; padding:14px 28px 14px 0; cursor:pointer; font:600 1rem/1.5 "Open Sans",sans-serif; list-style:none; }
.app-download-page summary::-webkit-details-marker { display:none; }
.app-download-page summary::after { content:"+"; position:absolute; right:4px; top:14px; color:var(--brand-purple-ink,#6B48E0); font-size:1.25rem; line-height:1.2; }
.app-download-page details[open] > summary::after { content:"−"; }
.ad-detail-body { padding:0 0 14px; }
.ad-detail-body p { margin-bottom:8px; }
.ad-help-links { list-style:none; margin:0; padding:0; }
.ad-help-links a { display:inline-flex; align-items:center; min-height:44px; padding-block:8px; }
.ad-tour { border-top:1px solid var(--border,#dadce3); }
.ad-tours { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:start; margin-bottom:12px; }
.ad-tour-body { padding-bottom:20px; }
.ad-demo-phone { width:236px; max-width:100%; padding:9px; margin:16px auto 0; border:1px solid #273041; border-radius:34px; background:#0b1220; }
.ad-demo-phone iframe { display:block; width:100%; aspect-ratio:1080/2400; border:0; border-radius:26px; background:#e5f0fe; }
.ad-closing { padding-block:48px; background:var(--surface-muted,#f7f8fa); }
.ad-closing .ad-wrap { max-width:920px; text-align:center; }
.ad-closing-links { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 24px; }
@media(max-width:800px) {
  .ad-wrap { width:calc(100% - 40px); }
  .ad-hero { grid-template-columns:1fr; gap:32px; padding-block:36px 40px; }
  .ad-intro { max-width:640px; }
  .ad-product .rental-film-inline { width:min(100%,320px); }
  .ad-section,.ad-role-section { padding-block:40px; }
  .ad-roles,.ad-guidance { grid-template-columns:1fr; gap:28px; }
  .ad-roles article + article { padding-top:24px; border-top:1px solid var(--border,#dadce3); }
  .ad-tours { grid-template-columns:1fr; gap:0; }
  .app-download-page .ad-action { min-height:44px; font-size:.875rem; }
  .ad-closing { padding-block:36px; }
}
@media(max-width:420px) {
  .ad-wrap { width:calc(100% - 32px); }
  .ad-downloads { gap:16px; }
  body.public-design #main-content .app-download-page h1 { font-size:1.875rem; }
  body.public-design #main-content .app-download-page h2 { font-size:1.625rem; }
  body.public-design #main-content .app-download-page .ad-browser h2 { font-size:1.25rem; }
  .ad-closing .ad-wrap { text-align:left; }
  .ad-closing-links { justify-content:start; gap:0 20px; }
}
@media(prefers-reduced-motion:reduce) { .app-download-page .ad-action { transition:none; } }
