/* Aero7 website redesign — compact Windows 7-era Aero presentation layer. */
:root {
  --v2-navy:#041b61;
  --v2-cobalt:#073caa;
  --v2-blue:#0878db;
  --v2-cyan:#4adcf4;
  --v2-ink:#061b62;
  --v2-copy:#233657;
  --v2-line:#bdcbe0;
  --v2-paper:#f7f9fc;
  --v2-green:#4dbb37;
  --v2-orange:#f49b20;
  --v2-shadow:0 2px 5px rgba(13,34,83,.17),0 12px 32px rgba(34,80,134,.08);
}

html { overflow-x:hidden; background:#eef4fa; }
body { overflow-x:hidden; color:var(--v2-copy); background:radial-gradient(circle at 70% 12%,#fff 0,#f4f8fc 31%,#eaf2f9 100%); font-family:"Segoe UI",SegoeUI,Tahoma,Geneva,Verdana,sans-serif; }
#content,main { overflow-x:clip; }
.narrow { width:min(1320px,calc(100% - 48px)); }
h1,h2,h3,strong,b { color:var(--v2-ink); }
a { color:#064ec0; }
.section { padding:42px 0; }
.paper-section { padding:26px 0 0; }
.pale { background:rgba(230,240,250,.72); }
.glass,.glass-card { border:1px solid var(--v2-line); border-radius:6px; background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(244,248,252,.83)); box-shadow:var(--v2-shadow),inset 0 1px #fff; backdrop-filter:none; }
.glass-card:hover { transform:translateY(-2px); border-color:#87a9d6; box-shadow:0 3px 7px rgba(13,34,83,.2),0 16px 34px rgba(34,80,134,.11); }
.eyebrow,.hero-kicker { color:#107de2; font-size:.75rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.compact-heading,.section-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin:0 0 14px; }
.compact-heading h2,.section-heading h2 { margin:0; font-size:1.35rem; }
.compact-heading p,.section-heading p { margin:0; color:#52627f; }
.muted { color:#66748c; }

/* Compact site chrome */
.site-header { position:absolute; z-index:50; inset:0 0 auto; height:68px; background:linear-gradient(180deg,rgba(1,22,86,.98),rgba(3,42,118,.95)); border-bottom:1px solid rgba(140,205,255,.46); box-shadow:0 1px 8px rgba(0,7,42,.36); }
.nav { width:min(1320px,calc(100% - 48px)); min-height:68px; height:68px; margin:auto; padding:0; display:flex; align-items:center; border:0; border-radius:0; background:transparent; box-shadow:none; }
.brand { gap:10px; color:#fff; text-shadow:0 1px 2px #00194d; }
.brand img { width:45px; height:45px; filter:drop-shadow(0 2px 2px #001346); }
.brand span { font-size:1.75rem; font-weight:400; letter-spacing:-.02em; }
.brand small { margin-left:2px; padding:2px 7px; border:1px solid #4b9ee2; border-radius:3px; color:#d6edff; font-size:.65rem; }
.nav-links { margin-left:auto; height:100%; display:flex; align-items:center; gap:4px; }
.nav-links a { min-height:38px; display:inline-flex; align-items:center; gap:6px; padding:8px 13px; border:1px solid transparent; border-radius:4px; color:#fff; font-size:.9rem; text-shadow:0 1px 2px #001446; }
.nav-links a:hover,.nav-links a.active { background:linear-gradient(180deg,rgba(96,164,235,.34),rgba(67,113,188,.28)); border-color:rgba(125,185,241,.38); box-shadow:inset 0 1px rgba(255,255,255,.24); outline:0; }
.nav-links a.active { background:linear-gradient(180deg,rgba(108,174,241,.43),rgba(57,102,175,.4)); }
.nav-highlight { display:none!important; }
.nav-caret { font-size:.9em; opacity:.88; transform:translateY(-1px); }
.nav-github svg { width:17px; height:17px; }
.nav-toggle { border-radius:4px; }

.button,.download-action { border-radius:4px; border:1px solid #064592; color:#fff; font-weight:700; background:linear-gradient(180deg,#258ee7 0,#0765c7 48%,#034eae 51%,#0a61cb 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 1px 2px rgba(0,26,84,.34); text-shadow:0 1px 1px #003375; }
.button:hover,.download-action:hover { transform:translateY(-1px); filter:brightness(1.06); box-shadow:inset 0 1px #fff,0 2px 5px rgba(0,41,102,.32); }
.button.green { background:linear-gradient(#50c86c,#15924d 52%,#08753b 53%,#139952); border-color:#08723b; }
.button.cyan,.button.light { color:#073779; background:linear-gradient(#fff,#d9ebf7 52%,#c3ddec 53%,#f7fbfe); border-color:#829ebf; text-shadow:0 1px #fff; }

/* Full-width Aero hero field */
.aero-banner,.hero,.subhero,.download-hero,.wiki-hero,.article-hero { position:relative; overflow:hidden; margin:0; padding-top:68px; background-color:#073db0; background-image:linear-gradient(90deg,rgba(0,20,111,.92) 0%,rgba(0,65,196,.74) 46%,rgba(21,202,237,.34) 100%),url('/assets/aero7-background.png'); background-position:center; background-size:cover; color:#fff; }
.aero-banner::after,.hero::after,.subhero::after,.download-hero::after,.wiki-hero::after,.article-hero::after { content:""; position:absolute; inset:auto 0 0; height:1px; background:#65d9f4; pointer-events:none; }
.aero-banner h1,.aero-banner h2,.aero-banner h3,.aero-banner p,.hero h1,.hero h2,.hero p,.subhero h1,.subhero h2,.subhero p,.download-hero h1,.download-hero h2,.download-hero p,.article-hero h1,.article-hero p { color:#fff; text-shadow:0 2px 3px rgba(0,18,77,.62); }
.aero-banner::before,.hero::before,.subhero::before,.download-hero::before,.wiki-hero::before,.article-hero::before { opacity:.16; animation-duration:30s; }
.aero-ambient { opacity:.25; }

/* Aero7 geometry and native SMOD assets, with glass sampling the page behind it.
   Keep the tint light: an opaque frame under a second caption gradient becomes
   silver paint. Blur only the 30px caption strip, never the screenshot surface. */
.aero-window { position:relative; margin:0; min-width:0; padding:0 5px 5px; overflow:hidden; border:1px solid #e8f0f3d6; border-radius:7px; background:linear-gradient(135deg,#dcecf047,#98b6c721 30%,#dcebf033 55%,#7b99ac38); box-shadow:0 2px 5px #001a4c70,0 8px 18px #001a4c33,inset 0 0 0 1px #ffffff66; }
.aero-window::before { content:""; position:absolute; inset:1px; border-radius:6px; background:url('/assets/os-frame/reflection.png') center/100% 100% no-repeat; opacity:.09; pointer-events:none; }
.aero-window-title { position:relative; height:30px; margin:0 -5px; padding:0 8px 0 11px; display:flex; align-items:center; justify-content:space-between; gap:8px; color:#111; font-size:12px; font-weight:400; background:linear-gradient(#f2f8f826,#cad9de0a 42%,#7b94a20f); -webkit-backdrop-filter:blur(8px) saturate(115%); backdrop-filter:blur(8px) saturate(115%); text-shadow:0 0 3px #fff,0 0 6px #fff,0 1px #fff; box-shadow:inset 0 1px #ffffff55; }
.aero-window-title>span { min-width:0; display:flex; align-items:center; gap:6px; }
.window-caption { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.aero-window .window-app-icon { flex:0 0 17px; width:17px; height:17px; max-width:17px; aspect-ratio:1; object-fit:contain; border:0; border-radius:0; background:none; cursor:default; }
.window-controls { height:20px; align-self:flex-start; flex:0 0 auto; display:flex; }
.window-controls button { --caption:minimize; width:29px; height:20px; min-height:0; display:grid; place-items:center; padding:0; border:0; border-radius:0; box-shadow:none; background:transparent var(--caption-normal) center/100% 100% no-repeat; cursor:pointer; transform:none; filter:none; }
.window-controls button::after { content:""; display:block; width:100%; height:100%; background:transparent var(--glyph-normal) center no-repeat; }
.window-controls button:hover { background-image:var(--caption-hover); }
.window-controls button:hover::after { background-image:var(--glyph-hover); }
.window-controls button:active { background-image:var(--caption-pressed); }
.window-controls button:active::after { background-image:var(--glyph-pressed); }
.window-controls .window-minimize { width:29px; --caption-normal:url('/assets/os-frame/minimize.png'); --caption-hover:url('/assets/os-frame/minimize-hover.png'); --caption-pressed:url('/assets/os-frame/minimize-active.png'); --glyph-normal:url('/assets/os-frame/minimize-glyph.png'); --glyph-hover:url('/assets/os-frame/minimize-hover-glyph.png'); --glyph-pressed:url('/assets/os-frame/minimize-active-glyph.png'); }
.window-controls .window-maximize { width:27px; --caption-normal:url('/assets/os-frame/maximize.png'); --caption-hover:url('/assets/os-frame/maximize-hover.png'); --caption-pressed:url('/assets/os-frame/maximize-active.png'); --glyph-normal:url('/assets/os-frame/maximize-glyph.png'); --glyph-hover:url('/assets/os-frame/maximize-hover-glyph.png'); --glyph-pressed:url('/assets/os-frame/maximize-active-glyph.png'); }
.window-controls .window-close { width:49px; --caption-normal:url('/assets/os-frame/close.png'); --caption-hover:url('/assets/os-frame/close-hover.png'); --caption-pressed:url('/assets/os-frame/close-active.png'); --glyph-normal:url('/assets/os-frame/close-glyph.png'); --glyph-hover:url('/assets/os-frame/close-hover-glyph.png'); --glyph-pressed:url('/assets/os-frame/close-active-glyph.png'); }
.aero-window-body { position:relative; border:1px solid #132632b3; background:#fff; overflow:hidden; }
.aero-window-body>img { display:block; width:100%; height:auto; aspect-ratio:auto; object-fit:contain; border:0; border-radius:0; }
.aero-window-body.cropped-shot { position:relative; aspect-ratio:var(--shot-ratio); }
.aero-window-body.cropped-shot>img { position:absolute; inset:0 auto auto 0; width:var(--shot-width); max-width:none; height:auto; aspect-ratio:auto; transform:translate(var(--shot-x),var(--shot-y)); }
.window-restore { width:100%; padding:12px; border:1px solid #8aa5bc; border-radius:2px; color:#17497e; background:linear-gradient(#fff,#e3edf5); cursor:pointer; }
.aero-window [hidden] { display:none!important; }
.aero-window.is-minimized .window-caption { opacity:.7; }

/* Home keeps all live content, but uses the same compact visual language. */
.hero { min-height:610px; padding:130px 0 80px; }
.hero-grid { min-height:390px; }
.hero-copy { max-width:650px; margin:0; padding:0; background:none; box-shadow:none; backdrop-filter:none; }
.hero-copy h1 { color:#fff; font-size:clamp(2.8rem,5vw,4.8rem); line-height:.98; text-shadow:0 2px 4px rgba(0,17,72,.6); }
.hero-copy h1 em { color:#58d7ff; }
.hero-copy p { color:#eef8ff; }
.hero-logo img { max-width:350px; }
.feature-strip.overlap,.fact-band.overlap,.spec-strip.overlap,.software-facts.overlap { margin-top:-35px; position:relative; z-index:4; border-radius:6px; }
.professional-showcase,.related,.tux-callout,.legal-panel { border-radius:7px; }

/* Info */
.info-banner { min-height:505px; padding-bottom:34px; }
.info-hero-grid { min-height:430px; display:grid; grid-template-columns:.82fr 1.18fr; gap:40px; align-items:center; }
.info-hero-copy { max-width:500px; }
.info-hero-copy h1 { margin:10px 0 12px; font-size:2.65rem; line-height:1.05; }
.info-hero-copy h2 { margin:0 0 14px; font-size:1.25rem; font-weight:500; }
.info-hero-copy p { font-size:1rem; line-height:1.55; }
.hero-kicker { color:#70e4ff; }
.hero-proof { display:flex; flex-wrap:wrap; gap:0; margin-top:24px; }
.hero-proof span { display:flex; align-items:center; gap:8px; min-height:36px; padding:0 18px; border-right:1px solid rgba(255,255,255,.28); color:#fff; font-size:.88rem; }
.hero-proof span:first-child { padding-left:0; }
.hero-proof span:last-child { border:0; }
.mini-icon { width:25px; height:25px; object-fit:contain; filter:drop-shadow(0 1px 1px #002363); }
.info-hero-visual { position:relative; min-height:390px; }
.info-hero-visual .desktop-window { position:absolute; width:66%; left:0; top:10px; }
.info-hero-visual .installer-window { position:absolute; width:43%; right:0; top:80px; }
.feature-ribbon { position:relative; z-index:5; margin-top:-1px; display:grid; grid-template-columns:repeat(6,1fr); border:1px solid #b7c9df; border-radius:6px; background:linear-gradient(#fff,#edf3f8); box-shadow:var(--v2-shadow); }
.feature-ribbon article { min-height:112px; display:flex; align-items:center; gap:12px; padding:16px; border-right:1px solid #cbd6e4; }
.feature-ribbon article:last-child { border:0; }
.feature-ribbon .feature-icon { width:56px; height:56px; }
.feature-ribbon h3 { margin:0 0 5px; font-size:.9rem; }
.feature-ribbon p { margin:0; font-size:.76rem; line-height:1.4; }
.journey-v2 { display:flex; align-items:center; justify-content:space-between; padding:10px 12px 18px; }
.journey-v2 article { flex:1; display:flex; align-items:center; gap:14px; }
.journey-v2 article>span { width:59px; height:59px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:linear-gradient(#69b9ee,#0755af 55%,#033b96); border:2px solid #fff; box-shadow:0 0 0 1px #3e6fa8,0 3px 8px #7494b8; }
.journey-v2 img { width:40px; height:40px; }
.journey-v2 article div { display:grid; }
.journey-v2 small { margin-top:3px; color:#53617a; }
.journey-v2>i { color:#2457a3; font-size:1.7rem; font-style:normal; padding:0 16px; }
.window-gallery { display:grid; grid-template-columns:1fr 1fr 1.2fr; gap:20px; align-items:start; }
.project-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.project-cards article { display:flex; align-items:start; gap:16px; padding:15px; border:1px solid #c8d3e0; border-radius:5px; background:rgba(255,255,255,.72); }
.project-logo { width:58px; height:58px; flex:0 0 auto; object-fit:contain; }
.project-cards h3,.project-cards p { margin:0 0 5px; }
.project-cards p { font-size:.82rem; }
.tux-inline { grid-column:1/-1; min-height:140px; margin-top:18px; padding:22px 180px 22px 24px; position:relative; overflow:hidden; border-top:1px solid #c7d3e2; background:linear-gradient(90deg,#f9fbfd,rgba(228,240,250,.6)); }
.tux-inline img { position:absolute; right:24px; bottom:-18px; width:145px; }
.tag-row { display:flex; gap:8px; }
.tag-row span,.status-chip,.recommended,.release-badge { display:inline-flex; align-items:center; padding:3px 8px; border:1px solid #9eb9dd; border-radius:3px; color:#134886; background:#e8f3ff; font-size:.7rem; font-weight:700; }
.independence-note { display:flex; gap:18px; align-items:center; margin:28px auto 42px; padding:18px 22px; border:1px solid #c1cee0; background:#fff; box-shadow:var(--v2-shadow); }
.note-icon { width:46px; height:46px; object-fit:contain; }
.independence-note h2,.independence-note p { margin:0; }

/* Software */
.software-banner { min-height:528px; padding-bottom:25px; }
.software-v2-grid { min-height:435px; display:grid; grid-template-columns:.72fr 1.28fr; gap:30px; align-items:center; }
.software-v2-grid h1 { margin:15px 0 4px; max-width:480px; font-size:2.75rem; line-height:1.08; }
.software-v2-grid h2 { margin:0 0 16px; color:#5fd8ff; font-size:2.45rem; line-height:1.08; }
.software-v2-grid p { max-width:510px; }
.status-chip { color:#fff; border-color:#2f83dc; background:rgba(0,50,147,.65); }
.status-chip i { width:8px; height:8px; margin-right:7px; border-radius:50%; background:#6be049; box-shadow:0 0 6px #75ff51; }
.software-window-stack { position:relative; min-height:420px; }
.software-window-stack .file-window { position:absolute; width:56%; left:0; top:15px; z-index:1; }
.software-window-stack .control-window { position:absolute; width:44%; right:0; top:4px; z-index:2; }
.software-window-stack .device-window { position:absolute; width:31%; right:20%; bottom:0; z-index:3; }
.core-app-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }
.core-app-grid article { min-height:136px; display:flex; gap:18px; align-items:flex-start; padding:18px; border:1px solid #c6d2e0; border-radius:5px; background:rgba(255,255,255,.72); }
.core-app-icon { width:66px; height:66px; flex:0 0 auto; object-fit:contain; }
.core-app-grid h3,.core-app-grid p { margin:0 0 5px; }
.core-app-grid p { min-height:42px; font-size:.8rem; line-height:1.35; }
.software-groups-v2 { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.software-groups-v2>article { display:flex; gap:17px; padding:18px; border:1px solid #c7d3e1; border-radius:5px; background:rgba(255,255,255,.72); }
.group-main-icon { width:58px; height:58px; object-fit:contain; flex:0 0 auto; }
.software-groups-v2 h3,.software-groups-v2 p { margin:0 0 4px; }
.software-groups-v2 p { font-size:.78rem; }
.software-groups-v2 ul { list-style:none; margin:13px 0 0; padding:0; display:grid; gap:8px; }
.software-groups-v2 li { display:flex; gap:9px; align-items:center; }
.list-app-icon { width:25px; height:25px; object-fit:contain; }
.software-groups-v2 li span { display:grid; }
.software-groups-v2 li b { font-size:.78rem; }
.software-groups-v2 li small { font-size:.7rem; }
.roadmap-note { margin:18px 0 42px; display:flex; align-items:center; gap:15px; padding:15px 18px; border:1px solid #edc06f; background:#fff9e9; }
.roadmap-note>div { flex:1; }
.roadmap-note p { margin:3px 0 0; }

/* News */
.news-banner,.releases-banner { min-height:188px; padding:90px 0 24px; }
.news-banner h1,.releases-banner h1 { margin:0 0 7px; font-size:2.4rem; }
.news-banner p,.releases-banner p { margin:0; font-size:1.12rem; }
.news-banner small,.releases-banner small { display:block; margin-top:7px; color:#cceaff; }
.news-page-v2 .paper-section { padding-top:28px; padding-bottom:55px; }
.news-toolbar-v2 { display:flex; justify-content:space-between; align-items:center; margin-bottom:16px; }
.news-toolbar-v2 h2 { margin:0; }
.news-filters { border:1px solid #bac9dd; border-radius:4px; padding:3px; background:#f6f9fc; }
.news-filters button { border:1px solid transparent; border-radius:3px; }
.news-filters button.active { background:linear-gradient(#258de4,#0758ba); color:#fff; box-shadow:inset 0 1px #fff; }
.news-feature-v2 { min-height:280px; display:grid; grid-template-columns:1fr 1fr; gap:0; overflow:hidden; border:1px solid #aebed3; border-radius:6px; background:#fff; box-shadow:var(--v2-shadow); }
.news-feature-image { min-height:280px; padding:10px; background:linear-gradient(135deg,#dbe7f4,#f8fbfd); }
.news-feature-image img { width:100%; height:100%; object-fit:cover; border:1px solid #315584; }
.news-feature-v2>div:last-child { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:28px; }
.news-feature-v2 h2 { margin:10px 0 8px; font-size:1.9rem; }
.news-feature-v2 p { line-height:1.5; }
.news-meta { display:flex; flex-wrap:wrap; gap:10px; color:#65738b; font-size:.75rem; }
.recent-title { margin:20px 0 8px; font-size:1.25rem; }
.news-list-v2 { display:grid; grid-template-columns:1fr 1fr; gap:10px 16px; }
.news-row-v2 { min-height:104px; display:grid; grid-template-columns:78px 1fr auto; gap:15px; align-items:center; padding:12px 14px; border:1px solid #c1cede; border-radius:5px; background:rgba(255,255,255,.82); box-shadow:0 1px 3px rgba(15,42,90,.12); }
.news-row-v2>img,.news-row-icon { width:70px; height:70px; object-fit:contain; }
.news-row-v2 h3,.news-row-v2 p { margin:0 0 4px; }
.news-row-v2 p { font-size:.8rem; }
.news-row-v2>span { color:#1b4d9c; font-size:1.7rem; }

/* Downloads and release archive */
.download-banner { min-height:398px; padding-bottom:18px; }
.download-v2-grid { min-height:310px; display:grid; grid-template-columns:.86fr 1.14fr; gap:55px; align-items:center; }
.download-title { display:flex; align-items:center; gap:30px; }
.download-title>img { width:180px; height:180px; object-fit:contain; filter:drop-shadow(0 5px 6px rgba(0,10,62,.45)); }
.download-title h1 { margin:0; font-size:2.65rem; white-space:nowrap; }
.download-title p { margin:7px 0; font-size:1.4rem; }
.release-selector { padding:20px; color:var(--v2-copy); border:1px solid #aabbd2; border-radius:7px; background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(236,242,249,.96)); box-shadow:0 4px 10px rgba(0,17,72,.34),inset 0 1px #fff; }
.release-selector h2,.release-selector h3,.release-selector p { color:var(--v2-ink); text-shadow:none; }
.release-selector-head { display:flex; align-items:center; justify-content:space-between; }
.release-selector-head h2 { margin:0; font-size:2rem; }
.release-selector-head p { margin:4px 0 12px; }
.release-art { width:88px; height:88px; object-fit:contain; }
.edition-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.edition-choice { padding:12px; border:1px solid #c2cddd; border-radius:5px; background:rgba(255,255,255,.74); }
.edition-choice>div:first-child { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.edition-choice h3 { margin:0; }
.edition-choice p { min-height:39px; margin:6px 0 10px; font-size:.76rem; }
.edition-choice.unavailable { opacity:.7; }
.download-action { width:100%; min-height:40px; display:flex; align-items:center; justify-content:center; gap:7px; padding:8px 10px; }
.download-action[disabled] { border-color:#9aa8ba; color:#697589; background:linear-gradient(#f5f6f8,#d8dee7); text-shadow:0 1px #fff; }
.edition-choice dl { margin:10px 0 0; font-size:.69rem; }
.edition-choice dl div { display:flex; gap:6px; margin-top:5px; }
.edition-choice dt { font-weight:700; }
.edition-choice dd { min-width:0; margin:0; overflow-wrap:anywhere; }
.edition-choice code { font-size:.62rem; }
.copy-mini { margin-left:5px; border:1px solid #819ab9; border-radius:3px; background:#edf4fa; color:#16437c; }
.release-selector-links { display:flex; gap:20px; margin-top:12px; padding-top:10px; border-top:1px solid #ccd4df; font-size:.82rem; }
.download-subnav { border-bottom:1px solid #c2cfe0; background:rgba(248,250,253,.95); }
.download-subnav>div { display:flex; }
.download-subnav a { padding:13px 17px 11px; color:#1c2d56; border-bottom:2px solid transparent; }
.download-subnav a.active { color:#0739ba; border-color:#1659f1; font-weight:700; }
.download-content-v2 { display:grid; grid-template-columns:1fr 1fr; gap:42px; padding-top:22px; padding-bottom:45px; }
.install-steps-v2 { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.install-steps-v2 article { min-height:160px; padding:12px; border:1px solid #c4d0df; border-radius:5px; background:rgba(255,255,255,.7); }
.install-steps-v2 img { width:58px; height:58px; display:block; margin:0 auto 7px; }
.install-steps-v2 b { display:block; }
.install-steps-v2 p { margin:5px 0; font-size:.74rem; }
.requirements-panel { display:flex; gap:15px; margin-top:14px; padding:14px; border:1px solid #c6d1df; background:rgba(255,255,255,.72); }
.requirements-panel h3 { margin:0; }
.requirements-panel ul { margin:6px 0 0; padding-left:18px; font-size:.78rem; }
.download-preview { align-self:start; }
.release-filters { display:grid; grid-template-columns:1.25fr .9fr .9fr; gap:14px; margin:0 0 16px; }
.release-filters label { position:relative; }
.release-filters input,.release-filters select { width:100%; min-height:43px; padding:8px 12px; border:1px solid #b5c4d8; border-radius:4px; color:#172a53; background:#fff; }
.release-filters label:first-child input { padding-left:44px; }
.filter-icon { position:absolute; z-index:1; left:13px; top:11px; width:21px; height:21px; }
.release-entry { margin-bottom:10px; border:1px solid #b9c7da; border-radius:5px; background:rgba(255,255,255,.76); box-shadow:0 1px 3px rgba(11,35,78,.1); }
.release-entry[open] { border-color:#5f86e7; }
.release-entry summary { min-height:62px; display:flex; align-items:center; gap:12px; padding:12px 18px; cursor:pointer; list-style:none; }
.release-entry summary::-webkit-details-marker { display:none; }
.release-entry summary strong { font-size:1.3rem; }
.release-entry .disclosure { font-size:2rem; color:#174aa0; transition:transform .18s; }
.release-entry[open] .disclosure { transform:rotate(90deg); }
.release-badge.latest { color:#207331; border-color:#9ac894; background:#eaf9e7; }
.summary-meta { margin-left:auto; color:#596882; font-size:.78rem; }
.release-entry-body { display:grid; grid-template-columns:.7fr 1.35fr .85fr; gap:18px; padding:0 22px 20px 62px; }
.release-overview dl { display:grid; gap:9px; }
.release-overview dl div { display:grid; }
.release-overview dt { font-size:.7rem; color:#68758b; }
.release-overview dd { margin:0; color:var(--v2-ink); font-weight:600; }
.release-editions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.release-notes { border-left:1px solid #cad3df; padding-left:18px; font-size:.78rem; }
.release-notes h3 { margin-top:0; }
.release-empty-v2,.release-filter-empty { padding:44px 20px; text-align:center; border:1px solid #c3cede; background:rgba(255,255,255,.74); }
.release-empty-v2 .empty-icon { width:64px; height:64px; }
.archive-warning { display:flex; align-items:center; gap:15px; margin-top:16px; padding:14px 18px; border:1px solid #e6bd63; border-radius:5px; background:#fff9e9; }
.archive-warning p { margin:3px 0 0; }

/* Existing Wiki and article functionality, restyled rather than replaced. */
.wiki-hero { min-height:365px; padding:105px 0 40px; }
.wiki-hero .centered { max-width:880px; padding:0; background:none; box-shadow:none; backdrop-filter:none; }
.wiki-hero h1 { color:#fff; font-size:3.1rem; text-shadow:0 2px 4px #01206d; }
.wiki-hero p { color:#eef8ff; }
.wiki-search { border-radius:5px; border-color:#aebfd5; background:#fff; box-shadow:0 3px 8px rgba(0,22,75,.28); }
.wiki-search .search-results { z-index:80; border-radius:4px; }
.wiki-meta span { border-radius:3px; }
.wiki-layout { align-items:start; }
.wiki-sidebar,.getting-started,.wiki-categories,.markdown,.control-panel-wiki-hub { border-radius:5px; }
.wiki-sidebar { position:sticky; top:82px; }
.wiki-sidebar a { border-radius:3px; }
.wiki-sidebar a.active { background:linear-gradient(#258ee4,#0758b9); }
.markdown { background:#fff; }

/* Admin gets the same task-dialog vocabulary without changing behavior. */
.admin-hero { min-height:220px; padding:100px 0 34px; }
.admin-app { margin-top:-22px; }
.admin-top,.admin-tabs,.admin-panel,.admin-loading,.admin-login { border-radius:6px; }
.admin-panel { background:#f7f9fc; }
.admin-row,.metric { border-radius:5px; }
.admin-assets { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:12px 0; }
.admin-asset { padding:10px; border:1px solid #c6d1df; background:#fff; }
.admin-asset>div { display:flex; justify-content:space-between; gap:8px; }
.admin-asset p { margin:5px 0; }
.replace-asset-form { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.replace-asset-form .progress,.replace-asset-form .asset-upload-status { flex-basis:100%; }
.release-editor-v2 textarea { min-height:90px; }
.release-editor-v2 textarea[name="changelog"] { min-height:140px; }
.admin-divider { border:0; border-top:1px solid #c6d2df; margin:26px 0; }

@media (max-width:1080px) {
  .nav-links a { padding-inline:8px; font-size:.82rem; }
  .feature-ribbon { grid-template-columns:repeat(3,1fr); }
  .feature-ribbon article:nth-child(3) { border-right:0; }
  .feature-ribbon article:nth-child(-n+3) { border-bottom:1px solid #cbd6e4; }
  .info-hero-grid,.software-v2-grid { grid-template-columns:1fr 1fr; }
  .software-window-stack { transform:scale(.9); transform-origin:center right; }
  .core-app-grid { grid-template-columns:1fr 1fr; }
  .release-entry-body { grid-template-columns:1fr 1.4fr; padding-left:22px; }
  .release-notes { grid-column:1/-1; border:0; border-top:1px solid #cad3df; padding:14px 0 0; }
}

@media (max-width:900px) and (min-width:761px) {
  .info-banner,.software-banner { padding-bottom:30px; }
  .info-hero-grid,.software-v2-grid { grid-template-columns:1fr; }
  .info-hero-copy,.software-v2-grid>div:first-child { max-width:680px; padding-top:35px; }
  .info-hero-visual,.software-window-stack { min-height:430px; transform:none; }
  .software-window-stack .file-window { width:59%; }
  .software-window-stack .control-window { width:47%; }
  .software-window-stack .device-window { width:34%; }
  .journey-v2 { display:grid; grid-template-columns:1fr 1fr; gap:10px 24px; }
  .journey-v2>i { display:none; }
  .journey-v2 article { min-width:0; padding:8px 0; border-bottom:1px solid #d0dae6; }
  .window-gallery { grid-template-columns:1fr 1fr; }
  .window-gallery .aero-window:last-child { grid-column:1/-1; width:72%; justify-self:center; }
}

@media (max-width:760px) {
  .narrow { width:min(100% - 28px,1320px); }
  .site-header { height:62px; }
  .nav { width:calc(100% - 24px); height:62px; min-height:62px; }
  .brand img { width:39px; height:39px; }
  .brand span { font-size:1.45rem; }
  .brand small { display:none; }
  .nav-toggle { display:block; }
  .nav-links { position:absolute; top:62px; left:0; right:0; height:auto; margin:0; padding:8px; display:none; grid-template-columns:1fr 1fr; gap:4px; border:1px solid #5793cb; border-top:0; border-radius:0 0 6px 6px; background:linear-gradient(#073d99,#021f67); box-shadow:0 8px 18px rgba(0,13,55,.36); }
  .nav-links.open { display:grid; }
  .nav-links a { min-height:42px; justify-content:center; }
  .aero-banner,.hero,.subhero,.download-hero,.wiki-hero,.article-hero { padding-top:62px; }
  .compact-heading,.section-heading { display:block; }
  .compact-heading p,.section-heading p { margin-top:6px; }
  .aero-ambient,.hero-orbs { display:none; }
  .hero { min-height:auto; padding-bottom:40px; }
  .hero-grid,.info-hero-grid,.software-v2-grid,.download-v2-grid,.download-content-v2 { display:block; }
  .hero-copy { padding-top:38px; }
  .hero-copy h1 { font-size:2.65rem; }
  .hero-logo { min-height:290px; }
  .info-banner,.software-banner,.download-banner { min-height:auto; padding-bottom:28px; }
  .info-hero-copy,.software-v2-grid>div:first-child { padding:35px 0 20px; }
  .info-hero-copy h1,.software-v2-grid h1 { font-size:2.2rem; }
  .software-v2-grid h2 { font-size:1.85rem; }
  .hero-proof span { padding:0 9px; font-size:.75rem; }
  .info-hero-visual,.software-window-stack { min-height:310px; transform:none; }
  .info-hero-visual .desktop-window { width:82%; }
  .info-hero-visual .installer-window { width:55%; top:105px; }
  .software-window-stack .file-window { width:76%; }
  .software-window-stack .control-window { width:57%; }
  .software-window-stack .device-window { width:43%; right:7%; }
  .feature-ribbon { width:calc(100% - 28px); grid-template-columns:1fr 1fr; }
  .feature-ribbon article { min-height:100px; border-bottom:1px solid #cbd6e4!important; }
  .feature-ribbon article:nth-child(even) { border-right:0; }
  .journey-v2 { display:grid; gap:8px; }
  .journey-v2>i { display:none; }
  .journey-v2 article { padding:7px 0; border-bottom:1px solid #d0dae6; }
  .window-gallery,.project-cards,.core-app-grid,.software-groups-v2,.news-list-v2,.edition-grid,.release-filters,.release-entry-body,.release-editions,.admin-assets { grid-template-columns:1fr; }
  .tux-inline { padding-right:115px; }
  .tux-inline img { right:0; width:115px; }
  .news-banner,.releases-banner { min-height:180px; padding-top:92px; }
  .news-banner h1,.releases-banner h1 { font-size:2rem; }
  .news-toolbar-v2 { align-items:flex-start; flex-direction:column; gap:10px; }
  .news-filters { max-width:100%; display:flex; overflow:auto; }
  .news-feature-v2 { grid-template-columns:1fr; }
  .news-feature-image { min-height:190px; }
  .news-row-v2 { grid-template-columns:58px 1fr auto; }
  .news-row-v2>img,.news-row-icon { width:52px; height:52px; }
  .download-title { padding:30px 0 20px; gap:16px; }
  .download-title>img { width:110px; height:110px; }
  .download-title h1 { font-size:2.1rem; white-space:normal; }
  .release-selector { margin-bottom:10px; }
  .release-selector-head h2 { font-size:1.5rem; }
  .release-art { width:64px; height:64px; }
  .download-subnav a { flex:1; text-align:center; }
  .download-content-v2 { padding-top:20px; }
  .download-preview { margin-top:20px; }
  .install-steps-v2 { grid-template-columns:1fr 1fr; }
  .release-entry summary { flex-wrap:wrap; }
  .summary-meta { width:100%; margin-left:38px; }
  .release-entry-body { padding:0 16px 16px; }
  .release-notes { grid-column:auto; }
  .roadmap-note { align-items:flex-start; flex-direction:column; }
  .wiki-hero { min-height:350px; padding-top:100px; }
  .wiki-hero h1 { font-size:2.4rem; }
  .wiki-sidebar { position:static; }
  .admin-row { align-items:flex-start; flex-wrap:wrap; }
  .admin-actions { width:100%; }
}

@media (max-width:390px) {
  .feature-ribbon,.install-steps-v2 { grid-template-columns:1fr; }
  .feature-ribbon article { border-right:0; }
  .hero-proof { display:grid; }
  .hero-proof span { border:0; padding-left:0; }
  .info-hero-visual,.software-window-stack { min-height:265px; }
  .release-selector-links { flex-direction:column; gap:7px; }
}

@media (prefers-reduced-motion:reduce) {
  .aero-banner::before,.hero::before,.subhero::before,.download-hero::before,.wiki-hero::before,.article-hero::before,.hero-logo img,.download-title>img { animation:none!important; }
  .glass-card,.button,.download-action,.release-entry .disclosure { transition-duration:.01ms!important; }
}

/* Compact mockup-matched home page */
.home-compact-page .narrow { width:min(1250px,calc(100% - 48px)); }
.home-compact-hero { min-height:0; padding:68px 0 10px; background-image:linear-gradient(90deg,rgba(0,20,111,.86),rgba(0,68,201,.67) 48%,rgba(20,205,238,.22)),url('/assets/aero7-background.png'); }
.home-intro { min-height:335px; display:grid; grid-template-columns:1.15fr .85fr; align-items:center; position:relative; z-index:2; }
.home-intro-copy { align-self:center; max-width:650px; }
.home-release-chip { display:inline-flex; align-items:center; gap:8px; margin-bottom:12px; padding:6px 12px; color:#fff; border:1px solid rgba(111,205,255,.55); border-radius:18px; background:linear-gradient(180deg,rgba(5,103,211,.78),rgba(2,53,142,.82)); box-shadow:inset 0 1px rgba(255,255,255,.32),0 5px 14px rgba(0,21,80,.22); font-size:.82rem; font-weight:700; }
.home-release-chip i { width:9px; height:9px; border-radius:50%; background:#64df3f; box-shadow:0 0 7px #7cff5c; }
.home-intro-copy h1 { margin:0 0 9px; color:#fff; font-size:clamp(2.65rem,3vw,3rem); line-height:.98; letter-spacing:-.035em; white-space:nowrap; text-shadow:0 2px 4px rgba(0,17,72,.66); }
.home-intro-copy>p { max-width:570px; margin:0; color:#f1f8ff; font-size:1rem; line-height:1.42; text-shadow:0 1px 2px rgba(0,21,72,.65); }
.home-intro-copy .actions { margin:17px 0 13px; }
.home-intro-copy .button { min-height:41px; padding:7px 16px; }
.home-proof { display:flex; flex-wrap:wrap; gap:0; }
.home-proof span { display:flex; align-items:center; gap:6px; min-height:31px; padding:0 10px; color:#fff; border-right:1px solid rgba(255,255,255,.24); font-size:.72rem; }
.home-proof span:first-child { padding-left:0; }
.home-proof span:last-child { border:0; }
.proof-icon { width:22px; height:22px; object-fit:contain; filter:drop-shadow(0 1px 1px #002463); }
.home-intro-logo { min-height:300px; display:grid; place-items:center; position:relative; }
.home-intro-logo::before { content:""; position:absolute; width:390px; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(95,224,255,.2),transparent 67%); }
.home-intro-logo img { position:relative; width:min(305px,78%); filter:drop-shadow(0 20px 18px rgba(0,18,64,.38)); animation:home-logo-float 7.5s ease-in-out infinite; }
@keyframes home-logo-float { 50% { transform:translate3d(0,-6px,0); } }
.home-feature-ribbon { min-height:100px; display:grid; grid-template-columns:repeat(4,1fr); position:relative; z-index:3; overflow:hidden; color:var(--v2-copy); border:1px solid #9bb2ce; border-radius:5px; background:linear-gradient(#fff,#edf3f8); box-shadow:0 3px 8px rgba(0,25,76,.28),inset 0 1px #fff; }
.home-feature-ribbon article { display:flex; align-items:center; gap:14px; padding:14px 20px; border-right:1px solid #c4d0df; }
.home-feature-ribbon article:last-child { border:0; }
.home-feature-ribbon .feature-icon { width:57px; height:57px; flex:0 0 auto; }
.home-feature-ribbon h3,.home-feature-ribbon p { margin:0; }
.home-feature-ribbon h3 { font-size:.9rem; }
.home-feature-ribbon p { margin-top:4px; color:#344762; font-size:.76rem; line-height:1.25; }
.home-professional { min-height:82px; margin-top:8px; display:grid; grid-template-columns:64px 1fr auto; align-items:center; gap:14px; position:relative; z-index:3; padding:9px 15px; color:#fff; border:1px solid #73cdf5; border-radius:5px; background:linear-gradient(180deg,#0751b7,#003a9a 49%,#02256f 100%); box-shadow:inset 0 1px rgba(255,255,255,.55),0 3px 7px rgba(0,20,69,.34); }
.home-professional-icon { width:58px; height:58px; display:grid; place-items:center; }
.home-professional-icon img { width:56px; height:56px; }
.home-professional h2,.home-professional p { margin:0; color:#fff; }
.home-professional h2 { font-size:1.3rem; font-weight:400; }
.home-professional p { margin-top:2px; font-size:.76rem; line-height:1.3; }
.home-learn { display:flex; overflow:hidden; color:#fff; border:1px solid #55a8e8; border-radius:3px; background:linear-gradient(#278ddd,#075cb8 50%,#064394 51%,#1170cd); box-shadow:inset 0 1px #a9eaff; font-size:.75rem; font-weight:700; }
.home-learn:hover { color:#fff; text-decoration:none; filter:brightness(1.08); }
.home-learn span,.home-learn b { padding:7px 13px; }
.home-learn b { border-left:1px solid rgba(255,255,255,.35); }
.home-paper { padding:16px 0 44px; background:linear-gradient(135deg,#f9fbfe,#edf4fa); }
.home-section-head { min-height:28px; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.home-section-head h2 { margin:0; font-size:1.05rem; }
.home-section-head a { font-size:.72rem; font-weight:700; }
.home-system-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:13px; }
.home-system-grid figure { margin:0; overflow:hidden; border:1px solid #6085b8; border-radius:3px; background:#0b4eaa; box-shadow:0 2px 5px rgba(0,30,82,.23); transition:transform .2s ease,box-shadow .2s ease; }
.home-system-grid figure:hover { transform:translateY(-2px); box-shadow:0 5px 12px rgba(0,30,82,.27); }
.home-system-grid img { display:block; width:100%; aspect-ratio:16/9.25; object-fit:cover; object-position:top; cursor:zoom-in; }
.home-lower-grid { margin-top:13px; display:grid; grid-template-columns:1.12fr .88fr; gap:38px; }
.home-daily-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.home-daily-grid article,.home-update-card { min-height:72px; display:flex; align-items:flex-start; gap:11px; padding:10px 12px; border:1px solid #c5d0df; border-radius:4px; background:linear-gradient(135deg,#fff,#f2f6fa); box-shadow:0 1px 3px rgba(16,42,82,.12),inset 0 1px #fff; }
.home-small-icon,.home-update-icon { width:36px; height:36px; flex:0 0 auto; object-fit:contain; filter:drop-shadow(0 2px 2px rgba(0,46,101,.17)); }
.home-daily-grid h3,.home-daily-grid p,.home-update-card h3,.home-update-card p { margin:0; }
.home-daily-grid h3,.home-update-card h3 { font-size:.75rem; line-height:1.2; }
.home-daily-grid p,.home-update-card p { margin-top:4px; color:#334760; font-size:.66rem; line-height:1.25; }
.home-update-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; }
.home-update-card a { color:var(--v2-ink); }
.home-related { min-height:90px; margin-top:22px; display:grid; grid-template-columns:120px 1fr auto; align-items:center; gap:18px; overflow:hidden; padding:10px 18px; color:#fff; border:1px solid #65c9ef; border-radius:5px; background:linear-gradient(180deg,#0864b8,#033c91 55%,#05266b); box-shadow:inset 0 1px #fff,0 5px 13px rgba(0,36,91,.24); }
.home-related>img { width:115px; height:70px; object-fit:cover; border-radius:4px; }
.home-related span { color:#9eeaff; font-size:.65rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.home-related h2,.home-related p { margin:0; color:#fff; }
.home-related h2 { font-size:1.45rem; }
.home-related p { margin-top:3px; font-size:.76rem; }
.home-related .button { min-height:38px; padding:7px 14px; font-size:.76rem; }

@media (max-width:1020px) {
  .home-intro { grid-template-columns:1fr 310px; }
  .home-intro-copy h1 { white-space:normal; }
  .home-intro-logo img { width:245px; }
  .home-feature-ribbon { grid-template-columns:1fr 1fr; }
  .home-feature-ribbon article:nth-of-type(2) { border-right:0; }
  .home-feature-ribbon article:nth-of-type(-n+2) { border-bottom:1px solid #c4d0df; }
  .home-lower-grid { grid-template-columns:1fr; gap:16px; }
}

@media (max-width:760px) {
  .home-compact-page .narrow { width:calc(100% - 28px); }
  .home-compact-hero { padding-top:62px; }
  .home-intro { display:flex; min-height:0; flex-direction:column; padding:34px 0 22px; text-align:center; }
  .home-intro-copy>p { margin-inline:auto; }
  .home-intro-copy .actions,.home-proof { justify-content:center; }
  .home-proof span { padding:0 8px; }
  .home-intro-logo { min-height:225px; width:100%; order:-1; }
  .home-intro-logo img { width:190px; }
  .home-intro-copy h1 { font-size:2.35rem; }
  .home-feature-ribbon { grid-template-columns:1fr; }
  .home-feature-ribbon article { min-height:86px; border-right:0; border-bottom:1px solid #c4d0df!important; }
  .home-feature-ribbon article:last-child { border-bottom:0!important; }
  .home-professional { grid-template-columns:54px 1fr; }
  .home-professional-icon,.home-professional-icon img { width:48px; height:48px; }
  .home-professional .home-learn { grid-column:1/-1; justify-self:stretch; justify-content:center; }
  .home-system-grid { grid-template-columns:1fr 1fr; }
  .home-daily-grid { grid-template-columns:1fr; }
  .home-update-grid { grid-template-columns:1fr; }
  .home-related { grid-template-columns:80px 1fr; }
  .home-related>img { width:78px; height:55px; }
  .home-related .button { grid-column:1/-1; }
}

@media (max-width:390px) {
  .home-system-grid { grid-template-columns:1fr; }
  .home-proof { display:grid; grid-template-columns:1fr 1fr; text-align:left; }
  .home-proof span { border:0; }
}

@media (prefers-reduced-motion:reduce) {
  .home-intro-logo img { animation:none!important; }
}
