/* KJA relationship hero, self-contained and scoped to #kja-relationship-hero. */
#kja-relationship-hero, #kja-relationship-hero * {box-sizing:border-box}
#kja-relationship-hero {--kja-ink:#0d2c28;--kja-dark:#0b2420;--kja-light:#f9f2e8;--kja-ochre:#e9ad7d;--kja-mint:#b5d4c0;--kja-max:1500px; font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",sans-serif; color:var(--kja-light); background:radial-gradient(circle at 76% 29%,#294d44 0%,#132f29 31%,#0c2421 64%,#081c1a 100%); position:relative; isolation:isolate; overflow:hidden; min-height:820px; padding:32px clamp(26px,4.5vw,80px) 22px; width:100%; margin:0; line-height:1.5; letter-spacing:normal; text-align:left; border-radius:0;box-shadow:none}
#kja-relationship-hero::before {content:"";position:absolute;z-index:-1;inset:0;opacity:.2;pointer-events:none;background-image:radial-gradient(#e8efdf .55px,transparent .75px);background-size:11px 11px;mask-image:linear-gradient(105deg,transparent 16%,#000 95%)}
#kja-relationship-hero .kja-hero__glow {pointer-events:none;position:absolute; border-radius:50%;filter:blur(2px);z-index:-1}
#kja-relationship-hero .kja-hero__glow--top {width:850px;height:850px;right:-530px;top:-560px;border:1px solid rgba(188,214,185,.09);box-shadow:0 0 0 75px rgba(188,214,185,.015),0 0 0 180px rgba(188,214,185,.012)}
#kja-relationship-hero .kja-hero__glow--bottom {width:550px;height:550px;left:-400px;bottom:-340px;background:radial-gradient(circle,rgba(129,180,152,.07),transparent 66%)}
#kja-relationship-hero .kja-hero__top,#kja-relationship-hero .kja-hero__bottom {display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:var(--kja-max);margin-left:auto;margin-right:auto;position:relative;z-index:3}
#kja-relationship-hero .kja-hero__top {font-family:Arial,sans-serif;color:#c0d5c9;font-size:10px;letter-spacing:.17em;font-weight:600;padding-bottom:15px;border-bottom:1px solid rgba(214,238,219,.19)}
#kja-relationship-hero .kja-hero__toplabel {display:flex;align-items:center;gap:11px}
#kja-relationship-hero .kja-hero__indicator {display:inline-block;width:7px;height:7px;border-radius:100%;background:var(--kja-ochre);box-shadow:0 0 0 5px rgba(233,173,125,.09)}
#kja-relationship-hero .kja-hero__slash {opacity:.35;margin:0 5px}
#kja-relationship-hero .kja-hero__topright {display:flex;align-items:center;gap:12px;color:#a2b8a9;font-size:9px}
#kja-relationship-hero .kja-hero__topline {display:inline-block;width:25px;height:1px;background:#c7d8c9;opacity:.7}
#kja-relationship-hero .kja-hero__body {position:relative;max-width:var(--kja-max);margin:auto;min-height:700px;display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);align-items:center;gap:8px}
#kja-relationship-hero .kja-hero__copy {position:relative;z-index:3;padding-top:20px;padding-bottom:56px}
#kja-relationship-hero .kja-hero__edition {font-family:Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:.15em;color:#c3d7c7;margin:0 0 18px 0;animation:kja-slide-fade .65s both .07s}
#kja-relationship-hero .kja-hero__edition-bracket {color:var(--kja-ochre);font-size:17px;font-weight:400;padding:0 6px}
#kja-relationship-hero .kja-hero__title-slot {min-height:135px}
#kja-relationship-hero .kja-hero__title {font-family:"Hiragino Mincho ProN","Yu Mincho","Noto Serif JP",Georgia,serif;letter-spacing:-.09em;color:#fff9ed;font-weight:600;font-size:clamp(65px,6.7vw,120px);line-height:1.1;margin:0;display:flex;flex-direction:column;white-space:nowrap;animation:kja-slide-fade .76s both .15s;text-shadow:0 8px 35px rgba(0,0,0,.08)}
#kja-relationship-hero .kja-hero__title span {display:block;font-size:.64em;letter-spacing:-.035em;color:var(--kja-ochre);padding-left:3px;margin-top:4px}
#kja-relationship-hero .kja-hero__copyrule {display:flex;align-items:center;gap:13px;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.19em;color:#8faf9d;white-space:nowrap;margin-top:27px;margin-bottom:20px;animation:kja-slide-fade .76s both .26s}
#kja-relationship-hero .kja-hero__copyline {height:1px;width:46px;background:var(--kja-ochre)}
#kja-relationship-hero .kja-hero__statement {font-size:clamp(24px,2.25vw,39px);font-family:"Hiragino Mincho ProN","Yu Mincho","Noto Serif JP",Georgia,serif;font-weight:600;line-height:1.6;letter-spacing:-.035em;color:#f8f1e7;margin:0 0 15px;animation:kja-slide-fade .76s both .31s}
#kja-relationship-hero .kja-hero__period {color:var(--kja-ochre)}
#kja-relationship-hero .kja-hero__description {font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:#bac9bd;font-size:13px;letter-spacing:.025em;line-height:2.3;margin:0;animation:kja-slide-fade .76s both .4s}
#kja-relationship-hero .kja-hero__actions {display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:33px;animation:kja-slide-fade .76s both .48s}
#kja-relationship-hero .kja-hero__cta,#kja-relationship-hero .kja-hero__secondary {appearance:none;cursor:pointer;font-size:12px;letter-spacing:.035em;text-decoration:none;font-family:inherit;font-weight:700;display:inline-flex;align-items:center;justify-content:space-between;min-height:52px;white-space:nowrap;transition:transform .26s ease,background .26s ease,color .26s ease,border-color .26s ease;outline-offset:4px}
#kja-relationship-hero .kja-hero__cta {background:#f4eee0;color:#13302a;padding:5px 6px 5px 23px;gap:28px;border-radius:60px;border:1px solid #f4eee0}
#kja-relationship-hero .kja-hero__cta-icon {display:grid;place-items:center;color:#fff;background:#234b3f;width:40px;height:40px;border-radius:50%;font-size:19px;font-family:Arial,sans-serif;transition:transform .25s ease}
#kja-relationship-hero .kja-hero__secondary {color:#d0dfd3;background:transparent;border:1px solid rgba(206,229,212,.26);border-radius:60px;padding:8px 18px;gap:10px}
#kja-relationship-hero .kja-hero__secondary-ring {font-size:20px;color:#e9ad7d;line-height:1}
#kja-relationship-hero .kja-hero__cta:hover,#kja-relationship-hero .kja-hero__secondary:hover {transform:translateY(-2px)}
#kja-relationship-hero .kja-hero__cta:hover .kja-hero__cta-icon {transform:rotate(-45deg)}
#kja-relationship-hero .kja-hero__secondary:hover {border-color:#c8d7c5;background:rgba(245,245,225,.07)}
#kja-relationship-hero .kja-hero__micro {color:#88a79a;font-size:11px;letter-spacing:.08em;margin-top:33px;animation:kja-slide-fade .76s both .55s}
#kja-relationship-hero .kja-hero__micro-icon {color:var(--kja-ochre);font-size:18px;vertical-align:middle;margin-right:8px}
#kja-relationship-hero .kja-hero__visual {position:relative;min-width:0;padding-bottom:3px;perspective:1100px;--kja-mx:0px;--kja-my:0px;--kja-scroll:0px}
#kja-relationship-hero .kja-hero__diagram {width:100%;max-width:720px;aspect-ratio:720/680;margin:0 auto;position:relative;transform:translate3d(var(--kja-mx),calc(var(--kja-my) + var(--kja-scroll)),0);transition:transform .35s ease-out}
#kja-relationship-hero .kja-hero__routes,#kja-relationship-hero .kja-hero__contours {position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
#kja-relationship-hero .kja-hero__contours {fill:none;stroke:rgba(183,213,189,.11);stroke-width:1;stroke-dasharray:2 9}
#kja-relationship-hero .kja-hero__contours circle {stroke-opacity:.48;stroke-dasharray:1 10}
#kja-relationship-hero .kja-hero__route {fill:none;stroke:rgba(188,215,194,.47);stroke-width:1.5;stroke-dasharray:7 9;stroke-linecap:round;opacity:.6;transition:opacity .32s ease,stroke .32s ease,stroke-width .32s ease}
#kja-relationship-hero .kja-hero__route--active {stroke:#edbb94;stroke-width:2.4;opacity:1;stroke-dasharray:10 7}
#kja-relationship-hero .kja-hero__route-spark {fill:#f8c596;stroke:#18463d;stroke-width:1.2;filter:drop-shadow(0 0 8px rgba(246,207,147,.65))}
#kja-relationship-hero .kja-hero__place {appearance:none;position:absolute;aspect-ratio:1/1;padding:0;margin:0;border:0;color:inherit;background:transparent;cursor:pointer;border-radius:50%;display:block;z-index:2;box-shadow:none;line-height:1;transform:translate(-50%,-50%);transition:filter .3s ease,scale .36s ease;outline-offset:7px}
#kja-relationship-hero .kja-hero__place--mountain {left:25.8%;top:25.4%;width:32%;--kja-delay:0s}
#kja-relationship-hero .kja-hero__place--sea {left:80.7%;top:25.9%;width:27%;--kja-delay:.8s}
#kja-relationship-hero .kja-hero__place--town {left:23.6%;top:74.1%;width:26%;--kja-delay:1.4s}
#kja-relationship-hero .kja-hero__place--field {left:78.9%;top:72.9%;width:31%;--kja-delay:.36s}
#kja-relationship-hero .kja-hero__place-ring {position:absolute;inset:-11px;border-radius:50%;border:1px dashed rgba(231,238,215,.27);transition:border-color .25s ease,transform .4s ease;animation:kja-spin 45s linear infinite;pointer-events:none}
#kja-relationship-hero .kja-hero__place-picture {position:absolute;inset:0;display:block;border-radius:50%;overflow:hidden;border:5px solid rgba(245,241,225,.17);box-shadow:0 17px 50px rgba(0,0,0,.26),inset 0 1px 7px rgba(0,0,0,.2);transform:translateY(0);animation:kja-place-drift 7s ease-in-out infinite;animation-delay:var(--kja-delay)}
#kja-relationship-hero .kja-hero__place svg {width:100%;height:100%;display:block}
#kja-relationship-hero .kja-hero__place-label {font-family:Arial,"Hiragino Kaku Gothic ProN",sans-serif;position:absolute;white-space:nowrap;left:50%;bottom:-9px;transform:translateX(-50%);background:#f0ebdd;color:#1c4539;border-radius:60px;font-size:11px;font-weight:700;letter-spacing:.04em;padding:11px 14px;line-height:1;box-shadow:0 7px 18px rgba(0,0,0,.25);z-index:2}
#kja-relationship-hero .kja-hero__place-label span {color:#b77752;font-size:14px;margin-left:7px}
#kja-relationship-hero .kja-hero__place:is(:hover,:focus-visible,.is-active) {scale:1.045;filter:drop-shadow(0 0 18px rgba(236,180,126,.17))}
#kja-relationship-hero .kja-hero__place:is(:hover,:focus-visible,.is-active) .kja-hero__place-ring {border-color:#eac19a;transform:scale(1.03)}
#kja-relationship-hero .kja-hero__place:is(:hover,:focus-visible,.is-active) .kja-hero__place-picture {border-color:#e5b992}
#kja-relationship-hero .kja-hero__self {position:absolute;left:49.44%;top:48.2%;width:112px;height:112px;transform:translate(-50%,-50%);border:1px solid rgba(239,221,181,.44);border-radius:50%;z-index:5;background:rgba(9,46,39,.86);display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:0 0 0 13px rgba(235,189,141,.045),0 0 0 25px rgba(235,189,141,.025),0 11px 43px rgba(0,0,0,.25)}
#kja-relationship-hero .kja-hero__self::after {content:"";position:absolute;width:129px;height:129px;border:1px solid rgba(239,221,181,.14);border-radius:50%;animation:kja-self-pulse 4s ease-in-out infinite;pointer-events:none}
#kja-relationship-hero .kja-hero__self svg {width:66px;height:66px;border-radius:100%;background:#e4ad87;padding:8px;display:block;margin-top:-2px}
#kja-relationship-hero .kja-hero__self-label {font-size:11px;letter-spacing:.12em;font-weight:700;color:#f1eee4;margin-top:5px}
#kja-relationship-hero .kja-hero__coord {position:absolute;font-family:Arial,sans-serif;line-height:1.65;font-size:9px;letter-spacing:.14em;color:rgba(206,228,208,.34);pointer-events:none}
#kja-relationship-hero .kja-hero__coord--top {right:0;top:1%;text-align:right}
#kja-relationship-hero .kja-hero__coord--bottom {left:39%;bottom:2%;text-align:left}
#kja-relationship-hero .kja-hero__story {position:relative;z-index:3;margin:-12px 0 0 17%;width:min(460px,83%);padding:15px 20px 17px;border:1px solid rgba(214,231,215,.16);border-left:2px solid #e8b48d;background:rgba(11,31,28,.64);box-shadow:0 12px 38px rgba(0,0,0,.1);backdrop-filter:blur(10px)}
#kja-relationship-hero .kja-hero__story-marker {font-size:10px;color:#e9b48c;letter-spacing:.12em;font-family:Arial,sans-serif;display:flex;gap:10px;align-items:center}
#kja-relationship-hero .kja-hero__story-divider {height:1px;width:18px;background:rgba(230,190,144,.6)}
#kja-relationship-hero .kja-hero__story-title {font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(15px,1.5vw,21px);letter-spacing:-.02em;line-height:1.6;margin:6px 0 4px;color:#f8f1e5;font-weight:600}
#kja-relationship-hero .kja-hero__story-bottom {display:flex;align-items:center;justify-content:space-between;gap:16px}
#kja-relationship-hero .kja-hero__story-bottom p {font-size:11px;color:#a4bcae;line-height:1.8;margin:0}
#kja-relationship-hero .kja-hero__story-arrow {font-family:Arial,sans-serif;color:#ddb58d;font-size:19px}
#kja-relationship-hero .kja-hero__story.is-switching {animation:kja-story-switch .4s both}
#kja-relationship-hero .kja-hero__bottom {font-size:9px;font-family:Arial,sans-serif;color:#a5b9ae;letter-spacing:.18em;padding-top:14px;border-top:1px solid rgba(214,238,219,.19)}
#kja-relationship-hero .kja-hero__bottom i {display:inline-block;width:44px;height:1px;background:#a7bcac;vertical-align:middle;margin:0 5px}
#kja-relationship-hero .kja-hero__bottom a {text-decoration:none;color:#d1dcd1;white-space:nowrap;transition:color .2s ease}
#kja-relationship-hero .kja-hero__bottom a:hover {color:#e9ad7d}
#kja-relationship-hero .kja-hero__bottom a span {font-size:14px;margin-left:8px;display:inline-block;animation:kja-scroll-nudge 2.4s ease-in-out infinite}
#kja-relationship-hero :focus-visible {outline:2px solid #f7c898;outline-offset:5px}
@keyframes kja-place-drift {0%,100% {transform:translateY(0)}50% {transform:translateY(-8px)}}
@keyframes kja-spin {to {rotate:360deg}}
@keyframes kja-self-pulse {0%,100% {transform:scale(1);opacity:.6}50% {transform:scale(1.11);opacity:.2}}
@keyframes kja-scroll-nudge {0%,100% {transform:translateY(0)}48% {transform:translateY(5px)}}
@keyframes kja-slide-fade {from {opacity:0;transform:translateY(17px)}to {opacity:1;transform:translateY(0)}}
@keyframes kja-story-switch {from {opacity:.7;transform:translateY(4px)}to {opacity:1;transform:translateY(0)}}
@media (min-width:1650px) {#kja-relationship-hero {padding-top:36px;padding-bottom:30px}#kja-relationship-hero .kja-hero__body {min-height:780px}#kja-relationship-hero .kja-hero__title {font-size:125px}}
@media (max-width:1230px) and (min-width:961px) {#kja-relationship-hero {padding-left:35px;padding-right:35px;min-height:745px}#kja-relationship-hero .kja-hero__body {min-height:635px;grid-template-columns:minmax(0,48%) minmax(0,52%)}#kja-relationship-hero .kja-hero__title {font-size:clamp(64px,7.1vw,92px)}#kja-relationship-hero .kja-hero__statement {font-size:26px}#kja-relationship-hero .kja-hero__description {font-size:12px}#kja-relationship-hero .kja-hero__story {margin-top:-6px}#kja-relationship-hero .kja-hero__self {width:94px;height:94px}#kja-relationship-hero .kja-hero__self svg {width:55px;height:55px}}
@media (max-width:960px) {#kja-relationship-hero {padding:26px 35px 22px;min-height:0}#kja-relationship-hero .kja-hero__body {display:flex;flex-direction:column;min-height:0;gap:8px;align-items:stretch}#kja-relationship-hero .kja-hero__copy {padding:48px 0 9px;max-width:650px}#kja-relationship-hero .kja-hero__title-slot {min-height:0}#kja-relationship-hero .kja-hero__title {font-size:clamp(74px,10vw,120px)}#kja-relationship-hero .kja-hero__statement {font-size:clamp(27px,3vw,35px)}#kja-relationship-hero .kja-hero__visual {max-width:690px;width:100%;margin:0 auto 28px}#kja-relationship-hero .kja-hero__diagram {max-width:635px}#kja-relationship-hero .kja-hero__story {margin:-15px 0 0 24%;width:min(450px,75%)}#kja-relationship-hero .kja-hero__bottom {margin-top:0}}
@media (max-width:600px) {#kja-relationship-hero {padding:19px 20px 18px;overflow:hidden;min-height:0}#kja-relationship-hero .kja-hero__top {font-size:8px;letter-spacing:.09em;padding-bottom:13px}#kja-relationship-hero .kja-hero__toplabel {gap:8px}#kja-relationship-hero .kja-hero__slash,#kja-relationship-hero .kja-hero__topright {display:none}#kja-relationship-hero .kja-hero__copy {padding:43px 0 12px}#kja-relationship-hero .kja-hero__edition {font-size:9px;letter-spacing:.11em;margin-bottom:23px}#kja-relationship-hero .kja-hero__title {font-size:clamp(58px,15vw,86px);line-height:1.18}#kja-relationship-hero .kja-hero__title span {margin-top:0}#kja-relationship-hero .kja-hero__copyrule {margin-top:23px;margin-bottom:14px;font-size:8px}#kja-relationship-hero .kja-hero__statement {font-size:clamp(24px,6.5vw,31px);line-height:1.75;margin-bottom:10px}#kja-relationship-hero .kja-hero__description {font-size:12px;line-height:2.15;letter-spacing:0}#kja-relationship-hero .kja-hero__description br {display:none}#kja-relationship-hero .kja-hero__actions {margin-top:24px;gap:9px}#kja-relationship-hero .kja-hero__cta,#kja-relationship-hero .kja-hero__secondary {min-height:46px;font-size:10px}#kja-relationship-hero .kja-hero__cta {padding:4px 4px 4px 14px;gap:9px}#kja-relationship-hero .kja-hero__cta-icon {width:34px;height:34px}#kja-relationship-hero .kja-hero__secondary {padding:5px 11px;gap:5px}#kja-relationship-hero .kja-hero__micro {margin-top:19px;margin-bottom:0;font-size:10px}#kja-relationship-hero .kja-hero__visual {margin-top:0;margin-bottom:27px}#kja-relationship-hero .kja-hero__diagram {width:calc(100% + 38px);margin-left:-19px;max-width:none;aspect-ratio:720/680}#kja-relationship-hero .kja-hero__place-picture {border-width:3px}#kja-relationship-hero .kja-hero__place-ring {inset:-7px}#kja-relationship-hero .kja-hero__place-label {font-size:8px;padding:7px 9px;bottom:-8px}#kja-relationship-hero .kja-hero__place-label span {margin-left:3px;font-size:10px}#kja-relationship-hero .kja-hero__self {width:63px;height:63px;box-shadow:0 0 0 7px rgba(235,189,141,.065)}#kja-relationship-hero .kja-hero__self::after {width:73px;height:73px}#kja-relationship-hero .kja-hero__self svg {width:40px;height:40px;padding:4px}#kja-relationship-hero .kja-hero__self-label {font-size:8px;margin-top:-1px}#kja-relationship-hero .kja-hero__coord {font-size:6px}#kja-relationship-hero .kja-hero__story {width:calc(100% - 2px);margin:-3px 0 0 1px;padding:12px 15px 13px}#kja-relationship-hero .kja-hero__story-title {font-size:19px}#kja-relationship-hero .kja-hero__story-bottom p {font-size:10px}#kja-relationship-hero .kja-hero__bottom {font-size:8px;letter-spacing:.06em}#kja-relationship-hero .kja-hero__bottom i {width:20px}#kja-relationship-hero .kja-hero__bottom a {font-size:8px}}
@media (max-width:360px) {#kja-relationship-hero {padding-left:15px;padding-right:15px}#kja-relationship-hero .kja-hero__actions {gap:6px}#kja-relationship-hero .kja-hero__cta,#kja-relationship-hero .kja-hero__secondary {font-size:9px}#kja-relationship-hero .kja-hero__title {font-size:52px}}
@media (prefers-reduced-motion:reduce) {#kja-relationship-hero,#kja-relationship-hero *,#kja-relationship-hero *::before,#kja-relationship-hero *::after {animation:none!important;scroll-behavior:auto!important;transition:none!important}#kja-relationship-hero .kja-hero__diagram {transform:none!important}#kja-relationship-hero .kja-hero__route-spark {display:none}}

/* v1.1: mobile-first narrative: show the animated region network above the fold,
   then the longer explanatory copy and CTAs immediately below it. */
@media (max-width:600px) {
  #kja-relationship-hero .kja-hero__body {display:flex; flex-direction:column;align-items:stretch;gap:0}
  #kja-relationship-hero .kja-hero__copy {display:contents}
  #kja-relationship-hero .kja-hero__edition {order:0; margin:23px 0 12px;line-height:1.3}
  #kja-relationship-hero .kja-hero__title-slot {order:1;max-width:100%;min-height:0}
  #kja-relationship-hero .kja-hero__title {font-size:clamp(58px,14.6vw,84px)}
  #kja-relationship-hero .kja-hero__copyrule {order:2; margin:14px 0 11px}
  #kja-relationship-hero .kja-hero__statement {order:3;font-size:clamp(22px,5.95vw,29px);line-height:1.55;margin:0 0 8px}
  #kja-relationship-hero .kja-hero__visual {order:4;margin:0 auto 12px; max-width:690px}
  #kja-relationship-hero .kja-hero__diagram {width:calc(100% + 26px);margin-left:-13px}
  #kja-relationship-hero .kja-hero__description {order:5;font-size:12px;line-height:1.95;padding:0 1px;margin:8px 0 0;color:#d0dcd2}
  #kja-relationship-hero .kja-hero__actions {order:6;margin:18px 0 0}
  #kja-relationship-hero .kja-hero__micro {order:7;margin:15px 0 7px}
  #kja-relationship-hero .kja-hero__story {margin-top:-4px; padding:11px 15px 12px}
  #kja-relationship-hero .kja-hero__story-title {font-size:17px}
  #kja-relationship-hero .kja-hero__story-bottom p {font-size:10px}
}
@media (max-width:360px) {
  #kja-relationship-hero .kja-hero__title {font-size:52px}
  #kja-relationship-hero .kja-hero__statement {font-size:21px}
  #kja-relationship-hero .kja-hero__top {font-size:7.5px}
}
/* The destination of both hero CTAs must not sit behind the sticky theme header. */
body.single-post #kja-hero-next {scroll-margin-top:110px}
