/* JapaDeco Editorial Finish v1.0.0
   Premium single-post presentation layer. Scoped to single posts only. */

body.hashilo-japadeco-editorial-v1 {
  --jde-navy:#071f47;
  --jde-blue:#0a4f99;
  --jde-blue2:#1769b7;
  --jde-gold:#b48633;
  --jde-gold-soft:#d9c18f;
  --jde-cream:#f7f4ee;
  --jde-paper:#fffdfa;
  --jde-soft:#f8fafc;
  --jde-ink:#171b22;
  --jde-muted:#656d78;
  --jde-line:#e4e1da;
  --jde-line-blue:#dce7f2;
  --jde-shadow:0 16px 44px rgba(7,31,71,.075);
  background:#fff !important;
  color:var(--jde-ink);
}

/* Remove Cocoon chrome only from JapaDeco article pages. */
body.hashilo-japadeco-editorial-v1 #header-container,
body.hashilo-japadeco-editorial-v1 #navi,
body.hashilo-japadeco-editorial-v1 #footer,
body.hashilo-japadeco-editorial-v1 .footer,
body.hashilo-japadeco-editorial-v1 .breadcrumb,
body.hashilo-japadeco-editorial-v1 .breadcrumbs,
body.hashilo-japadeco-editorial-v1 .article-header,
body.hashilo-japadeco-editorial-v1 .eye-catch-wrap,
body.hashilo-japadeco-editorial-v1 .eye-catch,
body.hashilo-japadeco-editorial-v1 .article-footer,
body.hashilo-japadeco-editorial-v1 .sns-share,
body.hashilo-japadeco-editorial-v1 .sns-follow,
body.hashilo-japadeco-editorial-v1 .related-entries,
body.hashilo-japadeco-editorial-v1 .pager-post-navi,
body.hashilo-japadeco-editorial-v1 .post-navi,
body.hashilo-japadeco-editorial-v1 .author-box,
body.hashilo-japadeco-editorial-v1 .entry-categories-tags,
body.hashilo-japadeco-editorial-v1 .mobile-header-menu-buttons,
body.hashilo-japadeco-editorial-v1 .mobile-footer-menu-buttons,
body.hashilo-japadeco-editorial-v1 .go-to-top-button { display:none !important; }

