/*
Theme Name: Accompany Partners
Theme URI: https://accompany-partners.jp/
Author: Accompany Partners
Author URI: https://accompany-partners.jp/
Description: アカンパニー・パートナーズ専用の軽量WordPressテーマ。業務改善・DX伴走支援の集客導線に特化。
Version: 1.0.16
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: accompany-partners
*/

:root {
  --acp-ink: #24363b;
  --acp-muted: #58686c;
  --acp-navy: #163a42;
  --acp-navy-2: #0f766e;
  --acp-accent: #0d9488;
  --acp-accent-dark: #0f766e;
  --acp-soft: #f0fdfa;
  --acp-soft-blue: #ecfeff;
  --acp-line: #d5ece8;
  --acp-white: #fff;
  --acp-warn: #fff6e8;
  --acp-radius: 16px;
  --acp-shadow: 0 12px 34px rgba(23,50,74,.08);
  --acp-warm: #f59e0b;
  --acp-warm-soft: #fef3c7;
  --acp-page: #fbfffe;
  --acp-max: 1120px;
  --acp-font-body: -apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
  --acp-font-heading: var(--acp-font-body);
  --acp-font-label: var(--acp-font-body);
}


*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--acp-ink);background:var(--acp-page);font-family:var(--acp-font-body);line-height:1.8;font-size:16px}a{color:var(--acp-navy-2);text-decoration-thickness:.08em;text-underline-offset:.18em}a:hover{color:var(--acp-accent-dark)}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{clip:auto!important;width:auto;height:auto;margin:8px;padding:10px 14px;background:#fff;color:#000;z-index:9999;position:fixed!important;left:8px;top:8px}


/* ============================================================
   Font style presets | Accompany Partners v1.0.8
   Selected from Appearance > Customize > サイト全体｜フォントスタイル
   ============================================================ */
.acp-font-modern-friendly{
  --acp-font-body:"Noto Sans JP","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
  --acp-font-heading:"Zen Kaku Gothic New","Noto Sans JP","Hiragino Sans",sans-serif;
  --acp-font-label:"Montserrat","Noto Sans JP",sans-serif;
}
.acp-font-intellectual{
  --acp-font-body:"Noto Sans JP","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
  --acp-font-heading:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
  --acp-font-label:"Montserrat","Noto Sans JP",sans-serif;
}
.acp-font-simple-business{
  --acp-font-body:"Noto Sans JP","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
  --acp-font-heading:"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;
  --acp-font-label:"Inter","Noto Sans JP",sans-serif;
}
.acp-font-system{
  --acp-font-body:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
  --acp-font-heading:var(--acp-font-body);
  --acp-font-label:var(--acp-font-body);
}

body{font-family:var(--acp-font-body)}
h1,h2,h3,h4,h5,h6,
.acp-hero h1,
.acp-section-title,
.acp-page-hero h1,
.acp-profile__statement,
.entry-content>h2,
.entry-content>h3,
.entry-card h2{
  font-family:var(--acp-font-heading);
}
.acp-eyebrow,
.primary-menu,
.menu-toggle,
.acp-button,
.acp-badge,
.acp-card__meta,
.acp-case-card__type,
.acp-step:before,
.acp-post-card__date,
.site-footer__bottom{
  font-family:var(--acp-font-label);
}

/* Serif preset needs slightly calmer tracking and weight than the gothic presets. */
.acp-font-intellectual h1,
.acp-font-intellectual h2,
.acp-font-intellectual h3,
.acp-font-intellectual .acp-section-title,
.acp-font-intellectual .acp-page-hero h1{
  letter-spacing:.005em;
  font-weight:700;
}
.acp-font-intellectual .acp-hero h1{line-height:1.42}

.acp-container{width:min(var(--acp-max),calc(100% - 40px));margin-inline:auto}.acp-narrow{width:min(820px,calc(100% - 40px));margin-inline:auto}.acp-section{padding:80px 0}.acp-section--soft{background:var(--acp-soft)}.acp-section--blue{background:var(--acp-soft-blue)}.acp-eyebrow{font-size:.83rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:var(--acp-warm);margin:0 0 8px}.acp-section-title{font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.4;margin:0 0 18px;color:var(--acp-navy)}.acp-lead{font-size:1.08rem;color:var(--acp-muted);max-width:760px}.acp-center{text-align:center}.acp-stack>*+*{margin-top:20px}

.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid var(--acp-line);backdrop-filter:blur(12px)}.site-header__inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-branding{display:flex;align-items:center;min-width:0}.custom-logo{max-height:46px;width:auto}.site-title{font-weight:800;font-size:1.08rem;text-decoration:none;color:var(--acp-navy);letter-spacing:.02em}.primary-menu{display:flex;list-style:none;gap:24px;margin:0;padding:0;align-items:center}.primary-menu a{text-decoration:none;color:var(--acp-ink);font-weight:600;font-size:.94rem}.primary-menu a:hover{color:var(--acp-accent-dark)}.menu-toggle{display:none;background:#fff;border:1px solid var(--acp-line);border-radius:10px;padding:8px 12px;color:var(--acp-navy);font-weight:700}

.acp-hero{padding:92px 0 76px;background:linear-gradient(135deg,#fbf7ef 0%,#fff 58%,#eef3ef 100%)}.acp-hero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:56px;align-items:center}.acp-hero h1{font-size:clamp(2.15rem,5vw,4rem);line-height:1.28;letter-spacing:-.02em;margin:10px 0 24px;color:var(--acp-navy)}.acp-hero__copy{font-size:1.08rem;color:var(--acp-muted);max-width:690px}.acp-hero__copy strong{color:var(--acp-ink)}.acp-hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.acp-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 22px;border-radius:999px;text-decoration:none;font-weight:750;border:1px solid transparent;transition:.18s ease}.acp-button--primary{background:var(--acp-accent);color:#fff}.acp-button--primary:hover{background:var(--acp-accent-dark);color:#fff}.acp-button--secondary{background:#fff;border-color:#cfc6b8;color:var(--acp-navy)}.acp-button--secondary:hover{border-color:var(--acp-navy);color:var(--acp-navy)}.acp-hero__panel{background:#fff;border:1px solid var(--acp-line);border-radius:24px;padding:26px;box-shadow:var(--acp-shadow)}.acp-hero__panel-title{font-weight:800;color:var(--acp-navy);margin:0 0 12px}.acp-topic-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.acp-topic-links a{display:block;padding:12px 14px;border-radius:12px;background:var(--acp-soft);text-decoration:none;font-weight:700;font-size:.92rem}

.acp-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.acp-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.acp-card{background:#fff;border:1px solid var(--acp-line);border-radius:var(--acp-radius);padding:24px;height:100%}.acp-card h3{margin:0 0 10px;color:var(--acp-navy);font-size:1.12rem}.acp-card p{margin:0;color:var(--acp-muted)}.acp-card__icon{width:42px;height:42px;border-radius:12px;background:var(--acp-soft);display:grid;place-items:center;margin-bottom:16px;color:var(--acp-accent);font-weight:900}.acp-card--shadow{box-shadow:var(--acp-shadow);border-color:transparent}.acp-card__meta{font-size:.82rem;color:var(--acp-muted);margin-bottom:8px}.acp-card__link{display:inline-block;margin-top:14px;font-weight:700}

.acp-principles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:34px}.acp-principle{padding:20px 18px;border-top:4px solid var(--acp-accent);background:#fff;border-radius:0 0 12px 12px}.acp-principle h3{margin:0 0 8px;color:var(--acp-navy);font-size:1.05rem}.acp-principle p{margin:0;color:var(--acp-muted);font-size:.94rem}

.acp-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.acp-case-card{background:#fff;border:1px solid var(--acp-line);border-radius:var(--acp-radius);padding:24px}.acp-case-card__type{display:inline-block;font-size:.76rem;font-weight:700;color:var(--acp-accent-dark);background:var(--acp-soft);padding:4px 9px;border-radius:999px;margin-bottom:12px}.acp-case-card h3{margin:0 0 10px;font-size:1.14rem;color:var(--acp-navy)}.acp-case-card p{color:var(--acp-muted)}

.acp-service-box{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:start}.acp-list{padding-left:1.25em}.acp-list li+li{margin-top:8px}.acp-tool-note{margin-top:22px;background:var(--acp-soft-blue);border-left:4px solid var(--acp-navy-2);padding:16px 18px;border-radius:10px;color:var(--acp-muted)}

.acp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;counter-reset:step}.acp-step{counter-increment:step;background:#fff;border:1px solid var(--acp-line);border-radius:var(--acp-radius);padding:22px}.acp-step:before{content:counter(step);display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--acp-navy);color:#fff;font-weight:800;margin-bottom:14px}.acp-step h3{margin:0 0 8px;font-size:1.03rem;color:var(--acp-navy)}.acp-step p{margin:0;color:var(--acp-muted);font-size:.94rem}

.acp-profile{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:38px;align-items:center}.acp-profile__image{min-width:0}.acp-profile__image img{display:block;border-radius:22px;box-shadow:var(--acp-shadow);width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 20%}.acp-profile__placeholder{min-height:340px;aspect-ratio:4/5;border-radius:22px;background:linear-gradient(150deg,#fbf7ef,#eef3ef 54%,#f3e7d5);display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;gap:18px;padding:30px 26px;color:var(--acp-navy);box-shadow:var(--acp-shadow);border:1px solid rgba(36,117,109,.13)}.acp-profile__eyebrow{font-size:.72rem;letter-spacing:.14em;font-weight:800;color:var(--acp-accent-dark)}.acp-profile__statement{margin:0;font-size:clamp(1.24rem,1.55vw,1.7rem);line-height:1.55;letter-spacing:-.02em;font-weight:800;overflow-wrap:anywhere}.acp-profile__bridge{display:flex;gap:9px;align-items:center;justify-content:space-between;border-top:1px solid rgba(36,117,109,.2);border-bottom:1px solid rgba(36,117,109,.2);padding:18px 0;font-weight:700;font-size:.87rem}.acp-profile__bridge span{white-space:nowrap}.acp-profile__bridge-mark{font-size:1.25rem;color:var(--acp-accent-dark)}.acp-profile__caption{font-size:.78rem;color:var(--acp-muted);font-weight:700}.acp-badges{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.acp-badge{font-size:.84rem;font-weight:700;background:var(--acp-soft);color:var(--acp-accent-dark);padding:5px 10px;border-radius:999px}

.acp-consultation{background:var(--acp-navy);color:#fff;border-radius:24px;padding:38px}.acp-consultation h2,.acp-consultation h3{color:#fff}.acp-consultation p{color:#f0ece5}.acp-consultation__facts{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.acp-consultation__fact{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:10px 14px;font-weight:700}.acp-consultation .acp-button--primary{background:#fff;color:var(--acp-navy)}.acp-consultation .acp-button--primary:hover{background:#f7f3eb}

.acp-faq details{border-top:1px solid var(--acp-line);padding:18px 0}.acp-faq details:last-child{border-bottom:1px solid var(--acp-line)}.acp-faq summary{cursor:pointer;font-weight:750;color:var(--acp-navy)}.acp-faq details p{margin:12px 0 0;color:var(--acp-muted)}

.acp-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.acp-post-card{border:1px solid var(--acp-line);border-radius:var(--acp-radius);overflow:hidden;background:#fff}.acp-post-card__thumb{display:block;aspect-ratio:16/9;background:var(--acp-soft);overflow:hidden}.acp-post-card__thumb img{width:100%;height:100%;object-fit:cover}.acp-post-card__body{padding:20px}.acp-post-card__body h3{font-size:1.06rem;line-height:1.55;margin:5px 0 10px}.acp-post-card__body h3 a{text-decoration:none;color:var(--acp-navy)}.acp-post-card__date{font-size:.82rem;color:var(--acp-muted)}


/* Hero background image (optional, set in Customizer) */
.acp-hero{position:relative;overflow:hidden;isolation:isolate}
.acp-hero__media{position:absolute;inset:0;z-index:-3;background-repeat:no-repeat;background-size:cover;background-position:var(--acp-hero-position,right center);opacity:var(--acp-hero-opacity,.72)}
.acp-hero__veil{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(247,243,235,.99) 0%,rgba(247,243,235,.96) 34%,rgba(247,243,235,.82) 52%,rgba(247,243,235,.42) 70%,rgba(247,243,235,.12) 100%);pointer-events:none}
.acp-hero--has-image .acp-hero__grid{position:relative;z-index:1}
.acp-hero--has-image .acp-hero__panel{background:rgba(255,255,255,.93);backdrop-filter:blur(5px)}

.acp-page-hero{padding:72px 0 48px;background:linear-gradient(135deg,var(--acp-soft),#fff)}.acp-page-hero h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.35;color:var(--acp-navy);margin:8px 0 16px}.acp-page-lead{font-size:1.08rem;color:var(--acp-muted);max-width:760px}.acp-content{padding:64px 0}.acp-content h2{color:var(--acp-navy);margin-top:2.2em}.acp-content h3{color:var(--acp-navy);margin-top:1.7em}.acp-content blockquote{margin:24px 0;padding:16px 20px;border-left:4px solid var(--acp-accent);background:var(--acp-soft)}

.acp-info-box{background:var(--acp-soft);border:1px solid var(--acp-line);border-radius:var(--acp-radius);padding:24px}.acp-info-table{display:grid;grid-template-columns:180px 1fr;border-top:1px solid var(--acp-line)}.acp-info-table dt,.acp-info-table dd{margin:0;padding:14px 0;border-bottom:1px solid var(--acp-line)}.acp-info-table dt{font-weight:800;color:var(--acp-navy)}.acp-info-table dd{color:var(--acp-muted)}

.acp-form{display:grid;gap:18px}.acp-form-row{display:grid;gap:7px}.acp-form-row label{font-weight:750;color:var(--acp-navy)}.acp-required{font-size:.74rem;color:#9b2c2c;margin-left:6px}.acp-form input[type="text"],.acp-form input[type="email"],.acp-form input[type="tel"],.acp-form input[type="datetime-local"],.acp-form select,.acp-form textarea{width:100%;border:1px solid #cfc6b8;border-radius:10px;padding:12px 13px;background:#fff;color:var(--acp-ink)}.acp-form textarea{min-height:150px;resize:vertical}.acp-form input:focus,.acp-form select:focus,.acp-form textarea:focus{outline:3px solid rgba(36,117,109,.18);border-color:var(--acp-accent)}.acp-form-help{font-size:.86rem;color:var(--acp-muted)}.acp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.acp-form-notice{padding:14px 16px;border-radius:10px;background:var(--acp-soft-blue);color:var(--acp-muted)}.acp-alert{padding:14px 16px;border-radius:10px;margin-bottom:20px}.acp-alert--success{background:#eaf7ef;color:#1d5a38}.acp-alert--error{background:#fff0f0;color:#8a2a2a}.acp-hp{position:absolute!important;left:-9999px!important;opacity:0!important;width:1px!important;height:1px!important}

.site-main--archive{padding:64px 0}.entry-card{padding:24px 0;border-bottom:1px solid var(--acp-line)}.entry-card h2{margin:0 0 10px}.entry-card h2 a{text-decoration:none;color:var(--acp-navy)}.entry-meta{color:var(--acp-muted);font-size:.9rem}.entry-content{max-width:820px}.entry-content>*:first-child{margin-top:0}.entry-content img{border-radius:12px}.pagination{margin-top:34px}.nav-links{display:flex;gap:8px;flex-wrap:wrap}.page-numbers{padding:8px 12px;border:1px solid var(--acp-line);border-radius:8px;text-decoration:none}.page-numbers.current{background:var(--acp-navy);color:#fff;border-color:var(--acp-navy)}

.site-footer{background:#17324a;color:#eee9e0;margin-top:60px}.site-footer__inner{padding:48px 0 28px;display:grid;grid-template-columns:1.2fr .8fr;gap:34px}.site-footer a{color:#fff}.site-footer__title{color:#fff;margin:0 0 10px}.footer-menu{list-style:none;margin:0;padding:0;display:grid;gap:8px}.site-footer__bottom{border-top:1px solid rgba(255,255,255,.14);padding:18px 0;color:#cbc3b7;font-size:.88rem}

@media (max-width:900px){.acp-hero__grid,.acp-service-box,.acp-profile{grid-template-columns:1fr}.acp-grid-4,.acp-principles{grid-template-columns:1fr 1fr}.acp-grid-3,.acp-case-grid,.acp-post-grid,.acp-steps{grid-template-columns:1fr 1fr}.menu-toggle{display:inline-flex}.main-navigation{display:none;position:absolute;top:74px;left:0;right:0;background:#fff;border-bottom:1px solid var(--acp-line);padding:14px 20px}.main-navigation.is-open{display:block}.primary-menu{display:grid;gap:4px}.primary-menu a{display:block;padding:10px}.site-footer__inner{grid-template-columns:1fr}.acp-hero{padding-top:64px}}
@media (max-width:620px){.acp-container,.acp-narrow{width:min(100% - 28px,var(--acp-max))}.acp-section{padding:58px 0}.acp-grid-4,.acp-grid-3,.acp-principles,.acp-case-grid,.acp-post-grid,.acp-steps,.acp-form-grid{grid-template-columns:1fr}.acp-hero{padding:48px 0}.acp-hero__grid{gap:28px}.acp-hero h1{font-size:2.05rem}.acp-topic-links{grid-template-columns:1fr}.acp-consultation{padding:26px 20px;border-radius:18px}.acp-info-table{grid-template-columns:1fr}.acp-info-table dt{border-bottom:0;padding-bottom:2px}.acp-info-table dd{padding-top:4px}.site-header__inner{min-height:66px}.main-navigation{top:66px}}

@media (max-width:620px){.acp-profile__placeholder{aspect-ratio:auto;min-height:290px;padding:28px 24px}.acp-profile__statement{font-size:1.45rem}}


/* ============================================================
   Typography & content hierarchy | Accompany Partners v1.0.2
   A restrained, readable hierarchy across home, consultations,
   cases, and columns. The original layout is intentionally kept.
   ============================================================ */
:root {
  --acp-heading-strong: #17324a;
  --acp-highlight: #e8f1ed;
}

/* Major section headings: stronger hierarchy, more air and accent. */
.acp-section-title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  font-weight: 850;
  line-height: 1.4;
  letter-spacing: -.025em;
  color: var(--acp-heading-strong);
  margin-bottom: 27px;
  text-wrap: pretty;
}
.acp-section-title::after {
  content: "";
  display: block;
  width: 62px;
  height: 4px;
  background: var(--acp-warm);
  border-radius: 999px;
  margin-top: 17px;
}
.acp-center .acp-section-title::after { margin-inline: auto; }
.acp-consultation .acp-section-title::after { background: var(--acp-warm); }
.acp-eyebrow {
  font-size: .84rem;
  font-weight: 800;
  letter-spacing: .16em;
  margin-bottom: 12px;
}
.acp-lead { font-size: 1.1rem; line-height: 1.9; }

/* Top-page pain cards: the heading should be read before the text. */
.acp-card {
  padding: 26px 23px;
  border-color: #ded8ce;
}
.acp-card h3,
.acp-content .acp-card h3 {
  margin: 0 0 17px;
  color: var(--acp-heading-strong);
  font-size: clamp(1.3rem, 1.75vw, 1.46rem);
  font-weight: 850;
  line-height: 1.43;
  letter-spacing: -.02em;
  overflow-wrap: anywhere;
}
.acp-card h3::after {
  content: "";
  display: block;
  width: 28px;
  height: 3px;
  background: var(--acp-accent);
  border-radius: 999px;
  margin-top: 11px;
}
.acp-card p { line-height: 1.85; }
.acp-card__icon {
  width: 45px;
  height: 45px;
  font-size: 1rem;
  font-weight: 850;
  margin-bottom: 19px;
}

/* Guiding principles: a distinct second tier after section titles. */
.acp-principle {
  border-top-width: 5px;
  padding: 24px 21px 25px;
  box-shadow: 0 3px 12px rgba(23,50,77,.035);
}
.acp-principle h3,
.acp-content .acp-principle h3 {
  font-size: clamp(1.23rem, 1.6vw, 1.38rem);
  font-weight: 850;
  line-height: 1.48;
  letter-spacing: -.02em;
  color: var(--acp-heading-strong);
  margin: 0 0 13px;
  overflow-wrap: anywhere;
}
.acp-principle p { font-size: .97rem; line-height: 1.88; }

/* Steps, case previews, and column titles follow the same type scale. */
.acp-step { padding: 26px 24px; }
.acp-step:before { width: 43px; height: 43px; font-size: 1.05rem; margin-bottom: 17px; }
.acp-step h3,
.acp-content .acp-step h3 {
  font-size: 1.28rem;
  font-weight: 850;
  line-height: 1.5;
  letter-spacing: -.02em;
  margin: 0 0 10px;
  color: var(--acp-heading-strong);
}
.acp-step p { font-size: .98rem; line-height: 1.85; }
.acp-case-card h3 {
  font-size: 1.34rem;
  font-weight: 850;
  line-height: 1.45;
  margin-bottom: 12px;
}
.acp-case-card p { line-height: 1.85; }
.acp-post-card__body h3 { font-size: 1.24rem; font-weight: 850; line-height: 1.55; }
.acp-post-card__body h3 a:hover { color: var(--acp-accent-dark); }
.acp-hero__panel-title { font-size: 1.16rem; line-height: 1.45; font-weight: 850; }
.acp-topic-links a { font-weight: 800; }
.acp-badge { font-weight: 800; }

/* Bold copy: visually distinct, but not as loud as a heading. */
.acp-hero__copy strong,
.acp-content > .acp-narrow > p strong,
.entry-content strong {
  color: var(--acp-heading-strong);
  font-weight: 850;
  background: linear-gradient(to bottom, transparent 72%, var(--acp-highlight) 72%);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.acp-hero__copy strong { font-size: 1.12em; line-height: 1.75; }
.acp-info-box strong {
  display: block;
  margin-bottom: 8px;
  color: var(--acp-heading-strong);
  font-size: 1.22rem;
  font-weight: 850;
  line-height: 1.55;
}
.acp-consultation__fact { font-size: .99rem; font-weight: 800; }
.acp-faq summary { font-size: 1.09rem; line-height: 1.65; font-weight: 800; }
.acp-faq details { padding-block: 21px; }
.acp-faq details p { line-height: 1.85; }

/* First consultation page and standard editorial content. */
.acp-page-hero h1 {
  font-weight: 850;
  letter-spacing: -.025em;
  color: var(--acp-heading-strong);
}
.acp-page-lead { font-size: 1.12rem; line-height: 1.88; }
.acp-content > .acp-narrow > h2,
.entry-content > h2 {
  font-size: clamp(1.8rem, 2.5vw, 2.18rem);
  font-weight: 850;
  line-height: 1.45;
  letter-spacing: -.025em;
  color: var(--acp-heading-strong);
  margin-top: 2.35em;
  margin-bottom: .7em;
  text-wrap: pretty;
}
.acp-content > .acp-narrow > h2::after,
.entry-content > h2::after {
  content: "";
  display: block;
  margin-top: 15px;
  width: 50px;
  height: 4px;
  border-radius: 999px;
  background: var(--acp-accent);
}
.entry-content > h3 {
  font-size: clamp(1.35rem, 2vw, 1.55rem);
  font-weight: 800;
  line-height: 1.5;
}
.acp-content > .acp-narrow > h2:first-child { margin-top: 0; }
.acp-content > .acp-narrow > .acp-grid-4,
.acp-content > .acp-narrow > .acp-grid-3,
.acp-content > .acp-narrow > .acp-steps,
.acp-content > .acp-narrow > .acp-principles { margin-top: 22px; margin-bottom: 32px; }
.acp-content .acp-grid-4,
.acp-content .acp-grid-3,
.acp-content .acp-steps,
.acp-content .acp-principles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.acp-content .acp-info-box { line-height: 1.85; }
.acp-info-table dt { font-size: 1.05rem; font-weight: 850; }

/* Smaller viewports: preserve relative scale and avoid cramped cards. */
@media (max-width: 900px) {
  .acp-section-title { font-size: clamp(1.96rem, 4vw, 2.32rem); }
  .acp-grid-4 .acp-card h3 { font-size: 1.4rem; }
  .acp-principle h3 { font-size: 1.32rem; }
}
@media (max-width: 620px) {
  .acp-section-title { font-size: clamp(1.74rem, 7vw, 2.06rem); line-height: 1.43; margin-bottom: 22px; }
  .acp-section-title::after { margin-top: 13px; width: 50px; }
  .acp-hero h1 { font-size: clamp(2rem, 8vw, 2.4rem); line-height: 1.34; }
  .acp-lead,.acp-page-lead { font-size: 1.03rem; }
  .acp-card { padding: 24px 22px; }
  .acp-card h3,.acp-content .acp-card h3 { font-size: 1.33rem; margin-bottom: 15px; }
  .acp-principle { padding: 22px 20px; }
  .acp-principle h3,.acp-content .acp-principle h3 { font-size: 1.29rem; }
  .acp-step h3,.acp-content .acp-step h3 { font-size: 1.24rem; }
  .acp-content .acp-grid-4,.acp-content .acp-grid-3,
  .acp-content .acp-steps,.acp-content .acp-principles { grid-template-columns: minmax(0, 1fr); }
  .acp-content > .acp-narrow > h2,.entry-content > h2 { font-size: 1.69rem; line-height: 1.45; }
  .acp-faq summary { font-size: 1.04rem; }
  .acp-info-box strong { font-size: 1.12rem; }
}


/* ============================================================
   About section full-bleed background | Accompany Partners v1.0.4
   The decorative photo is anchored to the entire tinted section,
   NOT to the inner text block. Text stays on a transparent container.
   ============================================================ */
.acp-about {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-color: #f7f3eb;
  padding-block: clamp(76px, 7vw, 112px);
}
.acp-about__watermark {
  position: absolute;
  z-index: 0;
  inset: 0 0 0 auto; /* entire section height, flush with right edge */
  width: min(81%, 1500px);
  pointer-events: none;
  background-size: cover;
  background-position: right center;
  background-repeat: no-repeat;
  opacity: var(--acp-about-opacity, .18);
  -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.45) 27%, #000 59%);
  mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.45) 27%, #000 59%);
}
/* The photo is in the section background; the content container is only layout. */
.acp-about > .acp-container {
  position: relative;
  z-index: 1;
}
.acp-about__panel {
  position: relative;
  display: flex;
  align-items: center;
  gap: 36px;
  min-height: 340px;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  overflow: visible;
}
.acp-about__content {
  position: relative;
  z-index: 1;
  width: min(100%, 730px);
  max-width: 72%;
}
.acp-about__content .acp-section-title {
  max-width: 740px;
  font-size: clamp(1.85rem, 2.5vw, 2.35rem);
  text-wrap: balance;
}
.acp-about__content > p { max-width: 680px; }
.acp-about__content .acp-badge {
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(47,125,109,.15);
}
.acp-about__link { margin-bottom: 0; font-weight: 700; }
.acp-about__panel--portrait { justify-content: space-between; }
.acp-about__panel--portrait .acp-about__content { max-width: 70%; }
.acp-about__portrait-wrap {
  position: relative;
  z-index: 2;
  width: min(25%, 220px);
  flex: 0 0 auto;
}
.acp-about__portrait {
  display: block;
  width: 100%;
  aspect-ratio: 4/5;
  object-fit: cover;
  object-position: center 20%;
  border-radius: 16px;
  box-shadow: var(--acp-shadow);
}
@media (max-width: 900px) {
  .acp-about__content { max-width: 81%; }
  .acp-about__panel--portrait .acp-about__content { max-width: 72%; }
}
@media (max-width: 620px) {
  .acp-about { padding-block: 64px; }
  .acp-about__watermark {
    width: 100%;
    background-position: 73% center;
    opacity: calc(var(--acp-about-opacity, .18) * .28);
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.3) 42%, #000 100%);
    mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.3) 42%, #000 100%);
  }
  .acp-about__panel { min-height: 0; display: block; }
  .acp-about__content,
  .acp-about__panel--portrait .acp-about__content {
    width: 100%;
    max-width: 100%;
  }
  .acp-about__content .acp-section-title {
    font-size: clamp(1.7rem, 6.6vw, 2rem);
  }
  .acp-about__portrait-wrap {
    margin: 24px auto 0;
    width: min(70%, 220px);
  }
}


/* ============================================================
   Warm Teal palette | Accompany Partners v1.0.5
   Professional trust remains navy/teal; ivory and sand soften the
   overall temperature without turning the brand into a warm-color site.
   ============================================================ */
body { background: var(--acp-page); }
.acp-section:not(.acp-section--soft):not(.acp-section--blue):not(.acp-about) { background: #fff; }
.acp-section--soft { background: var(--acp-soft); }
.acp-section--blue { background: var(--acp-soft-blue); }
.acp-eyebrow { color: var(--acp-warm); }
.acp-section-title::after { background: var(--acp-warm); }
.acp-card__icon,
.acp-topic-links a,
.acp-case-card__type,
.acp-badge { background: #edf3ef; }
.acp-card__icon { color: var(--acp-accent); }
.acp-principle { border-top-color: var(--acp-accent); }
.acp-button--primary { box-shadow: 0 6px 18px rgba(36,117,109,.15); }
.acp-button--secondary { border-color: #cfc6b8; }
.acp-tool-note { background: #f7f3eb; border-left-color: var(--acp-warm); }
.acp-step:before { background: var(--acp-navy); }
.acp-about { background-color: #f7f3eb; }
.acp-about__watermark { filter: saturate(.86) sepia(.07) brightness(1.03); }
.acp-about__content .acp-badge { border-color: rgba(36,117,109,.14); }
.acp-consultation { background: var(--acp-navy); }
.acp-consultation .acp-eyebrow { color: #e0c59f !important; }
.site-footer { background: #17324a; }
::selection { background: #e6d4b8; color: #17324a; }


/* Hero image responsive treatment */
@media (max-width:900px){
  .acp-hero--has-image .acp-hero__media{opacity:calc(var(--acp-hero-opacity,.72) * .68);background-position:center}
  .acp-hero--has-image .acp-hero__veil{background:linear-gradient(180deg,rgba(247,243,235,.97) 0%,rgba(247,243,235,.91) 55%,rgba(247,243,235,.78) 100%)}
}
@media (max-width:620px){
  .acp-hero--has-image .acp-hero__media{opacity:calc(var(--acp-hero-opacity,.72) * .48)}
  .acp-hero--has-image .acp-hero__veil{background:rgba(247,243,235,.90)}
}


/* ============================================================
   Site-wide selectable color schemes | Accompany Partners v1.0.7
   Settings: Appearance > Customize > サイト全体｜カラーパターン
   ============================================================ */
body.acp-color-warm-teal {
  /* A | Clear Teal — #0d9488を主役に、白・ミントで明るく */
  --acp-ink:#24363b; --acp-muted:#58686c; --acp-navy:#163a42; --acp-navy-2:#0f766e;
  --acp-accent:#0d9488; --acp-accent-dark:#0f766e; --acp-warm:#f59e0b;
  --acp-soft:#f0fdfa; --acp-soft-blue:#ecfeff; --acp-line:#d5ece8; --acp-page:#fbfffe;
  --acp-heading-strong:#163a42; --acp-highlight:#ccfbf1; --acp-card-bg:#ffffff; --acp-surface:#ffffff;
  --acp-badge-bg:#e9fbf7; --acp-about-bg:#f0fdfa; --acp-cta:#0d9488; --acp-cta-dark:#0f766e;
  --acp-eyebrow:#0d9488; --acp-heading-line:#2dd4bf; --acp-card-mark:#0d9488;
  --acp-secondary-border:#9bded6; --acp-footer:#123b40; --acp-footer-text:#ecfffb;
  --acp-consult:#163a42; --acp-consult-eyebrow:#99f6e4; --acp-selection:#99f6e4; --acp-selection-fg:#163a42;
  --acp-hero-a:#f2fffc; --acp-hero-b:#ffffff; --acp-hero-c:#e8fffb; --acp-hero-veil-rgb:242,255,252;
  --acp-focus-shadow:rgba(13,148,136,.20); --acp-photo-filter:saturate(.98) brightness(1.04);
}
body.acp-color-natural-green {
  /* B | Teal + Navy — #0d9488とネイビーで信頼感を強化 */
  --acp-ink:#263746; --acp-muted:#5d6b75; --acp-navy:#1e3a5f; --acp-navy-2:#0f766e;
  --acp-accent:#0d9488; --acp-accent-dark:#0f766e; --acp-warm:#38bdf8;
  --acp-soft:#f2fbfa; --acp-soft-blue:#eff6ff; --acp-line:#d7e6e8; --acp-page:#fbfdfe;
  --acp-heading-strong:#1e3a5f; --acp-highlight:#dff8f3; --acp-card-bg:#ffffff; --acp-surface:#ffffff;
  --acp-badge-bg:#e8faf6; --acp-about-bg:#f2fbfa; --acp-cta:#0d9488; --acp-cta-dark:#0f766e;
  --acp-eyebrow:#0d9488; --acp-heading-line:#38bdf8; --acp-card-mark:#0d9488;
  --acp-secondary-border:#b9d8dc; --acp-footer:#1e3a5f; --acp-footer-text:#f0f8fb;
  --acp-consult:#1e3a5f; --acp-consult-eyebrow:#a5f3fc; --acp-selection:#a7f3d0; --acp-selection-fg:#1e3a5f;
  --acp-hero-a:#f3fffd; --acp-hero-b:#ffffff; --acp-hero-c:#eef7ff; --acp-hero-veil-rgb:243,255,253;
  --acp-focus-shadow:rgba(13,148,136,.20); --acp-photo-filter:saturate(.98) brightness(1.03);
}
body.acp-color-soft-blue {
  /* C | Teal + Coral — ティールを軸に親しみを少し足す */
  --acp-ink:#30403e; --acp-muted:#646f6c; --acp-navy:#164e4a; --acp-navy-2:#0f766e;
  --acp-accent:#0d9488; --acp-accent-dark:#0f766e; --acp-warm:#f97316;
  --acp-soft:#f0fdfa; --acp-soft-blue:#fff7ed; --acp-line:#e3e9e5; --acp-page:#fffdf9;
  --acp-heading-strong:#164e4a; --acp-highlight:#ccfbf1; --acp-card-bg:#ffffff; --acp-surface:#ffffff;
  --acp-badge-bg:#e8faf6; --acp-about-bg:#fff7ed; --acp-cta:#0d9488; --acp-cta-dark:#0f766e;
  --acp-eyebrow:#f97316; --acp-heading-line:#f97316; --acp-card-mark:#0d9488;
  --acp-secondary-border:#b9ded8; --acp-footer:#164e4a; --acp-footer-text:#f1fffc;
  --acp-consult:#164e4a; --acp-consult-eyebrow:#fed7aa; --acp-selection:#fed7aa; --acp-selection-fg:#164e4a;
  --acp-hero-a:#f5fffc; --acp-hero-b:#ffffff; --acp-hero-c:#fff7ed; --acp-hero-veil-rgb:245,255,252;
  --acp-focus-shadow:rgba(13,148,136,.20); --acp-photo-filter:saturate(1.00) sepia(.02) brightness(1.04);
}
body.acp-color-classic-teal {
  /* D | Bright Teal Minimal — 白を広く使う最もすっきりした配色 */
  --acp-ink:#26353a; --acp-muted:#5f6d71; --acp-navy:#263b42; --acp-navy-2:#0d9488;
  --acp-accent:#0d9488; --acp-accent-dark:#0f766e; --acp-warm:#14b8a6;
  --acp-soft:#f7fcfb; --acp-soft-blue:#f0fdfa; --acp-line:#dce8e6; --acp-page:#ffffff;
  --acp-heading-strong:#263b42; --acp-highlight:#e7f8f5; --acp-card-bg:#ffffff; --acp-surface:#ffffff;
  --acp-badge-bg:#edf9f7; --acp-about-bg:#f7fcfb; --acp-cta:#0d9488; --acp-cta-dark:#0f766e;
  --acp-eyebrow:#0d9488; --acp-heading-line:#0d9488; --acp-card-mark:#0d9488;
  --acp-secondary-border:#c4ddda; --acp-footer:#263b42; --acp-footer-text:#eef8f7;
  --acp-consult:#263b42; --acp-consult-eyebrow:#99f6e4; --acp-selection:#99f6e4; --acp-selection-fg:#263b42;
  --acp-hero-a:#f8fffd; --acp-hero-b:#ffffff; --acp-hero-c:#f0fdfa; --acp-hero-veil-rgb:248,255,253;
  --acp-focus-shadow:rgba(13,148,136,.20); --acp-photo-filter:saturate(1.00) brightness(1.04);
}

/* Apply the selected variables to every major visual component. */
body { background:var(--acp-page); color:var(--acp-ink); }
a { color:var(--acp-navy-2); }
.site-header { background:rgba(255,255,255,.96); border-bottom-color:var(--acp-line); }
.main-navigation { background:var(--acp-card-bg); border-bottom-color:var(--acp-line); }
.acp-section:not(.acp-section--soft):not(.acp-section--blue):not(.acp-about) { background:var(--acp-surface); }
.acp-section--soft { background:var(--acp-soft); }
.acp-section--blue { background:var(--acp-soft-blue); }
.acp-eyebrow { color:var(--acp-eyebrow); }
.acp-section-title::after { background:var(--acp-heading-line); }
.acp-card h3::after { background:var(--acp-card-mark); }
.acp-hero { background:linear-gradient(135deg,var(--acp-hero-a) 0%,var(--acp-hero-b) 58%,var(--acp-hero-c) 100%); }
.acp-hero__veil { background:linear-gradient(90deg,rgba(var(--acp-hero-veil-rgb),.99) 0%,rgba(var(--acp-hero-veil-rgb),.96) 34%,rgba(var(--acp-hero-veil-rgb),.82) 52%,rgba(var(--acp-hero-veil-rgb),.42) 70%,rgba(var(--acp-hero-veil-rgb),.12) 100%); }
.acp-hero__panel,.acp-card,.acp-principle,.acp-case-card,.acp-step,.acp-post-card { background:var(--acp-card-bg); border-color:var(--acp-line); }
.acp-topic-links a,.acp-card__icon,.acp-case-card__type,.acp-badge { background:var(--acp-badge-bg); }
.acp-card__icon { color:var(--acp-accent); }
.acp-principle { border-top-color:var(--acp-accent); }
.acp-button--primary { background:var(--acp-cta); box-shadow:0 6px 18px var(--acp-focus-shadow); }
.acp-button--primary:hover { background:var(--acp-cta-dark); }
.acp-button--secondary { background:var(--acp-card-bg); border-color:var(--acp-secondary-border); color:var(--acp-navy); }
.acp-tool-note { background:var(--acp-soft); border-left-color:var(--acp-warm); }
.acp-step:before,.page-numbers.current { background:var(--acp-navy); border-color:var(--acp-navy); }
.acp-about { background-color:var(--acp-about-bg); }
.acp-about__watermark { filter:var(--acp-photo-filter); }
.acp-about__content .acp-badge { border-color:var(--acp-line); }
.acp-consultation { background:var(--acp-consult); }
.acp-consultation .acp-eyebrow { color:var(--acp-consult-eyebrow) !important; }
.acp-consultation p { color:var(--acp-footer-text); }
.acp-consultation .acp-button--primary { background:var(--acp-card-bg); color:var(--acp-navy); box-shadow:none; }
.acp-consultation .acp-button--primary:hover { background:var(--acp-soft); color:var(--acp-navy); }
.acp-form input[type="text"],.acp-form input[type="email"],.acp-form input[type="tel"],.acp-form input[type="datetime-local"],.acp-form select,.acp-form textarea { background:var(--acp-card-bg); border-color:var(--acp-secondary-border); }
.acp-form input:focus,.acp-form select:focus,.acp-form textarea:focus { outline:3px solid var(--acp-focus-shadow); border-color:var(--acp-accent); }
.acp-form-notice { background:var(--acp-soft-blue); }
.acp-page-hero { background:linear-gradient(135deg,var(--acp-soft),var(--acp-card-bg)); }
.acp-info-box { background:var(--acp-soft); border-color:var(--acp-line); }
.site-footer { background:var(--acp-footer); color:var(--acp-footer-text); }
.site-footer__bottom { color:var(--acp-footer-text); }
::selection { background:var(--acp-selection); color:var(--acp-selection-fg); }

@media (max-width:900px){
  .acp-hero--has-image .acp-hero__veil{background:linear-gradient(180deg,rgba(var(--acp-hero-veil-rgb),.97) 0%,rgba(var(--acp-hero-veil-rgb),.91) 55%,rgba(var(--acp-hero-veil-rgb),.78) 100%)}
}
@media (max-width:620px){
  .acp-hero--has-image .acp-hero__veil{background:rgba(var(--acp-hero-veil-rgb),.90)}
}

/* v1.0.11: remove remaining dull legacy beige/green from components */
.acp-profile__placeholder{
  background:linear-gradient(150deg,var(--acp-card-bg),var(--acp-soft) 54%,var(--acp-soft-blue));
  border-color:var(--acp-line);
}
.acp-profile__bridge{border-color:var(--acp-line);}
.acp-consultation .acp-button--primary:hover{background:var(--acp-soft);}
.acp-button--primary{box-shadow:0 8px 22px var(--acp-focus-shadow);}


/* ============================================================
   Typography & wrapping refinement | Accompany Partners v1.0.9
   Purpose: keep Japanese phrases together, reduce awkward line breaks,
   and give the hero consultation panel more visual presence.
   ============================================================ */

/* Headings should wrap by phrase rather than looking mechanically broken. */
.acp-section-title,
.acp-hero__panel-title,
.acp-card h3,
.acp-principle h3,
.acp-step h3,
.acp-case-card h3,
.acp-post-card h2,
.acp-faq summary {
  text-wrap: balance;
}

/* Hero gets its own wider content canvas so copy and topic panel both breathe. */
.acp-hero > .acp-container {
  width: min(1280px, calc(100% - 48px));
}
.acp-hero__grid {
  grid-template-columns: minmax(0, 1.42fr) minmax(360px, .78fr);
  gap: clamp(42px, 5vw, 76px);
}
.acp-hero-title {
  font-size: clamp(2.55rem, 4.45vw, 3.72rem) !important;
  line-height: 1.27 !important;
  letter-spacing: -.025em;
  max-width: 790px;
  text-wrap: initial;
}
.acp-hero-title__line {
  display: block;
  white-space: nowrap;
}
.acp-hero__copy {
  max-width: 760px;
}
.acp-hero__copy p {
  text-wrap: pretty;
}

/* The panel is a secondary hero element, not a small footnote. */
.acp-hero__panel {
  width: 100%;
  max-width: 430px;
  justify-self: end;
  padding: 31px 32px;
  border-radius: 26px;
}
.acp-hero__panel-title {
  font-size: 1.27rem !important;
  margin-bottom: 17px !important;
}
.acp-topic-links {
  gap: 12px;
}
.acp-topic-links a {
  min-height: 60px;
  display: flex;
  align-items: center;
  padding: 15px 17px;
  font-size: 1rem;
  line-height: 1.45;
}

/* Section headings: keep a readable measure and let modern browsers balance lines. */
.acp-section-title {
  max-width: 920px;
}
.acp-service-title span {
  display: block;
}

/* Align card copy starts even when one title needs two lines. */
.acp-grid-4 .acp-card h3 {
  min-height: 4.35em;
}
.acp-principle h3,
.acp-step h3 {
  min-height: 3.05em;
}

/* Long action labels should not be forced into awkward two-line pills. */
.acp-button {
  line-height: 1.45;
  text-align: center;
}
.acp-consultation .acp-section-title {
  max-width: 880px;
}

/* Intermediate width: switch hero earlier instead of squeezing Japanese text. */
@media (max-width: 1080px) {
  .acp-hero > .acp-container {
    width: min(100% - 40px, 900px);
  }
  .acp-hero__grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .acp-hero-title {
    max-width: 820px;
    font-size: clamp(2.35rem, 6vw, 3.45rem) !important;
  }
  .acp-hero__panel {
    max-width: 680px;
    justify-self: start;
  }
  .acp-topic-links {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .acp-topic-links a {
    justify-content: center;
    text-align: center;
  }
}

@media (max-width: 760px) {
  .acp-topic-links {
    grid-template-columns: 1fr 1fr;
  }
  .acp-service-title span {
    display: inline;
  }
  .acp-service-title span + span::before {
    content: "";
  }
}

@media (max-width: 620px) {
  .acp-hero > .acp-container {
    width: min(100% - 28px, var(--acp-max));
  }
  .acp-hero-title {
    font-size: clamp(2rem, 8vw, 2.4rem) !important;
    line-height: 1.34 !important;
    letter-spacing: -.015em;
  }
  .acp-hero-title__line {
    display: inline;
    white-space: normal;
  }
  .acp-hero__panel {
    padding: 25px 22px;
    border-radius: 20px;
    max-width: none;
  }
  .acp-hero__panel-title {
    font-size: 1.18rem !important;
  }
  .acp-topic-links {
    grid-template-columns: 1fr;
  }
  .acp-topic-links a {
    min-height: 54px;
    justify-content: flex-start;
    text-align: left;
  }
  .acp-grid-4 .acp-card h3,
  .acp-principle h3,
  .acp-step h3 {
    min-height: 0;
  }
}


/* =========================================================
   Consultation & service spacing refinement | v1.0.10
   ========================================================= */

/* Keep the consultation headline on intentional phrase boundaries. */
.acp-consultation-title__line {
  display: block;
  white-space: nowrap;
}

/* Give the service CTA breathing room after the tool note. */
.acp-service-action {
  margin: 24px 0 0 !important;
}

/* Slightly improve the consultation text measure on large screens. */
.acp-consultation .acp-section-title.acp-consultation-title {
  max-width: 980px;
  text-wrap: balance;
}

@media (max-width: 760px) {
  .acp-consultation-title__line {
    display: inline;
    white-space: normal;
  }
  .acp-consultation-title__line + .acp-consultation-title__line::before {
    content: " ";
  }
  .acp-service-action {
    margin-top: 20px !important;
  }
}


/* ============================================================
   Front-page Column section reliability | v1.0.15
   ============================================================ */
.acp-column-section__action { margin-top: 28px; margin-bottom: 0; }
.acp-column-section__empty {
  max-width: 760px;
  margin: 0 0 8px;
  color: var(--acp-muted);
  font-size: 1.02rem;
  line-height: 1.8;
}

/* ============================================================
   Column article reading-size presets | v1.0.16
   Only the prose on a single "column" article is affected.
   FAQ details, shared CTA, headings, tables and site navigation
   keep their own sizing.
   ============================================================ */
body.single-column.acp-column-size-standard { --acp-column-copy-size: 16px; }
body.single-column.acp-column-size-readable { --acp-column-copy-size: 17px; }
body.single-column.acp-column-size-large { --acp-column-copy-size: 18px; }

body.single-column .entry-content {
  max-width: 800px;
}
body.single-column .entry-content > p,
body.single-column .entry-content > ul,
body.single-column .entry-content > ol,
body.single-column .entry-content > .wp-block-list,
body.single-column .entry-content > blockquote,
body.single-column .entry-content > .wp-block-quote {
  font-size: var(--acp-column-copy-size, 18px);
  line-height: 1.9;
}
@media (max-width: 767px) {
  body.single-column.acp-column-size-standard { --acp-column-copy-size: 16px; }
  body.single-column.acp-column-size-readable { --acp-column-copy-size: 16px; }
  body.single-column.acp-column-size-large { --acp-column-copy-size: 17px; }
  body.single-column .entry-content > p,
  body.single-column .entry-content > ul,
  body.single-column .entry-content > ol,
  body.single-column .entry-content > .wp-block-list,
  body.single-column .entry-content > blockquote,
  body.single-column .entry-content > .wp-block-quote {
    line-height: 1.85;
  }
}
