/* auv-design-optimization: page-specific styles, served from this origin so the CSP needs no 'unsafe-inline'. */
html { scroll-behavior: smooth; }
body { background: #f7faf8; }
.contour-hero {
  background-color: #051823;
  background-image:
    radial-gradient(ellipse at 78% 30%, rgba(34, 211, 238, 0.18), transparent 46%),
    repeating-radial-gradient(ellipse at 72% 118%, transparent 0 34px, rgba(103, 232, 249, 0.10) 34px 35px),
    linear-gradient(180deg, #051823 0%, #082f3f 100%);
}
.harbour-grid {
  background-image:
    linear-gradient(rgba(15, 23, 42, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15, 23, 42, 0.06) 1px, transparent 1px);
  background-size: 34px 34px;
}
.loop { display: grid; gap: 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 768px) { .loop { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.loop-step { border-top: 3px solid #0f766e; padding-top: 0.75rem; }
.print-only { display: none; }
@media print {
  @page { size: letter; margin: 14mm 14mm 16mm; }
  body { background: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  body > header, body > footer, .no-print { display: none !important; }
  .print-only { display: block; }
  section { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
  .contour-hero > div { padding-top: 1.75rem !important; padding-bottom: 1.75rem !important; }
  .print-break { break-before: page; }
  article, .avoid-break { break-inside: avoid; }
  html { font-size: 11.5px; }
  .print-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .print-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .print-cols-4, .loop { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
  .print-hero { grid-template-columns: 1fr 1fr !important; align-items: center; gap: 2rem !important; }
  .contour-hero h1 { font-size: 2.6rem !important; }
  section { padding-top: 1.25rem !important; padding-bottom: 1.25rem !important; }
  .mt-10, .mt-12 { margin-top: 1.25rem !important; }
}
