/* Shared navigation and responsive refinements for the public site and workspaces. */
:where(.compact-site,.auth-page,.cab-page,.admin-page) :is(button,a,input,select,summary):focus-visible {
  outline:2px solid #ff9a45; outline-offset:3px;
}
.cab-page.workspace .cab-tabs .cab-tab span { font-size:inherit; color:inherit; line-height:1.3; }
.cab-page.workspace .cabinet-top .top-right { min-width:0; }
.cab-page.workspace .cabinet-top .who { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; }
.cab-page.workspace .preview-workspace { min-width:0; }
.cab-page.workspace .preview-tools-column, .cab-page.workspace .preview-tool-card { min-width:0; max-width:100%; box-sizing:border-box; }
.cab-page.workspace .preview-tools-column :is(input,select,form,label) { min-width:0; max-width:100%; box-sizing:border-box; }
.cab-page.workspace .tv-pair-code-form > div { display:flex; flex-wrap:wrap; gap:8px; }
.cab-page.workspace .tv-pair-code-form input { flex:1 1 140px; width:100%; }
.cab-page.workspace .tv-group-select-label select { width:100%; }
.cab-page.workspace .preview-tool-heading { flex-wrap:wrap; gap:8px; }
.cab-page.workspace .overview-help summary { min-height:32px; display:flex; align-items:center; cursor:pointer; }
.cab-page.workspace .point-list-panel .pager:has(button:disabled:first-child):has(button:disabled:last-child) { display:none; }
.cab-page.workspace #selected-point-name, .cab-page.workspace .distribution-info strong { overflow-wrap:anywhere; }
.cab-page.workspace .distribution-info { min-width:0; }
.auth-page .password-control { position:relative; display:flex; align-items:center; }
.auth-page .password-control input { width:100%; padding-right:70px; }
.auth-page .password-toggle { position:absolute; right:4px; top:4px; bottom:4px; min-width:60px; padding:4px 6px; background:transparent; border:0; color:#ffb06c; font-size:11px; border-radius:7px; cursor:pointer; }
.admin-page #detail-title { overflow-wrap:anywhere; }
.admin-page .admin-section-heading > div { min-width:0; }
.admin-page .admin-subscription-panel { flex-wrap:wrap; }
.admin-page .admin-subscription-panel > div { min-width:0; flex:1 1 240px; }
.admin-page .admin-confirm { overscroll-behavior:contain; }
.admin-page .admin-type-grid { min-width:0; }
.admin-page .admin-type-stat { min-width:0; }
.admin-page .admin-account-name small { word-break:break-word; }
@media (max-width:1100px) {
 .cab-page.workspace .preview-workspace { grid-template-columns:minmax(0,1fr); }
 .cab-page.workspace .preview-tools-column { width:100%; }
 .cab-page.workspace .preview-visual-column { width:100%; min-width:0; }
}
@media (max-width:700px) {
 .compact-site .site-header { gap:8px 12px; }
 .compact-site .site-nav a { font-size:12px; }
 .compact-site .hero-actions { gap:10px; }
 .compact-site .hero-actions a { min-height:44px; display:inline-flex; align-items:center; justify-content:center; }
 .compact-site .site-footer { gap:16px; padding:24px 18px; }
 .compact-site .footer-links { display:flex; flex-wrap:wrap; gap:12px 18px; }
 .compact-site .footer-links a { min-height:32px; display:inline-flex; align-items:center; }
 .auth-page .auth-card { padding:20px 16px; min-width:0; }
 .auth-page .auth-form input, .auth-page .auth-form select { min-height:46px; font-size:16px; }
 .auth-page .password-pair { grid-template-columns:1fr; gap:12px; }
 .auth-page .auth-form .primary, .auth-page .tabs .tab { min-height:44px; }
 .auth-page .auth-wrap .hero h1 { font-size:26px; }
 .cab-page.workspace .cabinet-top { padding:12px; gap:10px; }
 .cab-page.workspace .cabinet-top .top-right { width:100%; gap:8px; }
 .cab-page.workspace .cabinet-top .account-meta { padding:5px 9px; min-height:28px; }
 .cab-page.workspace .cabinet-top .top-actions { display:grid; grid-template-columns:1.4fr 1fr .75fr; gap:6px; width:100%; }
 .cab-page.workspace .cabinet-top .top-actions > :is(a,button).ghost { width:100%; min-width:0; min-height:40px; padding:7px 6px; font-size:12px; line-height:1.3; white-space:normal; }
 .cab-page.workspace .cab-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:8px 12px; margin-top:0; gap:6px; overflow:visible; }
 .cab-page.workspace .cab-tabs .cab-tab { width:100%; min-width:0; min-height:44px; padding:7px 5px; font-size:12px; line-height:1.3; justify-content:center; gap:5px; white-space:normal; }
 .cab-page.workspace .cab-tabs .preview-mode-icon { width:18px; height:18px; flex:none; }
 .cab-page.workspace .cab-tabs .cab-tab span { min-width:0; overflow-wrap:anywhere; }
 .cab-page.workspace[data-organization-type=small] .cab-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .cab-page.workspace .cab { padding:10px 12px 20px; }
 .cab-page.workspace .company-overview-header { gap:10px; }
 .cab-page.workspace .company-overview #organization-title { font-size:18px; line-height:1.35; }
 .cab-page.workspace .company-overview .metric-grid { width:100%; }
 .cab-page.workspace .preview-controls { gap:8px; flex-wrap:wrap; }
 .cab-page.workspace .preview-controls button { min-height:42px; flex:1; }
 .cab-page.workspace .preview-controls #preview-status { font-size:12px; }
 .cab-page.workspace .content-period { grid-template-columns:1fr; }
 .cab-page.workspace .content-period input { width:100%; min-width:0; }
 .cab-page.workspace .point-type-table { width:100%; min-width:0; font-size:12px; }
 .cab-page.workspace .point-type-table th, .cab-page.workspace .point-type-table td { padding:8px 5px; }
 .cab-page.workspace .distribution-card { min-width:0; gap:10px; }
 .cab-page.workspace .distribution-links { flex-wrap:wrap; gap:8px; }
 .cab-page.workspace .distribution-download { min-height:44px; }
 .cab-page.workspace .preview-tools-column .phone-media-card .phone-media-line { min-width:0; flex-wrap:wrap; }
 .cab-page.workspace #phone-content .phone-media-line > .phone-expiry-pill { max-width:100%; white-space:normal; min-height:38px; font-size:11px; }
 .admin-page #admin-stats .metric { min-height:96px; gap:8px; padding:12px; }
 .admin-page #admin-stats .metric strong { font-size:29px; }
 .admin-page .admin-filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:6px; }
 .admin-page .admin-filters button { min-height:40px; font-size:13px; }
 .admin-page .admin-account-name strong { font-size:15px; }
 .admin-page .admin-account-name small, .admin-page .admin-subscription-link small { font-size:12px; }
 .admin-page .admin-subscription-link { font-size:14px; min-height:44px; }
 .admin-page .admin-type-name { font-size:12px; }
 .admin-page #admin-status { text-align:left; }
 .admin-page .admin-refresh-tools { width:100%; justify-content:space-between; }
 .admin-page .admin-search input, .admin-page #company-sort, .admin-page .admin-subscription-date input { font-size:16px; min-height:44px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media(max-width:700px) {
 .admin-page .admin-subscription-panel > div { flex:0 1 auto; width:100%; }
 .cab-page.workspace .cab-tabs .device-tab { flex-direction:column; gap:4px; min-height:56px; }
 .cab-page.workspace .cab-tabs .device-tab span { white-space:nowrap; overflow-wrap:normal; font-size:11px; }
 .cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .phone-media-line :is(select,.media-delete) { min-height:38px; height:auto; font-size:12px; }
 .cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .phone-media-line .media-delete { min-width:36px; width:36px; padding:8px; }
 .cab-page.workspace .phone-price-panel .media-actions .tiny, .cab-page.workspace .laptop-price-panel .media-actions .tiny { min-height:40px; font-size:12px; padding:7px 10px; }
 .compact-site .site-header > * { min-width:0; }
 .compact-site .site-logo { font-size:19px; }
 .compact-site .site-login { padding-inline:10px; font-size:11px; }
}
@media(max-width:700px) {
 .compact-site .site-login { font-size:0; }
}
@media(max-width:380px) {
 .compact-site .site-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

.cab-page.workspace .tv-app-download { display:grid; gap:8px; padding:12px; border:1px solid #ff880033; border-radius:12px; background:#ff880008; margin-bottom:14px; }
.cab-page.workspace .tv-app-download .distribution-download { width:100%; box-sizing:border-box; min-height:44px; white-space:normal; text-align:center; justify-content:center; line-height:1.4; }
.cab-page.workspace .tv-app-download .hint { margin:0; line-height:1.5; }

.public-downloads { margin-top:28px; padding:24px; border:1px solid #ffffff18; border-radius:18px; background:#171b21; scroll-margin-top:170px; }
.public-downloads h2 { margin:4px 0 18px; font-size:24px; }
.public-download-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.public-download-grid article { min-width:0; display:flex; flex-direction:column; gap:10px; padding:18px; border:1px solid #ffffff14; border-radius:12px; }
.public-download-grid h3 { margin:0; font-size:18px; }
.public-download-grid p { margin:0 0 6px; color:#aeb4bd; line-height:1.5; font-size:14px; }
.public-download-grid a { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto; padding:12px 16px; min-height:44px; box-sizing:border-box; border-radius:10px; background:#ff8800; color:#171717; font-size:14px; font-weight:800; text-decoration:none; }
.public-downloads > .hint { margin:16px 0 0; line-height:1.5; }
.auth-downloads-wrap { width:min(1120px,100%); padding:0 24px 32px; margin:auto; box-sizing:border-box; }
@media(max-width:700px) { .public-download-grid { grid-template-columns:1fr; } .public-downloads { padding:16px; } .public-download-grid article { padding:14px; } .auth-downloads-wrap { padding-inline:16px; } }

.brand-target-dialog { width:min(540px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); box-sizing:border-box; overflow:auto; padding:24px; border:1px solid #ff880055; border-radius:18px; background:#171b22; color:#f5f6f8; }
.brand-target-dialog::backdrop { background:#000b; }
.brand-target-dialog h2 { margin-top:0; font-size:22px; }
.brand-target-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:16px 0; }
.brand-target-list label { display:flex; align-items:center; gap:8px; min-height:40px; font-size:14px; padding:4px 8px; background:#ffffff05; border-radius:8px; }
.brand-target-list input { width:18px; height:18px; accent-color:#ff8800; }
.brand-target-dialog form > label { display:grid; gap:8px; }
.brand-target-dialog input[name=custom] { width:100%; min-width:0; box-sizing:border-box; font-size:16px; }
.brand-target-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.brand-target-actions button { flex:1; min-height:44px; }
.brand-target-button { max-width:100%; white-space:normal; min-height:36px; text-align:left; }

.cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .media-settings .laptop-media-line { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:center; gap:4px; }
.cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .media-settings .laptop-media-line > .laptop-media-name { grid-column:1 / -1; }
.cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .media-settings .laptop-media-line > .pill { display:none; }
.cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .media-settings .laptop-media-line > .duration-control { display:flex; width:100%; margin:0; }
.cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .media-settings .laptop-media-line :is(button,select) { box-sizing:border-box; width:100%; min-width:0; max-width:100%; height:28px; min-height:28px; max-height:28px; padding:3px 2px; font-size:9px; line-height:1.15; margin:0; border-radius:5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .media-settings .laptop-media-line > .brand-target-button { text-align:center; border:1px solid #ff880066; background:#ff880014; color:#ffc482; }
.cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .media-settings .laptop-media-line > .media-delete { display:flex; align-items:center; justify-content:center; width:100%; min-width:0; }
.cab-page.workspace .preview-tools-column #laptop-content .media-settings .laptop-media-line { grid-template-columns:repeat(3,minmax(0,1fr)); }

.overview-bar-row[data-overview-brand-kind] { cursor:pointer; border-radius:6px; padding:4px; }
.overview-bar-row[data-overview-brand-kind]:is(:hover,:focus-visible,[aria-pressed=true]) { background:#ff880018; outline:1px solid #ff880055; }
#overview-brands h4 { margin:10px 0 6px; font-size:13px; }
.overview-brand-list { display:grid; gap:4px; }
.overview-brand-list > div { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:2px 8px; padding:6px 8px; background:#ffffff05; border-radius:6px; font-size:12px; }
.overview-brand-list small { grid-column:1 / -1; color:#aeb4bd; font-size:10px; }
.cab-page .point-type-brand { padding:4px 6px; min-height:28px; font-size:inherit; text-align:left; color:inherit; border:1px solid #ff880033; background:#ff88000d; border-radius:5px; }

.cab-page.workspace .overview-shops .location-list { margin-top:8px; }
.cab-page.workspace .overview-shops .location-option { padding:8px 10px; min-height:48px; }
.cab-page.workspace .overview-shops .add-point { margin:8px 0; }
.cab-page.workspace .overview-selected-devices .point-details { margin-top:12px; padding-top:10px; }
.cab-page.workspace .overview-selected-devices .brand-count-grid { display:block; }
.cab-page.workspace .overview-selected-devices .point-actions { margin-top:10px; }
.cab-page.workspace .overview-selected-devices .point-summary-grid { margin:8px 0 12px; }
.cab-page.workspace .overview-charts { align-items:start; }

.overview-brand-table { width:100%; border-collapse:collapse; font-size:12px; }
.overview-brand-table th,.overview-brand-table td { padding:7px 4px; border-bottom:1px solid #ffffff0e; text-align:right; }
.overview-brand-table th:first-child { text-align:left; }
.overview-brand-table thead { color:#aeb4bd; font-size:10px; }
.cab-page.workspace main.cab[data-active-tab=overview] > .rail:empty { display:none; }

/* Cabinet: clear hierarchy, aligned controls and compact filters. */
.cab-page.workspace .cabinet-refresh-row { display:flex; align-items:center; justify-content:flex-end; gap:10px; margin:6px 0; }
.cab-page.workspace .cabinet-refresh-row button { min-height:30px; padding:5px 10px; font-size:12px; }
.cab-page.workspace .device-filter-toolbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; margin-top:12px; }
.segmented-controls { display:inline-flex; gap:3px; padding:3px; border:1px solid #ffffff14; border-radius:8px; background:#11151b; }
.cab-page.workspace .segmented-controls button { min-height:30px; padding:5px 9px; border:0; border-radius:5px; font-size:11px; background:transparent; white-space:nowrap; }
.cab-page.workspace .segmented-controls button[aria-pressed=true] { color:#ffb35b; background:#ff880022; }
.cab-page.workspace .device-filter-toolbar > button { min-height:36px; padding:6px 10px; font-size:11px; }
.cab-page.workspace .text-action { min-height:28px; padding:3px 0; border:0; background:none; color:#ffb35b; font-size:12px; text-align:left; }
.cab-page.workspace #device-filter-summary { margin:6px 0 0; font-size:11px; }
.cab-page.workspace .overview-selected-devices .point-actions { display:flex; gap:6px; justify-content:flex-end; }
.cab-page.workspace .overview-selected-devices .point-actions button { min-height:32px; font-size:11px; padding:5px 8px; }
.cab-page.workspace .overview-shops #point-search { width:100%; box-sizing:border-box; height:36px; min-height:36px; font-size:13px; padding:8px 10px; margin-top:8px; }
.cab-page.workspace .company-overview .overview-bar-row { min-height:32px; padding:5px 6px; font-size:12px; }
.cab-page.workspace .company-overview .overview-chart-card h3 { font-size:14px; line-height:1.3; }
.cab-page.workspace .overview-shops .location-option-name strong { font-size:13px; line-height:1.35; overflow-wrap:anywhere; }
.cab-page.workspace .overview-shops .location-option-name small { font-size:11px; }
.cab-page.workspace .overview-shops .location-option { gap:12px; }
.cab-page.workspace .overview-brand-table { font-size:13px; }
.cab-page.workspace .overview-brand-table thead { font-size:11px; }
.cab-page.workspace .content-filter-toolbar { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:6px; margin-bottom:8px; padding:10px; border:1px solid #ffffff12; border-radius:10px; background:#181c22; }
.cab-page.workspace .content-filter-toolbar > input { grid-column:1 / -1; }
.cab-page.workspace .content-filter-toolbar :is(input,select) { width:100%; min-width:0; box-sizing:border-box; height:34px; min-height:34px; padding:5px 8px; font-size:12px; }
.content-filter-meta { grid-column:1 / -1; display:flex; justify-content:space-between; align-items:center; min-height:22px; gap:8px; }
.content-filter-meta .hint { margin:0; font-size:11px; }
.cab-page.workspace .preview-tools-column [data-content-name][hidden] { display:none !important; }
.cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .media-settings .laptop-media-line :is(button,select) { height:30px; min-height:30px; max-height:30px; font-size:10px; }
.cab-page.workspace .preview-tools-column :is(#phone-content,#laptop-content) .media-settings .laptop-media-name { font-size:11px; line-height:1.35; }
.cab-page.workspace .content-filter-empty { padding:12px 8px; font-size:12px; }
.cab-page.workspace :is(button,input,select,a):focus-visible { outline:2px solid #ffa135; outline-offset:2px; }
@media(max-width:600px) {
 .cab-page.workspace .content-filter-toolbar :is(input,select) { font-size:16px; height:38px; min-height:38px; }
 .cab-page.workspace .device-filter-toolbar { align-items:stretch; }
 .cab-page.workspace .segmented-controls { flex:1; }
 .cab-page.workspace .segmented-controls button { flex:1; min-height:36px; }
 .cab-page.workspace .overview-selected-devices .point-actions { justify-content:stretch; }
 .cab-page.workspace .overview-selected-devices .point-actions button { flex:1; min-height:36px; }
 .cab-page.workspace .company-overview .overview-charts { gap:12px; }
}
.cab-page.workspace .segmented-controls button { color:#bdc5cf; }
.cab-page.workspace .segmented-controls button[aria-pressed=true] { color:#ffb35b; }
.cab-page.workspace .cabinet-refresh-row .hint { color:#aeb4bd; }

/* Public homepage partner offers. */
.public-partners { margin-top:24px; display:grid; gap:14px; }
.plus-promo { display:grid; grid-template-columns:minmax(0,1fr) 220px; gap:28px; align-items:center; padding:32px; border-radius:20px; background:radial-gradient(ellipse at 95% 10%,#ec58b24d,transparent 55%),linear-gradient(120deg,#332265,#642886); border:1px solid #ffffff26; color:#fff; }
.plus-promo-copy { min-width:0; }
.plus-promo-label { font-size:12px; letter-spacing:.06em; color:#e2cbfa; }
.plus-promo h2 { margin:10px 0; font-size:clamp(28px,4vw,40px); line-height:1.15; color:#fff; }
.plus-promo p { margin:0 0 20px; font-size:17px; line-height:1.5; color:#f5eaff; }
.plus-promo p strong { display:inline-block; letter-spacing:.05em; }
.public-partners .partner-button { display:inline-flex; align-items:center; justify-content:space-between; gap:20px; min-height:44px; padding:11px 18px; box-sizing:border-box; border-radius:10px; background:#fff; color:#332265; font-size:14px; font-weight:700; line-height:1.4; text-decoration:none; }
.public-partners .partner-button:hover { background:#f0e4ff; }
.public-partners a:focus-visible { outline:3px solid #ffb55d; outline-offset:4px; }
.plus-promo small { display:block; margin-top:12px; font-size:12px; line-height:1.5; color:#eadcf5; }
.plus-promo .partner-ad-label { margin-top:5px; font-size:11px; overflow-wrap:anywhere; }
.plus-promo-qr { display:grid; justify-items:center; gap:10px; color:#f5eaff; font-size:12px; text-align:center; text-decoration:none; }
.plus-promo-qr img { display:block; width:196px; height:196px; max-width:100%; background:#fff; border-radius:12px; }
.browser-promo { display:flex; align-items:center; gap:18px; padding:20px 24px; border:1px solid #ffffff18; border-radius:16px; background:#171b21; }
.browser-promo > svg { flex:0 0 40px; color:#ff9b38; }
.browser-promo > div { flex:1; min-width:0; }
.browser-promo h3 { margin:0 0 5px; font-size:17px; line-height:1.4; color:#fff; }
.browser-promo p { margin:0; font-size:14px; line-height:1.5; color:#aeb4bd; }
.browser-promo .partner-button { flex-shrink:0; background:#ff8800; color:#171717; }
.browser-promo .partner-button:hover { background:#ffa332; }
@media(max-width:700px) {
  .plus-promo { grid-template-columns:1fr; padding:22px; gap:24px; }
  .plus-promo-qr { justify-self:start; }
  .browser-promo { flex-wrap:wrap; padding:18px; gap:12px; }
  .browser-promo > div { flex-basis:calc(100% - 52px); }
  .browser-promo .partner-button { width:100%; }
}

/* Generated partner artwork: responsive illustrations, readable live copy. */
.public-partners .plus-promo { grid-template-columns:minmax(230px,1fr) minmax(0,1.15fr) 196px; gap:22px; padding:28px; overflow:hidden; background:radial-gradient(ellipse at 65% 50%,#7f29b94d,transparent 65%),#201137; }
.plus-promo-art { display:block; width:100%; height:auto; border-radius:16px; }
.public-partners .plus-promo-qr img { width:196px; height:196px; }
.public-partners .browser-promo { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); padding:0; gap:0; overflow:hidden; background:linear-gradient(120deg,#181e28,#272019); }
.browser-promo-art { display:block; width:100%; height:auto; }
.browser-promo-copy { padding:28px; }
.public-partners .browser-promo h3 { font-size:clamp(20px,2.2vw,28px); line-height:1.25; margin-bottom:12px; }
.public-partners .browser-promo p { font-size:15px; margin-bottom:20px; }
.public-partners .browser-promo .partner-button { width:auto; }
@media(max-width:1000px) and (min-width:701px) {
 .public-partners .plus-promo { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .plus-promo-art { grid-column:2; grid-row:1 / span 2; }
 .public-partners .plus-promo-qr { grid-column:1; justify-self:start; }
 .browser-promo-copy { padding:20px; }
}
@media(max-width:700px) {
 .public-partners .plus-promo { grid-template-columns:minmax(0,1fr); padding:20px; gap:20px; }
 .plus-promo-art { grid-row:1; }
 .public-partners .plus-promo-qr { justify-self:center; }
 .public-partners .browser-promo { grid-template-columns:minmax(0,1fr); }
 .browser-promo-copy { padding:22px; }
 .public-partners .browser-promo .partner-button { width:100%; }
}
.welcome-hero { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:clamp(28px,5vw,72px); align-items:center; min-height:620px; margin-bottom:28px; }
.welcome-copy { max-width:560px; }
.welcome-copy h1 { font-size:clamp(42px,5.5vw,78px); line-height:1.02; letter-spacing:-.065em; }
.welcome-copy h1 em { color:transparent; background:linear-gradient(105deg,#ffc83d 0%,#ff9a32 45%,#ff5a19 100%); background-clip:text; -webkit-background-clip:text; font-style:normal; }
.welcome-copy .hero-lead { max-width:520px; }
.welcome-visual { position:relative; min-width:0; }
.welcome-visual::before { content:""; position:absolute; inset:10% -7% -8% 8%; border-radius:50%; background:#ff7b202b; filter:blur(72px); z-index:-1; }
.welcome-visual img { display:block; width:100%; height:auto; border:1px solid #ffffff18; border-radius:24px; box-shadow:0 30px 80px #0009, inset 0 1px #ffffff12; }
.visual-chip { position:absolute; left:18px; bottom:18px; padding:9px 12px; border:1px solid #ffffff1e; border-radius:999px; background:#111317cc; color:#f6f7f8; font-size:10px; font-weight:800; letter-spacing:.12em; }
.welcome-facts { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.welcome-facts span { display:grid; gap:4px; min-width:102px; color:#8f96a2; font-size:11px; }
.welcome-facts b { color:#ffad57; font-size:10px; letter-spacing:.13em; }
.welcome-promo { display:flex; align-items:center; justify-content:space-between; gap:28px; margin:0 0 72px; padding:25px 28px; border:1px solid #ffffff18; border-radius:18px; background:linear-gradient(110deg,#241744,#34204d 62%,#40203d); box-shadow:0 18px 50px #0003; }
.welcome-promo h2 { margin:8px 0 7px; font-size:clamp(24px,3vw,34px); }
.welcome-promo p { margin:0; color:#eadcf5; line-height:1.55; }
.welcome-promo p strong { color:#fff; letter-spacing:.08em; }
.welcome-promo .partner-button { flex-shrink:0; }
.welcome-start-label { margin-bottom:8px; }
.welcome-start-title { margin:0 0 20px; font-size:clamp(26px,3vw,38px); }
@media (max-width: 760px) {
  .welcome-hero { grid-template-columns:1fr; min-height:0; gap:28px; }
  .welcome-copy h1 { font-size:clamp(40px,12vw,62px); }
  .welcome-visual { order:-1; }
  .welcome-visual img { border-radius:18px; }
  .welcome-promo { align-items:flex-start; flex-direction:column; padding:22px; margin-bottom:52px; }
  .welcome-promo .partner-button { width:100%; text-align:center; }
  .visual-chip { left:12px; bottom:12px; font-size:8px; }
}

/* The public home screen leads with the real ScreenBox device scene. */
.compact-site .product-preview {
  min-height: 0;
  aspect-ratio: 3 / 2;
  border: 1px solid #ffffff18;
  border-radius: 24px;
  background: #17191d url('/static/screenbox-devices-hero.png?v=20261018.02') center / cover no-repeat;
  box-shadow: 0 30px 80px #0009, inset 0 1px #ffffff12;
}
.compact-site .product-preview .demo-window,
.compact-site .product-preview .preview-float { display: none; }
@media (max-width: 760px) {
  .compact-site .product-preview { border-radius: 18px; }
}
