/* Parker's Landscape Services - custom layer over Tailwind */

html { scroll-behavior: smooth; }
html { scroll-padding-top: 96px; }

body {
  background-color: #F5F3EA;
  color: #161B16;
  -webkit-font-smoothing: antialiased;
}

/* Header states */
#site-header.header-scrolled {
  box-shadow: 0 1px 0 rgba(165, 133, 74, 0.35), 0 12px 32px rgba(10, 20, 13, 0.35);
}
#site-header.header-scrolled > div:first-child {
  padding-top: 0.65rem;
  padding-bottom: 0.65rem;
}
#site-header.header-scrolled .site-logo {
  height: 2.75rem;
}

/* Hamburger to X */
.menu-open .menu-bar:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.menu-open .menu-bar:nth-child(2) { opacity: 0; }
.menu-open .menu-bar:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

/* Hero */
.hero-img {
  animation: hero-settle 2.4s cubic-bezier(0.22, 0.61, 0.36, 1) both;
}
@keyframes hero-settle {
  from { transform: scale(1.06); }
  to   { transform: scale(1); }
}
.hero-stagger h1,
.hero-stagger p { text-shadow: 0 1px 14px rgba(8, 18, 11, 0.6); }
.hero-stagger > * {
  opacity: 0;
  transform: translateY(18px);
  animation: rise 0.9s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;
}
.hero-stagger > *:nth-child(1) { animation-delay: 0.15s; }
.hero-stagger > *:nth-child(2) { animation-delay: 0.3s; }
.hero-stagger > *:nth-child(3) { animation-delay: 0.45s; }
.hero-stagger > *:nth-child(4) { animation-delay: 0.6s; }
.hero-stagger > *:nth-child(5) { animation-delay: 0.78s; }
@keyframes rise {
  to { opacity: 1; transform: translateY(0); }
}

/* Scroll reveals */
.reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.8s cubic-bezier(0.22, 0.61, 0.36, 1),
              transform 0.8s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.reveal.in { opacity: 1; transform: translateY(0); }
.reveal-late { transition-delay: 0.15s; }
.reveal-later { transition-delay: 0.3s; }

/* Arched imagery - the garden gate motif */
.arch { border-radius: 999px 999px 0 0; }

/* Brass hairline dividers */
.hairline { height: 1px; background: linear-gradient(90deg, transparent, rgba(165,133,74,0.6), transparent); }

/* Big serif quote marks */
.quote-mark { font-family: Marcellus, Georgia, serif; line-height: 1; }

/* Form fields */
.field {
  width: 100%;
  background: #FFFFFF;
  border: 1px solid #D8D2BF;
  padding: 0.85rem 1rem;
  font-size: 15px;
  color: #161B16;
  outline: none;
  transition: border-color 0.2s;
}
.field:focus { border-color: #A5854A; box-shadow: 0 0 0 3px rgba(165,133,74,0.18); }
.field::placeholder { color: #8B8A7C; }

/* Map iframe */
.map-frame { filter: saturate(0.85); }

@media (prefers-reduced-motion: reduce) {
  .hero-img, .hero-stagger > * { animation: none; opacity: 1; transform: none; }
  .reveal { opacity: 1; transform: none; transition: none; }
  html { scroll-behavior: auto; }
}