body.hashilo-japadeco-editorial-v1 #content,
body.hashilo-japadeco-editorial-v1 .content-in,
body.hashilo-japadeco-editorial-v1 #main,
body.hashilo-japadeco-editorial-v1 .main {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
body.hashilo-japadeco-editorial-v1 #sidebar,
body.hashilo-japadeco-editorial-v1 .sidebar { display:none !important; }
body.hashilo-japadeco-editorial-v1 .article,
body.hashilo-japadeco-editorial-v1 .entry-content {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:#fff !important;
  box-shadow:none !important;
}

/* ---------- Site bar ---------- */
.jd-editorial-sitebar {
  position:sticky;
  top:0;
  z-index:9990;
  width:100%;
  background:rgba(255,255,255,.975);
  border-bottom:1px solid rgba(7,31,71,.09);
  backdrop-filter:saturate(160%) blur(12px);
  transition:box-shadow .2s ease, background .2s ease;
}
.jd-editorial-sitebar[data-scrolled] { box-shadow:0 8px 28px rgba(7,31,71,.07); }
.jd-editorial-sitebar__inner {
  max-width:1240px;
  height:74px;
  margin:0 auto;
  padding:0 30px;
  display:flex;
  align-items:center;
  gap:30px;
}
.jd-editorial-brand { display:flex; align-items:center; flex:0 0 auto; text-decoration:none !important; }
.jd-editorial-brand img { display:block; width:156px; height:auto; margin:0 !important; border-radius:0 !important; }
.jd-editorial-nav { display:flex; align-items:center; gap:23px; margin-left:auto; }
.jd-editorial-nav > a,
.jd-editorial-navmore__button {
  color:#273142 !important;
  font:680 13px/1.2 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  text-decoration:none !important;
  white-space:nowrap;
  border:0;
  background:transparent;
  padding:28px 0 27px;
  cursor:pointer;
  position:relative;
}
.jd-editorial-nav > a::after,
.jd-editorial-navmore__button::after {
  content:"";
  position:absolute;
  left:0; right:0; bottom:19px;
  height:1px;
  background:var(--jde-gold);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .18s ease;
}
.jd-editorial-nav > a:hover::after,
.jd-editorial-navmore__button:hover::after,
.jd-editorial-navmore__button[aria-expanded="true"]::after { transform:scaleX(1); }
.jd-editorial-navmore { position:relative; }
.jd-editorial-navmore__button { display:flex; align-items:center; gap:6px; }
.jd-editorial-navmore__button::before { content:""; }
.jd-editorial-navmore__panel {
  display:none;
  position:absolute;
  top:64px;
  right:-10px;
  width:190px;
  padding:9px;
  border:1px solid var(--jde-line);
  border-radius:10px;
  background:#fff;
  box-shadow:0 18px 48px rgba(7,31,71,.13);
}
.jd-editorial-navmore__panel[data-open] { display:grid; }
.jd-editorial-navmore__panel a {
  padding:11px 13px;
  color:#283447 !important;
  border-radius:6px;
  font:650 13px/1.3 Inter,system-ui,sans-serif;
  text-decoration:none !important;
}
.jd-editorial-navmore__panel a:hover { background:var(--jde-cream); color:var(--jde-navy) !important; }
.jd-editorial-actions { display:flex; align-items:center; gap:8px; }
.jd-editorial-search-toggle,
.jd-editorial-menu-toggle {
  height:40px;
  border:0;
  background:transparent;
  color:var(--jde-navy);
  font:700 12px/1 Inter,system-ui,sans-serif;
  cursor:pointer;
  border-radius:7px;
  padding:0 10px;
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.jd-editorial-search-toggle:hover,
.jd-editorial-menu-toggle:hover { background:var(--jde-cream); }
.jd-editorial-search-icon { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; }
.jd-editorial-menu-toggle { display:none; }
.jd-editorial-menu-lines { width:17px; display:grid; gap:3px; }
.jd-editorial-menu-lines i { display:block; height:1.5px; background:currentColor; }
.jd-editorial-search-panel,
.jd-editorial-mobile-nav {
  border-top:1px solid var(--jde-line);
  background:#fff;
}
.jd-editorial-search-panel[hidden], .jd-editorial-mobile-nav[hidden] { display:none !important; }
.jd-editorial-search-form { max-width:800px; margin:0 auto; padding:19px 28px; display:flex; gap:9px; }
.jd-editorial-search-form input {
  flex:1;
  min-width:0;
  padding:12px 14px;
  border:1px solid #cfd5df;
  border-radius:7px;
  color:var(--jde-ink);
  background:#fff;
  font:500 15px/1.3 Inter,system-ui,sans-serif;
}
.jd-editorial-search-form button {
  border:0;
  border-radius:7px;
  padding:0 20px;
  background:var(--jde-navy);
  color:#fff;
  font:750 13px/1 Inter,system-ui,sans-serif;
  cursor:pointer;
}
.jd-editorial-reading-progress {
  position:fixed;
  z-index:9991;
  left:0; right:0; top:73px;
  height:2px;
  pointer-events:none;
}
.jd-editorial-reading-progress span {
  display:block;
  width:100%; height:100%;
  transform:scaleX(0);
  transform-origin:left;
  background:linear-gradient(90deg,var(--jde-gold),#d1a55a,var(--jde-blue));
}

body.admin-bar .jd-editorial-sitebar { top:32px; }
body.admin-bar .jd-editorial-reading-progress { top:105px; }
@media (max-width:782px) {
  body.admin-bar .jd-editorial-sitebar { top:46px; }
  body.admin-bar .jd-editorial-reading-progress { top:109px; }
}

/* ---------- Article system ---------- */
body.hashilo-japadeco-editorial-v1 .entry-content > .jd-editorial-hero,
body.hashilo-japadeco-editorial-v1 .entry-content > .jd-article,
body.hashilo-japadeco-editorial-v1 .entry-content > .jd-editorial-intro-copy {
  box-sizing:border-box;
}
.jd-editorial-hero {
  width:min(1120px, calc(100% - 56px));
  margin:0 auto;
  padding:66px 0 52px;
}
.jd-editorial-hero__copy { max-width:930px; margin:0 auto 34px; }
.jd-editorial-breadcrumb {
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 25px;
  color:#7b828c;
  font:540 12.5px/1.5 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.jd-editorial-breadcrumb a { color:inherit !important; text-decoration:none !important; font-weight:540 !important; }
.jd-editorial-breadcrumb a:hover { color:var(--jde-blue) !important; }
.jd-editorial-breadcrumb span { color:#b2b5b9; }
.jd-editorial-guide-label,
.jd-v2-guide-label {
  display:flex !important;
  align-items:center;
  gap:12px;
  margin:0 0 16px !important;
  color:#76571b !important;
  font:800 11px/1.2 Inter,system-ui,-apple-system,"Segoe UI",sans-serif !important;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.jd-editorial-guide-label > span,
.jd-v2-guide-label > span { width:34px; height:1px; background:var(--jde-gold); display:block; }
.jd-editorial-hero h1,
.jd-v2-hero-copy h1 {
  max-width:940px;
  margin:0 0 19px !important;
  padding:0 !important;
  color:var(--jde-navy) !important;
  background:none !important;
  border:0 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(2.7rem,5.4vw,4.75rem) !important;
  font-weight:700 !important;
  line-height:1.02 !important;
  letter-spacing:-.042em !important;
  text-wrap:balance;
}
.jd-editorial-dek,
.jd-v2-summary {
  max-width:890px;
  margin:0 0 22px !important;
  color:#5c6470 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(1.17rem,1.7vw,1.42rem) !important;
  line-height:1.58 !important;
  font-weight:400 !important;
}
.jd-editorial-meta {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  color:#7b828b;
  font:560 12px/1.5 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.jd-editorial-meta__dot { color:#bcb8b0; }
.jd-editorial-verified { color:#64501f; }
.jd-editorial-hero__media,
.jd-v2-hero-media .jd-v2-image--hero {
  display:block;
  width:min(1060px,100%);
  margin:0 auto !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
}
.jd-editorial-hero__media img,
.jd-v2-hero-media img {
  display:block;
  width:100% !important;
  height:auto !important;
  max-height:680px;
  object-fit:cover;
  margin:0 !important;
  border-radius:14px !important;
  box-shadow:0 18px 48px rgba(7,31,71,.10);
}
.jd-editorial-intro-copy {
  max-width:820px;
  margin:0 auto 42px;
  padding:0 0 38px;
  border-bottom:1px solid var(--jde-line);
  color:#3f4650;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.12rem;
  line-height:1.9;
}
.jd-editorial-intro-copy p:last-child { margin-bottom:0; }

/* Content width and typography */
body.hashilo-japadeco-editorial-v1 .entry-content .jd-article {
  width:min(940px, calc(100% - 56px)) !important;
  max-width:940px !important;
  margin:0 auto !important;
  padding:0 0 84px !important;
  color:#303641 !important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size:17px !important;
  line-height:1.82 !important;
}
body.hashilo-japadeco-editorial-v1 .jd-article * { box-sizing:border-box; }
body.hashilo-japadeco-editorial-v1 .jd-article p { margin:0 0 1.35em; color:#3f4650; }
body.hashilo-japadeco-editorial-v1 .jd-article > p { max-width:820px; margin-left:auto; margin-right:auto; }
body.hashilo-japadeco-editorial-v1 .jd-article > ul,
body.hashilo-japadeco-editorial-v1 .jd-article > ol { max-width:820px; margin:1.15em auto 1.7em; }
body.hashilo-japadeco-editorial-v1 .jd-article li { margin:.52em 0; }
body.hashilo-japadeco-editorial-v1 .jd-article a {
  color:#0759a4 !important;
  text-decoration-color:rgba(10,79,153,.28) !important;
  text-underline-offset:.18em;
  font-weight:680;
}
body.hashilo-japadeco-editorial-v1 .jd-article a:hover { color:var(--jde-navy) !important; text-decoration-color:var(--jde-gold) !important; }

/* Legacy top-level headings become editorial guide chapters. */
body.jd-editorial-legacy .jd-article > h2 {
  max-width:820px;
  margin:76px auto 24px !important;
  padding:30px 0 0 !important;
  color:var(--jde-navy) !important;
  background:none !important;
  border:0 !important;
  border-top:1px solid var(--jde-line) !important;
  box-shadow:none !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(1.8rem,3.1vw,2.55rem) !important;
  line-height:1.18 !important;
  letter-spacing:-.022em !important;
  position:relative;
}
body.jd-editorial-legacy .jd-article > h2::after { display:none !important; content:none !important; }
body.jd-editorial-legacy .jd-article > h2::before {
  content:attr(data-jd-guide) !important;
  display:block !important;
  width:max-content;
  margin:0 0 12px !important;
  color:#87651e !important;
  font:800 10px/1 Inter,system-ui,sans-serif !important;
  letter-spacing:.17em;
  background:none !important;
  border:0 !important;
}
body.jd-editorial-legacy .jd-article > h3 {
  max-width:820px;
  margin:35px auto 13px !important;
  padding:0 !important;
  color:#24354d !important;
  background:none !important;
  border:0 !important;
  font:760 1.22rem/1.38 Inter,system-ui,sans-serif !important;
}

/* Quick answer */
body.jd-editorial-legacy .jd-summary-box,
body.jd-editorial-v2 .jd-v2-quick {
  max-width:880px !important;
  margin:0 auto 58px !important;
  padding:28px 30px 26px !important;
  border:1px solid #e4e0d6 !important;
  border-left:3px solid var(--jde-gold) !important;
  border-radius:10px !important;
  background:linear-gradient(135deg,#fffdfa 0%,#fbfaf7 100%) !important;
  box-shadow:0 10px 30px rgba(7,31,71,.035) !important;
}
body.jd-editorial-legacy .jd-summary-box h2,
body.jd-editorial-v2 .jd-v2-quick .jd-v2-quick-label {
  margin:0 0 14px !important;
  padding:0 !important;
  color:var(--jde-navy) !important;
  background:none !important;
  border:0 !important;
  font:780 1.25rem/1.35 Inter,system-ui,sans-serif !important;
}
body.jd-editorial-v2 .jd-v2-quick .jd-v2-quick-label::before { content:"Quick Answer"; }
body.jd-editorial-v2 .jd-v2-quick .jd-v2-quick-label { font-size:0 !important; }
body.jd-editorial-v2 .jd-v2-quick .jd-v2-quick-label::before { font-size:1.25rem; }
body.jd-editorial-legacy .jd-summary-box p,
body.jd-editorial-v2 .jd-v2-quick p { color:#444a54 !important; }
body.jd-editorial-legacy .jd-summary-box > *:last-child,
body.jd-editorial-v2 .jd-v2-quick > *:last-child { margin-bottom:0 !important; }

/* Note / warning / editorial CTA */
body.hashilo-japadeco-editorial-v1 .jd-note-box,
body.hashilo-japadeco-editorial-v1 .jd-warning-box,
body.hashilo-japadeco-editorial-v1 .jd-cta,
body.hashilo-japadeco-editorial-v1 .jd-cta-box {
  max-width:860px;
  margin:38px auto !important;
  padding:24px 26px !important;
  border-radius:10px !important;
  box-shadow:none !important;
}
body.hashilo-japadeco-editorial-v1 .jd-note-box {
  border:1px solid var(--jde-line) !important;
  border-left:3px solid #6789aa !important;
  background:#fff !important;
}
body.hashilo-japadeco-editorial-v1 .jd-warning-box {
  border:1px solid #ead9af !important;
  border-left:3px solid var(--jde-gold) !important;
  background:#fffaf0 !important;
}
body.hashilo-japadeco-editorial-v1 .jd-cta,
body.hashilo-japadeco-editorial-v1 .jd-cta-box {
  border:1px solid #cbd9e7 !important;
  border-top:2px solid var(--jde-blue) !important;
  background:#f8fbfe !important;
}
body.hashilo-japadeco-editorial-v1 .jd-note-box h2,
body.hashilo-japadeco-editorial-v1 .jd-warning-box h2,
body.hashilo-japadeco-editorial-v1 .jd-cta h2,
body.hashilo-japadeco-editorial-v1 .jd-cta-box h2,
body.hashilo-japadeco-editorial-v1 .jd-note-box h3,
body.hashilo-japadeco-editorial-v1 .jd-warning-box h3,
body.hashilo-japadeco-editorial-v1 .jd-cta h3,
body.hashilo-japadeco-editorial-v1 .jd-cta-box h3 {
  margin:0 0 12px !important;
  padding:0 !important;
  color:var(--jde-navy) !important;
  background:none !important;
  border:0 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(1.35rem,2.3vw,1.8rem) !important;
  line-height:1.25 !important;
}
body.hashilo-japadeco-editorial-v1 .jd-cta p,
body.hashilo-japadeco-editorial-v1 .jd-cta-box p { color:#38475a !important; }
body.hashilo-japadeco-editorial-v1 .jd-cta a,
body.hashilo-japadeco-editorial-v1 .jd-cta-box a {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-height:43px;
  margin-top:7px;
  padding:9px 16px !important;
  border:1px solid var(--jde-navy) !important;
  border-radius:5px !important;
  background:var(--jde-navy) !important;
  color:#fff !important;
  text-decoration:none !important;
  font:750 14px/1.3 Inter,system-ui,sans-serif !important;
}

/* Tables: editorial, not spreadsheet-like. */
body.hashilo-japadeco-editorial-v1 .jd-table-wrap,
body.hashilo-japadeco-editorial-v1 .jd-article > .jd-table {
  width:100%;
  margin:31px auto 42px !important;
  overflow-x:auto;
  border:1px solid var(--jde-line) !important;
  border-radius:9px !important;
  background:#fff;
  box-shadow:none !important;
}
body.hashilo-japadeco-editorial-v1 table.jd-table,
body.hashilo-japadeco-editorial-v1 .jd-table-wrap table,
body.hashilo-japadeco-editorial-v1 .jd-article > table {
  width:100% !important;
  min-width:680px;
  margin:0 !important;
  border:0 !important;
  border-collapse:collapse !important;
  background:#fff !important;
  font-size:.91rem !important;
  line-height:1.55 !important;
}
body.hashilo-japadeco-editorial-v1 .jd-table th,
body.hashilo-japadeco-editorial-v1 .jd-table-wrap th,
body.hashilo-japadeco-editorial-v1 .jd-article > table th {
  padding:13px 14px !important;
  color:#314055 !important;
  background:var(--jde-cream) !important;
  border:0 !important;
  border-bottom:1px solid #d9d3c7 !important;
  text-align:left !important;
  font-weight:780 !important;
}
body.hashilo-japadeco-editorial-v1 .jd-table td,
body.hashilo-japadeco-editorial-v1 .jd-table-wrap td,
body.hashilo-japadeco-editorial-v1 .jd-article > table td {
  padding:13px 14px !important;
  color:#444b55 !important;
  background:#fff !important;
  border:0 !important;
  border-bottom:1px solid #ece9e3 !important;
  border-right:1px solid #f0ede7 !important;
  vertical-align:top;
}
body.hashilo-japadeco-editorial-v1 .jd-table tr:last-child td,
body.hashilo-japadeco-editorial-v1 .jd-table-wrap tr:last-child td { border-bottom:0 !important; }
body.hashilo-japadeco-editorial-v1 .jd-table td:last-child,
body.hashilo-japadeco-editorial-v1 .jd-table th:last-child,
body.hashilo-japadeco-editorial-v1 .jd-table-wrap td:last-child,
body.hashilo-japadeco-editorial-v1 .jd-table-wrap th:last-child { border-right:0 !important; }
body.hashilo-japadeco-editorial-v1 .jd-table tr:nth-child(even),
body.hashilo-japadeco-editorial-v1 .jd-table tr:nth-child(even) td { background:#fcfcfb !important; }

/* V2 native magazine contract */
body.jd-editorial-v2 .entry-content .jd-v2-article {
  width:min(1120px, calc(100% - 56px)) !important;
  max-width:1120px !important;
  padding:64px 0 84px !important;
}
body.jd-editorial-v2 .jd-v2-hero { margin:0 0 58px !important; }
body.jd-editorial-v2 .jd-v2-hero-copy { max-width:930px; margin:0 auto 34px; }
body.jd-editorial-v2 .jd-v2-category {
  margin:0 0 24px !important;
  color:#7a8089 !important;
  font:560 12.5px/1.5 Inter,system-ui,sans-serif !important;
}
body.jd-editorial-v2 .jd-v2-learn,
body.jd-editorial-v2 .jd-v2-section,
body.jd-editorial-v2 .jd-v2-faq,
body.jd-editorial-v2 .jd-v2-official,
body.jd-editorial-v2 .jd-v2-final,
body.jd-editorial-v2 .jd-editorial-related,
body.jd-editorial-v2 .hashilo-affiliate {
  max-width:860px;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.jd-editorial-v2 .jd-v2-learn {
  margin-top:0 !important;
  margin-bottom:66px !important;
  padding:27px 30px 24px !important;
  border:1px solid var(--jde-line) !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:0 10px 28px rgba(7,31,71,.03) !important;
}
body.jd-editorial-v2 .jd-v2-learn h2 {
  margin:0 0 18px !important;
  padding:0 !important;
  color:var(--jde-navy) !important;
  background:none !important;
  border:0 !important;
  font:780 1.32rem/1.3 Inter,system-ui,sans-serif !important;
}
body.jd-editorial-v2 .jd-v2-learn ul {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px 30px;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
body.jd-editorial-v2 .jd-v2-learn li {
  position:relative;
  margin:0 !important;
  padding-left:21px;
  color:#4c5561;
  font-size:.92rem;
  line-height:1.58;
}
body.jd-editorial-v2 .jd-v2-learn li::before {
  content:"";
  position:absolute;
  left:2px; top:.55em;
  width:7px; height:7px;
  background:var(--jde-gold);
  transform:rotate(45deg);
}
body.jd-editorial-v2 .jd-v2-article { counter-reset:jde-guide; }
body.jd-editorial-v2 .jd-v2-section {
  counter-increment:jde-guide;
  margin-top:72px !important;
  margin-bottom:72px !important;
  padding-top:30px !important;
  border-top:1px solid var(--jde-line) !important;
}
body.jd-editorial-v2 .jd-v2-section-heading::before {
  content:"GUIDE " counter(jde-guide, decimal-leading-zero);
  display:block;
  margin:0 0 11px;
  color:#85631d;
  font:800 10px/1 Inter,system-ui,sans-serif;
  letter-spacing:.17em;
}
body.jd-editorial-v2 .jd-v2-section-heading h2,
body.jd-editorial-v2 .jd-v2-faq .jd-v2-section-heading h2,
body.jd-editorial-v2 .jd-v2-official .jd-v2-section-heading h2,
body.jd-editorial-v2 .jd-v2-final .jd-v2-section-heading h2 {
  margin:0 0 24px !important;
  padding:0 !important;
  color:var(--jde-navy) !important;
  background:none !important;
  border:0 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(1.8rem,3vw,2.5rem) !important;
  line-height:1.18 !important;
  letter-spacing:-.022em !important;
}
body.jd-editorial-v2 .jd-v2-section-copy { color:#3e4651; font-size:17px; line-height:1.82; }
body.jd-editorial-v2 .jd-v2-section-copy p { color:#3e4651 !important; }
body.jd-editorial-v2 .jd-v2-image--editorial {
  width:min(1040px, calc(100% + 180px));
  margin:38px -90px 42px !important;
}
body.jd-editorial-v2 .jd-v2-image--editorial img {
  display:block;
  width:100% !important;
  height:auto !important;
  margin:0 !important;
  border-radius:12px !important;
  box-shadow:0 12px 36px rgba(7,31,71,.075);
}
body.jd-editorial-v2 .jd-v2-image figcaption,
body.jd-editorial-v2 .jd-v2-caption {
  margin:9px 7px 0;
  color:#858b93;
  font:450 11.5px/1.45 Inter,system-ui,sans-serif;
  text-align:center;
}

/* Affiliate blocks are treated as editorial partner modules, not banner ads. */
body.hashilo-japadeco-editorial-v1 .hashilo-affiliate,
body.hashilo-japadeco-editorial-v1 .hashilo-affiliate-card-v2,
body.hashilo-japadeco-editorial-v1 .hashilo-affiliate-card-v3 {
  margin-top:42px !important;
  margin-bottom:48px !important;
  padding:25px 27px !important;
  border:1px solid #dce3ea !important;
  border-left:3px solid var(--jde-blue) !important;
  border-radius:8px !important;
  background:#f8fafc !important;
  box-shadow:none !important;
  color:#394453 !important;
}
body.hashilo-japadeco-editorial-v1 .hashilo-affiliate-disclosure {
  margin:0 0 12px !important;
  color:#7b828b !important;
  font-size:11.5px !important;
  line-height:1.5 !important;
}
body.hashilo-japadeco-editorial-v1 a.hashilo-cta,
body.hashilo-japadeco-editorial-v1 a.hashilo-affiliate-button-v3 {
  display:inline-flex !important;
  width:auto !important;
  min-height:43px !important;
  margin-top:10px !important;
  padding:9px 16px !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid var(--jde-navy) !important;
  border-radius:5px !important;
  background:var(--jde-navy) !important;
  color:#fff !important;
  box-shadow:none !important;
  text-decoration:none !important;
  font:750 14px/1.3 Inter,system-ui,sans-serif !important;
}

/* FAQ */
.jd-editorial-faq,
body.jd-editorial-v2 .jd-v2-faq {
  max-width:860px !important;
  margin:76px auto !important;
  padding-top:30px !important;
  border-top:1px solid var(--jde-line) !important;
}
.jd-editorial-section-head > span {
  display:block;
  margin:0 0 10px;
  color:#85631d;
  font:800 10px/1 Inter,system-ui,sans-serif;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.jd-editorial-section-head h2,
.jd-editorial-faq > .jd-editorial-section-head h2 {
  margin:0 0 24px !important;
  padding:0 !important;
  color:var(--jde-navy) !important;
  background:none !important;
  border:0 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(1.8rem,3vw,2.5rem) !important;
  line-height:1.18 !important;
}
.jd-editorial-faq-list,
body.jd-editorial-v2 .jd-v2-faq-list { display:grid; gap:0; border-top:1px solid var(--jde-line); }
.jd-editorial-faq-item,
body.jd-editorial-v2 .jd-v2-faq-item {
  margin:0 !important;
  border:0 !important;
  border-bottom:1px solid var(--jde-line) !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
}
.jd-editorial-faq-item summary,
body.jd-editorial-v2 .jd-v2-faq-item summary {
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:13px;
  padding:19px 42px 19px 0 !important;
  cursor:pointer;
  list-style:none;
  color:#2f3742 !important;
  font:730 1rem/1.5 Inter,system-ui,sans-serif !important;
}
.jd-editorial-faq-item summary::-webkit-details-marker,
body.jd-editorial-v2 .jd-v2-faq-item summary::-webkit-details-marker { display:none; }
.jd-editorial-q { color:#8b681e; font:800 11px/1.55 Inter,system-ui,sans-serif; }
body.jd-editorial-v2 .jd-v2-faq-item summary::before {
  content:"Q";
  flex:0 0 auto;
  color:#8b681e;
  font:800 11px/1.55 Inter,system-ui,sans-serif;
}
.jd-editorial-faq-item summary::after,
body.jd-editorial-v2 .jd-v2-faq-item summary::after {
  content:"+";
  position:absolute;
  right:3px;
  top:16px;
  color:#89691f;
  font:400 1.35rem/1 Inter,system-ui,sans-serif;
}
.jd-editorial-faq-item[open] summary::after,
body.jd-editorial-v2 .jd-v2-faq-item[open] summary::after { content:"−"; }
.jd-editorial-faq-answer,
body.jd-editorial-v2 .jd-v2-faq-answer {
  padding:0 42px 19px 24px !important;
  color:#4a515b;
}
.jd-editorial-faq-answer p:last-child,
body.jd-editorial-v2 .jd-v2-faq-answer p:last-child { margin-bottom:0 !important; }

/* Related - image cards */
.jd-editorial-related {
  max-width:940px !important;
  margin:82px auto 76px !important;
  padding-top:31px !important;
  border-top:1px solid var(--jde-line) !important;
}
.jd-editorial-related-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.jd-editorial-related-card {
  display:grid !important;
  grid-template-columns:138px minmax(0,1fr);
  min-height:132px;
  overflow:hidden;
  border:1px solid var(--jde-line) !important;
  border-radius:9px !important;
  background:#fff !important;
  color:var(--jde-ink) !important;
  text-decoration:none !important;
  font-weight:400 !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.jd-editorial-related-card:hover {
  transform:translateY(-2px);
  border-color:#d4c49f !important;
  box-shadow:0 14px 34px rgba(7,31,71,.075);
  text-decoration:none !important;
}
.jd-editorial-related-card__image { min-height:132px; background:#eef2f6; overflow:hidden; }
.jd-editorial-related-card__image img { width:100% !important; height:100% !important; min-height:132px; object-fit:cover; margin:0 !important; border-radius:0 !important; }
.jd-editorial-related-card__body { padding:16px 17px 15px; display:flex; flex-direction:column; align-items:flex-start; }
.jd-editorial-related-card__body > span { color:#8a6820; font:780 9.5px/1.3 Inter,system-ui,sans-serif; letter-spacing:.12em; text-transform:uppercase; }
.jd-editorial-related-card__body strong { margin:6px 0 12px; color:#293343; font-family:Georgia,"Times New Roman",serif; font-size:1.04rem; line-height:1.3; font-weight:700; }
.jd-editorial-related-card__body em { margin-top:auto; color:#66707c; font:650 11.5px/1.3 Inter,system-ui,sans-serif; font-style:normal; }
.jd-editorial-more-link {
  display:inline-flex !important;
  margin-top:18px;
  color:#5e6874 !important;
  text-decoration:none !important;
  font:680 12.5px/1.4 Inter,system-ui,sans-serif !important;
}
.jd-editorial-more-link span { margin-left:7px; color:var(--jde-gold); }

/* Sources / official references and final */
.jd-editorial-official,
body.jd-editorial-v2 .jd-v2-official {
  max-width:860px !important;
  margin:74px auto !important;
  padding:27px 29px !important;
  border:1px solid #e4dfd4 !important;
  border-radius:9px !important;
  background:var(--jde-cream) !important;
  box-shadow:none !important;
}
.jd-editorial-official h2,
body.jd-editorial-v2 .jd-v2-official h2 {
  margin:0 0 18px !important;
  color:var(--jde-navy) !important;
  background:none !important;
  border:0 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:1.65rem !important;
}
.jd-editorial-official ul,
body.jd-editorial-v2 .jd-v2-official ul { margin:0 !important; padding-left:1.15em !important; }
.jd-editorial-official li,
body.jd-editorial-v2 .jd-v2-official li { margin:.68em 0 !important; color:#4f5760; }
.jd-editorial-final,
body.jd-editorial-v2 .jd-v2-final {
  max-width:860px !important;
  margin:80px auto 12px !important;
  padding:31px 0 5px !important;
  border-top:1px solid var(--jde-line) !important;
}
.jd-editorial-final h2,
body.jd-editorial-v2 .jd-v2-final h2 {
  margin:0 0 22px !important;
  padding:0 !important;
  color:var(--jde-navy) !important;
  background:none !important;
  border:0 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(1.9rem,3vw,2.55rem) !important;
  line-height:1.18 !important;
}
.jd-editorial-final p,
body.jd-editorial-v2 .jd-v2-final p {
  color:#3e4650 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:1.08rem !important;
  line-height:1.9 !important;
}

/* Footer */
.jd-editorial-footer {
  width:100%;
  margin:0;
  background:var(--jde-navy);
  color:#fff;
}
.jd-editorial-footer__inner {
  max-width:1180px;
  margin:0 auto;
  padding:48px 30px 34px;
  display:grid;
  grid-template-columns:1.5fr repeat(3,1fr);
  gap:38px;
}
.jd-editorial-footer__brand img {
  display:block;
  width:174px;
  height:auto;
  margin:0 0 14px !important;
  padding:5px 8px;
  border-radius:4px !important;
  background:#fff;
}
.jd-editorial-footer__brand p { max-width:390px; margin:0 0 17px; color:#cbd4df; font:450 12.5px/1.7 Inter,system-ui,sans-serif; }
.jd-editorial-footer__browse { display:inline-flex !important; color:#e4bd76 !important; text-decoration:none !important; font:720 12.5px/1.4 Inter,system-ui,sans-serif !important; }
.jd-editorial-footer__browse span { margin-left:6px; }
.jd-editorial-footer h3 { margin:2px 0 13px; color:#dcb56d; font:800 10px/1.3 Inter,system-ui,sans-serif; letter-spacing:.15em; text-transform:uppercase; }
.jd-editorial-footer__inner > div:not(.jd-editorial-footer__brand) a {
  display:block;
  padding:5px 0;
  color:#f2f5f9 !important;
  text-decoration:none !important;
  font:560 12.5px/1.45 Inter,system-ui,sans-serif !important;
}
.jd-editorial-footer__inner a:hover { color:#e4bd76 !important; }
.jd-editorial-footer__legal {
  max-width:1180px;
  margin:0 auto;
  padding:18px 30px 22px;
  border-top:1px solid rgba(255,255,255,.12);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  color:#aebbc9;
  font:500 10.5px/1.5 Inter,system-ui,sans-serif;
}
.jd-editorial-footer__legal nav { display:flex; flex-wrap:wrap; gap:17px; }
.jd-editorial-footer__legal a { color:#d8e0e8 !important; text-decoration:none !important; }

/* ---------- Responsive ---------- */
@media (max-width:1100px) {
  .jd-editorial-nav { gap:16px; }
  .jd-editorial-nav > a:nth-of-type(4),
  .jd-editorial-nav > a:nth-of-type(5) { display:none; }
  .jd-editorial-related-card { grid-template-columns:118px minmax(0,1fr); }
}
@media (max-width:900px) {
  .jd-editorial-sitebar__inner { height:68px; padding:0 18px; }
  .jd-editorial-brand img { width:137px; }
  .jd-editorial-nav { display:none; }
  .jd-editorial-actions { margin-left:auto; }
  .jd-editorial-menu-toggle { display:inline-flex; }
  .jd-editorial-action-label { display:none; }
  .jd-editorial-reading-progress { top:67px; }
  .jd-editorial-mobile-nav__inner { padding:20px 22px 27px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 30px; }
  .jd-editorial-mobile-nav__eyebrow { grid-column:1/-1; margin:2px 0 7px; color:#88671f; font:800 10px/1.3 Inter,system-ui,sans-serif; letter-spacing:.15em; text-transform:uppercase; }
  .jd-editorial-mobile-nav__eyebrow--second { margin-top:17px; }
  .jd-editorial-mobile-nav a { padding:10px 0; border-bottom:1px solid #efede8; color:#293548 !important; text-decoration:none !important; font:680 13px/1.35 Inter,system-ui,sans-serif !important; }
  .jd-editorial-hero { width:min(100% - 36px, 1040px); padding-top:48px; }
  body.hashilo-japadeco-editorial-v1 .entry-content .jd-article { width:min(100% - 36px, 900px) !important; }
  .jd-editorial-intro-copy { width:calc(100% - 56px); }
  body.jd-editorial-v2 .entry-content .jd-v2-article { width:min(100% - 36px, 1040px) !important; padding-top:48px !important; }
  body.jd-editorial-v2 .jd-v2-image--editorial { width:100%; margin-left:0 !important; margin-right:0 !important; }
  .jd-editorial-footer__inner { grid-template-columns:1.25fr 1fr 1fr; }
  .jd-editorial-footer__inner > div:last-child { grid-column:2/4; }
}
@media (max-width:680px) {
  .jd-editorial-sitebar__inner { height:64px; padding:0 14px; }
  .jd-editorial-brand img { width:128px; }
  .jd-editorial-search-toggle { padding:0 7px; }
  .jd-editorial-menu-toggle { padding:0 7px; }
  .jd-editorial-reading-progress { top:63px; }
  .jd-editorial-search-form { padding:14px; }
  .jd-editorial-search-form button { padding:0 15px; }
  .jd-editorial-mobile-nav__inner { grid-template-columns:1fr; padding:18px 20px 25px; }
  .jd-editorial-hero { width:calc(100% - 30px); padding:37px 0 37px; }
  .jd-editorial-hero__copy,
  body.jd-editorial-v2 .jd-v2-hero-copy { margin-bottom:25px; }
  .jd-editorial-breadcrumb { margin-bottom:18px; font-size:11.5px; }
  .jd-editorial-guide-label,
  .jd-v2-guide-label { margin-bottom:13px !important; }
  .jd-editorial-hero h1,
  .jd-v2-hero-copy h1 { font-size:clamp(2.2rem,11vw,3.35rem) !important; line-height:1.04 !important; }
  .jd-editorial-dek,
  .jd-v2-summary { font-size:1.08rem !important; line-height:1.62 !important; }
  .jd-editorial-meta { font-size:11.2px; gap:5px 6px; }
  .jd-editorial-hero__media img,
  .jd-v2-hero-media img { border-radius:9px !important; box-shadow:0 10px 28px rgba(7,31,71,.075); }
  .jd-editorial-intro-copy { width:calc(100% - 38px); margin-bottom:35px; padding-bottom:30px; font-size:1.04rem; }
  body.hashilo-japadeco-editorial-v1 .entry-content .jd-article,
  body.jd-editorial-v2 .entry-content .jd-v2-article { width:calc(100% - 30px) !important; font-size:16px !important; line-height:1.8 !important; }
  body.jd-editorial-v2 .entry-content .jd-v2-article { padding-top:37px !important; }
  body.jd-editorial-legacy .jd-article > h2 { margin-top:58px !important; padding-top:24px !important; font-size:1.78rem !important; }
  body.jd-editorial-legacy .jd-article > h3 { font-size:1.14rem !important; }
  body.jd-editorial-legacy .jd-summary-box,
  body.jd-editorial-v2 .jd-v2-quick,
  body.jd-editorial-v2 .jd-v2-learn,
  body.hashilo-japadeco-editorial-v1 .jd-note-box,
  body.hashilo-japadeco-editorial-v1 .jd-warning-box,
  body.hashilo-japadeco-editorial-v1 .jd-cta,
  body.hashilo-japadeco-editorial-v1 .jd-cta-box,
  .jd-editorial-official,
  body.jd-editorial-v2 .jd-v2-official { padding:21px 19px !important; border-radius:8px !important; }
  body.jd-editorial-v2 .jd-v2-learn ul { grid-template-columns:1fr; gap:11px; }
  body.jd-editorial-v2 .jd-v2-section { margin-top:56px !important; margin-bottom:56px !important; padding-top:24px !important; }
  body.jd-editorial-v2 .jd-v2-section-heading h2 { font-size:1.76rem !important; }
  body.hashilo-japadeco-editorial-v1 table.jd-table,
  body.hashilo-japadeco-editorial-v1 .jd-table-wrap table,
  body.hashilo-japadeco-editorial-v1 .jd-article > table { min-width:620px; font-size:13.5px !important; }
  .jd-editorial-related-grid { grid-template-columns:1fr; }
  .jd-editorial-related-card { grid-template-columns:112px minmax(0,1fr); min-height:116px; }
  .jd-editorial-related-card__image { min-height:116px; }
  .jd-editorial-related-card__image img { min-height:116px; }
  .jd-editorial-related-card__body { padding:13px 14px; }
  .jd-editorial-faq-item summary,
  body.jd-editorial-v2 .jd-v2-faq-item summary { padding-right:35px !important; }
  .jd-editorial-faq-answer,
  body.jd-editorial-v2 .jd-v2-faq-answer { padding-left:24px !important; padding-right:12px !important; }
  .jd-editorial-footer__inner { grid-template-columns:1fr; padding:39px 22px 27px; gap:26px; }
  .jd-editorial-footer__inner > div:last-child { grid-column:auto; }
  .jd-editorial-footer__legal { padding:17px 22px 21px; display:grid; gap:12px; }
  .jd-editorial-footer__legal nav { gap:10px 15px; }
}

/* ---------- Print/PDF ----------
   Web-only navigation and related-card discovery are intentionally removed from print.
   FAQ answers are expanded so the PDF remains complete. */
@media print {
  @page { size:auto; margin:12mm 12mm 14mm; }
  .jd-editorial-sitebar,
  .jd-editorial-reading-progress,
  .jd-editorial-related,
  .hashilo-affiliate,
  .hashilo-affiliate-card-v2,
  .hashilo-affiliate-card-v3 { display:none !important; }
  html, body, body.hashilo-japadeco-editorial-v1 { background:#fff !important; }
  body.hashilo-japadeco-editorial-v1 .entry-content .jd-article,
  body.jd-editorial-v2 .entry-content .jd-v2-article,
  .jd-editorial-hero { width:100% !important; max-width:none !important; }
  .jd-editorial-hero { padding:0 0 9mm; }
  body.jd-editorial-v2 .entry-content .jd-v2-article { padding:0 0 8mm !important; }
  .jd-editorial-hero h1,
  .jd-v2-hero-copy h1 { font-size:25pt !important; line-height:1.1 !important; }
  .jd-editorial-dek,
  .jd-v2-summary { font-size:12pt !important; }
  .jd-editorial-hero__media img,
  .jd-v2-hero-media img { max-height:150mm; box-shadow:none; }
  .jd-editorial-intro-copy,
  body.hashilo-japadeco-editorial-v1 .jd-article > p,
  body.hashilo-japadeco-editorial-v1 .jd-article > ul,
  body.hashilo-japadeco-editorial-v1 .jd-article > ol,
  body.jd-editorial-legacy .jd-article > h2,
  body.jd-editorial-legacy .jd-article > h3 { max-width:none; }
  body.hashilo-japadeco-editorial-v1 .entry-content .jd-article,
  body.jd-editorial-v2 .jd-v2-section-copy { font-size:10.5pt !important; line-height:1.55 !important; }
  body.hashilo-japadeco-editorial-v1 .jd-summary-box,
  body.hashilo-japadeco-editorial-v1 .jd-note-box,
  body.hashilo-japadeco-editorial-v1 .jd-warning-box,
  body.hashilo-japadeco-editorial-v1 .jd-cta,
  body.jd-editorial-v2 .jd-v2-quick,
  body.jd-editorial-v2 .jd-v2-learn,
  .jd-editorial-faq-item,
  body.jd-editorial-v2 .jd-v2-faq-item,
  .jd-editorial-official,
  body.jd-editorial-v2 .jd-v2-official { box-shadow:none !important; break-inside:avoid; page-break-inside:avoid; }
  body.jd-editorial-legacy .jd-article > h2,
  body.jd-editorial-legacy .jd-article > h3,
  body.jd-editorial-v2 .jd-v2-section-heading { break-after:avoid; page-break-after:avoid; }
  .jd-editorial-faq-item > .jd-editorial-faq-answer,
  body.jd-editorial-v2 .jd-v2-faq-item > .jd-v2-faq-answer { display:block !important; padding-bottom:16px !important; }
  .jd-editorial-faq-item summary::after,
  body.jd-editorial-v2 .jd-v2-faq-item summary::after { display:none !important; }
  .jd-editorial-faq-item:not([open]) > .jd-editorial-faq-answer,
  body.jd-editorial-v2 .jd-v2-faq-item:not([open]) > .jd-v2-faq-answer { display:block !important; }
  body.jd-editorial-v2 .jd-v2-image--editorial { width:100% !important; margin-left:0 !important; margin-right:0 !important; }

  .jd-editorial-footer {
    margin-top:12mm !important;
    background:#fff !important;
    color:#071f47 !important;
    border-top:1px solid #d8d2c6 !important;
    break-inside:avoid;
    page-break-inside:avoid;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
  .jd-editorial-footer__inner { padding:8mm 0 5mm !important; grid-template-columns:1.5fr repeat(3,1fr) !important; gap:7mm !important; }
  .jd-editorial-footer__brand img { width:42mm !important; padding:0 !important; background:#fff !important; }
  .jd-editorial-footer__brand p,
  .jd-editorial-footer__legal { color:#5f6874 !important; }
  .jd-editorial-footer h3 { color:#8a6820 !important; }
  .jd-editorial-footer__inner > div:not(.jd-editorial-footer__brand) a,
  .jd-editorial-footer__legal a { color:#26354b !important; }
  .jd-editorial-footer__browse { color:#8a6820 !important; }
  .jd-editorial-footer__legal { padding:4mm 0 0 !important; border-top:1px solid #e2ded6 !important; }
}

/* HASHILO_CONTRAST_FIX_20260904 — JapaDeco Plan Your Next Step only */
body.hashilo-japadeco-editorial-v1.hashilo-media-shell-japadeco .hashilo-mobile-deck,
body.hashilo-japadeco-editorial-v1.hashilo-media-shell-japadeco .hashilo-rail-goal{
  background:#f4f8fc!important;
  border-color:#bfd0e2!important;
  color:#172333!important;
}
body.hashilo-japadeco-editorial-v1.hashilo-media-shell-japadeco .hashilo-mobile-deck-head span,
body.hashilo-japadeco-editorial-v1.hashilo-media-shell-japadeco .hashilo-kicker{
  color:#071f47!important;
}
body.hashilo-japadeco-editorial-v1.hashilo-media-shell-japadeco .hashilo-mobile-deck-head b,
body.hashilo-japadeco-editorial-v1.hashilo-media-shell-japadeco .hashilo-rail-goal p{
  color:#172333!important;
}
body.hashilo-japadeco-editorial-v1.hashilo-media-shell-japadeco .hashilo-mobile-deck-commerce a{
  background:#071f47!important;
  border:1px solid #071f47!important;
  color:#fff!important;
  text-shadow:none!important;
}
body.hashilo-japadeco-editorial-v1.hashilo-media-shell-japadeco .hashilo-mobile-deck-commerce a span{
  color:#fff!important;
}
/* END HASHILO_CONTRAST_FIX_20260904 */
