/* Production layout and accessibility refinements. */
html { scroll-padding-top: 24px; }
body { overflow-x: clip; }
.hero, .dashboard-section, .monitor-product-card, .waitlist-card { min-width: 0; }
.hero > *, .dashboard-section > *, .monitor-product-card > *, .waitlist-card > * { min-width: 0; }
.reveal { opacity: 1; transform: none; }
.reveal.reveal-pending:not(.is-visible) { opacity: 0; transform: translateY(18px); }
.hero .hero-visual { transform: none; }
.button:focus-visible, a:focus-visible, button:focus-visible, input:focus-visible {
  outline: 3px solid #537b67;
  outline-offset: 5px;
}
.button:disabled { cursor: wait; opacity: .65; transform: none; }
.eyebrow, .mission-number, .case-label { color: #507962; }
.hero-note, .trust-strip p, .card-foot, .compat-tile small, .compat-note { color: #66786e; }
.waitlist-form { position: relative; }
.waitlist-form small { display: block; font-size: 12px; color: #486356; line-height: 1.6; }
.waitlist-form small a { text-decoration: underline; text-underline-offset: 3px; }
.waitlist-form .form-error { color: #a12b27; }
.waitlist-form .form-success { color: #28573e; }
.form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.site-header { position: relative; z-index: 10; }
.hero-visual { width: 100%; }
.large-lock { flex: 0 0 51px; }
.privacy-band { width: 100%; }
.legal-content { max-width: 720px; margin: 70px auto 100px; padding: 0 24px; }
.legal-content h1 { font: 800 44px/1.1 'Manrope', sans-serif; letter-spacing: -.045em; }
.legal-content h2 { margin-top: 36px; font-size: 23px; }
.legal-content p { color: #5d6c65; }
.legal-content a { text-decoration: underline; }
@media (min-width: 901px) and (max-width: 1199px) {
  .hero { gap: 32px; }
  .hero h1 { font-size: 64px; }
  .orbit-one { width: 100%; height: auto; aspect-ratio: 1; left: 0; top: 40px; }
  .orbit-two { width: 80%; height: auto; aspect-ratio: 1; left: 10%; }
  .pet-scene { width: 82%; right: 8%; }
  .card-float-top { right: 0; }
  .card-float-bottom { left: 0; }
  .dashboard-section { gap: 36px; }
}
@media (max-width: 900px) {
  .menu-button { min-width: 44px; min-height: 44px; }
  .nav-links.mobile-open { left: 0; right: 0; top: 64px; }
  .nav-links.mobile-open a { display: block; padding: 10px 4px; }
  .hero-visual { max-width: 520px; height: 500px; min-height: 0; margin-bottom: 0; }
  .orbit-one { width: 100%; height: auto; aspect-ratio: 1; left: 0; top: 0; }
  .orbit-two { width: 80%; height: auto; aspect-ratio: 1; left: 10%; top: 50px; }
  .card-float-top { right: 0; }
  .card-float-bottom { left: 0; }
  .site-footer { flex-wrap: wrap; gap: 22px; }
}
@media (max-width: 560px) {
  .site-header { width: calc(100% - 36px); gap: 12px; }
  .hero { padding-top: 35px; gap: 42px; }
  .hero h1 { font-size: clamp(43px, 12.5vw, 62px); line-height: 1.03; letter-spacing: -.06em; }
  .hero .eyebrow { line-height: 1.7; max-width: 320px; }
  .hero-actions { gap: 22px; }
  .hero-visual { height: 405px; max-width: 400px; min-height: 0; margin-bottom: 0; }
  .pet-scene { width: 79%; height: 330px; right: 10%; top: 20px; }
  .scene-window { height: 210px; }
  .scene-floor { height: 120px; }
  .cat-shape { left: calc(50% - 45px); bottom: 39px; transform: scale(.77); transform-origin: bottom center; }
  .scene-caption { left: 12px; bottom: 11px; font-size: 9px; color: #253e34; }
  .card-float-top { top: 24px; right: 0; width: 132px; padding: 13px; }
  .card-float-bottom { left: 0; bottom: 26px; width: 193px; padding: 14px; }
  .activity-big { font-size: 29px; }
  .hero-note { line-height: 1.7; }
  .trust-strip { margin-bottom: 72px; }
  .section-intro h2, .dashboard-copy h2, .privacy-lockup h2, .waitlist h2 { font-size: clamp(34px, 9.7vw, 46px); line-height: 1.1; letter-spacing: -.055em; }
  .mission, .product-focus, .steps-section, .dashboard-section, .use-cases, .compatibility { padding-bottom: 76px; }
  .monitor-product-card { padding: 26px 20px; }
  .monitor-art { transform: none; }
  .dashboard-window { transform: none; }
  .dash-head { gap: 10px; }
  .dash-head h3 { font-size: 19px; line-height: 1.3; }
  .date-pill { white-space: nowrap; }
  .metric-name { font-size: 11px; }
  .metric-change { font-size: 10px; }
  .privacy-band { width: 100%; padding: 60px 20px; margin-bottom: 76px; }
  .large-lock { flex-basis: 40px; width: 40px; height: 40px; }
  .waitlist-card { padding: 28px 20px; }
  .waitlist-form input[type="email"] { min-width: 0; font-size: 16px; height: 50px; }
  .waitlist-form .button { min-height: 50px; }
  .waitlist-form small { margin-top: 12px; }
  .footer-links { display: flex; flex-wrap: wrap; gap: 12px 22px; margin-top: 22px; font-size: 13px; }
  .footer-links a { padding-block: 6px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
  .reveal.reveal-pending { opacity: 1; transform: none; }
}
