/* Columbus Dance Floor Co — wedding editorial: ivory, champagne, rose and charcoal. */
:root {
  --paper: #faf7f2;
  --ink: #241f1d;
  --muted: #57504a;
  --rule: #d7cbbd;
  --gold: #6e563b;
  --bronze: #6e563b;
  --champagne: #ddc9a7;
  --champagne-soft: #f0e6d6;
  --sage-soft: #edf0e9;
  --rose: #925c69;
  --rose-soft: #f4e8e8;
  --cta: #925c69;
  --cta-hover: #784652;
}

::selection { background: var(--rose); color: #fff; }
h2 em, .page-heading h1 em { color: var(--bronze); }
.eyebrow { font-weight: 700; }
.fine-print, .image-note { color: #685c52; }
.text-link { color: var(--bronze); border-bottom-width: 2px; }
.text-link:hover { color: var(--ink); }

.button, .button.light, .button.outline-light {
  background: var(--cta);
  border-color: var(--cta);
  color: #fff;
}
.button:hover, .button.light:hover, .button.outline-light:hover {
  background: var(--cta-hover);
  border-color: var(--cta-hover);
  color: #fff;
}
.button:focus-visible, .mobile-lead-cta:focus-visible {
  outline: 3px solid var(--ink);
  outline-offset: 3px;
  box-shadow: 0 0 0 6px var(--paper);
}
.site-header { border-bottom: 1px solid var(--rule); }
.brand-mark i:nth-child(2), .brand-mark i:nth-child(3) { background: #b29874; }
.desktop-nav { font-weight: 600; }
.desktop-nav a:hover, .desktop-nav a[aria-current] { border-bottom-width: 2px; }
.menu-toggle span { height: 2px; }
.mobile-nav a:last-child { color: var(--rose); font-weight: 700; }

.home-page .hero-shade {
  background: linear-gradient(90deg,rgba(0,0,0,.92) 0,rgba(0,0,0,.82) max(700px,65%),rgba(0,0,0,.25) 100%);
}
.home-page .hero h1 em { color: var(--champagne); }
.hero .eyebrow, .home-page .hero .eyebrow { color: #e9dcc9; }
.hero-link { color: #fff; border-bottom: 2px solid var(--champagne); }
.hero-link:hover { color: var(--champagne); }
.hero-motion-toggle { border-color: #fff; }
.home-page .hero {
  background: var(--ink);
  border-bottom: 3px solid var(--champagne);
}

.intro-strip {
  background: var(--champagne-soft);
  border-bottom: 1px solid var(--rule);
}
.intro-strip .container { color: var(--ink); font-weight: 600; }
.intro-strip .dot { background: var(--bronze); width: 4px; height: 4px; }
.intro-strip a { color: var(--ink); }
.intro-strip a:hover { text-decoration: underline; text-underline-offset: 4px; }

.card-title { border-bottom: 1px solid var(--ink); padding-bottom: 12px; }
.floor-card:nth-child(2) .card-title { border-color: var(--bronze); }
.floor-card:nth-child(3) .card-title { border-color: var(--rose); }
.image-tag {
  background: var(--paper);
  color: var(--ink);
  border: 1px solid var(--champagne);
  font-weight: 700;
}
.floor-card:nth-child(2) .image-tag { background: var(--champagne-soft); color: var(--ink); }
.floor-card:nth-child(3) .image-tag { background: var(--ink); color: #fff; }
.wrap-copy {
  background: #e0d0d0;
  background: color-mix(in srgb, var(--cta) 25%, var(--paper));
  border-left: 3px solid var(--cta);
  padding: 34px;
}
.image-caption { background: var(--paper); color: var(--ink); }

.planner-feature { background: var(--ink); color: #fff; border-top: 3px solid var(--champagne); }
.planner-inner h2 em { color: var(--champagne); }
.planner-inner .eyebrow { color: #e9dcc9; }
.planner-inner p:not(.eyebrow) { color: #e3d8ca; }
.planner-inner h2 { border-left: 3px solid var(--champagne); padding-left: 22px; }
.size-pills span { border-color: #b8a58d; background: var(--champagne-soft); font-weight: 600; }

.pricing-band { background: var(--ink); border: 0; color: #fff; }
.pricing-inner h2 em { color: var(--champagne); }
.pricing-inner .eyebrow { color: #e9dcc9; }
.pricing-inner > div:last-child > p { color: #e3d8ca; }
.pricing-inner .text-link { color: var(--champagne); border-color: var(--champagne); }
.pricing-inner .text-link:hover { color: #fff; }

.instagram-feature { border-bottom: 1px solid #b8a58d; }
.instagram-handle, .instagram-handle span { color: var(--bronze); }
.cities { border-top: 1px solid var(--ink); }
.cities span:last-child { color: var(--bronze); }

.final-cta { background: var(--ink); border-top: 3px solid var(--champagne); }
.final-cta h2 em { color: var(--champagne); }
.final-cta .eyebrow { color: #e9dcc9; }
.final-cta .container > p:last-child { color: #e3d8ca; }
.final-cta::before, .final-cta::after { border-color: #5c4d3e; }

.site-footer { background: var(--ink); color: #fff; }
.site-footer p { color: #e3d8ca; }
.site-footer .brand-mark i { background: var(--paper); }
.site-footer .brand-mark i:nth-child(2),
.site-footer .brand-mark i:nth-child(3) { background: var(--champagne); }
.site-footer .eyebrow, .footer-inquiry span { color: var(--champagne); }
.site-footer .logo-download { color: #e3d8ca; border-color: #9c8973; }
.site-footer .footer-instagram { color: #e9dcc9; border-color: #9c8973; }
.footer-bottom { color: #e3d8ca; border-color: #9c8973; }

.size-section, .wrap-process, .planner-benefits { background: var(--champagne-soft); }
.size-tool { border: 1px solid #b8a58d; }
.size-option.active { background: var(--rose); border-color: var(--rose); color: #fff; }
.gallery-filters button { padding: 8px 13px; font-weight: 600; }
.gallery-filters button.active { background: var(--rose); border: 0; color: #fff; }
.expand-icon { background: var(--paper); color: var(--ink); }
.owner-video-section { border-top: 2px solid var(--champagne); padding-top: 35px; }

.quote-aside { background: var(--champagne-soft); border-top: 3px solid #b29874; }
.quote-fact, .quote-aside > .fine-print { border-color: #c9b79e; }
.integration-notice { background: var(--rose-soft); border-color: #bb96a0; }
.notice-dot { background: var(--rose); }
.form-grid input, .form-grid select, .form-grid textarea,
#calculator-fields > select { border-color: #b7a797; background: #fff; }
.form-grid input::placeholder, .form-grid textarea::placeholder { color: #74685c; }
.acknowledge input, .calculator-wrap input { accent-color: var(--rose); }
.inquiry-estimate { background: var(--champagne-soft); border-left: 3px solid #b29874; }
.calculator-wrap { background: var(--champagne-soft); border-color: #b8a58d; }
.calculator-result { border-top: 3px solid var(--champagne); background: var(--ink); color: #fff; }
.calculator-result .eyebrow { color: #e9dcc9; }
.calculator-result p { color: #e3d8ca; }
#calculator-selection { color: #fff; }
.calculator-total { color: var(--champagne); }
.calculator-breakdown > div { border-color: #796754; }
.calculator-breakdown > div:last-child { color: #e3d8ca; }
.calculator-disclaimer { border-color: #796754; }
.rate-table thead { background: var(--rose); color: #fff; }
.rate-table tbody tr:nth-child(even) { background: var(--champagne-soft); }

@media (max-width: 640px) {
  .home-page .hero-shade {
    background: linear-gradient(180deg,rgba(36,31,29,.02) 0,rgba(36,31,29,.04) 240px,#241f1d 315px,#241f1d 100%);
  }
  .wrap-copy { padding: 25px; width: 100%; }
  .planner-inner h2 { padding-left: 17px; }
  .has-mobile-cta { padding-bottom: 0; }
  .has-mobile-cta .site-footer { padding-bottom: 88px; }
  .mobile-lead-cta { border: 1px solid var(--champagne); }
}
@media (max-width: 360px) {
  .home-page .hero-shade {
    background: linear-gradient(180deg,transparent 0,rgba(36,31,29,.05) 215px,#241f1d 290px,#241f1d 100%);
  }
}
