/* smolsi 1 — an editorial announcement, with the hardware in full view. */
.announcement-shell { width:calc(100% - 96px); max-width:1248px; margin-inline:auto; }
.announcement-intro { padding-block:64px 40px; }
.announcement-meta { display:flex; align-items:center; gap:14px; }
.announcement-meta time { border-left:1px solid var(--line-strong); padding-left:14px; }
.announcement-heading { display:grid; grid-template-columns:1.15fr 1fr; gap:48px; align-items:end; margin-top:28px; }
.announcement-heading h1 { font-size:52px; line-height:1.1; font-weight:400; letter-spacing:-.04em; }
.announcement-deck { max-width:470px; color:var(--text); font-size:19px; line-height:1.55; }
.announcement-deck strong { color:var(--ink); font-weight:400; }
.announcement-product { margin:0; }
.announcement-product img { display:block; width:100%; height:auto; background:#858585; }
.announcement-product figcaption { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-block:14px; border-bottom:1px solid var(--line); color:var(--muted); font-family:var(--mono); font-size:10px; letter-spacing:.025em; text-transform:uppercase; }
.announcement-status { display:inline-flex; align-items:center; gap:9px; color:var(--accent); }
.announcement-status::before { content:""; width:5px; height:5px; flex-shrink:0; background:currentColor; }
.announcement-story { padding-top:20px; }
.announcement-chapter { display:grid; grid-template-columns:1fr 1.4fr; gap:80px; padding-block:48px; border-bottom:1px solid var(--line); }
.announcement-chapter h2 { font-size:29px; line-height:1.25; font-weight:400; letter-spacing:-.025em; max-width:320px; margin-top:16px; }
.announcement-prose { color:var(--text); font-size:17px; line-height:1.7; }
.announcement-prose p+p { margin-top:18px; }
.announcement-specs { margin:0; }
.announcement-specs>div { display:grid; grid-template-columns:110px minmax(0,1fr); gap:24px; padding-block:16px; border-top:1px solid var(--line); }
.announcement-specs>div:first-child { padding-top:0; border:0; }
.announcement-specs>div:last-child { padding-bottom:0; }
.announcement-specs dt { color:var(--ink); font-family:var(--mono); font-size:11px; text-transform:uppercase; padding-top:4px; }
.announcement-specs dd { margin:0; }
.announcement-note { color:var(--muted); font-size:13px; line-height:1.6; }
.announcement-specs+.announcement-note { margin-top:24px; }
.announcement-evaluation { border-bottom:0; padding-bottom:60px; }
.announcement-evaluation .btn { min-height:44px; margin-top:24px; }
.announcement-evaluation .announcement-note { margin-top:18px; }
.announcement-note a { color:var(--ink); text-decoration:underline; text-underline-offset:3px; }
.announcement-note a:hover { color:var(--accent); }
@media(min-width:1600px) { .announcement-heading h1 { font-size:56px; } }
@media(max-width:1100px) {
  .announcement-shell { width:calc(100% - 48px); }
  .announcement-heading { gap:32px; }
  .announcement-heading h1 { font-size:46px; }
  .announcement-chapter { gap:48px; }
}
@media(min-width:961px) and (max-width:1100px) {
  .defense-page .nav-about { display:none; }
}
@media(max-width:760px) {
  .announcement-intro { padding-block:40px 28px; }
  .announcement-heading { grid-template-columns:1fr; gap:20px; margin-top:24px; }
  .announcement-heading h1 { font-size:42px; }
  .announcement-deck { max-width:550px; font-size:18px; }
  .announcement-chapter { grid-template-columns:1fr; gap:24px; padding-block:36px; }
  .announcement-chapter h2 { max-width:480px; margin-top:12px; font-size:27px; }
  .announcement-story { padding-top:0; }
}
@media(max-width:600px) {
  .announcement-shell { width:calc(100% - 32px); }
  .announcement-heading h1 { font-size:36px; }
  .announcement-meta { font-size:10px; gap:12px; }
  .announcement-meta time { padding-left:12px; }
  .announcement-product figcaption { flex-wrap:wrap; gap:6px 20px; padding-block:12px; font-size:9px; }
  .announcement-prose { font-size:16px; }
  .announcement-specs>div { grid-template-columns:86px minmax(0,1fr); gap:16px; }
  .announcement-evaluation .btn { width:100%; gap:12px; }
}
