/*
 * SUMI Editorial Refinement v1.1.0
 * Presentation only: built on v1.0.0, with no edits to service texts, pricing,
 * form/estimator logic, scripts, slugs, navigation, or the SWELL parent theme.
 * Art direction: navy trust, white space, very restrained sage-teal signals.
 */
.sumi-root {
  --sumi-v11-accent: #5E8F8C;
  --sumi-v11-accent-strong: #346F6A;
  --sumi-v11-accent-pale: #EEF5F3;
  --sumi-v11-rule: #d9e5e9;
  --sumi-v11-ink: #1c3342;
  font-family: 'Zen Kaku Gothic New', 'Noto Sans JP', 'Yu Gothic', sans-serif;
  font-feature-settings: "palt" 1;
}
.sumi-root :is(h1,h2,h3,h4,h5,h6,p,span,a,button,small,strong,summary,label,li,th,td) {
  font-family: 'Zen Kaku Gothic New', 'Noto Sans JP', 'Yu Gothic', sans-serif;
}
.sumi-root :is(input,select,textarea) {font-family:'Zen Kaku Gothic New','Noto Sans JP','Yu Gothic',sans-serif;}
.sumi-root :is(.sumi-btn,.sumi-header__cta,.sumi-mobile-menu__cta,.sumi-tools-button) {
  border-radius: 11px;
  box-shadow: none;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}
