/* Enqueued only on pages containing [libertia_calculator]. */
.lbr-calculator-page {
  width: min(900px, 100%);
  max-width: 900px;
  margin-right: auto;
  margin-left: auto;
  --lbr-calculator-page-ink: var(--lb-ink, #1c1c1c);
  --lbr-calculator-page-muted: var(--lb-muted, #526168);
  --lbr-calculator-page-paper: var(--lb-paper, #f3f5f7);
  --lbr-calculator-page-navy: var(--lb-navy, #0f2540);
  color: var(--lbr-calculator-page-ink);
  font-family: Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: normal;
  overflow-wrap: anywhere;
}
.lbr-calculator-page *,
.lbr-calculator-page *::before,
.lbr-calculator-page *::after { box-sizing: border-box; }
.lbr-calculator-page p { margin: 0; }
.lbr-calculator-page h2,
.lbr-calculator-page h1 {
  position: static;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: var(--lbr-calculator-page-ink);
  letter-spacing: normal;
}
.lbr-calculator-page h1 { font: 400 40px/1.4 Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; text-align: center; }
.lbr-calculator-page h2 { font: 400 32px/1.4 Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; text-align: left; }
.lbr-calculator-page h2::before,
.lbr-calculator-page h2::after,
.lbr-calculator-page h1::before,
.lbr-calculator-page h1::after { content: none; }
/* B-title intro spacing: 48px outer + 24px inner on desktop; 32px + 16px on mobile. */
.lbr-calculator-page__hero { margin: 0; padding: 24px 0 24px; text-align: center; }
.lbr-calculator-page .lbr-calculator-page__hero .lbr-calculator-page__eyebrow { margin: 0 0 16px; color: var(--lbr-calculator-page-muted); font-size: 12px; font-weight: 400; line-height: 1.8; letter-spacing: .08em; }
.lbr-calculator-page .lbr-calculator-page__hero-title {
  position: static !important;
  display: block !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  box-shadow: none !important;
  color: var(--lbr-calculator-page-ink) !important;
  font-family: Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif !important;
  font-size: 40px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: normal !important;
  text-align: center !important;
  text-transform: none !important;
}
.lbr-calculator-page .lbr-calculator-page__hero-title::before,
.lbr-calculator-page .lbr-calculator-page__hero-title::after { content: none !important; display: none !important; }

.lbr-calculator-page .lbr-calculator-page__hero-lead { max-width: 640px; margin: 0 auto; color: var(--lbr-calculator-page-muted); font-size: 16px; font-weight: 500; line-height: 1.9; }
.lbr-calculator-app { display:block; width:100%; min-width:0; background:#fff; }
.lbr-calculator-page__contact {
  margin-top: 64px;
  padding: 48px 28px;
  border-radius: 16px;
  background: var(--lbr-calculator-page-paper);
  text-align: center;
}
.lbr-calculator-page__contact h2 { color: var(--lbr-calculator-page-ink); text-align: center; }
.lbr-calculator-page__contact p { max-width: 560px; margin: 24px auto 32px; color: var(--lbr-calculator-page-muted); }
/* Shared guide CTA padding: 16px vertical, 32px desktop / 24px mobile horizontal. */
.lbr-calculator-page .lbr-calculator-page__contact a.lbr-calculator-page__contact-button,
.lbr-calculator-page .lbr-calculator-page__contact a.lbr-calculator-page__contact-button:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: auto;
  min-height: 48px;
  margin: 0;
  padding: 16px 32px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--lbr-calculator-page-navy);
  color: #fff;
  font: 400 16px/1.5 Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  letter-spacing: normal;
  text-align: center;
  text-decoration: none;
  box-shadow: none;
}
.lbr-calculator-page a.lbr-calculator-page__contact-button { transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease; }
@media (hover: hover) and (pointer: fine) { .lbr-calculator-page a.lbr-calculator-page__contact-button:hover { background: #26364b; color: #fff; } }
@media screen { .lbr-calculator-page a.lbr-calculator-page__contact-button:active { background: #0b1b30; color: #fff; } }
.lbr-calculator-page a.lbr-calculator-page__contact-button:focus-visible { outline: 0; box-shadow: inset 0 0 0 2px #fff; text-decoration: underline; text-underline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .lbr-calculator-page a.lbr-calculator-page__contact-button { transition: none; } }
/* SWELL page title and spacing: scoped to the published calculator page only. */
#body_wrap.page-id-2894 {
  --swl-font_family: Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  --swl-letter_spacing: normal;
  font-family: var(--swl-font_family);
  letter-spacing: normal;
}
#body_wrap.page-id-2894 h1.c-pageTitle {
  display: none !important;
}
#body_wrap.page-id-2894 .l-mainContent__inner > .post_content { margin-top: 0 !important; }
body:has(.lbr-calculator-page) #body_wrap .l-content.l-container { margin-top: 48px !important; padding-top: 0 !important; }

/* Scope the page title and SWELL spacing to the page that uses this shortcode. */
body:has(.lbr-calculator-page) #body_wrap h1.c-pageTitle { display:none !important; }
body:has(.lbr-calculator-page) #body_wrap .l-mainContent__inner > .post_content { margin-top:0 !important; }
body:has(.lbr-calculator-page) #body_wrap .l-content.l-container { margin-top:48px !important; padding-top:0 !important; }
.lbr-calculator-page__app { display:block; width:100%; min-width:0; background:#fff; }
@media screen and (max-width: 600px) {
  body:has(.lbr-calculator-page) #body_wrap .l-content.l-container { margin-top: 32px !important; padding-top: 0 !important; }
  .lbr-calculator-page { font-size: 15px; }
  .lbr-calculator-page h2 { font-size: 24px; }
  .lbr-calculator-page__hero { padding: 16px 0 18px; }
  .lbr-calculator-page .lbr-calculator-page__hero .lbr-calculator-page__eyebrow { margin-bottom: 16px; }
  .lbr-calculator-page .lbr-calculator-page__hero-title { font-size: 32px !important; line-height: 1.4 !important; margin-bottom: 16px !important; }
  .lbr-calculator-page .lbr-calculator-page__hero-lead { max-width: 100%; font-size: 15px; font-weight: 500; line-height: 1.9; }
  .lbr-calculator-page__contact { margin-top: 48px; padding: 16px 24px; }
  .lbr-calculator-page .lbr-calculator-page__contact a.lbr-calculator-page__contact-button,
  .lbr-calculator-page .lbr-calculator-page__contact a.lbr-calculator-page__contact-button:visited { padding: 16px 24px; }
  .lbr-calculator-page__contact p { margin: 20px auto 24px; font-size: 15px; }
}
