/* Directory Network Enhancement v1.0.0 — conversion-first, generator-safe */
:root {
  --dn-ink: #071d26;
  --dn-surface: #ffffff;
  --dn-soft: #edf7f7;
  --dn-primary: #006778;
  --dn-accent: #d79a18;
  --dn-line: rgba(7, 29, 38, .14);
  --dn-shadow: 0 18px 48px rgba(5, 27, 35, .14);
  --dn-radius: 18px;
}

html { scroll-behavior: smooth; }
body { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
body::before {
  content: "";
  position: fixed;
  inset: 0 0 auto;
  height: 4px;
  z-index: 10000;
  background: linear-gradient(90deg, var(--dn-primary), var(--dn-accent), var(--dn-primary));
}
a, button, input, select, textarea { transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background-color .18s ease; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--dn-accent) 68%, white);
  outline-offset: 3px;
}
header, .hero { position: relative; isolation: isolate; overflow: hidden; }
header::after, .hero::after {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  right: -190px;
  top: -235px;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(circle, color-mix(in srgb, var(--dn-accent) 27%, transparent), transparent 68%);
  pointer-events: none;
}
.section, .content, .intro, .form-box, .affiliate-box, .related-links, .stat-card {
  border-radius: var(--dn-radius) !important;
}
.section, .content, .intro, .form-box { border: 1px solid var(--dn-line); box-shadow: var(--dn-shadow) !important; }
.btn, .affiliate-btn, .cta-box a, .agentify-cta, button[type="submit"] {
  min-height: 48px;
  border-radius: 12px !important;
  box-shadow: 0 10px 24px color-mix(in srgb, var(--dn-primary) 24%, transparent);
}
.btn:hover, .affiliate-btn:hover, .cta-box a:hover, .agentify-cta:hover, button[type="submit"]:hover { transform: translateY(-2px); }
input:not([type="hidden"]), select, textarea { min-height: 46px; }
.dn-trust-note {
  margin: 12px auto 0;
  max-width: 620px;
  color: inherit;
  opacity: .76;
  font-size: .78rem;
  line-height: 1.45;
}

html[data-dn-theme="marine"] { --dn-primary: #00274c; --dn-accent: #ffcb05; --dn-soft: #eef4fa; }
html[data-dn-theme="travel"] { --dn-primary: #006778; --dn-accent: #ff9f1c; --dn-soft: #eef9f7; }
html[data-dn-theme="real-estate"] { --dn-primary: #12304a; --dn-accent: #c9a84c; --dn-soft: #f4f1e8; }
html[data-dn-theme="health"] { --dn-primary: #72506f; --dn-accent: #cb7c83; --dn-soft: #fbf3f5; }
html[data-dn-theme="home-services"] { --dn-primary: #006778; --dn-accent: #d79a18; --dn-soft: #edf7f7; }

@media (max-width: 760px) {
  header, .hero { padding-left: 20px !important; padding-right: 20px !important; }
  .content, .section, .intro, .form-box { padding: 24px 20px !important; }
  .btn, .affiliate-btn, .cta-box a, button[type="submit"] { width: 100%; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}
