/* Tool templates historically imposed dark input colors even inside light offers. */
body:not(.home) .dc-context-offer .dc-form :is(input:not([type="checkbox"]):not([type="hidden"]):not([type="submit"]), textarea, select) {
  background: var(--dc-color-surface) !important;
  color: var(--dc-color-text) !important;
  border: 1px solid var(--dc-color-text) !important;
  min-height: 44px;
}
body:not(.home) .dc-context-offer .dc-form :is(input, textarea)::placeholder {
  color: var(--dc-color-text) !important;
  opacity: 1;
}
/* Interior-page rules only. Keep homepage and provider-owned controls untouched. */
body:not(.home) {
  --dc-interior-heading: "Fraunces", Georgia, serif;
  --dc-interior-body: "Outfit", system-ui, sans-serif;
  --dc-interior-section-gap: clamp(2rem, 4vw, 4rem);
}
body:not(.home) .site-main :is(h1,h2,h3) { font-family: var(--dc-interior-heading); text-wrap: pretty; }
body:not(.home) .site-main h1 { font-size: clamp(2.25rem, 5.8vw, 5.5rem); line-height: 1.06; }
body:not(.home) .site-main :is(.dc-button,.buyers-roadmap-page .button,.listing-button,.dc-form button[type="submit"],.dc-service-home-value-form button[type="submit"]) {
  border-radius: var(--dc-radius-control);
  min-height: 48px;
  font-family: var(--dc-interior-body);
  font-size: 1rem;
  line-height: 1.35;
  font-weight: 600;
  text-transform: none;
  letter-spacing: normal;
  white-space: normal;
  text-align: center;
  max-width: 100%;
  padding: .85rem 1.3rem;
}
body:not(.home) .site-main :is(.dc-button--primary,.buyers-roadmap-page .button--gold,.buyers-roadmap-page .button--blue,.dc-form button[type="submit"],.dc-service-home-value-form button[type="submit"]) {
  background: var(--dc-color-action-strong);
  color: var(--dc-brand-paper);
  border: 1px solid var(--dc-color-action-strong);
  box-shadow: none;
}
body:not(.home) .site-main :is(.dc-button--primary,.buyers-roadmap-page .button--gold,.buyers-roadmap-page .button--blue):hover {
  background: var(--dc-color-action); border-color: var(--dc-color-action);
}
body:not(.home) .site-main :is(.dc-button,.button,summary,input,textarea,select):focus-visible {
  outline: 3px solid var(--dc-color-action); outline-offset: 4px;
}
body:not(.home) .site-main :is(.dc-service-section,.dc-page-section) { margin-block: var(--dc-interior-section-gap); }
body:not(.home) .dc-service-card { box-shadow: none; }
body:not(.home) .dc-service-hero__media img { aspect-ratio: 16/9; width: 100%; height: auto; object-fit: cover; }
body:not(.home) .dc-service-hero__index { display:none; }
body:not(.home) .dc-service-proof__metrics { gap: 1rem; }
body:not(.home) .dc-service-metric-card { padding: 1rem; }
body:not(.home) .dc-service-metric-card p:last-child { margin-bottom:0; }
body:not(.home) .dc-detail { border-block: 1px solid var(--dc-border); padding-block: 1rem; }
body:not(.home) .dc-detail > summary { cursor:pointer; font:600 1rem/1.5 var(--dc-interior-body); padding:.5rem; }
body:not(.home) .dc-detail[open] > summary { margin-bottom:1rem; }
body:not(.home) .dc-form__optional { grid-column:1/-1; }
body:not(.home) .dc-form__help { font-size:.95rem; line-height:1.5; }
body:not(.home) .dc-form__help a { text-decoration:underline; }
body:not(.home) .dc-context-offer { padding:clamp(1.25rem,3vw,2rem); margin-block:2rem; background:var(--dc-color-action-soft); color:var(--dc-color-text); border-left:4px solid var(--dc-color-action); border-radius:var(--dc-radius-card); }
body:not(.home) .dc-context-offer h2 { font-size:clamp(1.55rem,2.8vw,2rem); margin-top:0; color:var(--dc-color-text); }
body:not(.home) .dc-context-offer p { max-width:65ch; color:var(--dc-color-text); }
body:not(.home) .dc-context-offer .dc-form { padding:0; background:transparent; border:0; box-shadow:none; }
body:not(.home) .dc-context-offer .dc-form h2 { font-size:1.3rem; }
body:not(.home) .dc-context-offer > .dc-detail { margin-top:1rem; }
body:not(.home) .dc-context-offer > .dc-detail > summary {
  display:list-item; width:fit-content; max-width:100%; min-height:48px;
  padding:.8rem 1.2rem; border-radius:var(--dc-radius-control);
  background:var(--dc-color-action-strong); color:var(--dc-brand-paper);
}
body:not(.home) .dc-context-offer > .dc-detail > summary:hover { background:var(--dc-color-action); }
/* The old calculator-style hero sets its primary fill !important. Keep that exception local. */
body:not(.home) .site-main .dc-page-tone.dc-page-hero--calculator-style .dc-button--primary {
  background:var(--dc-color-action-strong) !important; color:var(--dc-brand-paper) !important;
}
body:not(.home) .site-main .dc-page-tone.dc-page-hero--calculator-style .dc-button--primary:hover {
  background:var(--dc-color-action) !important;
}
body:not(.home) .buyers-roadmap-page .plan__form { padding:1.25rem; background:var(--dc-color-action-soft); }
body:not(.home) .buyers-roadmap-page .plan__form > .dc-form { padding:0; background:var(--dc-color-action-soft); border:0; box-shadow:none; }
body:not(.home) .buyers-roadmap-page .plan__form > .dc-form > h2 { font-size:1.35rem; }
body:not(.home) :is(.dc-context-offer,.plan,.tool-calculator-stage) { scroll-margin-top:100px; }
body:not(.home) .schedule-calendar__fallback { padding:1rem; margin:0; color:var(--dc-color-text); }
body:not(.home) .schedule-calendar__fallback a { color:var(--dc-color-action-strong); text-decoration:underline; }
body:not(.home) .buyers-roadmap-page .chapter { padding-block:clamp(1.5rem,3vw,3rem); }
body:not(.home) .buyers-roadmap-page .chapter h2 { font-size:clamp(1.8rem,3.4vw,3.2rem); }
body:not(.home) .buyers-roadmap-page .chapter .dc-detail { color:inherit; }
body:not(.home) .buyers-roadmap-page .answer { padding-block:3rem; }
body:not(.home) .buyers-roadmap-page .answer__note { max-width:65ch; }
body:not(.home) .buyers-roadmap-page .plan { padding-block:3rem; }
body:not(.home) .dc-booking-fallback { margin-top:1rem; }
@media (max-width:700px) {
  body:not(.home) .site-main h1 { font-size:clamp(2.1rem,9.5vw,2.8rem); }
  body:not(.home) .site-main :is(.hero-panel,.dc-page-hero,.calculator-hero,.dc-service-hero__grid) { gap:1.5rem; }
  body:not(.home) .dc-service-hero__media { display:none; }
  body:not(.home) .dc-service-hero__brief { padding:1.25rem; }
  body:not(.home) .dc-service-hero__brief h2 { font-size:1.4rem; }
  body:not(.home) .dc-service-section { padding-block:1.5rem; }
  body:not(.home) .dc-service-section .section-heading { margin-bottom:1.25rem; }
  body:not(.home) .dc-service-section .section-heading h2 { font-size:1.9rem; }
  body:not(.home) .buyers-roadmap-page .hero { min-height:660px; }
  body:not(.home) .buyers-roadmap-page .hero__content { padding-block:3rem; }
  body:not(.home) .buyers-roadmap-page .hero__lede { font-size:1rem; }
  body:not(.home) .buyers-roadmap-page .chapter { padding:1.5rem 1.1rem; }
  body:not(.home) .dc-form__grid { grid-template-columns:1fr; }
  body:not(.home) .dc-form textarea { min-height:90px; }
  body:not(.home) .dc-context-offer .dc-button-row { align-items:stretch; }
}
@media (prefers-reduced-motion:reduce) {
  body:not(.home) .dc-context-offer * { scroll-behavior:auto; transition:none; }
}
