/* Warm white surfaces and brass accents, layered over the responsive layout. */
:root {
  --ink: #25251f;
  --muted: #646258;
  --gold: #e5c88e;
  --paper: #fbf9f5;
  --line: #e4e0d6;
  --accent: #765927;
  --tint: #f3eddf;
  --card-shadow: 0 8px 28px #493f2510;
}

/* A bright first impression and clear navigation. */
.header { background: white; color: var(--ink); border-color: var(--line); }
.brand-mark, h1 em, h2 em { color: var(--accent); }
.brand small, nav > a:not(.nav-cta) { color: var(--muted); }
nav > a:hover, .text-link:hover { color: var(--accent); }
.nav-cta { background: var(--gold); border-color: var(--gold); color: var(--ink); }
.nav-cta:hover, .button.gold:hover { background: #eed7a9; color: var(--ink); border-color: #eed7a9; }
.menu-toggle { color: var(--ink); }
.contact-bar { background: var(--paper); color: var(--ink); border-color: var(--line); }
.contact-bar > span { color: var(--muted); }
.contact-bar strong, .contact-bar a:hover { color: var(--accent); }
.hero { background: var(--paper); color: var(--ink); }
.hero .eyebrow, .hero-description, .hero-note { color: var(--muted); }
.eyebrow > span, .note-line { background: var(--accent); }
.hero-visual { border: 1px solid var(--line); box-shadow: var(--card-shadow); }
.hero-visual:after { background: none; }
.hero-visual figcaption {
  padding: 14px 16px;
  background: #fffffff5;
  border: 1px solid #ffffff;
  color: var(--ink);
  line-height: 1.5;
}
.hero-visual figcaption > span:last-child { opacity: 1; color: var(--muted); }
.text-link { border-color: #b4a68c; }
.button.dark { background: var(--accent); color: white; }
.button.dark:hover { background: #5e441c; }
.button.outline { background: white; color: var(--accent); border: 1px solid var(--accent); }
.button.outline:hover { background: var(--tint); }
.hero-actions .hero-call { gap: 12px; }
.field-hint { display: block; margin-top: 8px; color: var(--muted); font-size: .875rem; font-weight: 400; line-height: 1.5; }
.market-strip, .specialties { background: white; border-color: var(--line); color: var(--muted); }
.market-strip > *, .specialties > span { border-color: var(--line); }

/* Product photography stays true to the work, with light cards and captions. */
.section .eyebrow, .market-lead .eyebrow { color: var(--accent); }
.division-card, .work-card, .sign-use-card, .concept-project {
  background: white;
  color: var(--ink);
  border-color: var(--line);
  box-shadow: var(--card-shadow);
}
.division-image, .concept-project figure, .work-card figure,
.hospitality-visual, .sign-use-card figure { background: var(--paper); }
.division-image > span, .concept-badge, .sample-proof {
  background: #fffffff5;
  color: var(--accent);
  border: 1px solid var(--line);
}
.division-cta { background: var(--tint); color: var(--accent); }
.work-card figcaption, .hospitality-visual figcaption, .sign-use-card figcaption {
  background: var(--paper);
  color: var(--ink);
  border-bottom: 1px solid var(--line);
}
.work-card figcaption span { color: var(--accent); }
.hospitality-section, .concept-showcase, .market-section, .product-range {
  background: var(--paper);
  color: var(--ink);
}
.concept-showcase .eyebrow, .concept-project > div > span,
.concept-project strong, .sample-proof span { color: var(--accent); }
.concept-showcase .section-heading > p, .concept-project p,
.concept-disclaimer { color: var(--muted); }
.concept-disclaimer strong { color: var(--ink); }
.concept-project:hover { border-color: #b69a64; }
.market-benefits { background: white; border-color: var(--line); }
.market-benefits article { border-color: var(--line); }
.market-lead > p:not(.eyebrow), .market-benefits p { color: var(--muted); }
.statement { background: var(--tint); color: var(--ink); }
.statement-overline, .statement-bottom p { color: var(--muted); }
.statement em { color: var(--accent); }
.statement-bottom { border-color: var(--line); }

/* The complete quote builder uses the same light palette. */
.shop { background: var(--paper); border-top: 1px solid var(--line); }
.product-picker, .configurator, .order-summary {
  background: white;
  color: var(--ink);
  border-color: var(--line);
  box-shadow: var(--card-shadow);
}
.order-summary { border-top: 3px solid var(--gold); }
.family-picker, .order-progress, .order-progress li { border-color: var(--line); }
.family-option.selected { background: var(--tint); color: var(--ink); box-shadow: inset 0 -3px var(--accent); }
.family-option.selected > span { color: var(--accent); }
.placement-option.selected, .help-topics button[aria-pressed="true"] {
  background: var(--tint);
  color: var(--accent);
  box-shadow: inset 0 0 0 1px var(--accent);
}
.order-progress li.active > span, .builder-step > span, .product-icon {
  background: var(--tint);
  color: var(--accent);
}
.order-progress li.complete > span { background: var(--accent); color: white; }
.sample-selector, .configurator .sample-selector {
  background: var(--paper);
  color: var(--ink);
  border-color: var(--line);
}
.sample-intro h3, .configurator .sample-intro h3 { color: var(--ink); }
.sample-intro > p, .configurator .sample-intro > p, .sample-copy small { color: var(--muted); }
.sample-kicker, .sample-number { color: var(--accent); }
.sample-card { background: white; color: var(--ink); border-color: var(--line); }
.sample-card.selected { background: #fffaf0; border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent); }
.sample-check { background: var(--accent); color: white; }
.summary-label, .chosen-sample strong, .quote-note strong,
.project-scope-summary li > span, .order-summary .inline-help { color: var(--accent); }
.order-summary > p:nth-of-type(2), .order-summary dt,
.chosen-sample span, .quote-note p, .project-scope-summary li > p,
#scope-summary-empty { color: var(--muted); }
.order-summary dl, .order-summary dl > div,
.project-scope-summary, .project-scope-summary li { border-color: var(--line); }
.chosen-sample { background: var(--paper); border-color: var(--line); }
.quote-note { background: var(--paper); border-left-color: var(--gold); }
.secure-note { color: var(--muted) !important; }
.quote-reference { background: var(--paper); border-color: var(--line); }
.quote-reference img { background: var(--paper); }
.quote-reference figcaption { color: var(--muted); }
.mobile-step-back.light { color: var(--accent); border-color: #b4a68c; }
input, select, textarea { background: white; border-color: #9b9486; }
.configurator input, .configurator select, .configurator textarea,
.help-body input { background: white; }
input::placeholder, textarea::placeholder { color: #726e63; }

/* Contact and help remain inviting all the way to the footer. */
.inquiry { background: white; border-top: 1px solid var(--line); }
.inquiry-intro { background: var(--tint); color: var(--ink); }
.inquiry-intro > .eyebrow, .inquiry-intro em,
.inquiry-checklist li::marker, .direct-contact small { color: var(--accent); }
.inquiry-intro > p:not(.eyebrow), .inquiry-checklist ul,
.inquiry-checklist p { color: var(--muted); }
.inquiry-checklist { border-color: #d5cbb6; }
.inquiry-panel { background: white; }
.direct-contact a { background: #ffffffb8; border-color: #c9bca1; }
.direct-contact a:hover { background: white; border-color: var(--accent); }
.contact-email { border-color: #b4a68c; }
footer { background: var(--paper); color: var(--ink); border-top: 1px solid var(--line); }
.footer-top p, .footer-contact, .footer-bottom { color: var(--muted); }
.footer-bottom { border-color: var(--line); }
.footer-bottom a, .footer-contact a:hover { color: var(--accent); }
.product-help-launcher {
  background: var(--gold);
  color: var(--ink);
  border-color: #f2dca8;
  box-shadow: 0 10px 34px #493f2540, 0 0 0 4px #d9bf8526;
}
.product-help-launcher > span { color: var(--ink); border-color: #55431f; }
.product-help-launcher > .launcher-copy { color: var(--ink); border: 0; }
.product-help-launcher:hover { background: #f0d797; }
.product-help { border-color: #b9ad94; }
.help-heading { background: var(--paper); color: var(--ink); border-bottom: 1px solid var(--line); }
.help-heading p { color: var(--accent); }
.help-heading button { color: var(--ink); border-color: #b9ad94; }
.ai-message.user { background: var(--ink); color: white; }
.ai-form button { background: var(--ink); color: white; }
.help-topics button[aria-pressed="true"] { border-color: var(--accent); }

@media (max-width: 850px) {
  nav { background: white; border-color: var(--line); box-shadow: 0 12px 20px #493f2510; }
}
@media (max-width: 620px) {
  .contact-bar a { border-color: var(--line); }
  .mobile-order-cta { background: white; border-top: 1px solid var(--line); box-shadow: 0 -5px 20px #493f251a; }
  .mobile-order-cta > .mobile-call { background: white; color: var(--accent); }
}

/* Brighter champagne-luxury finish. */
:root {
  --ink: #211f1a;
  --muted: #625f56;
  --gold: #e8c97f;
  --paper: #fdfbf7;
  --line: #e7dfd0;
  --accent: #856221;
  --tint: #f7efdf;
  --card-shadow: 0 16px 45px rgba(82, 59, 22, .10);
}
body { background: linear-gradient(180deg, #fff 0%, #fdfbf7 100%); }
.header { box-shadow: 0 6px 24px rgba(55, 40, 15, .06); }
.hero { background: linear-gradient(135deg, #fff 0%, #fbf5e9 100%); }
.hero-visual { border-color: #ddcba8; box-shadow: 0 22px 60px rgba(65, 46, 16, .16); }
.hero-visual > img, .card-image img, .division-image img,
.work-card img, .hospitality-visual img, .concept-project img,
.sign-use-card img { filter: brightness(1.06) saturate(1.04) contrast(1.02); }
.button.gold, .nav-cta, .product-help-launcher {
  background: linear-gradient(135deg, #f2d894 0%, #d9b45f 100%);
  border-color: #d9b45f;
  box-shadow: 0 10px 25px rgba(119, 83, 20, .18);
}
.button.gold:hover, .nav-cta:hover, .product-help-launcher:hover {
  background: linear-gradient(135deg, #f7e3ad 0%, #e2bd69 100%);
  border-color: #e2bd69;
}
.division-card, .work-card, .sign-use-card, .concept-project,
.product-picker, .configurator, .order-summary, .market-benefits {
  border-color: #e1d5bf;
  box-shadow: var(--card-shadow);
}
.statement, .inquiry-intro {
  background: linear-gradient(135deg, #fbf5e9 0%, #f3e5ca 100%);
}
.shop { background: linear-gradient(180deg, #fdfbf7 0%, #f8f2e7 100%); }
.image-tag, .division-image > span, .concept-badge, .sample-proof {
  backdrop-filter: blur(8px);
  box-shadow: 0 6px 18px rgba(63, 44, 14, .10);
}
input:focus, select:focus, textarea:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(232, 201, 127, .22);
}

/* Sign-first journey: coordinated interiors stay available on request. */
.optional-collections{max-width:1440px;margin:40px auto 64px;padding:0 5%;scroll-margin-top:120px}.optional-collections>summary,.optional-builder>summary{cursor:pointer;padding:22px 26px;background:#f1ede5;border:1px solid #d8cdbd;border-radius:12px;list-style-position:inside;color:#292a25}.optional-collections>summary span{font-size:11px;letter-spacing:.14em;font-weight:700;display:block;color:#786644;margin-bottom:8px}.optional-collections>summary strong{font-size:clamp(20px,3vw,30px);font-weight:600}.optional-collections>summary small{display:block;line-height:1.5;margin-top:10px;font-size:14px}.optional-collections-body{margin-top:20px}.optional-collections .division-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.optional-builder{margin:18px 0}.optional-builder>summary{padding:16px 20px;font-size:14px;font-weight:600}.optional-builder[open]>summary,.optional-collections[open]>summary{border-color:#aa8b51}.optional-builder .family-picker{margin:18px 0}.optional-collections section{scroll-margin-top:120px}#shipping{scroll-margin-top:120px}@media(max-width:700px){.optional-collections{padding:0 5%;margin-top:24px}.optional-collections .division-grid{grid-template-columns:1fr}.optional-collections>summary{padding:20px}.optional-builder>summary{line-height:1.5}}
