/* Dedicated registration page: no legacy content_form identifiers. */
body.km-gt-newsletter{background:#fbf9f3;color:#17345e}
body.km-gt-newsletter .keni-main_outer{display:block!important;width:100%!important;max-width:none!important;padding:0!important}
body.km-gt-newsletter .keni-main_wrap{padding:0!important;background:#fbf9f3!important}
#km-newsletter{box-sizing:border-box;width:min(1050px,calc(100% - 64px));margin:0 auto;padding:28px 0 64px;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:17px;line-height:1.95;color:#17345e}
#km-newsletter *{box-sizing:border-box}
#km-newsletter p{margin:0 0 20px}
#km-newsletter a{color:#285f5b}
#km-newsletter .kmnl-home{display:inline-block;font-size:14px;margin-bottom:24px;text-decoration:underline;text-underline-offset:4px}
#km-newsletter .kmnl-hero{padding:64px 68px 48px;text-align:center;background:url('floral-corner.svg') left top/160px auto no-repeat,url('floral-corner-right.svg') right bottom/160px auto no-repeat,#fffdf9;border-top:1px solid #c7a56d;border-bottom:1px solid #c7a56d}
#km-newsletter .kmnl-eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;color:#927542;margin-bottom:16px}
#km-newsletter .kmnl-kicker{font-size:15px;margin-bottom:16px}
#km-newsletter h1,#km-newsletter h2{background:none!important;border:0!important;box-shadow:none!important;color:#17345e!important;font-family:"Yu Mincho","Hiragino Mincho ProN",serif!important;font-weight:600!important;letter-spacing:.04em;padding:0!important;line-height:1.65!important}
#km-newsletter h1:before,#km-newsletter h1:after,#km-newsletter h2:before,#km-newsletter h2:after{display:none!important;content:none!important}
#km-newsletter h1{font-size:clamp(29px,4vw,44px)!important;margin:0 0 22px!important}
#km-newsletter h2{font-size:25px!important;margin:0 0 22px!important}
#km-newsletter .kmnl-lead{font-size:23px;font-family:"Yu Mincho",serif;line-height:1.8;margin-bottom:24px}
#km-newsletter .kmnl-button{display:inline-flex;justify-content:center;align-items:center;min-height:56px;max-width:100%;padding:15px 25px;border:1px solid #285f5b;border-radius:9px;background:#285f5b!important;color:#fff!important;text-decoration:none;font-size:16px!important;font-family:inherit;font-weight:700;line-height:1.6;white-space:normal;cursor:pointer}
#km-newsletter .kmnl-button:hover{background:#1d4946!important}
#km-newsletter a:focus-visible,#km-newsletter button:focus-visible,#km-newsletter input:focus-visible{outline:3px solid #b38d4b;outline-offset:4px}
#km-newsletter .kmnl-micro{font-size:13px;line-height:1.8;margin:12px 0 0;color:#596870}
#km-newsletter .kmnl-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;margin:56px 0}
#km-newsletter .kmnl-about{padding:12px 0}
#km-newsletter .kmnl-topics{list-style:none;margin:26px 0;padding:0}
#km-newsletter .kmnl-topics li{border-top:1px solid #dedacb;padding:18px 0;margin:0}
#km-newsletter .kmnl-topics strong,#km-newsletter .kmnl-topics span{display:block}
#km-newsletter .kmnl-topics strong{color:#285f5b;margin-bottom:6px}
#km-newsletter .kmnl-topics span{font-size:15px}
#km-newsletter .kmnl-author{border-left:3px solid #c7a56d;padding:8px 0 8px 22px;margin-top:30px}
#km-newsletter .kmnl-author>span{font-size:12px;display:block;color:#796844}
#km-newsletter .kmnl-author>strong{font-family:"Yu Mincho",serif;font-size:24px}
#km-newsletter .kmnl-author p,#km-newsletter .kmnl-author a{font-size:14px;margin:6px 0}
#km-newsletter .kmnl-register{scroll-margin-top:32px;padding:32px;background:#fffdf9;border:1px solid #d9cfb7;border-radius:16px;box-shadow:0 12px 35px #17345e08}
#km-newsletter .kmnl-form{display:block!important;visibility:visible!important;opacity:1!important;margin:28px 0 0}
#km-newsletter label{display:block;font-size:16px;font-weight:700;margin-bottom:9px}
#km-newsletter label span{font-size:12px;color:#796844;margin-left:8px}
#km-newsletter input[type=email]{display:block;width:100%!important;max-width:100%;height:56px!important;padding:12px!important;margin:0 0 18px!important;border:1px solid #8c9ca2!important;border-radius:7px;background:#fff!important;color:#17345e!important;font:16px/1.5 sans-serif!important;box-shadow:none}
#km-newsletter .kmnl-consent{font-size:14px;line-height:1.9;margin:0 0 20px}
#km-newsletter .kmnl-form .kmnl-button{width:100%}
#km-newsletter .kmnl-help{font-size:13px;line-height:1.9;color:#596870;margin:20px 0 16px;padding-top:18px;border-top:1px solid #e8e2d4}
#km-newsletter .kmnl-fallback{font-size:13px;text-decoration:underline}
#km-newsletter .kmnl-closing{text-align:center;border-top:1px solid #dedacb;padding-top:40px}
#km-newsletter .kmnl-closing p{font-size:15px}
@media(max-width:767px){
 #km-newsletter{width:calc(100% - 32px);font-size:16px;padding:20px 0 40px}
 #km-newsletter .kmnl-hero{padding:48px 18px 32px;background-size:85px auto,85px auto}
 #km-newsletter .kmnl-lead{font-size:20px}
 #km-newsletter .kmnl-kicker{font-size:13px}
 #km-newsletter h1{font-size:29px!important}
 #km-newsletter h2{font-size:22px!important}
 #km-newsletter .kmnl-columns{grid-template-columns:1fr;gap:30px;margin:32px 0}
 #km-newsletter .kmnl-register{grid-row:1;padding:26px 20px}
 #km-newsletter .kmnl-button{font-size:15px!important;padding:14px 16px}
 #km-newsletter .kmnl-desktop-break{display:none}
}

/* Confirmed live: common footer tags #top as an evidence form and hides the whole page. */
html body.km-gt-newsletter #top.keni-container.kmuf-hide-evidence-form{display:block!important;visibility:visible!important;opacity:1!important}

/* 3.21: Dedicated editorial landing page. */
#km-newsletter .kmnl-hero--lp{display:grid;grid-template-columns:1.25fr .85fr;gap:44px;align-items:center;text-align:left;padding:64px 48px;background-position:left bottom,right top;background-size:130px auto,135px auto;border-radius:3px}
#km-newsletter .kmnl-hero--lp h1{font-size:24px!important;margin-bottom:18px!important;color:#927542!important}
#km-newsletter .kmnl-hero--lp .kmnl-lead{font-size:clamp(26px,3.1vw,36px);font-weight:600;line-height:1.65;letter-spacing:.035em;color:#17345e}
#km-newsletter .kmnl-small-break{display:none}
#km-newsletter .kmnl-hero--lp .kmnl-button{gap:14px}
#km-newsletter .kmnl-book-scene{padding:24px 0 12px;perspective:1000px;text-align:center}
#km-newsletter .kmnl-book{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:3/4;width:100%;max-width:290px;margin:auto;padding:32px 20px;border:1px solid #cfbf97;border-left:9px solid #b29b6f;background:url('floral-corner.svg') left top/135px auto no-repeat,url('floral-corner-right.svg') right bottom/135px auto no-repeat,#fdfbf3;box-shadow:10px 12px 0 #ede7db,18px 24px 32px #17345e20;transform:rotate(3deg)}
#km-newsletter .kmnl-book-overline{font-size:9px;letter-spacing:.22em;margin-bottom:32px;color:#8c744c}
#km-newsletter .kmnl-book-title{font-family:"Yu Mincho",serif;font-size:33px;line-height:1.65;letter-spacing:.12em}
#km-newsletter .kmnl-book-rule{display:block;width:48px;height:1px;background:#c7a56d;margin:22px 0}
#km-newsletter .kmnl-book-sub{font-size:13px;line-height:1.9}
#km-newsletter .kmnl-book-author{font-family:"Yu Mincho",serif;font-size:18px;margin-top:26px;letter-spacing:.12em}
#km-newsletter .kmnl-book-caption{font-size:11px;color:#6e797c;margin:30px 0 0}
#km-newsletter .kmnl-empathy{text-align:center;padding:68px 0 48px}
#km-newsletter .kmnl-empathy h2{font-size:29px!important}
#km-newsletter .kmnl-worries{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}
#km-newsletter .kmnl-worries p{padding:25px 16px;margin:0;background:#fffdf9;border-top:2px solid #c7a56d;font-size:15px;line-height:2}
#km-newsletter .kmnl-worries strong{color:#285f5b;font-weight:600}
#km-newsletter .kmnl-empathy-end{font-family:"Yu Mincho",serif;font-size:19px;line-height:2}
#km-newsletter .kmnl-letter{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;padding:44px;background:linear-gradient(125deg,#edf5f4,#fbfaf5);border-radius:14px}
#km-newsletter .kmnl-letter p{font-size:16px}
#km-newsletter .kmnl-signature{margin-top:26px;font-size:13px!important}
#km-newsletter .kmnl-signature strong{display:inline-block;font-family:"Yu Mincho",serif;font-size:25px;font-weight:500;margin-top:10px}
#km-newsletter .kmnl-columns{margin:64px 0;gap:48px}
#km-newsletter .kmnl-register{border-top:4px solid #c7a56d}
#km-newsletter .kmnl-faq{max-width:800px;margin:0 auto 60px}
#km-newsletter .kmnl-faq>h2,#km-newsletter .kmnl-faq>.kmnl-eyebrow{text-align:center}
#km-newsletter .kmnl-faq details{border-bottom:1px solid #d9d8cb;background:transparent;padding:0}
#km-newsletter .kmnl-faq summary{cursor:pointer;list-style:revert;font-size:17px;font-weight:600;line-height:1.8;padding:20px 10px}
#km-newsletter .kmnl-faq summary:focus-visible{outline:3px solid #b38d4b;outline-offset:2px}
#km-newsletter .kmnl-faq details p{font-size:15px;padding:0 10px 22px;margin:0}
#km-newsletter .kmnl-closing{background:url('floral-corner.svg') left bottom/95px auto no-repeat,url('floral-corner-right.svg') right top/95px auto no-repeat;padding:42px 24px}
@media(max-width:767px){
 #km-newsletter .kmnl-hero--lp{grid-template-columns:1fr;gap:16px;padding:38px 22px 30px;text-align:center;background-size:75px auto,75px auto}
 #km-newsletter .kmnl-hero--lp h1{font-size:22px!important}
 #km-newsletter .kmnl-hero--lp .kmnl-lead{font-size:27px;line-height:1.7}
 #km-newsletter .kmnl-hero-copy>p:not([class]){font-size:15px}
 #km-newsletter .kmnl-book{max-width:205px;padding:22px 18px;transform:rotate(2deg);background-size:95px auto,95px auto}
 #km-newsletter .kmnl-book-title{font-size:26px}
 #km-newsletter .kmnl-book-overline{margin-bottom:18px;font-size:8px}
 #km-newsletter .kmnl-book-rule{margin:14px 0}
 #km-newsletter .kmnl-book-sub{font-size:11px}
 #km-newsletter .kmnl-book-author{font-size:16px;margin-top:16px}
 #km-newsletter .kmnl-empathy{padding:42px 0 30px}
 #km-newsletter .kmnl-empathy h2{font-size:23px!important}
 #km-newsletter .kmnl-worries{grid-template-columns:1fr;gap:10px;margin:24px 0}
 #km-newsletter .kmnl-worries p{padding:18px 16px}
 #km-newsletter .kmnl-empathy-end{font-size:17px}
 #km-newsletter .kmnl-letter{grid-template-columns:1fr;gap:8px;padding:28px 22px}
 #km-newsletter .kmnl-columns{gap:30px;margin:36px 0}
 #km-newsletter .kmnl-faq{margin-bottom:36px}
 #km-newsletter .kmnl-faq summary{font-size:16px}
 #km-newsletter .kmnl-closing{padding:34px 18px;background-size:60px auto,60px auto}
}
@media(max-width:380px){#km-newsletter .kmnl-small-break{display:block}#km-newsletter .kmnl-hero--lp .kmnl-lead{font-size:25px}}

/* 3.22: Matsuno illustration and adjacent, real registration CTA. */
#km-newsletter .kmnl-hero--lp{grid-template-columns:1fr 1fr;gap:32px;padding:44px 32px}
#km-newsletter .kmnl-portrait{margin:0;min-width:0;text-align:center}
#km-newsletter .kmnl-portrait>a:first-child{display:block;border-radius:10px;overflow:hidden;border:1px solid #e0d4bb;box-shadow:0 12px 32px #17345e12}
#km-newsletter .kmnl-portrait img{display:block;width:100%;height:auto;max-width:100%;margin:0}
#km-newsletter .kmnl-portrait .kmnl-button{width:100%;margin-top:18px;padding:14px 12px;font-size:15px!important}
#km-newsletter .kmnl-portrait figcaption{font-size:12px;color:#596870;line-height:1.7;margin-top:9px}
@media(max-width:767px){
 #km-newsletter .kmnl-hero--lp{grid-template-columns:1fr;gap:28px;padding:30px 18px}
 #km-newsletter .kmnl-portrait{max-width:390px;width:100%;margin:auto}
}

/* 3.23: Mobile-first introduction; artwork belongs to the book explanation. */
#km-newsletter .kmnl-hero--lp{display:block;padding:52px 28px;text-align:center}
#km-newsletter .kmnl-hero-copy{max-width:680px;margin:0 auto}
#km-newsletter .kmnl-hero--lp .kmnl-lead{font-size:36px;line-height:1.75;letter-spacing:.02em}
#km-newsletter .kmnl-hero--lp .kmnl-lead>span{display:block;white-space:nowrap}
#km-newsletter .kmnl-hero-copy>p:not([class]){max-width:520px;margin:0 auto 24px;line-height:2;text-align:left}
#km-newsletter .kmnl-hero-copy .kmnl-button{width:auto;max-width:100%}
#km-newsletter .kmnl-book-intro{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:40px;align-items:center;margin:56px 0;padding:32px;background:#fffdf9;border:1px solid #e0d4bb;border-radius:12px}
#km-newsletter .kmnl-reading-art{margin:0;min-width:0}
#km-newsletter .kmnl-reading-art img{display:block;width:100%;height:auto;margin:0;border-radius:8px}
#km-newsletter .kmnl-book-intro h2{font-size:26px!important}
@media(max-width:767px){
 #km-newsletter .kmnl-hero--lp{padding:36px 18px 30px}
 #km-newsletter .kmnl-hero--lp .kmnl-lead{font-size:clamp(21px,6vw,28px);line-height:1.8;letter-spacing:0}
 #km-newsletter .kmnl-hero-copy>p:not([class]){font-size:16px;line-height:1.95}
 #km-newsletter .kmnl-hero-copy .kmnl-button{width:100%;font-size:14px!important;gap:6px;padding:14px 10px}
 #km-newsletter .kmnl-kicker{font-size:12px}
 #km-newsletter .kmnl-book-intro{grid-template-columns:1fr;gap:24px;padding:20px 16px;margin:32px 0}
 #km-newsletter .kmnl-reading-art{width:100%;max-width:360px;margin:auto}
 #km-newsletter .kmnl-book-intro h2{font-size:23px!important}
 #km-newsletter h2{text-wrap:balance}
}

/* v3.25 book contents and short reading preview */
#km-newsletter .kmnl-contents,#km-newsletter .kmnl-excerpt{margin:56px 0;}
#km-newsletter .kmnl-story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center;}
#km-newsletter .kmnl-story-grid figure{margin:0;min-width:0;}
#km-newsletter .kmnl-story-grid img{display:block;width:100%;height:auto;border-radius:16px;}
#km-newsletter .kmnl-contents-label{font-size:16px;font-weight:700;color:#8a713d;margin:28px 0 16px;}
#km-newsletter .kmnl-chapters{list-style:none;margin:0;padding:0;display:grid;gap:16px;}
#km-newsletter .kmnl-chapters>li{list-style:none;background:#fffdf8;border:1px solid #e3dac7;border-radius:12px;padding:24px 28px;}
#km-newsletter .kmnl-chapter-number{font-size:14px;letter-spacing:.1em;color:#8a713d;}
#km-newsletter .kmnl-chapters h3{background:none;border:0;padding:0;margin:8px 0 12px;color:#193f65;font-size:23px;line-height:1.6;}
#km-newsletter .kmnl-chapters h3::before,#km-newsletter .kmnl-chapters h3::after{display:none;}
#km-newsletter .kmnl-chapters p{margin:0 0 12px;}
#km-newsletter .kmnl-chapters summary{cursor:pointer;color:#193f65;font-size:16px;padding:10px 0;}
#km-newsletter .kmnl-chapters details ul{padding-left:1.25em;margin:12px 0 0;}
#km-newsletter .kmnl-chapters details li{font-size:16px;line-height:1.8;margin:6px 0;}
#km-newsletter .kmnl-mid-cta{text-align:center;margin:28px 0 0;padding:28px 16px;background:#f3f7f4;border-radius:12px;}
#km-newsletter .kmnl-excerpt blockquote{margin:0;padding:0 0 0 20px;border:0;border-left:2px solid #c8ac73;background:none;color:#193f65;}
#km-newsletter .kmnl-excerpt blockquote::before,#km-newsletter .kmnl-excerpt blockquote::after{display:none;}
@media(max-width:767px){
 #km-newsletter .kmnl-story-grid{grid-template-columns:minmax(0,1fr);gap:20px;}
 #km-newsletter .kmnl-contents,#km-newsletter .kmnl-excerpt{margin:36px 0;}
 #km-newsletter .kmnl-chapters>li{padding:20px 18px;}
 #km-newsletter .kmnl-chapters h3{font-size:21px;}
 #km-newsletter .kmnl-contents h2,#km-newsletter .kmnl-excerpt h2{font-size:24px;line-height:1.7;}
 #km-newsletter .kmnl-mid-cta .kmnl-button{font-size:14px;padding:15px 10px;}
}
