/* AI Small Biz Efficiency — layout accents beyond Tailwind CDN */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Instrument+Serif:ital@0;1&display=swap');

:root {
  --ink: #12141a;
  --cream: #f4f1ea;
  --signal: #ff6b35;
  --sage: #5c7a6c;
  --muted: #8a8f9a;
}

html {
  scroll-behavior: smooth;
}

details summary::-webkit-details-marker {
  display: none;
}

body {
  font-family: 'DM Sans', system-ui, sans-serif;
}

.font-display {
  font-family: 'Instrument Serif', Georgia, serif;
}

.writing-vertical {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  transform: rotate(180deg);
}

.hero-clip {
  clip-path: polygon(8% 0, 100% 0, 100% 92%, 0 100%);
}

@media (max-width: 1023px) {
  .hero-clip {
    clip-path: none;
  }
}

.diagonal-rule {
  background: linear-gradient(
    135deg,
    transparent 0%,
    transparent 48%,
    rgba(255, 107, 53, 0.35) 49%,
    rgba(255, 107, 53, 0.35) 51%,
    transparent 52%,
    transparent 100%
  );
}

.card-lift {
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.card-lift:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.45);
}

.nav-overlay {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.nav-overlay.is-open {
  opacity: 1;
  visibility: visible;
}

.reading-bar {
  transform-origin: left;
  transform: scaleX(0);
  transition: transform 0.15s linear;
}

/* Form focus ring consistent with theme */
input:focus,
textarea:focus {
  outline: none;
  box-shadow: 0 0 0 2px var(--ink), 0 0 0 4px var(--signal);
}
