/* Kamora public-site design system — premium, restrained and responsive. */
:root{--km-ink:#10233f;--km-ink-deep:#0b1930;--km-muted:#65748b;--km-blue:#246bfe;--km-blue-deep:#1554df;--km-mint:#a9f2d2;--km-paper:#f7f9fc;--km-line:#e4eaf2;--km-font:'DM Sans',sans-serif;--km-display:'Manrope',sans-serif}
body.km-public-page{margin:0;background:#fff;color:var(--km-ink);font-family:var(--km-font);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
body.km-public-page *{box-sizing:border-box}
body.km-public-page a{text-decoration:none}
body.km-public-page img{max-width:100%;height:auto}
.km-public-shell{min-height:100vh}
.km-container{width:min(1180px,calc(100% - 56px));margin:0 auto}
.km-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(220,228,239,.75);backdrop-filter:blur(18px)}
.km-nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.km-brand{display:inline-flex;align-items:center;gap:10px;color:var(--km-ink);font-family:var(--km-display);font-size:25px;font-weight:800;letter-spacing:-1.4px;white-space:nowrap}
.km-brand:hover{color:var(--km-ink)}
.km-brand img{width:42px;height:42px;object-fit:contain}
.km-brand-dot{color:var(--km-blue)}
.km-navigation{display:flex;align-items:center;gap:clamp(14px,1.8vw,26px)}
.km-navigation>a:not(.km-button){color:#52627a;font-size:13px;font-weight:700;transition:color .2s ease}
.km-navigation>a:not(.km-button):hover{color:var(--km-blue)}
.km-navigation .km-nav-login{margin-left:4px}
.km-button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:17px;padding:0 23px;border:1px solid var(--km-blue);border-radius:9px;background:var(--km-blue);color:#fff!important;font-size:14px;font-weight:700;letter-spacing:-.1px;box-shadow:0 8px 20px rgba(36,107,254,.16);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.km-button:hover{background:var(--km-blue-deep);border-color:var(--km-blue-deep);transform:translateY(-2px);box-shadow:0 12px 28px rgba(36,107,254,.24)}
.km-button span{font-size:18px;line-height:1}
.km-button-small{min-height:43px;padding:0 17px;gap:10px;font-size:12px;border-radius:8px}
.km-menu-toggle{display:none}
.km-page-main{background:#fff}
.km-page-hero{position:relative;overflow:hidden;padding:92px 0 72px;background:#f7f9fd;border-bottom:1px solid #edf1f7}
.km-page-hero:after{content:"";position:absolute;right:-150px;top:-280px;width:650px;height:650px;border:1px solid rgba(86,129,204,.14);border-radius:50%;box-shadow:0 0 0 50px rgba(86,129,204,.025),0 0 0 100px rgba(86,129,204,.02);pointer-events:none}
.km-page-hero-inner{position:relative;z-index:1}
.km-kicker{margin:0 0 16px;color:var(--km-blue);font-size:10px;font-weight:800;letter-spacing:1.8px;line-height:1.5;text-transform:uppercase}
.km-page-hero h1{max-width:900px;margin:0;color:var(--km-ink-deep);font-family:var(--km-display);font-size:clamp(42px,6vw,68px);font-weight:800;letter-spacing:-3px;line-height:1.08}
.km-page-intro{max-width:760px;margin:22px 0 0;color:#61718a;font-size:18px;line-height:1.8}
.km-page-content{padding:68px 0 88px}
.km-reading-width{max-width:820px}
.km-page-content .km-container{max-width:880px}
.km-page-content h2,.km-article-content h2{margin:2.1em 0 .7em;color:var(--km-ink);font-family:var(--km-display);font-size:clamp(24px,3vw,34px);font-weight:800;letter-spacing:-1px;line-height:1.25}
.km-page-content h3,.km-article-content h3{margin:1.8em 0 .6em;color:#203653;font-family:var(--km-display);font-size:22px;font-weight:800;letter-spacing:-.5px}
.km-page-content p,.km-article-content p{margin:0 0 1.2em;color:#596b83;font-size:16px;line-height:1.9}
.km-page-content ul,.km-page-content ol,.km-article-content ul,.km-article-content ol{padding-left:1.35em;margin:0 0 1.5em;color:#596b83}
.km-page-content li,.km-article-content li{padding:0 0 .55em;line-height:1.8}
.km-page-content a,.km-article-content a{color:#1c61e8;text-decoration:underline;text-decoration-color:#b7cdfb;text-underline-offset:3px}
.km-page-content strong,.km-article-content strong{color:#273d5b}
.km-page-content blockquote,.km-article-content blockquote{margin:2em 0;padding:20px 26px;border-left:3px solid var(--km-blue);background:#f7f9fd;color:#3f5572}
.km-page-content .wp-block-columns{gap:24px;margin:28px 0}
.km-page-content .wp-block-column{padding:25px;border:1px solid #e5ebf4;border-radius:14px;background:#fff;box-shadow:0 8px 25px rgba(25,48,86,.035)}
.km-page-content .wp-block-button__link{border-radius:8px;background:var(--km-blue);color:#fff;text-decoration:none;font-weight:700}
.km-page-content .wp-block-image img,.km-article-featured-image img{border-radius:16px}
.km-page-cta{padding:54px 0;background:#f5f8fd;border-top:1px solid #e8edf5}
.km-page-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.km-page-cta .km-kicker{margin-bottom:7px;font-size:9px}
.km-page-cta h2{margin:0;color:#172b49;font-family:var(--km-display);font-size:clamp(24px,3vw,34px);font-weight:800;letter-spacing:-1.2px}
.km-page-cta p{margin:7px 0 0;color:#718097;font-size:13px}
.km-footer{padding:66px 0 24px;background:#0b1930;color:#fff}
.km-footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.15fr;gap:55px;padding-bottom:48px}
.km-brand-footer{color:#fff;font-size:24px}
.km-brand-footer:hover{color:#fff}
.km-brand-footer .km-brand-dot{color:var(--km-mint)}
.km-footer-brand>p{max-width:290px;margin:18px 0 0;color:#a4b2c8;font-size:12px;line-height:1.9}
.km-footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.km-footer-col b{margin-bottom:4px;color:#fff;font-family:var(--km-display);font-size:12px;font-weight:800}
.km-footer-col a{color:#a5b3c9;font-size:12px;transition:color .2s ease}
.km-footer-col a:hover{color:#fff}
.km-footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid rgba(219,230,248,.13);color:#7f91ad;font-size:10px}
.km-journal-page,.km-article-page{background:#fff}
.km-journal-listing{padding-top:55px;padding-bottom:90px}
.km-journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.km-journal-card{overflow:hidden;display:flex;flex-direction:column;border:1px solid #e4eaf2;border-radius:15px;background:#fff;box-shadow:0 10px 28px rgba(25,48,86,.035);transition:transform .2s ease,box-shadow .2s ease}
.km-journal-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(25,48,86,.09)}
.km-journal-card-image{display:block;overflow:hidden;aspect-ratio:16/9;background:#f0f4fa}
.km-journal-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.km-journal-card:hover .km-journal-card-image img{transform:scale(1.03)}
.km-journal-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:180px;background:linear-gradient(135deg,#edf3ff,#f7fafc);color:var(--km-ink);font-family:var(--km-display);font-size:25px;font-weight:800}
.km-journal-card-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:25px}
.km-article-meta{margin:0 0 12px;color:#8391a5;font-size:11px;line-height:1.7}
.km-journal-card h2{margin:0 0 12px;font-family:var(--km-display);font-size:21px;font-weight:800;letter-spacing:-.6px;line-height:1.35}
.km-journal-card h2 a{color:#172b49}
.km-journal-card h2 a:hover{color:var(--km-blue)}
.km-journal-card-body>p:not(.km-article-meta){margin:0 0 22px;color:#687991;font-size:13px;line-height:1.8}
.km-journal-read{margin-top:auto;color:var(--km-blue);font-size:12px;font-weight:800}
.km-journal-read span{margin-left:7px}
.km-pagination{margin-top:42px}
.km-pagination ul{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;padding:0;list-style:none}
.km-pagination a,.km-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:0 12px;border:1px solid #e2e9f3;border-radius:8px;color:#435772}
.km-pagination .current{background:var(--km-ink);border-color:var(--km-ink);color:#fff}
.km-empty-state{padding:50px;border:1px solid #e4eaf2;border-radius:14px;text-align:center}
.km-empty-state h2{margin:0 0 8px;font-family:var(--km-display);font-size:25px}
.km-empty-state p{margin:0;color:var(--km-muted)}
.km-article-hero .km-reading-width{position:relative;z-index:1}
.km-breadcrumb{display:flex;gap:10px;margin-bottom:24px;color:#8b98ab;font-size:11px}
.km-breadcrumb a{color:#476487}
.km-article-hero h1{font-size:clamp(36px,5.5vw,60px)}
.km-article-meta{color:#8795a8}
.km-article-body{padding-top:45px;padding-bottom:85px}
.km-article-featured-image{max-width:1000px;margin:0 auto 45px}
.km-article-featured-image img{display:block;width:100%;height:auto}
.km-article-content{margin:0 auto}
.km-back-link{margin-top:45px!important;padding-top:22px;border-top:1px solid #e7edf5}
.km-back-link a{font-weight:800}
.km-public-page .alignwide{max-width:1100px;margin-left:auto;margin-right:auto}
.km-public-page .alignfull{width:100%;max-width:100%}
.km-public-page :focus-visible{outline:3px solid #8bb0ff;outline-offset:3px}
@media(max-width:1100px){.km-navigation{gap:13px}.km-navigation>a:not(.km-button){font-size:12px}.km-footer-main{gap:30px}}
@media(max-width:900px){.km-container{width:min(100% - 40px,720px)}.km-nav-wrap{min-height:74px}.km-menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:43px;height:43px;padding:10px;border:1px solid #e2e9f3;border-radius:9px;background:#fff}.km-menu-toggle span{display:block;height:2px;width:100%;background:#19304f;border-radius:4px}.km-navigation{position:absolute;top:calc(100% - 1px);left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px 22px 22px;border-bottom:1px solid #e4eaf2;background:rgba(255,255,255,.99);box-shadow:0 20px 30px rgba(21,43,77,.09)}.km-navigation.km-nav-open{display:flex}.km-navigation>a:not(.km-button){padding:12px 4px;font-size:14px}.km-navigation .km-nav-login{margin:0}.km-navigation .km-button{margin-top:10px}.km-footer-main{grid-template-columns:1.3fr 1fr 1fr;gap:28px}.km-footer-col:last-child{grid-column:2/4}.km-journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.km-page-hero{padding:70px 0 56px}.km-page-hero h1{letter-spacing:-2px}.km-page-content{padding:52px 0 68px}}
@media(max-width:600px){.km-container{width:calc(100% - 36px)}.km-brand{font-size:23px}.km-brand img{width:38px;height:38px}.km-page-hero{padding:54px 0 42px}.km-page-hero h1{font-size:clamp(36px,10vw,50px);letter-spacing:-1.8px}.km-page-intro{font-size:15px}.km-page-content{padding:38px 0 52px}.km-page-content p,.km-article-content p{font-size:15px}.km-page-cta{padding:38px 0}.km-page-cta-inner{align-items:flex-start;flex-direction:column;gap:20px}.km-page-cta .km-button{width:100%}.km-footer{padding-top:48px}.km-footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px;padding-bottom:35px}.km-footer-brand{grid-column:1/-1}.km-footer-col:last-child{grid-column:auto}.km-footer-bottom{flex-direction:column;gap:7px}.km-journal-grid{grid-template-columns:1fr;gap:17px}.km-journal-card-body{padding:22px}.km-article-body{padding-top:25px;padding-bottom:55px}.km-article-hero h1{font-size:clamp(32px,9vw,44px)}.km-page-content .wp-block-columns{display:block}.km-page-content .wp-block-column{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