.sumi-root :is(.sumi-btn,.sumi-header__cta) {font-weight:700;}
.sumi-root .sumi-btn--outline {border-color:#7693a4;background:#fff;}
.sumi-root :is(.sumi-btn,.sumi-header__cta,.sumi-v10-selector__choice,.sumi-v10-mobile-rates button,
    .sumi-pack-calc select,.sumi-pack-calc input,.sumi-pack-calc button,.sumi-detail-faq summary,
    .sumi-detail-categories a,.sumi-detail-contact__form :is(input,textarea,select)):focus-visible {
  outline: 3px solid var(--sumi-v11-accent-strong) !important;
  outline-offset: 3px;
}
.sumi-root .sumi-brand {border-left-color:#244b6b;}
.sumi-root .sumi-header__cta {border-radius:10px;}
.sumi-root .sumi-mobile-menu__cta {border-radius:10px;}
.sumi-root .sumi-eyebrow {letter-spacing:.125em!important;}
/* Preserve the original hero wording and its distinctive vertical signature. */
.sumi-root .sumi-hero__aside {border-left-color:#698ca2;}
.sumi-root .sumi-hero__aside-rule {background:#244b6b;}
.sumi-root .sumi-hero__facts {border-top-color:#d4e2e9;}
.sumi-root .sumi-hero__actions {gap:13px;}
.sumi-root .sumi-hero__actions .sumi-btn {min-height:49px;}
/* Hierarchy, not decoration: sections are not treated as interchangeable cards. */
.sumi-root .sumi-v09-home-price {padding-top:78px;padding-bottom:76px;background:#f1f7fa;}
.sumi-root .sumi-v10-home-services {padding-top:82px;padding-bottom:84px;}
.sumi-root .sumi-v08-home-operations {padding-top:78px;padding-bottom:81px;background:#f8faf9;}
.sumi-root .sumi-v07-home-flow {padding-top:78px;padding-bottom:82px;}
.sumi-root .sumi-office {padding-top:83px;padding-bottom:84px;}
.sumi-root .sumi-column {padding-top:76px;padding-bottom:82px;}
.sumi-root .sumi-v09-home-price__head {gap:clamp(24px,4vw,55px);}
.sumi-root .sumi-v09-home-price__key {border-left-color:#a3c4c3;}
/* Plan selector: selected state gets a precise teal accent, with no new icons. */
.sumi-root .sumi-v10-selector__choices {
  border-color:#c6d9e1; border-radius:12px 12px 0 0;
  background:#fff;
}
.sumi-root .sumi-v10-selector__choice {
  border-top-width:3px;
  transition: background-color .18s ease,border-color .18s ease;
}
.sumi-root .sumi-v10-selector__choice.is-selected {
  background:var(--sumi-v11-accent-pale);
  border-top-color:var(--sumi-v11-accent);
}
.sumi-root .sumi-v10-selector__choice:hover:not(.is-selected) {background:#f8faf9;}
.sumi-root .sumi-v10-selector__choice.is-selected .sumi-v10-selector__radio {
  background:var(--sumi-v11-accent-strong);
  box-shadow:0 0 0 1px var(--sumi-v11-accent-strong);
}
.sumi-root .sumi-v10-selector__choice .sumi-v10-selector__num {color:#4b7880;}
.sumi-root .sumi-v10-selector__result {
  border-color:#c6d9e1;
  border-radius:0 0 12px 12px;
  background:linear-gradient(112deg,#fff 8%,#fbfdfc 100%);
  padding-top:30px;padding-bottom:29px;
}
.sumi-root .sumi-v10-selector__result-price {border-left-color:#d0e3df;}
.sumi-root .sumi-v10-selector__discount {color:var(--sumi-v11-accent-strong)!important;}
.sumi-root .sumi-v10-selector__estimate {
  color:#205476!important;border-bottom-color:#82aca8;
}
.sumi-root .sumi-v10-selector__estimate:hover {color:var(--sumi-v11-accent-strong)!important;}
.sumi-root .sumi-v10-selector__note {margin-top:14px;}
.sumi-root .sumi-v10-selector__head h3 {font-weight:700;}
.sumi-root .sumi-v09-home-price__actions .sumi-text-link {color:#245471;}
/* Functional flow: minimal flat diagram; teal marks who sends in the records. */
.sumi-root .sumi-v10-tax-flow {border-top-color:#c3d8df;border-bottom-color:#d7e5e8;}
.sumi-root .sumi-v10-tax-flow__start {background:#f8fafb;border-left-color:#a8bfc9;}
.sumi-root .sumi-v10-tax-flow__branch {background:#f8fafb;border-left-color:#b6c9d0;}
.sumi-root .sumi-v10-tax-flow__branch--office {
  background:#edf5f3;border-left-color:var(--sumi-v11-accent);
}
.sumi-root .sumi-v10-tax-flow__branch--office>span {color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-v10-tax-flow__check {border-top-color:var(--sumi-v11-accent);}
.sumi-root .sumi-v10-tax-flow__branches::before,
.sumi-root .sumi-v10-tax-flow__branches::after {border-color:#9fbdba;}
.sumi-root .sumi-v10-service-map__heading {margin-bottom:32px;}
.sumi-root .sumi-v10-service-map__footer {border-top:0;}
/* Home: relationship overview has a different rhythm from the price interface. */
.sumi-root .sumi-v10-home-services__heading>div {border-left-width:2px;}
.sumi-root .sumi-v08-home-operations__duties {border-top-color:var(--sumi-v11-accent);}
.sumi-root .sumi-v08-home-operations__duties>div>span {color:var(--sumi-v11-accent-strong);}
/* Shared subpage layout with deliberate page-specific entry points. */
.sumi-root .sumi-detail-section {padding-top:80px;padding-bottom:86px;}
.sumi-root .sumi-detail-hero__grid {padding-top:55px;padding-bottom:68px;}
.sumi-root .sumi-detail-hero__signature {border-left-color:#8dacba;}
.sumi-root .sumi-detail-section__heading {margin-bottom:31px;}
.sumi-root .sumi-detail-section__heading .sumi-eyebrow {margin-bottom:10px!important;}
/* SERVICES: make the work distinction the page's visual signature. */
.sumi-root .sumi-detail--services #service-core {padding-top:76px;padding-bottom:75px;background:#fff;}
.sumi-root .sumi-detail--services #service-detail {background:#f7fafb;}
.sumi-root .sumi-detail--services .sumi-v07-service-detail__rows {border-top-color:var(--sumi-v11-accent);}
.sumi-root .sumi-detail--services .sumi-v07-service-detail summary {transition:background-color .18s ease;}
.sumi-root .sumi-detail--services .sumi-v07-service-detail summary:hover {background:rgba(94,143,140,.045);}
.sumi-root .sumi-detail--services .sumi-v07-tag--option {color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-detail--services #service-responsibility {background:#f1f6f6;}
.sumi-root .sumi-v08-service-next__summary {border-top-color:var(--sumi-v11-accent);}
.sumi-root .sumi-v08-service-next__summary p span {color:var(--sumi-v11-accent-strong);}
/* PRICE: comparison and calculator are the hero components, not ornamental cards. */
.sumi-root .sumi-detail--price .sumi-detail-hero__signature {border-left-color:#79a19e;}
.sumi-root .sumi-detail--price #pack-plans {padding-top:71px;padding-bottom:83px;}
.sumi-root .sumi-detail--price #pack-fee-table {background:#eff6f6;}
.sumi-root .sumi-pack-table-scroll {border-radius:8px;border-color:#c5dbe0;}
.sumi-root .sumi-pack-table tbody tr:hover {background:rgba(94,143,140,.055);}
.sumi-root .sumi-pack-table thead th {background:#f4f8f9;}
.sumi-root .sumi-v09-discount-example {border-top-color:#9dbcb8;}
.sumi-root .sumi-v09-discount-example__rows b {color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-v09-options__grid {border-top-color:#99b4b3;}
.sumi-root .sumi-detail--price #pack-estimator {background:#f0f6f7;}
.sumi-root .sumi-pack-calc__fields {border-radius:12px;border-color:#c7dbe0;}
.sumi-root .sumi-pack-calc__result {border-radius:12px;border-color:#c4d8de;background:#e9f2f5;}
.sumi-root .sumi-pack-calc__discount {border-left-color:var(--sumi-v11-accent);color:var(--sumi-v11-accent-strong);border-radius:0 8px 8px 0;}
.sumi-root .sumi-pack-calc select,
.sumi-root .sumi-pack-calc input[type=number] {border-radius:8px;background:#fff;min-height:48px;}
.sumi-root .sumi-pack-calc input[type=checkbox] {accent-color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-pack-calc__copy {color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-v10-mobile-rates__tiers button {border-radius:8px;}
.sumi-root .sumi-v10-mobile-rates__tiers button.is-selected {
  border-color:var(--sumi-v11-accent);
  background:var(--sumi-v11-accent-pale);
}
.sumi-root .sumi-v10-mobile-rates__tiers button.is-selected::after {
  background:var(--sumi-v11-accent-strong);
  border-color:var(--sumi-v11-accent-pale);
  box-shadow:0 0 0 1px var(--sumi-v11-accent-strong);
}
.sumi-root .sumi-v10-mobile-rates__rows {border-top-color:var(--sumi-v11-accent);}
/* GUIDE: a four-stage timeline after signing, distinguished from the inquiry steps. */
.sumi-root .sumi-detail--guide #guide-steps {background:#fff;padding-bottom:68px;}
.sumi-root .sumi-detail--guide #guide-operations {background:#f1f7f6;padding-top:84px;padding-bottom:90px;}
.sumi-root .sumi-v08-operations__board {border-color:#b8d3d2;border-radius:0;}
.sumi-root .sumi-v08-operations__legend {border-bottom-color:#88b4ae;}
.sumi-root .sumi-v08-operations__legend>span:nth-child(3) {background:#e3f0ed;}
.sumi-root .sumi-v08-operations__office {background:#eff7f5;border-left-color:#c7dedb;}
.sumi-root .sumi-v08-operations__time::before {border-color:#92b7b2;}
.sumi-root .sumi-v08-operations__time::after {
  background:var(--sumi-v11-accent-strong);box-shadow:0 0 0 1px #77a49f;
}
.sumi-root .sumi-v08-operations__office>p {color:#285b58;}
.sumi-root .sumi-v08-bookkeeping__grid {border-top-color:#9dbbb6;}
.sumi-root .sumi-v08-bookkeeping__grid span {color:var(--sumi-v11-accent-strong);}
/* ABOUT: prioritize genuine credentials and career history, not portraits or badges. */
.sumi-root .sumi-detail--about #about-philosophy {padding-top:91px;padding-bottom:90px;}
.sumi-root .sumi-detail--about #about-principles {background:#f5f9f9;}
.sumi-root .sumi-detail--about #about-professional {padding-top:96px;padding-bottom:99px;}
.sumi-root .sumi-detail-about__profile {border-top:2px solid #8ab1ac;padding-top:34px;}
.sumi-root .sumi-detail-about__profile-main h3 {font-size:clamp(28px,3vw,41px);}
.sumi-root .sumi-v08-about__career {margin-top:34px;border-top-color:#c0d7d5;}
.sumi-root .sumi-v08-about__career li {border-top-color:#dae8e6;}
.sumi-root .sumi-detail-about__credentials div {border-top-color:#d6e3e1;}
.sumi-root .sumi-detail-about__credentials dt {color:#446e6b;}
.sumi-root .sumi-detail-about__photo img {border-radius:8px;}
/* JOURNAL: magazine-like list with category navigation; no thumbnail cards. */
.sumi-root .sumi-detail--column #column-articles {padding-top:75px;padding-bottom:95px;}
.sumi-root .sumi-detail-categories {gap:9px 10px;border-color:#d1e2e4;padding:15px 0;}
.sumi-root .sumi-detail-categories a {
  padding:7px 12px;border:1px solid #d5e5e3;border-radius:999px;
  background:#fff;font-size:12px;line-height:1.45;
}
.sumi-root .sumi-detail-categories a:hover {background:#eff6f4;text-decoration:none;border-color:#96bdb7;color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-detail-journal-list {border-top-color:#8fb5b0;}
.sumi-root .sumi-detail-journal-row {padding-top:29px;padding-bottom:30px;transition:background-color .18s ease;}
.sumi-root .sumi-detail-journal-row:hover {background:#f7faf9;}
.sumi-root .sumi-detail-journal-row:hover .sumi-detail-journal-row__title {color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-detail-journal-row__meta {color:#517874;}
.sumi-root .sumi-detail-journal-row__arrow {color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-detail-pagination .page-numbers {border-radius:8px;}
.sumi-root .sumi-detail-pagination .current {background:#244b6b;border-color:#244b6b;}
/* CONTACT: minimize pre-form friction, keep a strong and reassuring focus area. */
.sumi-root .sumi-detail--contact #contact-form {padding-top:70px;padding-bottom:86px;}
.sumi-root .sumi-detail--contact .sumi-detail-contact__grid {gap:clamp(25px,7vw,105px);}
.sumi-root .sumi-detail-contact__form {background:#f8fbfc;border-radius:12px;border-color:#cbdfe2;}
.sumi-root .sumi-detail-contact__form-head {border-bottom-color:#cfdfdf;}
.sumi-root .sumi-detail-contact__form .sumi-tools-field :is(input:not([type=checkbox]),select,textarea) {
  border-radius:8px;min-height:48px;background:#fff;
}
.sumi-root .sumi-detail-contact__form .sumi-tools-button {border-radius:10px;}
.sumi-root .sumi-detail-contact__policy {border-top-color:#a9c8c3;}
.sumi-root .sumi-detail-contact__policy>span {color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-detail--contact #contact-process {background:#f6f9f9;}
/* FAQ and fine controls: quietly signal affordance. */
.sumi-root .sumi-detail-faq details {border-bottom-color:#d4e2e4;}
.sumi-root .sumi-detail-faq details[open] {border-bottom-color:#b2d1cd;}
.sumi-root .sumi-detail-faq summary:hover {color:var(--sumi-v11-accent-strong);}
.sumi-root .sumi-detail-faq summary span {color:var(--sumi-v11-accent-strong);}
/* Responsive is designed independently; don't scale desktop three-column diagrams. */
@media(max-width:1080px) {
  .sumi-root .sumi-v10-selector__result {gap:19px;}
  .sumi-root .sumi-detail-contact__grid {gap:5%;}
}
@media(max-width:767px) {
  .sumi-root .sumi-v09-home-price,
  .sumi-root .sumi-v10-home-services,
  .sumi-root .sumi-v08-home-operations,
  .sumi-root .sumi-detail-section {padding-top:53px;padding-bottom:59px;}
  .sumi-root .sumi-detail-hero__grid {padding-top:30px;padding-bottom:43px;}
  .sumi-root .sumi-detail-section__heading {margin-bottom:22px;}
  .sumi-root .sumi-v10-selector__choices {border-radius:11px 11px 0 0;}
  .sumi-root .sumi-v10-selector__choice.is-selected {border-top-color:transparent;border-left-color:var(--sumi-v11-accent);}
  .sumi-root .sumi-v10-selector__result {border-radius:0 0 11px 11px;gap:15px;}
  .sumi-root .sumi-v10-selector__result-price {border-left:0;border-top:1px solid #d7e5e5;}
  .sumi-root .sumi-v10-selector__result-price strong {font-size:32px;}
  .sumi-root .sumi-v10-selector__result-more {border-top-color:#d7e5e5;}
  .sumi-root .sumi-v10-tax-flow__branch--office {border-left-color:var(--sumi-v11-accent);}
  .sumi-root .sumi-v08-operations__board {border-top-color:var(--sumi-v11-accent);}
  .sumi-root .sumi-v08-operations__time small {color:var(--sumi-v11-accent-strong);}
  .sumi-root .sumi-v08-operations__office {border-left:2px solid #b3d0ca;background:#edf5f3;}
  .sumi-root .sumi-detail--contact #contact-form {padding-top:28px;padding-bottom:63px;}
  .sumi-root .sumi-detail-contact__form {padding:20px 16px;border-radius:11px;}
  .sumi-root .sumi-detail--about #about-professional {padding-top:60px;padding-bottom:64px;}
  .sumi-root .sumi-detail--column #column-articles {padding-top:48px;padding-bottom:65px;}
  .sumi-root .sumi-detail-journal-row {padding-top:20px;padding-bottom:22px;}
  .sumi-root .sumi-pack-calc__fields {border-radius:10px;}
  .sumi-root .sumi-pack-calc__result {border-radius:10px;}
}
@media(max-width:480px) {
  .sumi-root .sumi-v10-selector__choice {padding:13px 11px;}
  .sumi-root .sumi-v10-selector__result {padding:20px 17px;}
  .sumi-root .sumi-v10-selector__choice-fee {font-size:14px;}
  .sumi-root .sumi-detail-contact__form {padding:18px 13px;}
  .sumi-root .sumi-detail-categories a {padding:7px 10px;}
}
@media(prefers-reduced-motion:reduce) {
  .sumi-root :is(.sumi-btn,.sumi-header__cta,.sumi-v10-selector__choice,.sumi-detail-journal-row) {transition:none;}
}
