/* Approved compact Linux announcement. */
.hero {
  padding-top: 128px;
}

.lnx-hero {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  min-height: 44px;
  max-width: 100%;
  margin: 0 0 28px;
  padding: 3px 10px 3px 3px;
  color: #f2f2f2;
  font: 400 11px/1.45 var(--font-body);
  text-align: left;
  text-decoration: none;
  vertical-align: top;
  border: 1px solid #333;
  border-radius: 6px;
  background: #171717;
  transition: border-color 160ms ease, background-color 160ms ease;
}

.lnx-hero-tux {
  flex: 0 0 24px;
  width: 24px;
  height: 28px;
  object-fit: contain;
}

.lnx-hero-copy {
  display: flex;
  align-items: baseline;
  gap: 10px;
  min-width: 0;
}

.lnx-hero-copy strong {
  font: 700 12px/1.45 var(--font-body);
  white-space: nowrap;
}

.lnx-hero-divider { color: #5c5c5c; }
.lnx-hero-detail { color: #aaa; white-space: nowrap; }
.lnx-hero-arrow { margin-left: 4px; flex: none; color: #ff4b4b; transition: transform 160ms ease; }
.lnx-hero:hover { border-color: #ff4b4b; background: rgba(255, 0, 0, 0.12); }
.lnx-hero:hover .lnx-hero-copy strong { text-decoration: underline; text-underline-offset: 4px; }
.lnx-hero:hover .lnx-hero-detail { color: #d5d5d5; }
.lnx-hero:hover .lnx-hero-arrow { transform: translate(2px, -2px); }
.lnx-hero:focus-visible { outline: 2px solid #ff5454; outline-offset: 5px; }

@media (max-width: 760px) {
  .hero { padding-top: 120px; }
  .lnx-hero { margin-bottom: 24px; }
  .lnx-hero-copy { flex-direction: column; align-items: flex-start; gap: 1px; }
  .lnx-hero-copy strong { font-size: 12px; }
  .lnx-hero-detail { font-size: 10px; }
  .lnx-hero-divider { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .lnx-hero, .lnx-hero-arrow { transition: none; }
  .lnx-hero:hover .lnx-hero-arrow { transform: none; }
}

/* Compact platform support beneath the hero actions. */
.hero-platforms { display:flex; flex-basis:100%; align-items:center; gap:16px; margin-top:12px; color:#aaa; font-size:12px; line-height:20px; }
.hero-platforms img { object-fit:contain; opacity:.8; }
.hero-platform-dark { filter:invert(1); }
@media(max-width:1024px) { .hero-platforms { justify-content:center; } }

.solution-icon-button { display:inline-flex; flex:0 0 48px; width:48px; height:48px; padding:0; border:0; border-radius:12px; background:transparent; cursor:pointer; }
.solution-icon-button:focus-visible { outline:2px solid var(--accent); outline-offset:5px; }

/* Same dark card and red accents as the blog's hidden discount. */
.homepage-coupon { width:min(420px, calc(100vw - 40px)); max-height:calc(100dvh - 40px); margin:auto; padding:0; overflow:auto; border:1px solid rgba(255,0,0,.3); border-radius:12px; background:var(--bg-elevated); color:var(--text); box-shadow:0 0 60px rgba(255,0,0,.12), 0 24px 48px rgba(0,0,0,.4); }
.homepage-coupon::backdrop { background:rgba(0,0,0,.75); backdrop-filter:blur(12px); }
.homepage-coupon-card { position:relative; padding:44px 28px 32px; text-align:center; }
.homepage-coupon-close { position:absolute; top:8px; right:8px; width:36px; height:36px; border:0; background:transparent; color:var(--text-tertiary); font-size:24px; cursor:pointer; }
.homepage-coupon-close:hover { color:var(--text); }
.homepage-coupon-label { margin-bottom:16px; color:var(--accent); font-size:10px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; }
.homepage-coupon h2 { font-family:var(--font-heading); font-size:30px; line-height:1.2; }
.homepage-coupon-description { margin:16px 0 24px; color:var(--text-secondary); font-size:13px; line-height:1.7; }
.homepage-coupon-code { width:100%; padding:18px 12px; border:1px solid var(--border-light); border-radius:8px; background:var(--bg); color:var(--text); font-family:var(--font-body); font-size:20px; font-weight:700; letter-spacing:.12em; cursor:pointer; }
.homepage-coupon-code:hover { border-color:var(--accent); }
.homepage-coupon button:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.homepage-coupon-hint { margin-top:12px; min-height:18px; color:var(--text-tertiary); font-size:11px; line-height:1.6; }

/* Keep the two lifetime licenses easy to compare. */
.pricing-card.unlimited { background:#171717; border-color:#494949; }
.pricing-card.unlimited .pricing-price { font-size:64px; }
.pricing-card.unlimited .unlimited-action { margin-top:auto; }
.pricing-card.unlimited .pricing-cta { gap:16px; }
.pricing-card.unlimited .pricing-cta:hover { border-color:#ff0000; background:#251010; }
.pricing-linux-note { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:9px; color:#999; font-size:11px; margin:28px auto 0; line-height:1.7; text-align:center; }
.pricing-linux-note a { color:#ccc; text-underline-offset:4px; text-decoration-color:#666; }
.pricing-linux-note a:hover { color:#fff; text-decoration-color:red; }
@media(max-width:760px) { .pricing-linux-note { gap:6px; font-size:10px; padding:0 10px; } }

/* Keep the seventh card at the same width, centered in the last desktop row. */
@media (min-width: 769px) {
  .grid-card-schedule { grid-column: 2; }
}
