/* Ivory: shared, scoped design for the five business tools. */
body.tools-ivory {
  --paper: #fbf8f3;
  --paper-light: #fffdf9;
  --ink: #171612;
  --muted: #666158;
  --line: #dec8aa;
  --gold: #996f33;
  --bt-green: #a57531;
  --bt-purple: #8b8071;
  --bt-surface: #fffdf9;
  --bt-tint: #f5efe3;
  --bt-shadow: 0 4px 20px #49300d08;
  background: var(--paper);
  color: var(--ink);
}
.tools-ivory .wrap { width: min(1440px, calc(100% - 80px)); }
.tools-ivory .wide-rule { width: min(1440px, calc(100% - 80px)); border-color: var(--line); }
.tools-ivory .wide-rule.star::after { display: none; }
.tools-ivory .header-inner { height: 78px; }
.tools-ivory .site-header { background: var(--paper); }
.tools-ivory .brand-name { color: var(--ink); font-weight: 700; font-size: 27px; }
.tools-ivory .brand-mark { width: 47px; height: 53px; }
.tools-ivory .header-contact { background: var(--ink); border-color: var(--ink); color: #fffdf9; border-radius: 7px; }
.tools-ivory .desktop-nav { gap: 24px; }
.tools-ivory .desktop-nav a, .tools-ivory .services-menu summary { font-size: 13px; }
.tools-ivory .breadcrumbs { display: none; }
.tools-ivory .bt-tool-nav { display: flex; gap: 24px; align-items: center; padding-block: 14px 5px; }
.tools-ivory .bt-tool-nav nav { display: flex; gap: 9px; align-items: center; flex-wrap: wrap; }
.tools-ivory .bt-tool-nav a { display: flex; align-items: center; gap: 11px; padding: 12px 20px; border-radius: 9px; font-size: 14px; min-height: 48px; transition: background .18s, color .18s; }
.tools-ivory .bt-tool-nav a:hover { background: #f3eadb; }
.tools-ivory .bt-tool-nav a[aria-current] { background: #f2eadc; font-weight: 600; color: #171612; }
.tools-ivory .bt-tool-nav svg { width: 24px; height: 24px; flex: 0 0 24px; }
.tools-ivory .bt-tool-nav > p { margin: 0 0 0 auto; padding-left: 24px; border-left: 1px solid var(--line); font-size: 12px; color: var(--muted); max-width: 200px; line-height: 1.5; }
.tools-ivory .business-tools { --bt-green: #a57531; --bt-purple: #8b8071; font-size: 15px; }
.tools-ivory .business-tools .bt-hero { padding-top: 24px; padding-bottom: 28px; }
.tools-ivory .business-tools .bt-hero h1 { max-width: 1050px; font-size: clamp(38px, 4.1vw, 60px); line-height: 1.05; letter-spacing: -.035em; margin: 11px 0 12px; font-weight: 650; font-family: var(--sans); }
.tools-ivory .business-tools .bt-intro { max-width: 900px; font-size: 17px; line-height: 1.55; color: var(--muted); }
.tools-ivory .business-tools .bt-note { max-width: 1040px; font-size: 12px; line-height: 1.55; margin-top: 10px; }
.tools-ivory .eyebrow { color: #836533; font-size: 10px; letter-spacing: .14em; line-height: 1.5; }
.tools-ivory .business-tools h2 { font-family: var(--sans); font-weight: 600; letter-spacing: -.02em; font-size: 26px; margin-bottom: 14px; }
.tools-ivory .business-tools h3 { font-size: 17px; margin-bottom: 10px; }
.tools-ivory .business-tools .bt-studio { display: grid; grid-template-columns: minmax(310px, .34fr) minmax(0, .66fr); gap: 24px; align-items: start; }
.tools-ivory .business-tools .bt-input-pane { background: var(--bt-surface); border: 1px solid #e3d3bc; border-radius: 9px; padding: 25px; box-shadow: var(--bt-shadow); }
.tools-ivory .business-tools .bt-output-pane { min-width: 0; padding-top: 0; border-top: 0; }
.tools-ivory .business-tools .bt-input-pane > :first-child { margin-top: 0; }
.tools-ivory .business-tools .bt-input-pane .bt-panel { padding-block: 20px; }
.tools-ivory .business-tools .bt-input-pane .bt-panel:first-child { border-top: 0; padding-top: 0; }
.tools-ivory .business-tools .bt-input-pane h2 { font-family: var(--sans); font-size: 22px; line-height: 1.2; }
.tools-ivory .business-tools .bt-input-pane .bt-fields { grid-template-columns: 1fr; gap: 16px; }
.tools-ivory .business-tools .bt-field { gap: 6px; }
.tools-ivory .business-tools .bt-field label { font-size: 13px; font-weight: 500; color: #343027; }
.tools-ivory .business-tools .bt-field small { font-size: 12px; line-height: 1.5; }
.tools-ivory .business-tools input:not([type=radio]):not([type=checkbox]):not([type=file]),
.tools-ivory .business-tools select, .tools-ivory .business-tools textarea {
  background: #fff; border: 1px solid #c7bdaf; border-radius: 7px; min-height: 44px;
  padding: 10px 12px; color: #171612; font-size: 15px; line-height: 1.45; font-variant-numeric: tabular-nums;
  transition: border-color .18s, box-shadow .18s;
}
.tools-ivory .business-tools textarea { resize: vertical; }
.tools-ivory .business-tools input:hover, .tools-ivory .business-tools textarea:hover, .tools-ivory .business-tools select:hover { border-color: #a78d67; }
.tools-ivory .business-tools input:focus, .tools-ivory .business-tools textarea:focus, .tools-ivory .business-tools select:focus { border-color: var(--bt-green); box-shadow: 0 0 0 3px #a5753110; }
.tools-ivory :is(a, button, summary, input, textarea, select):focus-visible { outline: 2px solid #a57531; outline-offset: 4px; }
.tools-ivory .business-tools .bt-button { border-radius: 7px; padding: 11px 15px; background: #171612; border-color: #171612; color: #fffdf9; font-size: 13px; min-height: 44px; cursor: pointer; transition: background .18s, border-color .18s, box-shadow .18s; }
.tools-ivory .business-tools .bt-button:hover { background: #30291f; box-shadow: 0 3px 10px #26190b18; }
.tools-ivory .business-tools .bt-secondary { background: transparent; border-color: #c8b28f; color: #30291f; }
.tools-ivory .business-tools .bt-secondary:hover { background: #f4ecdf; color: #171612; border-color: #a78d67; }
.tools-ivory .business-tools .bt-controls { gap: 9px; margin-top: 16px; }
.tools-ivory .business-tools .bt-status { font-size: 13px; margin: 15px 0; }
.tools-ivory .business-tools .bt-help { font-size: 12px; margin: 8px 0 13px; line-height: 1.6; }
.tools-ivory .business-tools .bt-modes { gap: 8px; }
.tools-ivory .business-tools .bt-modes label { gap: 8px; padding: 12px 10px; border-radius: 8px; background: #fcf9f4; border-color: #dcc9ad; align-items: flex-start; }
.tools-ivory .business-tools .bt-modes strong { font-size: 13px; }
.tools-ivory .business-tools .bt-modes small { font-size: 11px; }
.tools-ivory .business-tools .bt-modes label:has(input:checked) { background: #f4ecdf; border-color: #b28a50; }
.tools-ivory .business-tools details { padding: 16px 0; border-color: var(--line); }
.tools-ivory .business-tools summary { font-size: 14px; min-height: 28px; color: #393126; }
.tools-ivory .business-tools details[open] > summary { margin-bottom: 17px; }
.tools-ivory .business-tools .bt-results { padding-top: 0; border-top: 0; }
.tools-ivory .business-tools .bt-section-heading { margin-bottom: 20px; }
.tools-ivory .business-tools .bt-section-heading h2 { font-size: 32px; margin-top: 10px; }
.tools-ivory .business-tools .bt-result-card, .tools-ivory .business-tools .auto-metric { border-radius: 10px; background: #fffdf9; border-color: #e1d0b7; padding: 21px; }
.tools-ivory .business-tools .bt-break-even { background: var(--bt-tint); border: 1px solid #e1d0b7; border-radius: 11px; padding: 22px; gap: 18px; }
.tools-ivory .business-tools .bt-break-even strong { font-size: clamp(23px, 2.4vw, 32px); color: #171612; }
.tools-ivory .business-tools .bt-chart-panel { padding: 24px; background: #fffdf9; border: 1px solid #e1d0b7; border-radius: 9px; box-shadow: var(--bt-shadow); margin-top: 20px; }
.tools-ivory .business-tools .bt-chart-legend { margin-bottom: 0; }
.tools-ivory .business-tools .bt-check { font-size: 13px; line-height: 1.65; gap: 10px; }
.tools-ivory .business-tools .bt-check input { margin-top: 3px; }
.tools-ivory .business-tools input:is([type=radio], [type=checkbox]) { min-height: 19px; height: 19px; min-width: 19px; width: 19px; padding: 0; }
.tools-ivory .business-tools .bt-cta { background: #f5efe3; border: 1px solid #e1d0b7; border-radius: 9px; padding: 25px; gap: 20px; }
.tools-ivory .business-tools .bt-cta h2 { font-size: 26px; }
.tools-ivory .business-tools .bt-cta .button { border-radius: 7px; background: var(--ink); border-color: var(--ink); color: #fffdf9; font-size: 13px; }
.tools-ivory .business-tools .bt-cta p:not(.eyebrow) { font-size: 13px; }
.tools-ivory .business-tools .bt-table-scroll { border-radius: 8px; }
.tools-ivory .business-tools thead { background: #f5efe3; }
.tools-ivory .business-tools .bt-file-label { display: flex; align-items: center; justify-content: center; gap: 8px; }
.tools-ivory .business-tools .bt-import-details { padding-bottom: 0; margin-top: 16px; }
.tools-ivory .business-tools .bt-import-details .conv-import, .tools-ivory .business-tools .bt-import-details .rev-import { margin-block: 12px 0; }
.tools-ivory .bt-analysis-empty { background: #fffdf9; border: 1px solid #e1d0b7; border-radius: 9px; box-shadow: var(--bt-shadow); overflow: hidden; }
.tools-ivory .bt-empty-heading { background: #f5efe3; padding: 36px 40px 30px; position: relative; }
.tools-ivory .bt-empty-emblem { display: grid; place-items: center; width: 54px; height: 54px; border: 1px solid #c6a66f; border-radius: 50%; margin-bottom: 28px; color: #a57531; }
.tools-ivory .bt-empty-emblem svg { width: 25px; height: 25px; }
.tools-ivory .bt-empty-heading h2 { font-family: var(--serif); font-size: clamp(30px, 3.2vw, 44px); font-weight: 400; margin: 14px 0 16px; max-width: 590px; line-height: 1.12; letter-spacing: -.025em; }
.tools-ivory .bt-empty-heading > p:last-child { color: #6d6251; font-size: 14px; line-height: 1.75; max-width: 580px; }
.tools-ivory .bt-analysis-empty ol { list-style: none; margin: 0; padding: 12px 36px; }
.tools-ivory .bt-analysis-empty li { display: flex; gap: 20px; padding: 23px 0; align-items: center; }
.tools-ivory .bt-analysis-empty li + li { border-top: 1px solid #e8ddcc; }
.tools-ivory .bt-empty-icon { display: grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; border-radius: 9px; background: #f5efe3; color: #996f33; }
.tools-ivory .bt-empty-icon svg { width: 25px; height: 25px; }
.tools-ivory .bt-analysis-empty li h3 { font-family: var(--sans); font-size: 17px; font-weight: 500; margin: 0 0 5px; }
.tools-ivory .bt-analysis-empty li p { font-size: 13px; line-height: 1.6; color: var(--muted); }
.tools-ivory .bt-empty-index { color: #998465; margin-left: auto; font-size: 12px; }
.tools-ivory .bt-empty-foot { display: flex; align-items: center; gap: 10px; padding: 19px 36px; border-top: 1px solid #e8ddcc; color: var(--muted); font-size: 12px; line-height: 1.6; }
.tools-ivory .bt-empty-foot svg { width: 19px; height: 19px; flex-shrink: 0; }
.tools-ivory .bt-output-pane:has(> .bt-results:not([hidden])) > .bt-analysis-empty { display: none; }
.tools-ivory .bt-ai-studio .bt-results > .bt-section-heading { background: var(--bt-tint); padding: 28px; border: 1px solid #e1d0b7; border-radius: 9px; }
.tools-ivory .bt-ai-studio .bt-results > .bt-panel { background: #fffdf9; border: 1px solid #e1d0b7; border-radius: 9px; margin-top: 20px; padding: 25px; }
.tools-ivory .bt-ai-studio .bt-input-pane h2 { font-size: 23px; }
.tools-ivory .bt-ai-studio .bt-input-pane .bt-field textarea { min-height: 78px; }
.tools-ivory .bt-ai-studio .bt-modes { grid-template-columns: 1fr 1fr; }
.tools-ivory .bt-ai-studio .bt-modes label { flex-direction: column; position: relative; padding: 11px; }
.tools-ivory .bt-ai-studio .bt-modes label > input { position: absolute; right: 9px; top: 7px; width: 15px; height: 15px; }
.tools-ivory .bt-ai-studio .bt-modes strong { display: block; padding-right: 16px; font-size: 12px; }
.tools-ivory .bt-ai-studio .bt-modes small { font-size: 12px; line-height: 1.5; }
.tools-ivory .bt-ai-studio :is(.conv-issue, .rev-theme, .rev-insight, .conv-checks article, .rev-samples article) { border-radius: 10px; background: #fffdf9; border-color: #e1d0b7; }
.tools-ivory .bt-ai-studio .conv-issue h3 { font-size: 22px; }
.tools-ivory .bt-ai-studio :is(.conv-summary, .rev-summary) { font-size: 16px; }
.tools-ivory .bt-ai-studio .conv-url-limitation { margin-top: 20px; border-radius: 0 8px 8px 0; }
.tools-ivory .reviews-tool .rev-company-heading { align-items: center; }
.tools-ivory .reviews-tool .rev-company-heading h2 { margin: 0; }
.tools-ivory .reviews-tool .rev-company { padding-block: 17px; }
.tools-ivory .reviews-tool .rev-company-label { font-size: 15px; font-weight: 500; }
.tools-ivory .reviews-tool .rev-company-name { display: block; color: var(--muted); font-size: 12px; font-weight: 400; margin: 3px 0 0 15px; }
.tools-ivory .reviews-tool .rev-company-content { margin-top: 19px; }
.tools-ivory .reviews-tool .rev-company-heading .bt-button { margin-bottom: 14px; }
.tools-ivory .reviews-tool .rev-company .bt-fields { grid-template-columns: minmax(0, 1fr) 85px; gap: 12px; }
.tools-ivory .reviews-tool .rev-company textarea { min-height: 135px; }
.tools-ivory .reviews-tool .rev-company .bt-fields { align-items: end; }
.tools-ivory .reviews-tool .rev-intake-guide { border-top: 0; padding-top: 0; }
.tools-ivory .reviews-tool .rev-intake-guide p { font-size: 13px; line-height: 1.7; color: var(--muted); }
.tools-ivory .reviews-tool .rev-theme h4 { font-size: 18px; }
.tools-ivory .page-hero h1 { color: var(--ink); }
.tools-ivory .tools-directory { gap: 20px; }
.tools-ivory .tool-directory-card { border: 1px solid #e1d0b7; border-radius: 9px; background: #fffdf9; padding: 28px; box-shadow: var(--bt-shadow); }
.tools-ivory .tool-directory-card:first-child { background: #f3ebdd; }
.tools-ivory .tool-directory-card h2 { color: var(--ink); margin-block: 20px 13px; }
.tools-ivory .tool-directory-card .text-link { color: #a57531; }
.tools-ivory .site-footer { margin-top: 20px; }
.tools-ivory [hidden] { display: none !important; }
@media (max-width: 1160px) {
  .tools-ivory .wrap, .tools-ivory .wide-rule { width: calc(100% - 48px); }
  .tools-ivory .bt-tool-nav > p { display: none; }
  .tools-ivory .bt-tool-nav a { padding-inline: 16px; }
  .tools-ivory .business-tools .bt-studio { gap: 18px; grid-template-columns: minmax(290px, .37fr) minmax(0, .63fr); }
  .tools-ivory .business-tools .bt-input-pane { padding: 20px; }
  .tools-ivory .bt-empty-heading { padding: 28px; }
  .tools-ivory .bt-analysis-empty ol { padding-inline: 26px; }
  .tools-ivory .bt-empty-foot { padding-inline: 26px; }
  .tools-ivory .desktop-nav { gap: 15px; }
  .tools-ivory .brand-name { font-size: 23px; }
  .tools-ivory .bt-ai-studio .conv-checks { grid-template-columns: 1fr; }
}
@media (max-width: 960px) {
  .tools-ivory .business-tools .bt-studio { grid-template-columns: 1fr; }
  .tools-ivory .business-tools .bt-input-pane .bt-fields { grid-template-columns: 1fr 1fr; }
  .tools-ivory .business-tools .bt-cta { grid-template-columns: 1fr; }
  .tools-ivory .business-tools .bt-cta .button { justify-self: start; }
  .tools-ivory .bt-ai-studio .bt-modes label { flex-direction: row; padding: 14px; }
  .tools-ivory .bt-ai-studio .conv-checks { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .tools-ivory .wrap, .tools-ivory .wide-rule { width: calc(100% - 32px); }
  .tools-ivory .site-header .header-inner { height: auto; min-height: 76px; }
  .tools-ivory .brand-name { font-size: 22px; }
  .tools-ivory .brand-mark { width: 39px; height: 46px; }
  .tools-ivory .bt-tool-nav { padding-top: 13px; gap: 0; }
  .tools-ivory .bt-tool-nav nav { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); width: 100%; gap: 4px; }
  .tools-ivory .bt-tool-nav a { padding: 10px 3px 8px; min-height: 64px; gap: 6px; flex-direction: column; text-align: center; font-size: 10px; line-height: 1.25; border-radius: 7px; }
  .tools-ivory .bt-tool-nav a svg { width: 21px; height: 21px; flex-basis: 21px; }
  .tools-ivory .breadcrumbs { font-size: 10px; padding-top: 11px; }
  .tools-ivory .business-tools .bt-hero { padding-top: 21px; padding-bottom: 23px; }
  .tools-ivory .business-tools .bt-hero h1 { font-size: clamp(36px, 7vw, 46px); overflow-wrap: normal; }
  .tools-ivory .business-tools .bt-intro { font-size: 15px; }
  .tools-ivory .business-tools .bt-note { font-size: 12px; }
  .tools-ivory .business-tools .bt-chart-panel { padding: 17px; }
  .tools-ivory .business-tools .bt-chart-legend { flex-direction: row; gap: 10px 17px; }
  .tools-ivory .business-tools .bt-chart-legend span { font-size: 12px; }
  .tools-ivory .bt-ai-studio .conv-checks { grid-template-columns: 1fr; }
  .tools-ivory .bt-ai-studio .rev-samples { grid-template-columns: 1fr; }
  .tools-ivory .bt-ai-studio .rev-website-columns { grid-template-columns: 1fr; }
  .tools-ivory .bt-empty-heading { padding: 26px; }
  .tools-ivory .bt-empty-heading h2 { font-size: 34px; }
  .tools-ivory .bt-empty-emblem { margin-bottom: 20px; }
  .tools-ivory .bt-analysis-empty li { gap: 14px; }
  .tools-ivory .bt-empty-index { display: none; }
  .tools-ivory .business-tools .bt-cta { padding: 22px; }
  .tools-ivory .business-tools .bt-workspace { padding-bottom: 36px; }
}
@media (max-width: 480px) {
  .tools-ivory .business-tools .bt-input-pane .bt-fields { grid-template-columns: 1fr; }
  .tools-ivory .business-tools .bt-input-pane { padding: 20px; }
  .tools-ivory .business-tools .bt-controls { display: flex; flex-wrap: wrap; }
  .tools-ivory .business-tools .bt-controls > .bt-button { flex: 1; }
  .tools-ivory .business-tools .bt-input-pane .bt-controls > .bt-button { flex-basis: 100%; }
  .tools-ivory .reviews-tool .rev-company .bt-fields { grid-template-columns: minmax(0, 1fr) 85px; }
  .tools-ivory .brand-name { font-size: 20px; }
  .tools-ivory .header-actions { gap: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .tools-ivory *, .tools-ivory *::before, .tools-ivory *::after { transition: none !important; scroll-behavior: auto !important; }
}
@media print {
  body.tools-ivory { background: #fff; color: #111; }
  .tools-ivory .bt-tool-nav, .tools-ivory .bt-analysis-empty, .tools-ivory .site-header, .tools-ivory .site-footer, .tools-ivory .breadcrumbs, .tools-ivory .floating-contact, .tools-ivory .bt-import-details { display: none !important; }
  .tools-ivory .business-tools .bt-studio { display: block; }
  .tools-ivory .wrap { width: 100%; max-width: none; }
  .tools-ivory .business-tools .bt-input-pane, .tools-ivory .business-tools .bt-output-pane, .tools-ivory .business-tools .bt-chart-panel { box-shadow: none; border: 0; padding: 0; }
  .tools-ivory .business-tools .bt-hero { padding: 0 0 12px; }
  .tools-ivory .business-tools .bt-hero h1 { font-size: 28pt; }
  .tools-ivory .business-tools .bt-cta { display: none; }
}

.tools-ivory .site-header .wrap { max-width: 1180px; }
.tools-ivory .bt-tool-nav svg { color: #a57531; }
.tools-ivory .business-tools .bt-hero em { font-family: 'Cormorant Garamond', var(--serif); color: #b1843f; font-weight: 600; }
.tools-ivory .bt-empty-progress { display: flex; align-items: center; gap: 14px; padding: 20px 28px; background: #171612; color: #fffdf9; font-size: 14px; line-height: 1.65; }
.tools-ivory .bt-empty-progress svg { flex: 0 0 25px; height: 25px; color: #d8b678; }
.tools-ivory [data-analysis-state=loading] .bt-empty-foot { display: none; }
.tools-ivory .rev-company-name { overflow-wrap: anywhere; }
.tools-ivory .business-tools .bt-status { color: #78602e; }
.tools-ivory .bt-input-pane fieldset > legend + .bt-panel { border-top: 0; padding-top: 0; }
.tools-ivory .business-tools .bt-report-jump { display: none; }
.tools-ivory .business-tools:has(.bt-results:not([hidden])) .bt-report-jump { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 10px; }
/* Contact shortcuts remain available without covering calculator controls. */
.tools-ivory .floating-contact { position: static; flex-direction: row; width: fit-content; margin: 0 auto 28px; gap: 14px; padding: 0; }
.tools-ivory .floating-contact__link { width: 44px; height: 44px; box-shadow: none; }
.tools-ivory .floating-contact__link::after { animation: none; }
@media (max-width: 760px) {
  .tools-ivory .concept-footer-bottom { padding-bottom: 22px; }
  .tools-ivory .business-tools summary { min-height: 44px; padding-block: 9px; }
  .tools-ivory .bt-ai-studio .bt-analysis-empty { display: none; }
  .tools-ivory .bt-ai-studio:has([aria-busy=true]) .bt-analysis-empty { display: block; }
  .tools-ivory .bt-ai-studio:has([aria-busy=true]) .bt-analysis-empty > :not(.bt-empty-progress) { display: none; }
}
@media print {
  .tools-ivory .business-tools .bt-report-jump, .tools-ivory .floating-contact { display: none !important; }
}
