/*
 * SUMI v1.4 — Warm Neutral / Human Scale
 * Typography, related-service prominence and section tone only.
 * Retains the approved hero, gothic fonts, three-package rates, calculator, original brand,
 * mobile flow, WordPress plugin contract and all existing published tax-service copy.
 */
.sumi-root {
  --sumi-v14-paper:#FAFAF8;
  --sumi-v14-surface:#F0F4F2;
  --sumi-v14-surface-soft:#F6F4EF;
  --sumi-v14-ink:#1C3342;
  --sumi-v14-copy:#3C5363;
  --sumi-v14-muted:#4C6571;
  --sumi-v14-line:#DCE5E1;
  --sumi-v14-accent:#5E8F8C;
  --sumi-v14-navy:#244B6B;
}
/* Repetition of cold blue blocks and sudden yellow panels was the main visual mismatch.
   Keep neighboring sections in related neutral hues; navy remains the primary brand color. */
.sumi-root .sumi-v09-home-price {
  background:radial-gradient(ellipse 70% 130% at 100% 0%,rgba(209,224,219,.36),transparent 72%),var(--sumi-v14-paper);
}
.sumi-root .sumi-v09-home-price::before {opacity:.30;}
.sumi-root .sumi-v10-home-services {background:#FFFFFF;}
.sumi-root .sumi-v07-home-flow {background:var(--sumi-v14-surface);}
.sumi-root .sumi-v08-home-operations {background:var(--sumi-v14-paper);}
.sumi-root .sumi-office--warm {
  background:radial-gradient(ellipse 47% 100% at 0% 85%,rgba(226,225,214,.28),transparent 72%),#F7F8F4;
}
.sumi-root .sumi-office--warm::after {background:rgba(231,230,218,.11);}
.sumi-root .sumi-column {background:var(--sumi-v14-paper);}
.sumi-root .sumi-final-cta--warm,
.sumi-root .sumi-detail-contact-band {
  background:radial-gradient(ellipse 43% 110% at 101% 95%,rgba(224,227,216,.23),transparent 75%),var(--sumi-v14-surface-soft);
  border:0;
}
.sumi-root .sumi-final-cta--warm::before,
.sumi-root .sumi-detail-contact-band::before {
  border-color:rgba(184,196,182,.18);
  opacity:.44;
}
.sumi-root .sumi-footer {
  background:var(--sumi-v14-surface)!important;
  color:var(--sumi-v14-ink);
}
.sumi-root .sumi-footer__bottom,
.sumi-root .sumi-footer__related {border-top-color:#D7E1DC;}
.sumi-root .sumi-footer__related a {text-decoration:none!important;border-bottom:1px solid rgba(36,75,107,.36);text-underline-offset:3px;}
.sumi-root .sumi-footer__related a:hover {border-color:var(--sumi-v14-navy);}
/* Subpage family likewise uses the same paper/sage neutral base. */
.sumi-root .sumi-detail {background:var(--sumi-v14-paper);}
.sumi-root .sumi-detail-section--white {background:var(--sumi-v14-paper);}
.sumi-root .sumi-detail-section--tint {background:#F5F7F4;}
.sumi-root .sumi-detail-section--muted {background:var(--sumi-v14-surface);}
.sumi-root .sumi-detail--services #service-detail,
.sumi-root .sumi-detail--services #service-responsibility,
.sumi-root .sumi-detail--guide #guide-operations,
.sumi-root .sumi-detail--price #pack-fee-table {background:var(--sumi-v14-surface);}
.sumi-root .sumi-detail--services #service-options,
.sumi-root .sumi-detail--guide #guide-bookkeeping,
.sumi-root .sumi-detail--contact #contact-form {background:var(--sumi-v14-paper);}
.sumi-root .sumi-detail--price #pack-estimator,
.sumi-root .sumi-detail--contact #contact-process {background:#F4F7F4;}
.sumi-root #about-philosophy {background:#FAFAF8;}
.sumi-root #about-principles {background:#F2F5F1;}
.sumi-root #about-principles .sumi-detail-principles--three article::before {background:#F2F5F1;}
.sumi-root #about-professional {background:#F7F7F3!important;}
.sumi-root #about-practice {background:var(--sumi-v14-surface);}
.sumi-root .sumi-detail--contact .sumi-detail-contact__form {background:#FFFFFF;}
/* Larger, darker body text is the highest-leverage accessibility improvement.
   Tiny uppercase eyebrow labels remain small metadata, not content-bearing copy. */
.sumi-root .sumi-detail :is(p,li):not(.sumi-eyebrow):not(.sumi-detail-kicker):not(.sumi-detail-footnote) {
  color:var(--sumi-v14-copy);font-size:clamp(14px,1.04vw,15px);line-height:1.9;
}
.sumi-root .sumi-detail :is(.sumi-detail-hero__lead,.sumi-detail-hero__description) {font-size:15px;line-height:1.9;}
.sumi-root .sumi-detail-section__heading>p,
.sumi-root .sumi-detail-about__statement p,
.sumi-root .sumi-detail-principles article p,
.sumi-root .sumi-detail-about__profile-main>p,
.sumi-root .sumi-detail-about__facts p,
.sumi-root .sumi-v08-service-next__grid>div>p {font-size:15px;line-height:1.9;max-width:650px;}
.sumi-root .sumi-v13-tax-flow small {font-size:12.5px;line-height:1.65;color:#486371;}
.sumi-root .sumi-v13-tax-flow strong {font-size:14.5px;line-height:1.65;}
.sumi-root .sumi-v10-tax-flow__branch span,
.sumi-root .sumi-v10-tax-flow__node span {color:#486371;}
.sumi-root .sumi-v10-service-map__footer p {font-size:13px;color:#4A626D;line-height:1.8;}
.sumi-root .sumi-v07-service-detail summary small,
.sumi-root .sumi-v07-option-table p,
.sumi-root .sumi-v08-bookkeeping__grid p,
.sumi-root .sumi-detail-about__career li span {font-size:14px;line-height:1.75;}
.sumi-root .sumi-detail-footnote {font-size:12.5px;color:#4E6773;line-height:1.8;}
.sumi-root .sumi-office__intro-note,
.sumi-root .sumi-office__body p {font-size:15px;line-height:1.9;color:var(--sumi-v14-copy);}
.sumi-root .sumi-v08-home-operations__duties>div strong,
.sumi-root .sumi-v08-home-operations__duties>div span {font-size:14px;line-height:1.8;}
.sumi-root .sumi-v09-home-price__head p,
.sumi-root .sumi-v10-home-services__heading>p {font-size:15px;line-height:1.9;color:var(--sumi-v14-copy);}
.sumi-root .sumi-final-cta--warm .sumi-final-cta__copy>p:not(.sumi-eyebrow):not(.sumi-final-cta__reply) {
  font-size:15px!important;line-height:1.9;color:var(--sumi-v14-copy)!important;
}
.sumi-root .sumi-final-cta--warm .sumi-final-cta__reply {
  font-size:13px!important;line-height:1.8;color:#4C6370!important;
}
.sumi-root .sumi-footer__brand p,
.sumi-root .sumi-footer__nav a,
.sumi-root .sumi-footer__related a,
.sumi-root .sumi-footer__related span {font-size:13.5px;line-height:1.75;color:#3E5763;}
.sumi-root .sumi-footer__brand strong {font-size:17px;line-height:1.6;}
.sumi-root .sumi-footer__nav {gap:15px 28px;}
.sumi-root .sumi-footer__brand p {margin-top:12px!important;}
.sumi-root .sumi-footer__bottom {color:#4F6872;font-size:12px;}
/* CTA: from impersonal label to a service with a named qualified professional.
   This identifies the office representative but does not promise personal replies. */
.sumi-root .sumi-final-cta__trust {
  display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 18px;
  border:0;margin-top:27px;padding-top:22px;position:relative;
}
.sumi-root .sumi-final-cta__trust::before {
  content:'';position:absolute;top:0;left:0;width:47px;height:2px;background:#8AA9A0;
}
.sumi-root .sumi-final-cta__trust-overline {
  font:600 10px/1.8 Inter,'Zen Kaku Gothic New',sans-serif;
  letter-spacing:.10em;color:#56796F;
}
.sumi-root .sumi-final-cta__trust-person {font-size:13px;line-height:1.8;color:#425B65;}
.sumi-root .sumi-final-cta__trust-person strong {font-size:16px;color:#244B6B;margin:0 9px 0 3px;}
.sumi-root .sumi-final-cta__trust-person>span {font-size:12.5px;color:#58717B;}
.sumi-root .sumi-final-cta__inner {align-items:center;gap:clamp(35px,7vw,110px);}
.sumi-root .sumi-final-cta__copy {max-width:790px;}
.sumi-root .sumi-final-cta--warm {padding-top:clamp(72px,7vw,99px);padding-bottom:clamp(76px,7vw,103px);}
/* No box borders are needed to identify secondary related services: they're in footer only. */
.sumi-root .sumi-footer__related {gap:24px;padding-top:21px;margin-top:45px;}
/* Low-contrast meta is not the place to advertise services. Reduce excess tiny English labels. */
.sumi-root :is(.sumi-detail-kicker,.sumi-eyebrow) {color:#426A79;}
.sumi-root .sumi-detail-contact__form-head p {font-size:15px;line-height:1.85;}
/* Keep real interaction boundaries, with modest human-sized radii. */
.sumi-root .sumi-v10-selector__choice {border-radius:18px 8px 18px 8px;}
.sumi-root .sumi-v10-selector__result {border-radius:9px 26px 9px 26px;}
.sumi-root .sumi-detail-contact__form input,
.sumi-root .sumi-detail-contact__form select,
.sumi-root .sumi-detail-contact__form textarea {font-size:16px;}
@media (max-width:767px) {
  .sumi-root .sumi-final-cta--warm {padding:66px 0 74px;}
  .sumi-root .sumi-final-cta__trust {margin-top:22px;padding-top:18px;gap:5px 15px;}
  .sumi-root .sumi-final-cta__trust-overline {width:100%;}
  .sumi-root .sumi-detail :is(p,li):not(.sumi-eyebrow):not(.sumi-detail-kicker):not(.sumi-detail-footnote) {font-size:14px;line-height:1.85;}
  .sumi-root .sumi-detail-section__heading>p {font-size:14px;}
  .sumi-root .sumi-v13-tax-flow small {font-size:12.5px;}
  .sumi-root .sumi-v13-tax-flow strong {font-size:14.5px;}
  .sumi-root .sumi-final-cta--warm .sumi-final-cta__reply {font-size:12px!important;}
  .sumi-root .sumi-footer__nav a,
  .sumi-root .sumi-footer__related a {font-size:14px;}
  .sumi-root .sumi-footer__main {gap:26px;}
}
