/* 5CKN v0.7.3 visual production – localized overrides, after Light Global */
.ckn-lg--home .ckn-lg-hero{background:linear-gradient(115deg,#fcfeff 0%,#e7f4ff 59%,#cceaff 100%);isolation:isolate}
.ckn-lg--home .ckn-lg-hero:before{background:radial-gradient(ellipse at 0% 80%,rgba(240,180,77,.22),transparent 36%),radial-gradient(circle at 78% 12%,rgba(255,255,255,.72),transparent 26%)}
.ckn-lg--home .ckn-lg-hero__grid{gap:20px}
.ckn-lg--home .ckn-lg-hero__copy{min-width:0}
.ckn-lg--home .ckn-lg-hero h1{font-size:clamp(41px,4.2vw,66px);line-height:1.04;margin:17px 0 12px;letter-spacing:-.04em;font-weight:900}
.ckn-lg--home .ckn-lg-hero__topics{font-size:clamp(14px,1.4vw,19px);line-height:1.5;margin-bottom:12px}
.ckn-lg--home .ckn-lg-hero__summary{font-size:clamp(15px,1.16vw,17px);line-height:1.68}
.ckn-lg--home .ckn-lg-hero__art{position:relative;min-height:0;align-self:stretch;display:flex;align-items:center;justify-content:center}
.ckn-lg--home .ckn-lg-hero__art img{width:100%;max-width:none;max-height:415px;object-fit:contain;filter:drop-shadow(0 12px 15px rgba(17,41,75,.10));border-radius:6px}
.ckn-lg--home .ckn-lg-hero__art:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:12%;background:linear-gradient(180deg,transparent,#e5f3fc);pointer-events:none}
.ckn-lg--home .ckn-lg-section--ecosystem-home{padding-top:40px}
.ckn-lg--home .ckn-lg-section--ecosystem-home .ckn-lg-heading{margin-bottom:20px}
.ckn-lg-eco{min-height:210px;padding:19px 18px;overflow:hidden;background:linear-gradient(130deg,#fff 20%,#edf7ff 100%);box-shadow:0 10px 22px rgba(17,41,75,.06)}
.ckn-lg-eco--ads{background:linear-gradient(130deg,#fff,#edf5ff)}.ckn-lg-eco--nail{background:linear-gradient(130deg,#fff,#ffedf7)}.ckn-lg-eco--shop{background:linear-gradient(130deg,#fff,#fff3df)}
.ckn-lg-eco__icon{width:52px;height:52px;border-radius:13px;z-index:2}.ckn-lg-eco__icon img{width:48px;height:48px}.ckn-lg-eco__icon .ckn-lg-icon{width:30px;height:30px}
.ckn-lg-eco__body{max-width:72%;gap:5px;z-index:2}.ckn-lg-eco__body strong{font-size:clamp(17px,1.5vw,21px);line-height:1.15;overflow-wrap:anywhere}.ckn-lg-eco__body>span{font-size:13px;line-height:1.55}.ckn-lg-eco__body small{font-size:9px}
.ckn-lg-eco__cta{margin-top:6px;font-size:12px;font-weight:800;padding:8px 10px;display:inline-block;border-radius:9px;background:var(--ckn-teal);color:#fff;width:max-content;max-width:100%}.ckn-lg-eco--ads .ckn-lg-eco__cta{background:#217dcc}.ckn-lg-eco--nail .ckn-lg-eco__cta{background:#a848a2}.ckn-lg-eco--shop .ckn-lg-eco__cta{background:#cb902d}
.ckn-lg-eco__art{display:block;position:absolute;right:0;bottom:0;z-index:1;width:53%;height:85%;opacity:.95;background-position:right bottom;background-repeat:no-repeat;background-size:contain;pointer-events:none}
.ckn-lg-eco--hub .ckn-lg-eco__art{background-image:url('../images/ecosystem-hub.webp')}.ckn-lg-eco--ads .ckn-lg-eco__art{background-image:url('../images/ecosystem-ads.webp')}.ckn-lg-eco--nail .ckn-lg-eco__art{background-image:url('../images/ecosystem-nail.webp')}.ckn-lg-eco--shop .ckn-lg-eco__art{background-image:url('../images/ecosystem-shop.webp')}
.ckn-lg-eco[href]:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(17,41,75,.12)}
.ckn-lg--home .ckn-lg-band{background:linear-gradient(93deg,#092d55 0%,#0c3e73 74%,#176599 100%);position:relative;overflow:hidden;isolation:isolate}
.ckn-lg--home .ckn-lg-band:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,45,85,.98),rgba(9,45,85,.55)),url('../images/cta-city.webp') right center/cover no-repeat;opacity:.9}
.ckn-lg--home .ckn-lg-band h3{font-size:clamp(26px,2.6vw,35px)}
.ckn-lg-community--featured .ckn-lg-community__fallback--usa{background:#dceffe url('../images/community-usa.webp') center/cover no-repeat}
.ckn-lg-community--featured .ckn-lg-community__fallback--usa .ckn-lg-icon{display:none}
.ckn-lg-empty--project{position:relative;background:radial-gradient(circle at 50% 38%,#e9f6ff,transparent 54%),linear-gradient(#fcfeff,#eff7ff);border:1px solid #e1edf7}
.ckn-lg-empty__art{width:200px;height:160px;background:transparent;border-radius:0;margin:0;padding:0}
.ckn-lg-empty__drawing{display:block;width:200px;height:160px}
.ckn-lg-cta__inner{position:relative;isolation:isolate;overflow:hidden}
.ckn-lg-cta__inner:before{content:"";position:absolute;z-index:-1;inset:0;opacity:.75;background:linear-gradient(90deg,#082d54 0%,rgba(8,45,84,.72) 55%,rgba(8,45,84,.6) 100%),url('../images/cta-city.webp') right center/cover no-repeat}
.ckn-lg-heading__main h2{font-size:clamp(30px,3.1vw,44px)}
.ckn-lg-section{padding-top:48px;padding-bottom:52px}
#header .ckn-lg-brand-link img{max-width:min(430px,34vw);max-height:76px;min-height:0}
#header [data-id="logo"]:not(:has(img)) .site-title a,#header .ct-header-logo:not(:has(img)) .site-title a{background-image:url('../images/brand-header.png');width:285px;height:75px}
.ckn-lg--home .ckn-lg-ecosystem{gap:14px}
@media(min-width:1024px){.ckn-lg--home .ckn-lg-hero{padding:8px 0}.ckn-lg--home .ckn-lg-hero__grid{min-height:395px;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:10px;padding:24px 0}.ckn-lg--home .ckn-lg-hero__art img{max-height:390px}.ckn-lg--home .ckn-lg-hero__copy{padding-left:10px}.ckn-lg--home .ckn-lg-section--ecosystem-home{padding-top:44px}.ckn-lg--home .ckn-lg-ecosystem{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:700px) and (max-width:1023px){.ckn-lg--home .ckn-lg-hero__grid{min-height:390px}.ckn-lg--home .ckn-lg-hero h1{font-size:clamp(39px,4.4vw,48px)}.ckn-lg--home .ckn-lg-hero__art img{max-height:330px}.ckn-lg--home .ckn-lg-ecosystem{grid-template-columns:repeat(2,minmax(0,1fr))}.ckn-lg-eco{min-height:220px}}
@media(max-width:699px){.ckn-lg--home .ckn-lg-hero{padding:8px 0 18px}.ckn-lg--home .ckn-lg-hero__grid{gap:0;padding:16px 0 0}.ckn-lg--home .ckn-lg-hero h1{font-size:clamp(37px,10.3vw,54px);line-height:1.03;margin:12px 0}.ckn-lg--home .ckn-lg-hero__topics{font-size:13px;line-height:1.4}.ckn-lg--home .ckn-lg-hero__summary{font-size:14px;line-height:1.6}.ckn-lg--home .ckn-lg-hero__art{margin-top:2px}.ckn-lg--home .ckn-lg-hero__art img{max-height:270px;width:100%;object-fit:contain}.ckn-lg--home .ckn-lg-section--ecosystem-home{padding-top:30px}.ckn-lg--home .ckn-lg-ecosystem{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ckn-lg-eco{min-height:235px;padding:14px;gap:7px}.ckn-lg-eco__body{max-width:100%}.ckn-lg-eco__body strong{font-size:16px}.ckn-lg-eco__body>span{font-size:11px;line-height:1.45}.ckn-lg-eco__body small{font-size:8px}.ckn-lg-eco__icon{width:43px;height:43px}.ckn-lg-eco__icon img{width:42px;height:42px}.ckn-lg-eco__art{width:74%;height:54%;opacity:.38}.ckn-lg-eco__cta{font-size:10px;padding:6px 7px}.ckn-lg--home .ckn-lg-band{padding:18px}.ckn-lg--home .ckn-lg-band h3{font-size:24px}.ckn-lg-community__body,.ckn-lg-project__body,.ckn-lg-news__body{padding:17px}.ckn-lg-heading__main h2{font-size:31px}.ckn-lg-section{padding:32px 0}.ckn-lg--home .ckn-lg-hero__summary{max-width:600px}#header .ckn-lg-brand-link img{max-width:min(264px,62vw);max-height:66px}#header [data-id="logo"]:not(:has(img)) .site-title a,#header .ct-header-logo:not(:has(img)) .site-title a{width:225px;height:58px}}
@media(max-width:370px){.ckn-lg--home .ckn-lg-hero h1{font-size:35px}.ckn-lg-eco__body strong{font-size:14px}.ckn-lg-eco{padding:11px;min-height:230px}.ckn-lg-eco__body>span{font-size:10px}}
/* QA polish: typography consistency and spacious empty states */
.ckn-lg{font-family:Arial,Helvetica,sans-serif;font-size:16px}
.ckn-lg h1,.ckn-lg h2,.ckn-lg h3,.ckn-lg p,.ckn-lg a,.ckn-lg strong,.ckn-lg span{font-family:inherit}
.ckn-lg--home .ckn-lg-hero__copy{font-family:Arial,Helvetica,sans-serif}
.ckn-lg--home .ckn-lg-project-wrap>.ckn-lg-empty,
.ckn-lg--home .ckn-lg-news-grid>.ckn-lg-empty{grid-column:1/-1;min-height:265px}
.ckn-lg--home .ckn-lg-community-layout>.ckn-lg-empty{grid-column:1/-1;min-height:285px}
.ckn-lg--home .ckn-lg-project-wrap>.ckn-lg-empty{padding-block:24px}
.ckn-lg--home .ckn-lg-project-wrap>.ckn-lg-empty__art{width:200px}

#header .ckn-lg-brand-link{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:#102f57}
#header .ckn-lg-brand-link img{display:block;width:60px;height:60px;max-width:none;max-height:none;object-fit:contain}
#header .ckn-lg-brand-wordmark{display:flex;flex-direction:column;gap:3px;font:inherit}
#header .ckn-lg-brand-wordmark strong{display:block;font-family:Arial,Helvetica,sans-serif;font-size:20px;line-height:1.01;font-weight:900;letter-spacing:-.035em;color:#102f57}
#header .ckn-lg-brand-wordmark small{display:block;font-family:Arial,Helvetica,sans-serif;font-size:10px;line-height:1.2;color:#456380;font-weight:600}
@media(max-width:699px){#header .ckn-lg-brand-link{gap:8px}#header .ckn-lg-brand-link img{width:51px;height:51px}#header .ckn-lg-brand-wordmark strong{font-size:16px}#header .ckn-lg-brand-wordmark small{font-size:9px}}
/* Keep WordPress archive templates aligned with the homepage grid. */
.ckn-lg-project-grid{display:grid;grid-template-columns:1fr;gap:18px}
.ckn-lg-project-grid>.ckn-lg-empty--wide{grid-column:1/-1}
.ckn-lg--interior .ckn-lg-news-grid>.ckn-lg-empty--wide{grid-column:1/-1}
.ckn-lg--interior .ckn-lg-project-grid .ckn-lg-project{min-width:0}
#header [data-id="logo"]:not(:has(img)) .site-title a,
#header .ct-header-logo:not(:has(img)) .site-title a{background:none!important;text-indent:0!important;overflow:visible!important;width:auto!important;height:auto!important;min-height:60px!important;display:inline-flex!important;align-items:center;gap:10px;font:bold 20px/1.05 Arial,Helvetica,sans-serif;color:#11294b;text-transform:uppercase;max-width:350px}
#header [data-id="logo"]:not(:has(img)) .site-title a:before,
#header .ct-header-logo:not(:has(img)) .site-title a:before{content:"";display:block;width:60px;height:60px;flex:none;background:url('../images/brand-symbol.png') center/contain no-repeat}
@media(min-width:700px){.ckn-lg-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.ckn-lg-project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:699px){#header [data-id="logo"]:not(:has(img)) .site-title a,#header .ct-header-logo:not(:has(img)) .site-title a{font-size:16px;max-width:250px}#header [data-id="logo"]:not(:has(img)) .site-title a:before,#header .ct-header-logo:not(:has(img)) .site-title a:before{width:49px;height:49px}}
