
:root{--n:#123548;--t:#0e716f;--m:#e9f6f3;--o:#f19a3e;--tx:#17303c;--ln:#dbe7e8}
body.saimu-lp-page .siteContent,body.saimu-lp-page .siteContent>.container,body.saimu-lp-page .siteContent .container,body.saimu-lp-page #main,body.saimu-lp-page .mainSection{width:100%!important;max-width:none!important;flex:0 0 100%!important;margin:0!important;padding-left:0!important;padding-right:0!important}
body.saimu-lp-page .sideSection,body.saimu-lp-page #sideSection,body.saimu-lp-page .subSection{display:none!important}
body.saimu-lp-page .siteContent .row{width:100%!important;max-width:none!important;margin:0!important}
body.saimu-lp-page article,body.saimu-lp-page .entry-body,body.saimu-lp-page .entry-content{width:100%!important;max-width:none!important;margin:0!important}
.debt-lp,.debt-lp *{box-sizing:border-box}.debt-lp{color:var(--tx);font-family:"Noto Sans JP","Yu Gothic",sans-serif;overflow:hidden}.debt-wrap{width:min(1160px,calc(100% - 48px));margin:0 auto}
.debt-hero{padding:82px 0 58px;background:linear-gradient(125deg,#f1fbf8 0%,#fff 54%,#fff5e8 100%)}.debt-hero-grid{display:grid;grid-template-columns:1.22fr .78fr;gap:56px;align-items:center}.debt-eyebrow,.debt-section-head>span,.debt-final-kicker{color:var(--t);font-size:12px;letter-spacing:.18em;font-weight:800}.debt-hero h1{margin:12px 0 24px;font-size:clamp(42px,5vw,68px);line-height:1.2;color:var(--n)}.debt-hero h1 span{color:var(--t)}.debt-lead{font-size:18px;line-height:2}.debt-badges{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 28px}.debt-badges span{padding:8px 13px;border-radius:999px;background:#fff;border:1px solid var(--ln);font-size:13px;font-weight:700}
.debt-btn{display:inline-flex;gap:10px;padding:16px 24px;border-radius:10px;font-weight:800;text-decoration:none!important}.debt-btn-primary{background:var(--o);color:#fff!important;box-shadow:0 10px 24px rgba(241,154,62,.28)}.debt-btn-light{background:#fff;color:var(--n)!important}.debt-small{font-size:12px;opacity:.7;margin-top:10px}
.debt-hero-panel{background:var(--n);color:#fff;padding:32px;border-radius:22px;box-shadow:0 24px 55px rgba(18,53,72,.18)}.debt-panel-label{color:#8fd5ca;font-size:12px;font-weight:800;letter-spacing:.1em}.debt-checklist{padding:0;list-style:none}.debt-checklist li{padding:13px 0 13px 30px;border-bottom:1px solid rgba(255,255,255,.13);position:relative}.debt-checklist li:before{content:"✓";position:absolute;left:0;color:#8fd5ca}.debt-panel-foot{margin-top:20px;font-size:14px;opacity:.78}
.debt-alert-band{background:var(--t);color:#fff;padding:22px 0}.debt-alert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.debt-alert-grid div{display:flex;flex-direction:column;padding-left:18px;border-left:3px solid rgba(255,255,255,.35)}.debt-alert-grid strong{font-size:17px}.debt-alert-grid span{font-size:12px;opacity:.8}
.debt-section{padding:82px 0}.debt-bg-soft{background:#f4f8f8}.debt-bg-dark{background:var(--n);color:#fff}.debt-section-head{text-align:center;max-width:820px;margin:0 auto 42px}.debt-section-head h2{font-size:clamp(28px,3.3vw,42px);margin:10px 0 14px;color:var(--n)}.debt-head-light h2{color:#fff}.debt-head-light>span{color:#8fd5ca}
.debt-grid{display:grid;gap:22px}.debt-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.debt-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.debt-card{background:#fff;border:1px solid var(--ln);border-radius:16px;padding:26px;box-shadow:0 8px 26px rgba(18,53,72,.05)}.debt-worry b{color:var(--o);font-size:12px}.debt-card h3,.debt-feature h3{color:var(--n);font-size:20px;margin:8px 0}.debt-card p,.debt-feature p{line-height:1.85}.debt-center{text-align:center;margin-top:36px}
.debt-solutions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.debt-solution{border-radius:20px;padding:30px;min-height:340px}.debt-solution h3{font-size:30px;margin:5px 0 16px}.debt-solution-no{font-size:12px;font-weight:900;opacity:.65}.debt-solution-lead{font-weight:700}.debt-solution ul{line-height:2}.debt-solution-green{background:#dff4ef;color:#0f4e4b}.debt-solution-orange{background:#fff0df;color:#704013}.debt-solution-navy{background:var(--n);color:#fff}.debt-note{font-size:12px;opacity:.72;margin-top:18px;text-align:center}
.debt-feature{border-top:3px solid #8fd5ca;padding-top:22px}.debt-feature>div{color:#8fd5ca;font-size:12px;font-weight:900}.debt-feature h3{color:#fff}.debt-feature p{color:rgba(255,255,255,.8)}
.debt-fee-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.debt-fee-card{border:1px solid var(--ln);border-radius:16px;overflow:hidden;background:#fff}.debt-fee-card h3{margin:0;padding:20px 24px;background:var(--m);color:var(--n)}.debt-fee-card dl{margin:0;padding:0 24px 10px}.debt-fee-card dl div{display:flex;justify-content:space-between;gap:14px;padding:15px 0;border-bottom:1px solid #edf1f2}.debt-fee-card dd{margin:0;font-weight:800;text-align:right}
.debt-timeline{max-width:850px;margin:0 auto}.debt-step{display:grid;grid-template-columns:52px 1fr;gap:22px;margin-bottom:24px}.debt-step>span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--t);color:#fff;font-size:12px;font-weight:900}.debt-step>div{background:#fff;border:1px solid var(--ln);border-radius:14px;padding:20px 24px}.debt-step h3{margin:0 0 6px;color:var(--n)}
.debt-faq details{border-bottom:1px solid var(--ln);padding:22px 4px}.debt-faq summary{cursor:pointer;font-size:18px;font-weight:800;color:var(--n)}.debt-faq details p{padding:12px 0 0 24px;line-height:1.85}
.debt-final{background:linear-gradient(135deg,var(--t),#0a5358);color:#fff;padding:66px 0}.debt-final-box{display:grid;grid-template-columns:1.35fr .65fr;gap:42px;align-items:center}.debt-final-kicker{color:#b9ebe2}.debt-final h2{font-size:clamp(28px,3.2vw,42px)}.debt-small-light{color:rgba(255,255,255,.75)}
@media(max-width:1023px){.debt-hero-grid,.debt-final-box{grid-template-columns:1fr}.debt-grid-4{grid-template-columns:repeat(2,1fr)}.debt-grid-3,.debt-solutions,.debt-fee-grid{grid-template-columns:repeat(2,1fr)}.debt-alert-grid{grid-template-columns:1fr}}
@media(max-width:767px){.debt-wrap{width:calc(100% - 32px)}.debt-hero{padding:54px 0 38px}.debt-section{padding:58px 0}.debt-grid-3,.debt-grid-4,.debt-solutions,.debt-fee-grid{grid-template-columns:1fr}.debt-hero h1{font-size:40px}.debt-fee-card dl div{flex-direction:column}.debt-fee-card dd{text-align:left}}


/* v1.1 Consultation flow layout fix */
.debt-lp .debt-timeline{
  width:min(900px,100%)!important;
  max-width:900px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  position:relative;
}
.debt-lp .debt-step{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  gap:22px!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 24px 0!important;
  float:none!important;
  clear:both!important;
}
.debt-lp .debt-step>span{
  flex:0 0 52px!important;
  width:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  height:52px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
}
.debt-lp .debt-step>div{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  display:block!important;
  padding:22px 26px!important;
  margin:0!important;
  float:none!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}
.debt-lp .debt-step h3,.debt-lp .debt-step p{
  display:block!important;
  width:100%!important;
  writing-mode:horizontal-tb!important;
  white-space:normal!important;
  word-break:normal!important;
}
.debt-lp .debt-step h3{margin:0 0 8px 0!important;line-height:1.5!important}
.debt-lp .debt-step p{margin:0!important;line-height:1.8!important}
.debt-lp .debt-timeline:before{
  left:25px!important;
  top:26px!important;
  bottom:26px!important;
}
@media(max-width:767px){
  .debt-lp .debt-step{gap:14px!important}
  .debt-lp .debt-step>span{
    flex-basis:44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important
  }
  .debt-lp .debt-step>div{padding:18px!important}
  .debt-lp .debt-timeline:before{left:21px!important}
}


/* ==========================================================
   v1.2 FLOW spacing fix
   STEP番号を絶対配置し、説明カードをその直後に配置。
   Lightning側のflex/width干渉を受けない構造に補正。
   ========================================================== */

.debt-lp .debt-timeline{
  width:min(820px,100%)!important;
  max-width:820px!important;
  margin:0 auto!important;
  position:relative!important;
}

.debt-lp .debt-step{
  display:block!important;
  position:relative!important;
  width:100%!important;
  max-width:820px!important;
  margin:0 auto 24px auto!important;
  padding-left:74px!important;
  min-height:52px!important;
  float:none!important;
  clear:both!important;
}

.debt-lp .debt-step>span{
  position:absolute!important;
  left:0!important;
  top:0!important;
  width:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  height:52px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  border-radius:50%!important;
}

.debt-lp .debt-step>div{
  display:block!important;
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:22px 26px!important;
  float:none!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}

.debt-lp .debt-step h3,
.debt-lp .debt-step p{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  writing-mode:horizontal-tb!important;
  white-space:normal!important;
}

.debt-lp .debt-timeline:before{
  left:25px!important;
  top:26px!important;
  bottom:26px!important;
}

@media(max-width:767px){
  .debt-lp .debt-timeline{
    width:100%!important;
  }
  .debt-lp .debt-step{
    padding-left:58px!important;
    margin-bottom:18px!important;
  }
  .debt-lp .debt-step>span{
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
  }
  .debt-lp .debt-step>div{
    padding:18px!important;
  }
  .debt-lp .debt-timeline:before{
    left:21px!important;
  }
}


/* ==========================================================
   v2.0 PROFESSIONAL DESIGN SYSTEM
   Typography / spacing / cards / CTA / FAQ / responsive
   ========================================================== */

.debt-lp{
  --pro-navy:#103244;
  --pro-teal:#0d7774;
  --pro-teal-dark:#095c5a;
  --pro-orange:#ef9b3f;
  --pro-orange-dark:#d77e20;
  --pro-soft:#f4f8f8;
  --pro-soft2:#eef5f4;
  --pro-line:#d8e4e4;
  --pro-text:#16313e;
  --pro-muted:#5d7079;
  --pro-white:#ffffff;
  --pro-shadow:0 16px 40px rgba(16,50,68,.08);
  --pro-radius:18px;
  font-feature-settings:"palt";
  letter-spacing:.01em;
}

.debt-lp section{
  scroll-margin-top:80px;
}

.debt-lp .debt-wrap{
  width:min(1180px,calc(100% - 56px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* ---------- HERO ---------- */
.debt-lp .debt-hero{
  padding:92px 0 68px!important;
  background:
    radial-gradient(circle at 90% 5%,rgba(13,119,116,.10),transparent 28%),
    radial-gradient(circle at 5% 100%,rgba(239,155,63,.08),transparent 30%),
    linear-gradient(135deg,#f2fbf8 0%,#ffffff 56%,#fff8ef 100%)!important;
}

.debt-lp .debt-hero-grid{
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr)!important;
  gap:72px!important;
}

.debt-lp .debt-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--pro-teal)!important;
  font-size:12px!important;
  letter-spacing:.2em!important;
  font-weight:800!important;
}
.debt-lp .debt-eyebrow:before{
  content:"";
  width:34px;
  height:2px;
  background:var(--pro-teal);
}

.debt-lp .debt-hero h1{
  max-width:760px;
  margin:18px 0 26px!important;
  font-size:clamp(48px,5.2vw,72px)!important;
  line-height:1.15!important;
  letter-spacing:-.045em!important;
  color:var(--pro-navy)!important;
  text-wrap:balance;
}

.debt-lp .debt-hero h1 span{
  color:var(--pro-teal)!important;
}

.debt-lp .debt-lead{
  max-width:760px;
  margin:0 0 26px!important;
  font-size:18px!important;
  line-height:1.95!important;
  color:var(--pro-text);
}

.debt-lp .debt-badges{
  gap:10px!important;
  margin:0 0 30px!important;
}

.debt-lp .debt-badges span{
  background:rgba(255,255,255,.88)!important;
  border:1px solid var(--pro-line)!important;
  color:var(--pro-navy)!important;
  padding:9px 14px!important;
  box-shadow:0 4px 14px rgba(16,50,68,.04);
}

.debt-lp .debt-hero-panel{
  padding:36px!important;
  border-radius:24px!important;
  background:linear-gradient(145deg,var(--pro-navy),#174d61)!important;
  box-shadow:0 28px 65px rgba(16,50,68,.20)!important;
  transform:none!important;
}

.debt-lp .debt-panel-label{
  font-size:12px!important;
  letter-spacing:.12em!important;
  color:#9ddfd5!important;
  margin-bottom:16px!important;
}

.debt-lp .debt-checklist li{
  padding:15px 0 15px 32px!important;
  font-size:16px;
  line-height:1.65!important;
}

.debt-lp .debt-panel-foot{
  margin-top:22px!important;
  color:rgba(255,255,255,.78);
}

/* ---------- CTA ---------- */
.debt-lp .debt-btn{
  min-height:56px;
  padding:16px 26px!important;
  border-radius:12px!important;
  font-size:15px;
  line-height:1.3;
  box-shadow:none;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}

.debt-lp .debt-btn-primary{
  background:linear-gradient(135deg,var(--pro-orange),#f3aa55)!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(239,155,63,.28)!important;
}

.debt-lp .debt-btn-primary:hover{
  background:linear-gradient(135deg,var(--pro-orange-dark),var(--pro-orange))!important;
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(239,155,63,.34)!important;
}

.debt-lp .debt-btn-light{
  background:#fff!important;
  color:var(--pro-navy)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.10)!important;
}

.debt-lp .debt-small{
  margin-top:12px!important;
  color:var(--pro-muted);
}

/* ---------- ALERT BAND ---------- */
.debt-lp .debt-alert-band{
  padding:24px 0!important;
  background:linear-gradient(90deg,var(--pro-teal-dark),var(--pro-teal))!important;
}

.debt-lp .debt-alert-grid{
  gap:30px!important;
}

.debt-lp .debt-alert-grid div{
  padding-left:20px!important;
  border-left:3px solid rgba(255,255,255,.35)!important;
}

.debt-lp .debt-alert-grid strong{
  font-size:18px!important;
}

.debt-lp .debt-alert-grid span{
  font-size:13px!important;
  margin-top:4px!important;
}

/* ---------- SECTION SYSTEM ---------- */
.debt-lp .debt-section{
  padding:96px 0!important;
}

.debt-lp .debt-bg-soft{
  background:linear-gradient(180deg,#f6f9f9 0%,#f1f6f5 100%)!important;
}

.debt-lp .debt-section-head{
  max-width:1040px!important;
  margin:0 auto 48px!important;
  text-align:center!important;
}

.debt-lp .debt-section-head>span{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--pro-teal)!important;
  font-size:12px!important;
  letter-spacing:.2em!important;
  font-weight:800!important;
}

.debt-lp .debt-section-head>span:before,
.debt-lp .debt-section-head>span:after{
  content:"";
  width:42px;
  height:1px;
  background:#b8cbca;
}

.debt-lp .debt-section-head h2{
  max-width:100%!important;
  width:100%!important;
  margin:14px auto 14px!important;
  font-size:clamp(32px,3vw,46px)!important;
  line-height:1.32!important;
  letter-spacing:-.025em!important;
  color:var(--pro-navy)!important;
  text-wrap:balance!important;
  white-space:normal!important;
}

.debt-lp .debt-section-head p{
  max-width:760px;
  margin:0 auto!important;
  font-size:15px;
  line-height:1.9!important;
  color:var(--pro-muted);
}

.debt-lp .debt-head-light h2{
  color:#fff!important;
}
.debt-lp .debt-head-light p{
  color:rgba(255,255,255,.75)!important;
}
.debt-lp .debt-head-light>span{
  color:#9ddfd5!important;
}

/* ---------- CARDS ---------- */
.debt-lp .debt-grid{
  gap:24px!important;
  align-items:stretch;
}

.debt-lp .debt-grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.debt-lp .debt-grid-4{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

.debt-lp .debt-card{
  padding:30px!important;
  border:1px solid var(--pro-line)!important;
  border-radius:var(--pro-radius)!important;
  background:#fff!important;
  box-shadow:var(--pro-shadow)!important;
  transition:transform .2s ease,box-shadow .2s ease;
}

.debt-lp .debt-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 46px rgba(16,50,68,.12)!important;
}

.debt-lp .debt-worry b{
  display:inline-block;
  margin-bottom:12px!important;
  color:var(--pro-orange)!important;
  font-size:12px!important;
  letter-spacing:.08em;
}

.debt-lp .debt-card h3{
  margin:0 0 12px!important;
  font-size:20px!important;
  line-height:1.5!important;
  color:var(--pro-navy)!important;
  text-wrap:balance;
}

.debt-lp .debt-card p{
  margin:0!important;
  font-size:15px;
  line-height:1.9!important;
  color:var(--pro-muted);
}

/* ---------- SOLUTIONS ---------- */
.debt-lp .debt-solutions{
  gap:24px!important;
}

.debt-lp .debt-solution{
  min-height:380px!important;
  padding:34px!important;
  border-radius:22px!important;
  box-shadow:0 14px 34px rgba(16,50,68,.08);
}

.debt-lp .debt-solution h3{
  font-size:32px!important;
  line-height:1.3!important;
  margin:8px 0 18px!important;
}

.debt-lp .debt-solution-lead{
  min-height:auto!important;
  margin-bottom:16px;
  font-size:16px;
  line-height:1.75!important;
}

.debt-lp .debt-solution ul{
  margin-top:18px!important;
  line-height:2!important;
}

.debt-lp .debt-solution-green{
  background:linear-gradient(160deg,#dff4ef,#eefaf7)!important;
}

.debt-lp .debt-solution-orange{
  background:linear-gradient(160deg,#fff0df,#fff7ee)!important;
}

.debt-lp .debt-solution-navy{
  background:linear-gradient(160deg,var(--pro-navy),#194c61)!important;
}

/* ---------- WHY US ---------- */
.debt-lp .debt-bg-dark{
  background:linear-gradient(135deg,#0d2b3a,var(--pro-navy))!important;
}

.debt-lp .debt-feature{
  min-height:210px;
  padding:26px 8px 0!important;
  border-top:3px solid #8ed7cc!important;
}

.debt-lp .debt-feature>div{
  margin-bottom:10px!important;
  font-size:12px!important;
  letter-spacing:.08em;
}

.debt-lp .debt-feature h3{
  margin:0 0 12px!important;
  font-size:20px!important;
  line-height:1.45!important;
  color:#fff!important;
}

.debt-lp .debt-feature p{
  margin:0!important;
  line-height:1.85!important;
  color:rgba(255,255,255,.78)!important;
}

/* ---------- FEES ---------- */
.debt-lp .debt-fee-grid{
  gap:24px!important;
}

.debt-lp .debt-fee-card{
  border:1px solid var(--pro-line)!important;
  border-radius:18px!important;
  box-shadow:var(--pro-shadow)!important;
}

.debt-lp .debt-fee-card h3{
  padding:22px 26px!important;
  background:linear-gradient(135deg,#e6f5f1,#f3faf8)!important;
  color:var(--pro-navy)!important;
  font-size:22px!important;
}

.debt-lp .debt-fee-card dl{
  padding:4px 26px 14px!important;
}

.debt-lp .debt-fee-card dl div{
  padding:17px 0!important;
}

.debt-lp .debt-fee-card dt{
  color:var(--pro-muted);
}

.debt-lp .debt-fee-card dd{
  color:var(--pro-navy);
}

/* ---------- FLOW ---------- */
.debt-lp .debt-timeline{
  width:min(860px,100%)!important;
  max-width:860px!important;
  margin:0 auto!important;
}

.debt-lp .debt-step{
  position:relative!important;
  display:block!important;
  width:100%!important;
  margin:0 0 22px!important;
  padding-left:76px!important;
  min-height:54px!important;
}

.debt-lp .debt-step>span{
  position:absolute!important;
  left:0!important;
  top:4px!important;
  width:54px!important;
  min-width:54px!important;
  max-width:54px!important;
  height:54px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,var(--pro-teal),var(--pro-teal-dark))!important;
  box-shadow:0 8px 18px rgba(13,119,116,.18);
}

.debt-lp .debt-step>div{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:22px 26px!important;
  border:1px solid var(--pro-line)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(16,50,68,.05)!important;
  writing-mode:horizontal-tb!important;
}

.debt-lp .debt-step h3{
  margin:0 0 7px!important;
  font-size:19px!important;
  line-height:1.5!important;
  color:var(--pro-navy)!important;
  writing-mode:horizontal-tb!important;
}

.debt-lp .debt-step p{
  margin:0!important;
  line-height:1.8!important;
  color:var(--pro-muted);
  writing-mode:horizontal-tb!important;
}

.debt-lp .debt-timeline:before{
  left:26px!important;
  top:30px!important;
  bottom:30px!important;
  width:2px!important;
  background:#c3d7d5!important;
}

/* ---------- FAQ ---------- */
.debt-lp .debt-faq{
  max-width:940px;
}

.debt-lp .debt-faq details{
  margin:0 0 14px!important;
  padding:0!important;
  border:1px solid var(--pro-line)!important;
  border-radius:14px!important;
  background:#fff!important;
  overflow:hidden;
  box-shadow:0 8px 22px rgba(16,50,68,.04);
}

.debt-lp .debt-faq summary{
  position:relative;
  padding:20px 58px 20px 24px!important;
  font-size:17px!important;
  line-height:1.6!important;
  color:var(--pro-navy)!important;
  list-style:none;
}

.debt-lp .debt-faq summary::-webkit-details-marker{
  display:none;
}

.debt-lp .debt-faq summary:after{
  content:"+";
  position:absolute;
  right:22px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--pro-soft2);
  color:var(--pro-teal);
  font-size:20px;
  font-weight:700;
}

.debt-lp .debt-faq details[open] summary:after{
  content:"−";
}

.debt-lp .debt-faq details p{
  margin:0!important;
  padding:0 24px 22px!important;
  line-height:1.9!important;
  color:var(--pro-muted);
}

/* ---------- FINAL CTA ---------- */
.debt-lp .debt-final{
  padding:78px 0!important;
  background:
    radial-gradient(circle at 15% 20%,rgba(255,255,255,.08),transparent 25%),
    linear-gradient(135deg,var(--pro-teal),#084d55)!important;
}

.debt-lp .debt-final-box{
  grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr)!important;
  gap:56px!important;
}

.debt-lp .debt-final h2{
  margin:12px 0 14px!important;
  font-size:clamp(32px,3.4vw,46px)!important;
  line-height:1.4!important;
  letter-spacing:-.02em;
}

.debt-lp .debt-final p{
  color:rgba(255,255,255,.84);
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1100px){
  .debt-lp .debt-hero-grid{
    grid-template-columns:1fr!important;
    gap:42px!important;
  }
  .debt-lp .debt-grid-4{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .debt-lp .debt-grid-3,
  .debt-lp .debt-solutions,
  .debt-lp .debt-fee-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .debt-lp .debt-final-box{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:767px){
  .debt-lp .debt-wrap{
    width:calc(100% - 32px)!important;
  }

  .debt-lp .debt-hero{
    padding:56px 0 42px!important;
  }

  .debt-lp .debt-hero h1{
    font-size:40px!important;
    line-height:1.18!important;
  }

  .debt-lp .debt-lead{
    font-size:16px!important;
    line-height:1.85!important;
  }

  .debt-lp .debt-section{
    padding:64px 0!important;
  }

  .debt-lp .debt-section-head{
    margin-bottom:34px!important;
  }

  .debt-lp .debt-section-head h2{
    font-size:30px!important;
    line-height:1.38!important;
    text-wrap:pretty!important;
  }

  .debt-lp .debt-section-head>span:before,
  .debt-lp .debt-section-head>span:after{
    width:24px;
  }

  .debt-lp .debt-grid-3,
  .debt-lp .debt-grid-4,
  .debt-lp .debt-solutions,
  .debt-lp .debt-fee-grid{
    grid-template-columns:1fr!important;
  }

  .debt-lp .debt-card{
    padding:24px!important;
  }

  .debt-lp .debt-step{
    padding-left:60px!important;
    margin-bottom:18px!important;
  }

  .debt-lp .debt-step>span{
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    top:3px!important;
  }

  .debt-lp .debt-step>div{
    padding:18px!important;
  }

  .debt-lp .debt-timeline:before{
    left:21px!important;
  }

  .debt-lp .debt-btn{
    width:100%;
    justify-content:center;
  }

  .debt-lp .debt-final{
    padding:60px 0!important;
  }
}

/* Desktop-only protection against awkward single-character wrapping */
@media(min-width:768px){
  .debt-lp .debt-section-head h2{
    word-break:keep-all!important;
    overflow-wrap:normal!important;
  }
}


/* ==========================================================
   v3.0 STANDALONE TEMPLATE + ACCESS FOOTER
   ========================================================== */

body.page-template-page-saimu-v3 .page-header,
body.page-template-page-saimu-v3 .breadcrumb,
body.page-template-page-saimu-v3 .siteContent,
body.page-template-page-saimu-v3 .siteContent > .container,
body.page-template-page-saimu-v3 .siteContent .container,
body.page-template-page-saimu-v3 .siteContent .row,
body.page-template-page-saimu-v3 .mainSection,
body.page-template-page-saimu-v3 .sideSection,
body.page-template-page-saimu-v3 #sideSection,
body.page-template-page-saimu-v3 .subSection{
  all:unset;
}

body.page-template-page-saimu-v3 .sideSection,
body.page-template-page-saimu-v3 #sideSection,
body.page-template-page-saimu-v3 .subSection{
  display:none!important;
}

body.page-template-page-saimu-v3 #saimu-v3-main{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
}

body.page-template-page-saimu-v3 #saimu-v3-main > .debt-lp{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}

/* Access */
.debt-lp .debt-access{
  padding:92px 0;
  background:#fff;
}

.debt-lp .debt-access-head{
  margin-bottom:44px!important;
}

.debt-lp .debt-access-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);
  gap:34px;
  align-items:stretch;
}

.debt-lp .debt-access-info{
  padding:34px;
  border-radius:20px;
  background:linear-gradient(160deg,#f1f8f7,#ffffff);
  border:1px solid var(--pro-line,#d8e4e4);
  box-shadow:0 16px 38px rgba(16,50,68,.07);
}

.debt-lp .debt-access-label{
  color:var(--pro-teal,#0d7774);
  font-size:12px;
  font-weight:800;
  letter-spacing:.16em;
  margin-bottom:10px;
}

.debt-lp .debt-access-info h3{
  margin:0 0 18px;
  color:var(--pro-navy,#103244);
  font-size:26px;
}

.debt-lp .debt-address{
  margin:0 0 24px;
  color:var(--pro-text,#16313e);
  line-height:1.9;
  font-size:16px;
}

.debt-lp .debt-access-list{
  margin:0 0 28px;
}

.debt-lp .debt-access-list div{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:18px;
  padding:14px 0;
  border-top:1px solid #e4ecec;
}

.debt-lp .debt-access-list dt{
  font-size:13px;
  color:#698089;
  font-weight:700;
}

.debt-lp .debt-access-list dd{
  margin:0;
  color:var(--pro-text,#16313e);
  line-height:1.7;
}

.debt-lp .debt-map{
  min-height:470px;
  overflow:hidden;
  border-radius:20px;
  border:1px solid var(--pro-line,#d8e4e4);
  box-shadow:0 16px 38px rgba(16,50,68,.07);
  background:#eef3f3;
}

.debt-lp .debt-map iframe{
  display:block;
  width:100%!important;
  height:100%!important;
  min-height:470px!important;
  border:0!important;
}

/* LP-specific footer, above the parent theme footer */
.debt-lp .debt-legal-footer{
  background:#0b2937;
  color:#fff;
  padding:28px 0;
}

.debt-lp .debt-legal-footer-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}

.debt-lp .debt-legal-footer-inner > div:first-child{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.debt-lp .debt-legal-footer strong{
  font-size:15px;
}

.debt-lp .debt-legal-footer span{
  color:rgba(255,255,255,.68);
  font-size:12px;
}

.debt-lp .debt-legal-links{
  display:flex;
  gap:22px;
}

.debt-lp .debt-legal-links a{
  color:#c9ece7!important;
  font-size:13px;
  font-weight:700;
  text-decoration:none!important;
}

/* Prevent theme footer from creating a visually duplicated heavy block on v3.
   Keep copyright/theme footer functional but compact. */
body.page-template-page-saimu-v3 footer.siteFooter{
  margin-top:0!important;
}

@media(max-width:960px){
  .debt-lp .debt-access-grid{
    grid-template-columns:1fr;
  }
  .debt-lp .debt-map,
  .debt-lp .debt-map iframe{
    min-height:400px!important;
  }
}

@media(max-width:767px){
  .debt-lp .debt-access{
    padding:64px 0;
  }
  .debt-lp .debt-access-info{
    padding:24px;
  }
  .debt-lp .debt-access-list div{
    grid-template-columns:1fr;
    gap:5px;
  }
  .debt-lp .debt-map,
  .debt-lp .debt-map iframe{
    min-height:330px!important;
  }
  .debt-lp .debt-legal-footer-inner{
    flex-direction:column;
    align-items:flex-start;
  }
  .debt-lp .debt-legal-links{
    flex-direction:column;
    gap:10px;
  }
}


/* ==========================================================
   v3.5 LIGHTWEIGHT STABLE FIXES
   - Hero 3 badges
   - Phone block
   - Flow spacing
   - Access / Map / Office footer
   ========================================================== */

/* HERO badges */
.debt-lp .debt-badges{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  max-width:760px!important;
  margin:0 0 28px!important;
}
.debt-lp .debt-badges span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  width:100%!important;
  min-height:44px!important;
  padding:9px 12px!important;
  border:1px solid #d8e4e4!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#103244!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.35!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:keep-all!important;
}

/* phone block */
.debt-lp .debt-phone-contact{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:6px 10px!important;
  margin:20px 0 0!important;
  padding-top:16px!important;
  border-top:1px solid rgba(16,50,68,.12)!important;
}
.debt-lp .debt-phone-label{font-size:13px!important;font-weight:700!important;color:#0d7774!important}
.debt-lp .debt-phone-number{font-size:17px!important;font-weight:800!important;color:#103244!important;text-decoration:none!important}
.debt-lp .debt-phone-hours{font-size:13px!important;color:#60737c!important}

/* fallback if phone was inserted as a normal paragraph after .debt-small */
.debt-lp .debt-hero-copy .debt-small + p{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:6px 10px!important;
  margin:20px 0 0!important;
  padding-top:16px!important;
  border-top:1px solid rgba(16,50,68,.12)!important;
}

/* FLOW */
.debt-lp .debt-timeline{
  width:min(820px,100%)!important;
  max-width:820px!important;
  margin:0 auto!important;
  position:relative!important;
}
.debt-lp .debt-step{
  display:block!important;
  position:relative!important;
  width:100%!important;
  margin:0 auto 22px!important;
  padding-left:72px!important;
  min-height:52px!important;
  float:none!important;
  clear:both!important;
}
.debt-lp .debt-step>span{
  position:absolute!important;
  left:0!important;
  top:2px!important;
  width:50px!important;
  min-width:50px!important;
  max-width:50px!important;
  height:50px!important;
  display:grid!important;
  place-items:center!important;
}
.debt-lp .debt-step>div{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:20px 24px!important;
  float:none!important;
  writing-mode:horizontal-tb!important;
}
.debt-lp .debt-step h3,
.debt-lp .debt-step p{
  width:100%!important;
  writing-mode:horizontal-tb!important;
  white-space:normal!important;
}
.debt-lp .debt-timeline:before{
  left:24px!important;
}

/* ACCESS */
.debt-lp .debt-access{
  padding:84px 0;
  background:#fff;
}
.debt-lp .debt-access-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);
  gap:32px;
  align-items:stretch;
}
.debt-lp .debt-access-info{
  padding:32px;
  border:1px solid #d8e4e4;
  border-radius:18px;
  background:linear-gradient(160deg,#f3f8f7,#fff);
  box-shadow:0 14px 34px rgba(16,50,68,.07);
}
.debt-lp .debt-access-info h3{
  margin:8px 0 18px;
  color:#103244;
  font-size:26px;
}
.debt-lp .debt-address{
  line-height:1.9;
  margin:0 0 22px;
}
.debt-lp .debt-access-list{
  margin:0 0 26px;
}
.debt-lp .debt-access-list div{
  display:grid;
  grid-template-columns:88px 1fr;
  gap:16px;
  padding:13px 0;
  border-top:1px solid #e5eceb;
}
.debt-lp .debt-access-list dt{
  font-size:13px;
  font-weight:700;
  color:#74868e;
}
.debt-lp .debt-access-list dd{
  margin:0;
  line-height:1.7;
}
.debt-lp .debt-map{
  min-height:460px;
  overflow:hidden;
  border:1px solid #d8e4e4;
  border-radius:18px;
  box-shadow:0 14px 34px rgba(16,50,68,.07);
}
.debt-lp .debt-map iframe{
  display:block;
  width:100%!important;
  height:100%!important;
  min-height:460px!important;
  border:0!important;
}

/* OFFICE FOOTER */
.debt-lp .debt-legal-footer{
  background:#0b2937;
  color:#fff;
  padding:26px 0;
}
.debt-lp .debt-legal-footer-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}
.debt-lp .debt-legal-footer-inner>div:first-child{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.debt-lp .debt-legal-footer span{
  font-size:12px;
  color:rgba(255,255,255,.68);
}
.debt-lp .debt-legal-links{
  display:flex;
  gap:20px;
}
.debt-lp .debt-legal-links a{
  color:#c9ece7!important;
  text-decoration:none!important;
  font-size:13px;
  font-weight:700;
}

@media(max-width:1100px){
  .debt-lp .debt-badges{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    max-width:620px!important;
  }
  .debt-lp .debt-badges span:last-child{
    grid-column:1 / -1!important;
    max-width:305px!important;
  }
  .debt-lp .debt-access-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:767px){
  .debt-lp .debt-badges{
    grid-template-columns:1fr!important;
  }
  .debt-lp .debt-badges span:last-child{
    grid-column:auto!important;
    max-width:none!important;
  }
  .debt-lp .debt-phone-contact,
  .debt-lp .debt-hero-copy .debt-small + p{
    display:block!important;
  }
  .debt-lp .debt-step{
    padding-left:58px!important;
  }
  .debt-lp .debt-step>span{
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
  }
  .debt-lp .debt-step>div{
    padding:18px!important;
  }
  .debt-lp .debt-map,
  .debt-lp .debt-map iframe{
    min-height:330px!important;
  }
  .debt-lp .debt-access-list div{
    grid-template-columns:1fr;
    gap:5px;
  }
  .debt-lp .debt-legal-footer-inner{
    flex-direction:column;
    align-items:flex-start;
  }
  .debt-lp .debt-legal-links{
    flex-direction:column;
    gap:10px;
  }
}


/* ==========================================================
   v3.6 FINAL POLISH
   - Hero trust badges
   - Fee cards
   - Access hierarchy
   Flow is intentionally untouched.
   ========================================================== */

/* HERO trust badges */
.debt-lp .debt-badges{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  max-width:760px!important;
  width:100%!important;
  margin:2px 0 28px!important;
}
.debt-lp .debt-badges span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:10px 14px!important;
  border:1px solid #d8e4e4!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.96)!important;
  color:#103244!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:800!important;
  text-align:center!important;
  box-shadow:0 5px 16px rgba(16,50,68,.05)!important;
  white-space:normal!important;
  word-break:keep-all!important;
}

/* Fallback if badges have collapsed into plain text/inline nodes */
.debt-lp .debt-hero-copy > p + .debt-badges,
.debt-lp .debt-hero-copy .debt-badges{
  clear:both!important;
}

/* FEES: stronger information hierarchy */
.debt-lp .debt-fee-grid{
  gap:24px!important;
  align-items:stretch!important;
}
.debt-lp .debt-fee-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
  border:1px solid #d8e4e4!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(16,50,68,.07)!important;
}
.debt-lp .debt-fee-card h3{
  margin:0!important;
  padding:20px 24px!important;
  background:linear-gradient(135deg,#e8f5f2,#f7fbfa)!important;
  color:#103244!important;
  font-size:22px!important;
  line-height:1.4!important;
  border-bottom:1px solid #dbe7e6!important;
}
.debt-lp .debt-fee-card dl{
  margin:0!important;
  padding:8px 24px 18px!important;
  flex:1 1 auto!important;
}
.debt-lp .debt-fee-card dl div{
  display:grid!important;
  grid-template-columns:minmax(110px,.8fr) minmax(0,1.2fr)!important;
  gap:16px!important;
  align-items:start!important;
  padding:15px 0!important;
  border-bottom:1px solid #edf2f1!important;
}
.debt-lp .debt-fee-card dl div:last-child{
  border-bottom:0!important;
}
.debt-lp .debt-fee-card dt{
  color:#60737c!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.6!important;
}
.debt-lp .debt-fee-card dd{
  margin:0!important;
  color:#103244!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.6!important;
  text-align:right!important;
}
.debt-lp .debt-fee-grid + .debt-note,
.debt-lp .debt-fee-grid + p.debt-note{
  margin-top:20px!important;
}

/* ACCESS: refine information hierarchy without changing structure */
.debt-lp .debt-access{
  padding:90px 0 84px!important;
}
.debt-lp .debt-access-info{
  padding:34px!important;
  background:linear-gradient(155deg,#f4f9f8,#fff)!important;
}
.debt-lp .debt-access-info h3{
  margin:10px 0 18px!important;
  font-size:27px!important;
  line-height:1.45!important;
}
.debt-lp .debt-address{
  margin:0 0 22px!important;
  font-size:16px!important;
  line-height:1.95!important;
}
.debt-lp .debt-access-list div{
  padding:14px 0!important;
}
.debt-lp .debt-access-list dt{
  letter-spacing:.02em!important;
}
.debt-lp .debt-access-info .debt-btn{
  margin-top:2px!important;
}
.debt-lp .debt-map{
  min-height:470px!important;
}
.debt-lp .debt-map iframe{
  min-height:470px!important;
}

/* Office footer: slightly tighter and more balanced */
.debt-lp .debt-legal-footer{
  padding:24px 0!important;
}
.debt-lp .debt-legal-footer-inner{
  gap:24px!important;
}
.debt-lp .debt-legal-footer strong{
  font-size:15px!important;
}
.debt-lp .debt-legal-links a{
  font-size:13px!important;
}

/* RESPONSIVE */
@media(max-width:1100px){
  .debt-lp .debt-badges{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    max-width:620px!important;
  }
  .debt-lp .debt-badges span:last-child{
    grid-column:1 / -1!important;
    max-width:305px!important;
  }
}

@media(max-width:767px){
  .debt-lp .debt-badges{
    grid-template-columns:1fr!important;
  }
  .debt-lp .debt-badges span:last-child{
    grid-column:auto!important;
    max-width:none!important;
  }

  .debt-lp .debt-fee-card dl div{
    grid-template-columns:1fr!important;
    gap:5px!important;
  }
  .debt-lp .debt-fee-card dd{
    text-align:left!important;
  }

  .debt-lp .debt-access{
    padding:64px 0!important;
  }
  .debt-lp .debt-map,
  .debt-lp .debt-map iframe{
    min-height:330px!important;
  }
}


/* ==========================================================
   v3.7 HTML-MATCHED FIXES
   Actual HTML was rebuilt for hero badges and fees.
   ========================================================== */

/* Hero trust badges */
.debt-lp .debt-badges-v37{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  max-width:760px!important;
  width:100%!important;
  margin:2px 0 28px!important;
}
.debt-lp .debt-badges-v37 span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:10px 14px!important;
  border:1px solid #d8e4e4!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#103244!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.35!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:keep-all!important;
  box-shadow:0 5px 16px rgba(16,50,68,.05)!important;
}

/* Fees rebuilt as explicit cards */
.debt-lp .debt-fees-v37-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
}
.debt-lp .debt-fee-v37-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
  overflow:hidden!important;
  border:1px solid #d8e4e4!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(16,50,68,.07)!important;
}
.debt-lp .debt-fee-v37-card h3{
  margin:0!important;
  padding:20px 24px!important;
  background:linear-gradient(135deg,#e8f5f2,#f7fbfa)!important;
  color:#103244!important;
  font-size:22px!important;
  line-height:1.4!important;
  border-bottom:1px solid #dbe7e6!important;
}
.debt-lp .debt-fee-v37-row{
  display:grid!important;
  grid-template-columns:minmax(115px,.9fr) minmax(0,1.1fr)!important;
  gap:16px!important;
  align-items:center!important;
  padding:16px 24px!important;
  border-bottom:1px solid #edf2f1!important;
}
.debt-lp .debt-fee-v37-row:last-child{
  border-bottom:0!important;
}
.debt-lp .debt-fee-v37-row span{
  color:#60737c!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.55!important;
}
.debt-lp .debt-fee-v37-row strong{
  color:#103244!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.55!important;
  text-align:right!important;
}

@media(max-width:1100px){
  .debt-lp .debt-badges-v37{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    max-width:620px!important;
  }
  .debt-lp .debt-badges-v37 span:last-child{
    grid-column:1 / -1!important;
    max-width:305px!important;
  }
}

@media(max-width:767px){
  .debt-lp .debt-badges-v37,
  .debt-lp .debt-fees-v37-grid{
    grid-template-columns:1fr!important;
  }
  .debt-lp .debt-badges-v37 span:last-child{
    grid-column:auto!important;
    max-width:none!important;
  }
  .debt-lp .debt-fee-v37-row{
    grid-template-columns:1fr!important;
    gap:5px!important;
  }
  .debt-lp .debt-fee-v37-row strong{
    text-align:left!important;
  }
}


/* ==========================================================
   v3.9 HERO BADGE HEIGHT / ALIGNMENT FINAL FIX
   PC: 3 badges in one row, equal width & equal height
   Tablet: 2 + 1
   Mobile: 1 column
   ========================================================== */

/* PC */
@media (min-width: 1101px) {
  .debt-lp .debt-badges.debt-badges-v37 {
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:48px!important;
    gap:10px!important;
    width:100%!important;
    max-width:760px!important;
    margin:2px 0 28px!important;
    align-items:stretch!important;
  }

  .debt-lp .debt-badges.debt-badges-v37 > span {
    grid-column:auto!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:0!important;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    line-height:1.25!important;
    text-align:center!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    overflow:visible!important;
  }

  .debt-lp .debt-badges.debt-badges-v37 > span:last-child {
    grid-column:auto!important;
    max-width:none!important;
  }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1100px) {
  .debt-lp .debt-badges.debt-badges-v37 {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:48px!important;
    gap:10px!important;
    max-width:620px!important;
  }

  .debt-lp .debt-badges.debt-badges-v37 > span {
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:0!important;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  .debt-lp .debt-badges.debt-badges-v37 > span:last-child {
    grid-column:1 / -1!important;
    width:calc(50% - 5px)!important;
    max-width:none!important;
    justify-self:center!important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .debt-lp .debt-badges.debt-badges-v37 {
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-auto-rows:minmax(46px,auto)!important;
    gap:8px!important;
    max-width:none!important;
  }

  .debt-lp .debt-badges.debt-badges-v37 > span,
  .debt-lp .debt-badges.debt-badges-v37 > span:last-child {
    grid-column:auto!important;
    width:100%!important;
    max-width:none!important;
    min-height:46px!important;
    height:auto!important;
    margin:0!important;
    padding:10px 14px!important;
    white-space:normal!important;
    justify-self:stretch!important;
  }
}


/* ==========================================================
   v3.10 HERO BADGES FINAL
   Fixes 2+1 wrapping on desktop and excessive mobile gaps.
   ========================================================== */

.debt-badges.debt-badges-v37 {
  box-sizing:border-box!important;
}

/* Desktop: force one row inside the actual hero left column */
@media (min-width: 1101px) {
  .debt-badges.debt-badges-v37,
  .debt-lp .debt-badges.debt-badges-v37 {
    display:grid!important;
    grid-template-columns:repeat(3, minmax(0,1fr))!important;
    grid-template-rows:44px!important;
    grid-auto-rows:44px!important;
    column-gap:10px!important;
    row-gap:0!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:18px 0 24px!important;
    padding:0!important;
    align-items:stretch!important;
  }

  .debt-badges.debt-badges-v37 > span,
  .debt-lp .debt-badges.debt-badges-v37 > span,
  .debt-badges.debt-badges-v37 > span:last-child,
  .debt-lp .debt-badges.debt-badges-v37 > span:last-child {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    grid-column:auto!important;
    grid-row:1!important;
    position:static!important;
    float:none!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0 8px!important;
    box-sizing:border-box!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    font-size:clamp(11px, .82vw, 13px)!important;
  }
}

/* Tablet: keep compact and predictable */
@media (min-width: 768px) and (max-width: 1100px) {
  .debt-badges.debt-badges-v37,
  .debt-lp .debt-badges.debt-badges-v37 {
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:44px!important;
    gap:8px!important;
    width:100%!important;
    max-width:none!important;
    margin:16px 0 22px!important;
  }
  .debt-badges.debt-badges-v37 > span,
  .debt-lp .debt-badges.debt-badges-v37 > span,
  .debt-badges.debt-badges-v37 > span:last-child,
  .debt-lp .debt-badges.debt-badges-v37 > span:last-child {
    grid-column:auto!important;
    grid-row:1!important;
    width:100%!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0 6px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:nowrap!important;
    font-size:11px!important;
  }
}

/* Mobile: one column with tight, even spacing */
@media (max-width: 767px) {
  .debt-badges.debt-badges-v37,
  .debt-lp .debt-badges.debt-badges-v37 {
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:none!important;
    grid-auto-rows:52px!important;
    gap:10px!important;
    width:100%!important;
    max-width:none!important;
    margin:22px 0 22px!important;
    padding:0!important;
  }
  .debt-badges.debt-badges-v37 > span,
  .debt-lp .debt-badges.debt-badges-v37 > span,
  .debt-badges.debt-badges-v37 > span:last-child,
  .debt-lp .debt-badges.debt-badges-v37 > span:last-child {
    grid-column:1!important;
    grid-row:auto!important;
    position:static!important;
    width:100%!important;
    max-width:none!important;
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
    margin:0!important;
    padding:0 14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:nowrap!important;
  }
}


/* ==========================================================
   v3.11 iPhone / Mobile badge fix
   Mobile only: abandon CSS Grid completely.
   ========================================================== */
@media screen and (max-width: 767px) {
  html body .debt-badges.debt-badges-v37,
  html body .debt-lp .debt-badges.debt-badges-v37 {
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    align-content:initial!important;

    width:100%!important;
    max-width:none!important;
    min-width:0!important;

    height:auto!important;
    min-height:0!important;
    max-height:none!important;

    gap:10px!important;
    row-gap:10px!important;
    column-gap:0!important;

    margin:22px 0 22px!important;
    padding:0!important;

    grid-template-columns:none!important;
    grid-template-rows:none!important;
    grid-auto-rows:auto!important;
  }

  html body .debt-badges.debt-badges-v37 > span,
  html body .debt-lp .debt-badges.debt-badges-v37 > span,
  html body .debt-badges.debt-badges-v37 > span:last-child,
  html body .debt-lp .debt-badges.debt-badges-v37 > span:last-child {
    display:flex!important;
    flex:0 0 52px!important;
    align-self:stretch!important;
    align-items:center!important;
    justify-content:center!important;

    position:static!important;
    float:none!important;

    width:100%!important;
    max-width:none!important;
    min-width:0!important;

    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;

    margin:0!important;
    padding:0 14px!important;

    grid-column:auto!important;
    grid-row:auto!important;

    box-sizing:border-box!important;
    white-space:nowrap!important;
    line-height:1.2!important;
  }

  /* Keep CTA close to the badges */
  html body .debt-badges.debt-badges-v37 + .debt-btn,
  html body .debt-lp .debt-badges.debt-badges-v37 + .debt-btn {
    margin-top:0!important;
  }
}


/* ==========================================================
   v3.12 HERO PANEL LABEL + PROFESSIONAL FEE CARDS
   ========================================================== */

.debt-lp .debt-panel-label{
  max-width:100%!important;
  color:#9ddfd5!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.65!important;
  letter-spacing:.05em!important;
}

/* Fee cards */
.debt-lp .debt-fees-v312-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
  width:100%!important;
}

.debt-lp .debt-fee-v312-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:300px!important;
  overflow:hidden!important;
  border:1px solid #d7e3e3!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(16,50,68,.08)!important;
}

.debt-lp .debt-fee-v312-card h3{
  margin:0!important;
  padding:22px 26px!important;
  background:linear-gradient(135deg,#e6f4f1,#f4faf8)!important;
  border-bottom:1px solid #d7e3e3!important;
  color:#103244!important;
  font-size:22px!important;
  font-weight:800!important;
  line-height:1.4!important;
}

.debt-lp .debt-fee-v312-body{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  padding:8px 26px 16px!important;
}

.debt-lp .debt-fee-v312-row{
  display:grid!important;
  grid-template-columns:minmax(110px,.85fr) minmax(0,1.15fr)!important;
  gap:18px!important;
  align-items:center!important;
  min-height:64px!important;
  padding:14px 0!important;
  border-bottom:1px solid #edf2f1!important;
}

.debt-lp .debt-fee-v312-row:last-child{
  border-bottom:0!important;
}

.debt-lp .debt-fee-v312-label{
  color:#63757d!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.5!important;
}

.debt-lp .debt-fee-v312-price{
  display:block!important;
  color:#103244!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1.55!important;
  text-align:right!important;
  white-space:normal!important;
}

.debt-lp .debt-fees-v312-grid + .debt-note{
  margin-top:22px!important;
  font-size:12px!important;
  line-height:1.7!important;
}

/* Tablet */
@media(max-width:1100px) and (min-width:768px){
  .debt-lp .debt-fees-v312-grid{
    grid-template-columns:1fr!important;
    max-width:760px!important;
    margin:0 auto!important;
  }
  .debt-lp .debt-fee-v312-card{
    min-height:0!important;
  }
}

/* Mobile */
@media(max-width:767px){
  .debt-lp .debt-fees-v312-grid{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  .debt-lp .debt-fee-v312-card{
    min-height:0!important;
  }

  .debt-lp .debt-fee-v312-card h3{
    padding:18px 20px!important;
    font-size:20px!important;
  }

  .debt-lp .debt-fee-v312-body{
    padding:6px 20px 12px!important;
  }

  .debt-lp .debt-fee-v312-row{
    grid-template-columns:1fr!important;
    gap:5px!important;
    min-height:0!important;
    padding:13px 0!important;
  }

  .debt-lp .debt-fee-v312-price{
    text-align:left!important;
    font-size:16px!important;
  }
}

/* ===== v3.13 fee section: reliable rendered layout ===== */
.debt-lp .debt-fees-v313-grid{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:22px!important;margin:42px auto 0!important;width:100%!important;align-items:stretch!important
}
.debt-lp .debt-fee-v313-card{
 display:flex!important;flex-direction:column!important;overflow:hidden!important;
 min-height:278px!important;background:#fff!important;border:1px solid #d6e3e4!important;
 border-radius:18px!important;box-shadow:0 12px 30px rgba(15,50,68,.07)!important
}
.debt-lp .debt-fee-v313-card h3{
 margin:0!important;padding:21px 24px!important;background:#eef8f6!important;
 border-bottom:1px solid #d6e3e4!important;color:#103244!important;font-size:21px!important;
 font-weight:800!important;line-height:1.35!important
}
.debt-lp .debt-fee-v313-body{padding:8px 24px 14px!important;flex:1!important}
.debt-lp .debt-fee-v313-row{
 display:flex!important;justify-content:space-between!important;align-items:center!important;
 gap:18px!important;min-height:61px!important;padding:13px 0!important;
 border-bottom:1px solid #edf1f2!important
}
.debt-lp .debt-fee-v313-row:last-child{border-bottom:0!important}
.debt-lp .debt-fee-v313-row span{
 color:#667982!important;font-size:13px!important;font-weight:700!important;line-height:1.45!important
}
.debt-lp .debt-fee-v313-row strong{
 color:#103244!important;font-size:15px!important;font-weight:800!important;
 line-height:1.45!important;text-align:right!important;white-space:nowrap!important
}
.debt-lp .debt-fee-v313-note{
 margin:20px auto 0!important;text-align:center!important;color:#788991!important;
 font-size:11px!important;line-height:1.7!important
}
@media(max-width:767px){
 .debt-lp .debt-fees-v313-grid{grid-template-columns:1fr!important;gap:14px!important;margin-top:28px!important}
 .debt-lp .debt-fee-v313-card{min-height:0!important}
 .debt-lp .debt-fee-v313-card h3{padding:17px 19px!important;font-size:19px!important}
 .debt-lp .debt-fee-v313-body{padding:5px 19px 10px!important}
 .debt-lp .debt-fee-v313-row{min-height:0!important;padding:12px 0!important;gap:12px!important}
 .debt-lp .debt-fee-v313-row span{font-size:12px!important}
 .debt-lp .debt-fee-v313-row strong{font-size:14px!important}
}


/* ==========================================================
   v3.14 HERO EYEBROW / FAQ DEFAULT / ACCESS SPACING
   ========================================================== */

/* Hero eyebrow: Japanese wording */
.debt-lp .debt-eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  color:#0d7774!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  line-height:1.5!important;
}
.debt-lp .debt-eyebrow:before{
  content:""!important;
  width:32px!important;
  height:2px!important;
  background:#0d7774!important;
  flex:0 0 32px!important;
}

/* FAQ: visual treatment with all details closed by default */
.debt-lp .debt-faq details{
  margin:0 0 14px!important;
}
.debt-lp .debt-faq summary{
  cursor:pointer!important;
}
.debt-lp .debt-faq details:not([open]) > *:not(summary){
  display:none!important;
}

/* ACCESS: improve line-height and spacing on the left information card */
.debt-lp .debt-access-info{
  line-height:1.8!important;
}

.debt-lp .debt-access-info h3{
  margin:8px 0 20px!important;
  line-height:1.45!important;
}

.debt-lp .debt-address{
  margin:0 0 26px!important;
  font-size:16px!important;
  line-height:2!important;
}

.debt-lp .debt-access-list{
  margin:0 0 30px!important;
}

.debt-lp .debt-access-list div{
  display:grid!important;
  grid-template-columns:88px minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
  padding:16px 0!important;
  border-top:1px solid #e5eceb!important;
}

.debt-lp .debt-access-list dt{
  margin:0!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.7!important;
  color:#74868e!important;
}

.debt-lp .debt-access-list dd{
  margin:0!important;
  font-size:14px!important;
  line-height:1.85!important;
  color:#233c49!important;
}

.debt-lp .debt-access-info > p:not(.debt-address){
  line-height:1.9!important;
  margin-bottom:18px!important;
}

/* fallback for older access markup that is plain text instead of dl rows */
.debt-lp .debt-access-info br{
  line-height:2!important;
}

@media(max-width:767px){
  .debt-lp .debt-eyebrow{
    font-size:12px!important;
    letter-spacing:.04em!important;
  }

  .debt-lp .debt-access-info{
    padding:24px!important;
  }

  .debt-lp .debt-access-list div{
    grid-template-columns:1fr!important;
    gap:5px!important;
    padding:14px 0!important;
  }

  .debt-lp .debt-address{
    line-height:1.9!important;
    margin-bottom:22px!important;
  }
}


/* ==========================================================
   v3.15 FIRST VIEW TOP SPACE
   PC: reduce top blank space by about 60px
   Mobile: reduce conservatively by about 24px
   ========================================================== */
@media (min-width: 768px){
  .debt-lp .debt-hero{
    padding-top: clamp(52px, 4.5vw, 72px)!important;
  }
  .debt-lp .debt-hero-inner,
  .debt-lp .debt-hero__inner{
    padding-top: 0!important;
  }
}

@media (max-width: 767px){
  .debt-lp .debt-hero{
    padding-top: 28px!important;
  }
  .debt-lp .debt-hero-inner,
  .debt-lp .debt-hero__inner{
    padding-top: 0!important;
  }
}


/* ==========================================================
   v3.16 STABLE HERO
   Gutenberg-safe hero rendered via [saimu_hero]
   ========================================================== */

.debt-lp .debt-hero-v316{
  padding-top:clamp(52px,4.5vw,72px)!important;
}

@media(min-width:1101px){
  .debt-lp .debt-hero-v316 .debt-badges-v37{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:44px!important;
    gap:10px!important;
    width:100%!important;
    max-width:none!important;
    margin:18px 0 24px!important;
  }
  .debt-lp .debt-hero-v316 .debt-badges-v37>span{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0 8px!important;
    white-space:nowrap!important;
  }
}

@media(max-width:767px){
  .debt-lp .debt-hero-v316{
    padding-top:28px!important;
  }

  .debt-lp .debt-hero-v316 .debt-badges-v37{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    width:100%!important;
    max-width:none!important;
    margin:22px 0!important;
    padding:0!important;
  }

  .debt-lp .debt-hero-v316 .debt-badges-v37>span{
    display:flex!important;
    flex:0 0 52px!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
    margin:0!important;
    padding:0 14px!important;
  }
}


/* ==========================================================
   v3.17 MERITS CTA BANNER
   ========================================================== */
.debt-lp .debt-merit-cta-v317{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)!important;
  gap:34px!important;
  align-items:center!important;
  margin:46px auto 0!important;
  padding:30px 34px!important;
  border:1px solid rgba(143,213,202,.35)!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,#123548 0%,#174d61 100%)!important;
  color:#fff!important;
  box-shadow:0 18px 40px rgba(16,50,68,.14)!important;
}

.debt-lp .debt-merit-cta-v317-kicker{
  display:inline-block!important;
  margin-bottom:8px!important;
  color:#9ddfd5!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.1em!important;
}

.debt-lp .debt-merit-cta-v317 h3{
  margin:0 0 10px!important;
  color:#fff!important;
  font-size:24px!important;
  line-height:1.5!important;
}

.debt-lp .debt-merit-cta-v317 p{
  margin:0!important;
  color:rgba(255,255,255,.78)!important;
  font-size:14px!important;
  line-height:1.85!important;
}

.debt-lp .debt-merit-cta-v317-action{
  text-align:center!important;
}

.debt-lp .debt-merit-cta-v317-action .debt-btn{
  width:100%!important;
  max-width:320px!important;
  margin:0 auto!important;
}

.debt-lp .debt-merit-cta-v317-action small{
  display:block!important;
  margin-top:10px!important;
  color:rgba(255,255,255,.62)!important;
  font-size:11px!important;
  line-height:1.6!important;
}

@media(max-width:767px){
  .debt-lp .debt-merit-cta-v317{
    grid-template-columns:1fr!important;
    gap:22px!important;
    margin-top:34px!important;
    padding:24px 20px!important;
  }

  .debt-lp .debt-merit-cta-v317 h3{
    font-size:21px!important;
  }

  .debt-lp .debt-merit-cta-v317-action .debt-btn{
    max-width:none!important;
  }
}
