/*
Theme Name: NWS Lawfirm
Author: WordPress Telex
Description: A dramatic, authoritative block theme for law firms. Dark tones, gold accents, classical serif typography, and marble textures evoke old-world legal prestige.
Version: 0.1.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: marble-and-mandate
Tags: block-theme, full-site-editing, dark, law, professional
*/

/* Equal-height card system */
.equal-cards > .wp-block-column {
  display: flex;
  flex-direction: column;
  flex-grow: 0;
}
.equal-cards > .wp-block-column > .wp-block-group {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.equal-cards .cta-bottom {
  margin-top: auto;
  justify-content: center;
}

/* Footer margin reset */
.wp-site-blocks > footer {
  margin-block-start: 0;
}

/* Gold underline hover for nav links */
.nav-gold-underline a {
  position: relative;
  transition: color 0.3s ease;
}
.nav-gold-underline a::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 1px;
  background-color: var(--wp--preset--color--gold);
  transition: width 0.3s ease;
}
.nav-gold-underline a:hover {
  color: var(--wp--preset--color--gold) !important;
}
.nav-gold-underline a:hover::after {
  width: 100%;
}

/* Gold outlined button hover */
.wp-block-button.is-style-outline .wp-block-button__link.gold-outline-btn {
  transition: all 0.4s ease;
}
.wp-block-button.is-style-outline .wp-block-button__link.gold-outline-btn:hover {
  background: rgba(201, 169, 110, 0.12) !important;
  box-shadow: 0 0 24px rgba(201, 169, 110, 0.18);
}

/* Crimson left border for blockquote styling */
.crimson-left-border {
  border-left: 3px solid var(--wp--preset--color--crimson) !important;
  padding-left: 2rem !important;
}

/* Gold separator styling */
.gold-separator hr {
  border-color: var(--wp--preset--color--gold) !important;
  opacity: 0.4;
}

/* Card gold border hover */
.card-gold-border {
  border: 1px solid rgba(201, 169, 110, 0.25);
  transition: border-color 0.4s ease, box-shadow 0.4s ease;
}
.card-gold-border:hover {
  border-color: rgba(201, 169, 110, 0.6);
  box-shadow: 0 4px 30px rgba(201, 169, 110, 0.08);
}

/* Hero vignette overlay */
.hero-vignette::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 70% 30%, rgba(26, 18, 9, 0.55) 0%, rgba(15, 13, 11, 0.88) 100%);
  pointer-events: none;
  z-index: 1;
}

/* Subtle noise texture overlay */
.noise-texture::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: 0.08;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url("/wp-content/themes/marble-and-mandate/%23n")' opacity='1'/%3E%3C/svg%3E");
  background-size: 128px 128px;
  pointer-events: none;
  z-index: 1;
}

/* Fade-in animation for scroll sections */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(2rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.fade-in-section {
  animation: fadeInUp 0.8s ease-out both;
}

/* Header border bottom */
.header-gold-border {
  border-bottom: 1px solid rgba(201, 169, 110, 0.3);
}

/* Wax seal decoration */
.wax-seal-icon svg {
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.5));
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .hide-on-mobile {
    display: none !important;
  }
}