/* Editorial 1.0 — styles scoped to the child theme. */
.kll-theme{--kll-ink:#282822;--kll-muted:#68665f;--kll-paper:#f9f8f4;--kll-line:#d9d6ce;--kll-brown:#755740}
body.kll-home{margin:0;background:var(--kll-paper);color:var(--kll-ink);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:16px;line-height:1.8}
.kll-page,.kll-page *{box-sizing:border-box}
.kll-page a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
.kll-page a:hover{color:var(--kll-brown)}
.kll-page a:focus-visible,.kll-skip:focus-visible{outline:3px solid #997246;outline-offset:5px}
.kll-page img{display:block;max-width:100%;height:auto}
.kll-page h1,.kll-page h2,.kll-page h3,.kll-page p{margin:0;padding:0;background:none;border:0;color:inherit;box-shadow:none}
.kll-page h1:before,.kll-page h1:after,.kll-page h2:before,.kll-page h2:after,.kll-page h3:before,.kll-page h3:after{content:none}
.kll-page h1,.kll-page h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;letter-spacing:.045em}
.kll-wrap{width:calc(100% - 96px);max-width:1240px;margin-inline:auto}
.kll-skip{position:fixed;left:16px;top:-100px;padding:12px 20px;background:#fff;z-index:100000}
.kll-skip:focus{top:16px}
.kll-header{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:116px;border-bottom:1px solid var(--kll-line);padding-block:24px}
.kll-brand{display:inline-flex;flex-direction:column;gap:3px;flex-shrink:0}
.kll-brand>span{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:25px;font-weight:600;letter-spacing:.16em}
.kll-brand small{font-size:9px;letter-spacing:.31em;color:var(--kll-muted)}
.kll-menu{display:flex;list-style:none;flex-wrap:wrap;gap:12px 26px;margin:0!important;padding:0!important;font-size:12px;letter-spacing:.045em}
.kll-menu li{list-style:none;margin:0;padding:0}
.kll-menu a{display:inline-block;padding:8px 0}
.kll-hero{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:60px;padding-block:56px 64px}
.kll-page .kll-eyebrow{font-size:10px;font-weight:600;letter-spacing:.22em;color:var(--kll-brown);line-height:1.5;margin-bottom:23px}
.kll-page h1{font-size:clamp(32px,3.1vw,46px);line-height:1.6;max-width:12em;overflow-wrap:anywhere}
.kll-page .kll-intro{font-size:14px;line-height:2.2;max-width:31em;color:var(--kll-muted);margin:26px 0 32px;white-space:pre-line}
.kll-page .kll-button{display:inline-flex;justify-content:space-between;align-items:center;gap:45px;padding:13px 24px;background:var(--kll-ink);color:#fff;font-size:12px;min-height:48px;border:1px solid var(--kll-ink)}
.kll-page .kll-button:hover{background:var(--kll-brown);border-color:var(--kll-brown);color:#fff}
.kll-page .kll-small-note{font-family:Georgia,serif;font-size:11px;letter-spacing:.13em;margin-top:42px;color:var(--kll-muted)}
.kll-hero-visual{position:relative;aspect-ratio:1.04;background:#e6e1d7;overflow:hidden}
.kll-hero-img{width:100%;height:100%!important;object-fit:cover}
.kll-type-art{height:100%;display:flex;flex-direction:column;justify-content:center;padding:10%;background:linear-gradient(135deg,#e8e3d9,#cbbda8);color:#594a3c}
.kll-type-art>span{font-family:Georgia,serif;font-size:clamp(48px,6.2vw,88px);line-height:1.05;letter-spacing:-.065em}
.kll-type-art small{font-size:9px;letter-spacing:.2em;margin-top:25px}
.kll-photo-label{position:absolute;bottom:0;left:0;background:var(--kll-paper);padding:12px 20px;font-size:10px;letter-spacing:.12em}
.kll-strip{border-block:1px solid var(--kll-line);font-size:11px;letter-spacing:.08em}
.kll-strip>.kll-wrap{display:flex;justify-content:space-between;gap:16px;padding-block:18px}
.kll-strip span{font-size:9px;color:var(--kll-muted);letter-spacing:.17em}
.kll-section{padding-block:76px}
.kll-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:34px}
.kll-section-head .kll-eyebrow{margin-bottom:12px}
.kll-page h2{font-size:32px;line-height:1.65}
.kll-caption{font-size:11px;color:var(--kll-muted)}
.kll-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 28px}
.kll-card{min-width:0}
.kll-card-link{display:block}
.kll-card-image{aspect-ratio:1.5;overflow:hidden;background:#e9e5dc}
.kll-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s}
.kll-card-link:hover img{transform:scale(1.035)}
.kll-no-image{height:100%;display:flex;align-items:center;justify-content:center;color:#756d61;font-family:Georgia,serif;font-size:17px;letter-spacing:.06em}
.kll-card-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin:17px 0 8px;font-size:10px;color:var(--kll-muted)}
.kll-card-meta>span{color:var(--kll-brown)}
.kll-page .kll-card h3{font-size:17px;font-weight:500;line-height:1.8}
.kll-page .kll-card p{font-size:12px;color:var(--kll-muted);margin-top:10px;line-height:1.9}
.kll-more{text-align:center;margin-top:42px}
.kll-text-link{display:inline-block;border-bottom:1px solid var(--kll-ink);font-size:12px;padding:8px 2px}
.kll-text-link span{margin-left:25px}
.kll-topics{border-top:1px solid var(--kll-line);margin-top:52px;padding-top:26px}
.kll-topics .kll-eyebrow{margin-bottom:16px}
.kll-topic-links{display:flex;flex-wrap:wrap;gap:10px}
.kll-topic-links a{border:1px solid var(--kll-line);padding:10px 18px;font-size:12px;display:flex;gap:24px;align-items:center;min-height:44px}
.kll-topic-links a:hover{border-color:var(--kll-brown)}
.kll-video{background:#2b2d28;color:#f9f8f4;padding-block:64px}
.kll-video-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.kll-video .kll-eyebrow{color:#d0b99c}
.kll-video h2{max-width:14em}
.kll-video p:not(.kll-eyebrow){font-size:13px;line-height:2.1;color:#dad9d1;margin:23px 0 27px;white-space:pre-line}
.kll-page .kll-button-light{background:transparent;border-color:#bcbdb3;color:#f9f8f4}
.kll-video-art{position:relative;aspect-ratio:1.65;background:#42463d;padding:30px 35px;color:#f2eddf!important;display:flex;align-items:center;overflow:hidden}
.kll-video-art>span{font-family:Georgia,serif;font-size:clamp(40px,4.2vw,60px);line-height:.95;letter-spacing:-.04em}
.kll-video-art i{color:#d0b99c;font-weight:400}
.kll-video-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.kll-video-art>small{position:absolute;right:0;bottom:0;font-size:9px;letter-spacing:.13em;padding:10px 15px;background:#2b2d28}
.kll-about{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center;max-width:1040px}
.kll-portrait{aspect-ratio:1;background:#e8e4db;display:flex;align-items:center;justify-content:center}
.kll-portrait>span{font-family:Georgia,serif;color:#8b7966;font-size:130px;font-style:italic}
.kll-portrait>img{width:100%;height:100%;object-fit:cover}
.kll-page .kll-byline{margin-top:25px;font-size:11px;color:var(--kll-muted)}
.kll-byline strong{font-size:19px;letter-spacing:.08em;color:var(--kll-ink);margin-left:12px;font-weight:500}
.kll-page .kll-bio{font-size:13px;line-height:2.2;margin-top:15px;white-space:pre-line}
.kll-socials{display:flex;flex-wrap:wrap;gap:22px;margin-top:20px;font-size:12px}
.kll-socials a{padding:7px 0;border-bottom:1px solid var(--kll-line)}
.kll-footer{border-top:1px solid var(--kll-line);padding-block:38px}
.kll-footer>.kll-wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}
.kll-footer .kll-brand>span{font-size:19px}
.kll-footer-right{display:flex;flex-direction:column;gap:8px;text-align:right;font-size:10px;color:var(--kll-muted)}
.kll-footer-right small{font-size:10px}
.kll-page-content{padding-bottom:60px;overflow-wrap:anywhere}
.kll-page .kll-empty{padding:42px 24px;border:1px solid var(--kll-line);color:var(--kll-muted);font-size:14px;text-align:center}
/* Standard Cocoon pages are styled by skins/kawagutsulife-editorial/style.css. */
@media(max-width:1023px){.kll-wrap{width:calc(100% - 56px)}.kll-hero{gap:32px}.kll-video-grid,.kll-about{gap:45px}.kll-brand>span{font-size:21px}.kll-menu{gap:6px 16px}.kll-grid{gap:32px 20px}}
@media(max-width:767px){.kll-wrap{width:calc(100% - 40px)}.kll-header{min-height:100px;align-items:flex-start;flex-direction:column;gap:14px;padding-block:20px}.kll-menu{font-size:11px;gap:5px 20px}.kll-hero{grid-template-columns:1fr;padding-block:36px;gap:30px}.kll-page h1{font-size:34px;max-width:12em}.kll-page .kll-intro{font-size:13px;margin-top:20px}.kll-page .kll-small-note{display:none}.kll-hero-visual{aspect-ratio:1.3}.kll-type-art>span{font-size:66px}.kll-strip>.kll-wrap{padding-block:14px}.kll-strip span{display:none}.kll-section{padding-block:48px}.kll-page h2{font-size:27px}.kll-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.kll-page .kll-card h3{font-size:15px}.kll-video{padding-block:45px}.kll-video-grid,.kll-about{grid-template-columns:1fr;gap:30px}.kll-video-art>span{font-size:54px}.kll-portrait{width:65%;max-width:300px}.kll-footer>.kll-wrap{align-items:flex-start;flex-direction:column}.kll-footer-right{text-align:left}.kll-section-head{margin-bottom:25px}}
@media(max-width:480px){.kll-grid{grid-template-columns:1fr}.kll-page h1{font-size:32px}.kll-card-image{aspect-ratio:1.6}.kll-brand>span{font-size:22px}.kll-photo-label{font-size:9px}.kll-type-art>span{font-size:56px}}
@media(prefers-reduced-motion:reduce){.kll-page *{transition:none!important;scroll-behavior:auto!important}}

.kll-page h1,.kll-video h2{white-space:pre-line}
/* Instagram: five portrait photos on desktop, swipeable on mobile. */
.kll-instagram{border-bottom:1px solid var(--kll-line)}
.kll-instagram .kll-section-head{align-items:flex-end}
.kll-ig-controls{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.kll-ig-controls[hidden]{display:none}
.kll-ig-controls button{font:inherit;font-size:12px;min-width:44px;min-height:44px;padding:8px 16px;border:1px solid var(--kll-line);background:transparent;color:var(--kll-ink);cursor:pointer;border-radius:0}
.kll-ig-controls button:hover{background:#e8e4db}
.kll-ig-controls button:focus-visible{outline:3px solid #997246;outline-offset:3px}
.kll-ig-controls span{font-size:10px;color:var(--kll-muted);margin-left:auto}
.kll-ig-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#9b8b75 transparent;overscroll-behavior-x:contain;padding-bottom:16px;margin-inline:auto;width:calc(100% - 96px);max-width:1240px}
.kll-ig-viewport:focus-visible{outline:3px solid #997246;outline-offset:4px}
.kll-ig-track{position:relative;display:flex;gap:16px;width:100%}
.kll-ig-card{flex:0 0 calc((100% - 64px)/5);min-width:0;aspect-ratio:4/5;position:relative;overflow:hidden;background:#e6e1d7;display:block}
.kll-page .kll-ig-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.kll-ig-card>span{position:absolute;bottom:0;right:0;background:#282822cc;color:#fff;font-size:10px;letter-spacing:.12em;padding:7px 11px}
.kll-ig-card:focus-visible{outline-offset:-4px!important}
.kll-ig-static [data-kll-clone]{display:none}
.kll-page .kll-ig-empty{font-size:13px;color:var(--kll-muted)}
.kll-page .kll-ig-admin-note{font-size:12px;margin-top:10px}
@media(max-width:1023px){.kll-ig-viewport{width:calc(100% - 56px)}.kll-ig-card{flex-basis:calc((100% - 32px)/3)}}
@media(max-width:767px){.kll-instagram .kll-section-head{align-items:flex-start;flex-direction:column;gap:10px}.kll-ig-viewport{width:calc(100% - 40px)}.kll-ig-card{flex-basis:calc((100% - 16px)/2)}}
@media(max-width:480px){.kll-ig-card{flex-basis:72%}}

/* Curated videos and music lab */
.kll-popular{margin-top:56px;padding-top:40px;border-top:1px solid #55584e}
.kll-page .kll-popular h3,.kll-page .kll-music-lab h3{font-size:clamp(22px,2.3vw,30px);line-height:1.6;overflow-wrap:anywhere}
.kll-popular-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:26px}
.kll-popular-card{min-width:0}
.kll-video-player{position:relative;width:100%;min-width:0;aspect-ratio:16/9;min-height:200px;background:#171915;overflow:hidden}
.kll-video-player iframe{position:absolute;inset:0;display:block;border:0;width:100%;height:100%;max-width:100%}
.kll-page .kll-popular-card h4{font-size:15px;font-weight:500;line-height:1.8;color:#f9f8f4;background:none;border:0;padding:0;margin:16px 0 0;overflow-wrap:anywhere}
.kll-page .kll-video a:hover{color:#e2c8a7}
.kll-music-lab{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:48px;padding-top:40px;border-top:1px solid #55584e}
.kll-music-lab>div{max-width:680px;min-width:0}
.kll-page .kll-music-lab .kll-music-copy{margin-bottom:0}
.kll-music-lab .kll-button{flex-shrink:0;max-width:100%;white-space:normal}
.kll-video .kll-video-setup-note{margin:32px auto;font-size:13px}
@media(max-width:900px){.kll-music-lab{flex-direction:column;align-items:flex-start;gap:24px}}
@media(max-width:767px){.kll-popular-grid{grid-template-columns:1fr;gap:32px}.kll-popular{margin-top:36px;padding-top:30px}.kll-music-lab{margin-top:36px;padding-top:30px}}
