/* CityDent brand layer: editorial flight path. */
:root {
  --kc-navy: #11243d;
  --kc-navy-2: #09182b;
  --kc-coral: #ff6a3d;
  --kc-coral-dark: #e84d20;
  --kc-teal: #b65e2f;
  --kc-ink: #11243d;
  --kc-muted: #68717d;
  --kc-line: #eadfd3;
  --kc-surface: #fffdf9;
  --kc-warm: #f8f5ef;
  --kc-radius-sm: 14px;
  --kc-radius: 20px;
  --kc-radius-lg: 28px;
  --kc-shadow: 0 18px 50px rgba(31, 43, 58, .09);
  --kc-container: 1380px;
}

body { background: var(--kc-warm); }
h1, h2, h3, h4 { font-weight: 800; letter-spacing: -.04em; }
.kc-container { width: min(calc(100% - 48px), var(--kc-container)); }
.site-header { background: rgba(255, 253, 249, .96); border-bottom-color: #e7ddd2; }
.header-inner { width: min(calc(100% - 48px), 1460px); min-height: 82px; }
.site-branding img, .custom-logo { max-width: 235px; max-height: 58px; }
.primary-nav > ul { gap: clamp(12px, 1.4vw, 25px); }
.primary-nav a { position: relative; font-size: .79rem; font-weight: 800; text-transform: uppercase; letter-spacing: .025em; }
.primary-nav > ul > li > a::after { content: ""; position: absolute; right: 0; bottom: 6px; left: 0; height: 2px; background: var(--kc-coral); transform: scaleX(0); transform-origin: left; transition: transform .2s ease; }
.primary-nav > ul > li > a:hover::after, .primary-nav > ul > .current-menu-item > a::after { transform: scaleX(1); }
.header-cta { display: inline-flex; min-height: 46px; padding: 9px 17px; color: #fff; background: var(--kc-coral); border-color: var(--kc-coral); border-radius: 7px; font-size: .79rem; letter-spacing: .02em; }
.header-cta:hover { background: var(--kc-coral-dark); border-color: var(--kc-coral-dark); box-shadow: 0 10px 26px rgba(255,106,61,.28); }
.icon-button, .menu-toggle { border: 1px solid transparent; }

/* Homepage: one narrative line instead of a reusable card grid. */
.flight-deck { padding: 34px 0 28px; background: var(--kc-surface); border-bottom: 1px solid var(--kc-line); }
.flight-shell { display: grid; grid-template-columns: 112px minmax(0, 1.78fr) minmax(320px, .82fr); gap: clamp(24px, 3vw, 46px); align-items: start; }
.topic-rail { padding-top: 8px; border-right: 1px solid var(--kc-line); }
.rail-caption { display: block; margin: 0 16px 14px 0; color: var(--kc-coral-dark); font-size: .65rem; font-weight: 900; letter-spacing: .16em; }
.topic-rail ol { list-style: none; margin: 0; padding: 0; }
.topic-rail li { margin-right: -1px; }
.topic-rail a { display: grid; grid-template-columns: 28px 1fr; gap: 7px; align-items: center; min-height: 64px; padding: 10px 12px 10px 0; border-right: 2px solid transparent; }
.topic-rail span { color: var(--kc-muted); font-size: .7rem; font-weight: 900; }
.topic-rail strong { overflow: hidden; color: var(--kc-navy); font-size: .67rem; line-height: 1.18; text-overflow: ellipsis; text-transform: uppercase; }
.topic-rail li.is-active a { margin-left: -12px; padding-left: 12px; color: #fff; background: var(--kc-coral); border-radius: 0 9px 9px 0; border-right-color: var(--kc-coral); }
.topic-rail li.is-active span, .topic-rail li.is-active strong { color: #fff; }

.lead-story { display: grid; grid-template-columns: minmax(0, 1.14fr) minmax(300px, .9fr); gap: clamp(26px, 3vw, 52px); align-items: center; min-height: 550px; }
.lead-media { height: 550px; overflow: hidden; background: #eee5d9; border-radius: 6px 54px 175px 6px; }
.lead-media img, .lead-media .placeholder-image { width: 100%; height: 100%; object-fit: cover; }
.lead-copy { padding: 18px 0; }
.lead-copy .eyebrow { margin: 0 0 30px; padding: 0; color: var(--kc-muted); background: none; letter-spacing: .16em; }
.category-kicker { display: block; width: fit-content; margin-bottom: 10px; color: var(--kc-coral-dark); font-size: .7rem; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.lead-copy h1 { margin-bottom: 18px; font-size: clamp(2.45rem, 3.65vw, 4.35rem); line-height: .99; overflow-wrap: anywhere; }
.lead-copy p { color: #4f5967; font-size: clamp(.96rem, 1.15vw, 1.1rem); line-height: 1.62; }
.lead-copy .post-meta { margin-top: 20px; }
.circle-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 25px; font-size: .79rem; font-weight: 900; text-transform: uppercase; }
.circle-link b, .path-arrow { display: grid; place-items: center; width: 42px; height: 42px; color: #fff; background: var(--kc-navy); border-radius: 50%; font-size: 1.2rem; transition: transform .2s ease, background .2s ease; }
.circle-link:hover b, .path-arrow:hover { color: #fff; background: var(--kc-coral); transform: translateX(3px); }

.radar-stories { min-width: 0; padding-top: 8px; }
.rail-heading { display: flex; align-items: center; gap: 14px; margin-bottom: 16px; }
.rail-heading h2 { flex: none; margin: 0; font-size: 1.05rem; text-transform: uppercase; }
.rail-heading span { width: 100%; height: 1px; background: var(--kc-line); }
.radar-item { display: grid; grid-template-columns: 34px 128px minmax(0, 1fr); gap: 14px; align-items: center; min-height: 142px; padding: 15px 0; border-bottom: 1px solid var(--kc-line); }
.radar-number { align-self: start; padding-top: 8px; color: var(--kc-coral); font-size: 1.35rem; font-weight: 900; }
.radar-image { height: 94px; overflow: hidden; background: #eee5d9; border-radius: 12px; }
.radar-image img, .radar-image .placeholder-image { width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.radar-item h3 { margin: 0 0 7px; font-size: clamp(.88rem, 1.05vw, 1.05rem); line-height: 1.16; }
.mini-time, .runway-item time { color: var(--kc-muted); font-size: .72rem; }

.knowledge-paths { position: relative; padding: 42px 0 58px; overflow: hidden; background: #fffaf4; }
.path-heading span { color: var(--kc-coral-dark); font-size: .65rem; font-weight: 900; letter-spacing: .16em; }
.path-heading h2 { margin: 4px 0 30px; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.path-line { position: absolute; z-index: 0; top: 145px; left: 7%; width: 86%; height: 130px; border-top: 2px solid #ead3bf; border-radius: 50%; transform: rotate(1.5deg); }
.path-line i { position: absolute; top: -8px; width: 15px; height: 15px; background: #fffaf4; border: 3px solid var(--kc-coral); border-radius: 50%; }
.path-line i:nth-child(1) { left: 29%; }.path-line i:nth-child(2) { left: 62%; top: 13px; }.path-line i:nth-child(3) { right: 4%; top: 31px; }
.path-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(18px, 3vw, 50px); align-items: start; }
.path-card { display: grid; grid-template-columns: minmax(130px, .9fr) minmax(150px, 1fr); min-height: 222px; overflow: hidden; background: var(--kc-surface); border: 1px solid #e7d5c5; border-radius: 8px 24px 8px 24px; box-shadow: 0 12px 30px rgba(31,43,58,.05); transform: rotate(-1deg); }
.path-card.path-2 { margin-top: 35px; transform: rotate(.7deg); }
.path-card.path-3 { margin-top: 5px; transform: rotate(-.5deg); }
.path-media { min-height: 220px; background: #eee5d9; }
.path-media img, .path-media .placeholder-image { width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.path-copy { position: relative; display: flex; flex-direction: column; padding: 25px 20px 18px; }
.path-copy h3 { margin: 0 0 14px; font-size: clamp(1rem, 1.35vw, 1.3rem); line-height: 1.12; }
.path-copy .mini-time { margin-top: auto; padding-right: 38px; }
.path-arrow { position: absolute; right: 15px; bottom: 14px; width: 34px; height: 34px; font-size: 1rem; }

.latest-runway { padding: 38px 0 60px; background: var(--kc-surface); }
.runway-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 18px; padding-bottom: 13px; border-bottom: 1px solid var(--kc-line); }
.runway-heading h2 { margin: 0; font-size: 1.45rem; text-transform: uppercase; }
.runway-heading a { font-size: .78rem; font-weight: 900; text-transform: uppercase; }
.runway-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.runway-item { position: relative; display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 14px; min-width: 0; padding: 16px 20px 16px 0; border-right: 1px solid var(--kc-line); }
.runway-item + .runway-item { padding-left: 20px; }
.runway-item:last-child { border-right: 0; }
.runway-no { position: absolute; top: 8px; left: 4px; z-index: 2; display: grid; place-items: center; width: 26px; height: 26px; color: #fff; background: var(--kc-coral); border-radius: 50%; font-size: .65rem; font-weight: 900; }
.runway-image { height: 84px; overflow: hidden; background: #eee5d9; border-radius: 10px; }
.runway-image img, .runway-image .placeholder-image { width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.runway-item h3 { margin: 0 0 8px; font-size: .94rem; line-height: 1.2; }

/* Archives keep the same editorial language without copying the homepage. */
.page-header { position: relative; padding: 68px 0 44px; overflow: hidden; background: var(--kc-navy); border: 0; }
.page-header::after { content: ""; position: absolute; right: -8vw; bottom: -130px; width: 430px; height: 270px; border: 2px solid rgba(255,106,61,.5); border-radius: 50%; transform: rotate(-12deg); }
.page-header h1, .page-header .archive-description { color: #fff; }
.page-header h1 { font-size: clamp(2.5rem, 6vw, 5.2rem); }
.archive-main .post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--kc-line); border: 1px solid var(--kc-line); }
.archive-main .post-card { display: grid; grid-template-columns: minmax(170px, .78fr) minmax(0, 1fr); min-height: 280px; border: 0; border-radius: 0; box-shadow: none; }
.archive-main .post-card:hover { transform: none; }
.archive-main .card-media { height: 100%; aspect-ratio: auto; }

/* The summary is always the first substantive block in an article. */
.single-hero { position: relative; padding: 64px 0 40px; overflow: hidden; background: var(--kc-surface); }
.single-hero::after { content: ""; position: absolute; right: -120px; bottom: -190px; width: 440px; height: 280px; border: 2px solid #f2cbb8; border-radius: 50%; transform: rotate(-18deg); }
.single-header { position: relative; z-index: 1; max-width: 1040px; }
.single-header h1 { max-width: 18ch; font-size: clamp(2.6rem, 5.5vw, 5.6rem); line-height: .98; }
.single-header .category-pill { color: var(--kc-coral-dark); background: transparent; border-left: 3px solid var(--kc-coral); border-radius: 0; padding-left: 9px; }
.breadcrumbs a { color: var(--kc-coral-dark); }
.citydent-summary { display: grid; grid-template-columns: 190px minmax(0, 1fr) auto; gap: 32px; align-items: start; margin-top: 34px; margin-bottom: 34px; padding: 28px 32px; background: #fff3e9; border-top: 2px solid var(--kc-coral); border-bottom: 1px solid #efd7c8; }
.summary-label { display: flex; align-items: center; gap: 12px; }
.summary-label span { display: grid; place-items: center; width: 42px; height: 42px; color: #fff; background: var(--kc-coral); border-radius: 50%; font-size: .75rem; font-weight: 900; }
.summary-label h2 { margin: 0; font-size: 1.35rem; }
.citydent-summary ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 30px; margin: 0; padding: 0; list-style: none; }
.citydent-summary li { position: relative; padding-left: 18px; color: #38485a; font-size: .94rem; }
.citydent-summary li::before { content: ""; position: absolute; top: .7em; left: 0; width: 7px; height: 7px; background: var(--kc-coral); border-radius: 50%; }
.citydent-summary > a { align-self: center; color: var(--kc-coral-dark); font-size: .72rem; font-weight: 900; text-transform: uppercase; white-space: nowrap; }
.single-cover { border-radius: 8px 70px 8px 8px; }
.single-layout { grid-template-columns: minmax(0, 820px) minmax(250px, 330px); }
.entry-content { font-family: Georgia, "Times New Roman", serif; font-size: 1.16rem; }
.entry-content h2, .entry-content h3, .entry-content h4 { font-family: SanSans, ui-sans-serif, system-ui, sans-serif; }
.entry-content > p:first-child::first-letter { float: left; margin: .08em .12em 0 0; color: var(--kc-coral-dark); font: 800 3.6em/.77 SanSans, sans-serif; }
.sidebar-widget, .author-box { border-radius: 6px 22px 6px 22px; }

.site-footer { background: #0b1c31; }
.footer-brand img { width: 230px; }
.tag-cloud a { color: #fff; border-color: rgba(255,106,61,.5); }

@media (max-width: 1250px) {
  .header-cta { display: inline-flex; }
  .flight-shell { grid-template-columns: 86px minmax(0, 1.5fr) minmax(300px, .85fr); gap: 24px; }
  .lead-story { grid-template-columns: 1fr; min-height: 0; }
  .lead-media { height: 400px; }
  .lead-copy h1 { font-size: clamp(2rem, 3.5vw, 3.2rem); }
  .lead-copy .eyebrow { margin-bottom: 14px; }
  .radar-item { grid-template-columns: 28px 100px minmax(0, 1fr); }
  .path-card { grid-template-columns: 1fr; }
  .path-media { min-height: 165px; }
}

@media (max-width: 980px) {
  .flight-shell { grid-template-columns: 74px minmax(0, 1fr); }
  .radar-stories { grid-column: 2; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
  .radar-stories .rail-heading { grid-column: 1 / -1; }
  .radar-item { grid-template-columns: 1fr; align-content: start; border: 1px solid var(--kc-line); padding: 14px; border-radius: 14px; }
  .radar-number { position: absolute; }
  .radar-image { height: 130px; }
  .radar-item h3 { font-size: 1rem; }
  .path-grid { gap: 14px; }
  .runway-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .runway-item:nth-child(2) { border-right: 0; }.runway-item:nth-child(3), .runway-item:nth-child(4) { border-top: 1px solid var(--kc-line); }
  .archive-main .post-grid { grid-template-columns: 1fr; }
  .citydent-summary { grid-template-columns: 150px minmax(0, 1fr); }
  .citydent-summary > a { grid-column: 2; }
}

@media (max-width: 720px) {
  .kc-container { width: min(calc(100% - 28px), var(--kc-container)); }
  .header-inner { width: calc(100% - 22px); min-height: 68px; gap: 5px; }
  .site-branding img, .custom-logo { max-width: 128px; max-height: 42px; }
  .header-cta { min-height: 38px; padding: 7px 9px; font-size: .63rem; }
  .search-toggle { display: none; }
  .icon-button, .menu-toggle { width: 38px; height: 38px; }
  .flight-deck { padding-top: 18px; }
  .flight-shell { grid-template-columns: 1fr; }
  .topic-rail { overflow-x: auto; padding: 0 0 10px; border: 0; scrollbar-width: none; }
  .topic-rail .rail-caption { display: none; }
  .topic-rail ol { display: flex; min-width: max-content; }
  .topic-rail a { grid-template-columns: auto 1fr; min-height: 42px; padding: 8px 12px; border-right: 0; border-bottom: 2px solid transparent; }
  .topic-rail li.is-active a { margin: 0; border-radius: 7px; }
  .lead-story { grid-template-columns: 1fr; gap: 20px; }
  .lead-media { height: min(72vw, 390px); border-radius: 5px 35px 100px 5px; }
  .lead-copy { padding: 0; }
  .lead-copy h1 { font-size: clamp(2.1rem, 10vw, 3.35rem); }
  .lead-copy p { font-size: .96rem; }
  .radar-stories { grid-column: 1; grid-template-columns: 1fr; margin-top: 24px; }
  .radar-item { grid-template-columns: 105px minmax(0, 1fr); }
  .radar-image { height: 92px; }
  .radar-number { display: none; }
  .path-line { display: none; }
  .path-grid { grid-template-columns: 1fr; }
  .path-card, .path-card.path-2, .path-card.path-3 { grid-template-columns: 120px minmax(0, 1fr); min-height: 180px; margin: 0; transform: none; }
  .path-media { min-height: 180px; }
  .path-copy { padding: 20px 16px; }
  .runway-list { grid-template-columns: 1fr; }
  .runway-item, .runway-item + .runway-item { padding: 16px 0; border-right: 0; border-top: 1px solid var(--kc-line); }
  .runway-item:first-child { border-top: 0; }
  .archive-main .post-card { grid-template-columns: 118px minmax(0, 1fr); min-height: 180px; }
  .archive-main .post-card .card-excerpt { display: none; }
  .single-hero { padding: 36px 0 26px; }
  .single-header h1 { font-size: clamp(2.15rem, 11vw, 3.5rem); }
  .citydent-summary { grid-template-columns: 1fr; gap: 18px; width: 100%; margin-top: 0; padding: 24px 20px; }
  .citydent-summary ul { grid-template-columns: 1fr; }
  .citydent-summary > a { grid-column: 1; }
  .single-cover { width: 100%; border-radius: 0 32px 0 0; }
}

@media (max-width: 390px) {
  .site-branding img, .custom-logo { max-width: 108px; }
  .header-cta { padding-inline: 7px; font-size: .58rem; }
  .menu-toggle { width: 34px; }
  .path-card, .path-card.path-2, .path-card.path-3 { grid-template-columns: 105px minmax(0, 1fr); }
}

/* CityDent — calm knowledge garden */
@font-face{font-family:SanSans;src:url('../fonts/body-regular.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:SanSans;src:url('../fonts/body-bold.otf') format('opentype');font-weight:700 900;font-display:swap}
@font-face{font-family:SanDisplay;src:url('../fonts/display-regular.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:SanDisplay;src:url('../fonts/display-bold.otf') format('opentype');font-weight:700 900;font-display:swap}
:root{--kc-navy:#31453b;--kc-navy-2:#213229;--kc-coral:#b6644f;--kc-coral-dark:#914735;--kc-teal:#839b79;--kc-warm:#f4efe4;--kc-line:#d8d1c2;--kc-radius:22px;--kc-radius-lg:38px}
body,button,input,textarea,select{font-family:SanSans,Arial,sans-serif}h1,h2,h3,h4{font-family:SanDisplay,Georgia,serif;font-weight:400;letter-spacing:-.02em}.site-header{background:rgba(250,248,241,.96);border-top:5px solid #839b79}.header-cta{border-radius:999px;background:#31453b}.flight-deck{padding:56px 0;background:#faf8f1}.flight-shell{grid-template-columns:1fr;gap:30px}.topic-rail{display:none}.lead-story{grid-template-columns:1fr 1fr;gap:0;min-height:560px;overflow:hidden;background:#e6eddf;border-radius:140px 32px 32px 32px}.lead-media{height:560px;border-radius:140px 0 0 32px}.lead-copy{padding:64px}.lead-copy .eyebrow{color:#839b79}.lead-copy h1{font-size:clamp(3rem,4.8vw,5.5rem);line-height:1}.circle-link b{background:#b6644f}.radar-stories{display:grid;grid-template-columns:170px repeat(3,1fr);gap:18px;align-items:stretch}.radar-stories .rail-heading{display:block}.radar-item{grid-template-columns:1fr;padding:18px;background:#fff;border:1px solid var(--kc-line);border-radius:22px}.radar-image{height:120px}.radar-number{display:none}
.knowledge-paths{padding:70px 0;background:#f4efe4}.path-line{display:none}.path-grid{gap:20px}.path-card{grid-template-columns:1fr;min-height:360px;border:0;border-radius:120px 24px 24px;transform:none!important;margin:0!important}.path-media{min-height:200px;border-radius:120px 24px 0 0}.brand-banner{padding:80px 0;background:#31453b}.brand-banner-inner{min-height:440px;display:flex;align-items:center;padding:7%;background:linear-gradient(90deg,rgba(244,239,228,.96),rgba(244,239,228,.42) 55%,transparent 75%),url('../images/brand-banner.jpg') center/cover;border-radius:120px 26px 26px}.brand-banner-copy{max-width:480px}.brand-banner h2{font-size:clamp(3rem,5vw,5.4rem);margin:4px 0;color:#31453b}.brand-banner a{display:inline-flex;margin-top:16px;padding:13px 20px;color:#fff;background:#b6644f;border-radius:999px;font-weight:800}.latest-runway{background:#faf8f1}.page-header{background:#31453b}.single-cover{border-radius:120px 28px 28px}.entry-content{font-family:SanDisplay,Georgia,serif}.entry-content h2,.entry-content h3{font-family:SanSans,Arial,sans-serif}.site-footer{background:#213229}
@media(max-width:980px){.lead-story{grid-template-columns:1fr}.lead-media{height:430px;border-radius:80px 22px 0 0}.lead-copy{padding:42px}.radar-stories{grid-template-columns:1fr 1fr}.radar-stories .rail-heading{grid-column:1/-1}.brand-banner-inner{background:linear-gradient(90deg,rgba(244,239,228,.94),rgba(244,239,228,.7)),url('../images/brand-banner.jpg') center/cover}}
@media(max-width:720px){.lead-story{border-radius:70px 18px 18px}.lead-media{height:72vw;border-radius:70px 18px 0 0}.lead-copy{padding:30px 24px}.radar-stories{grid-template-columns:1fr}.path-card{border-radius:70px 18px 18px}.brand-banner-inner{min-height:470px;border-radius:70px 18px 18px;padding:28px}.brand-banner h2{font-size:3rem}}

/* 1.0.1 — deterministic logo and stable organic hero. */
html{font-synthesis:none}.header-inner{display:grid;grid-template-columns:255px minmax(0,1fr) auto;gap:24px}.site-branding,.brand-link{display:flex;align-items:center}.site-branding{width:255px;height:57px}.site-branding img{display:block;width:255px!important;height:57px!important;max-width:255px!important;max-height:57px!important;object-fit:contain;object-position:left center}.primary-nav,.header-actions{margin-left:0;min-width:0}
.lead-story{height:560px;min-height:0;align-items:stretch}.lead-media{height:560px}.lead-copy{min-width:0;overflow:hidden;padding:54px}.lead-copy h1{display:-webkit-box;max-height:4.08em;overflow:hidden;font-size:clamp(2.7rem,4vw,4.6rem);line-height:1.02;-webkit-box-orient:vertical;-webkit-line-clamp:4}.lead-copy p{display:-webkit-box;max-height:4.86em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}
@media(max-width:1150px){.header-inner{display:flex}.menu-toggle{display:inline-grid}.primary-nav{position:fixed;z-index:1000;top:82px;right:0;bottom:0;left:0;display:none;padding:24px;overflow-y:auto;background:#fff}.primary-nav.is-open{display:block}.primary-nav>ul{display:block}.primary-nav>ul>li>a{display:block;padding:12px 0}.header-actions{margin-left:auto}}
@media(max-width:980px){.lead-story{height:auto;grid-template-columns:1fr}.lead-media{height:min(65vw,440px)}.lead-copy{padding:40px}.lead-copy h1{-webkit-line-clamp:5;max-height:5.1em}}
@media(max-width:720px){.site-branding{width:170px;height:42px}.site-branding img{width:170px!important;height:auto!important;max-width:170px!important}.lead-media{height:min(72vw,370px)}.lead-copy{padding:30px 22px}.lead-copy h1{font-size:clamp(2.15rem,10vw,3.2rem)}}

/* CityDent — bright urban wellbeing */
:root{--kc-navy:#073b4c;--kc-navy-2:#032a36;--kc-coral:#ff7b6b;--kc-coral-dark:#dc5142;--kc-teal:#19a98d;--kc-warm:#effbf8;--kc-line:#ccebe5;--kc-container:1380px}
body{background:#f8fffd}.site-header{border-top:0;border-bottom:1px solid #d6eee9;background:rgba(255,255,255,.94)}.header-inner{grid-template-columns:255px minmax(0,1fr) auto}.site-branding{width:255px;height:54px}.site-branding img{width:255px!important;height:54px!important;max-width:255px!important;max-height:54px!important;aspect-ratio:520/110}.header-cta{background:#073b4c;border:0;border-radius:999px}
.flight-deck{padding:44px 0 72px;background:radial-gradient(circle at 95% 5%,#d5fff4,transparent 28%),#f8fffd}.flight-shell{grid-template-columns:minmax(0,1fr);gap:26px}.topic-rail{display:block;grid-column:1}.topic-rail .rail-caption{color:#1687a3}.topic-rail ol{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none}.topic-rail ol::-webkit-scrollbar{display:none}.topic-rail a{min-width:150px;min-height:auto;padding:10px 16px;border:1px solid #ccebe5;border-radius:999px;background:#fff}.topic-rail li.is-active a{margin:0;border-radius:999px;background:#39d4ae;border-color:#39d4ae}.topic-rail li.is-active strong,.topic-rail li.is-active span{color:#073b4c}
.lead-story{height:550px;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);background:#e4fbf5;border-radius:32px 140px 32px 32px}.lead-media{grid-column:1;grid-row:1;height:550px;border-radius:32px 130px 130px 32px}.lead-copy{grid-column:2;grid-row:1;display:flex;flex-direction:column;justify-content:center;padding:50px 54px 50px 38px}.lead-copy h1{font-family:SanSans,Arial,sans-serif;font-weight:700;max-width:12ch;font-size:clamp(2.65rem,3.8vw,4.45rem)}.lead-copy .eyebrow{color:#1687a3}.circle-link b{background:#ff7b6b}
.radar-stories{grid-template-columns:170px repeat(3,1fr);gap:14px}.radar-item{border-radius:24px;background:#fff;box-shadow:0 14px 32px rgba(7,59,76,.07)}.radar-item:nth-child(2){background:#e8f7ff}.radar-item:nth-child(3){background:#fff0ed}.knowledge-paths{background:#effbf8}.path-card{border-radius:30px;box-shadow:none}.path-card:nth-child(2){border-radius:120px 30px 30px}.brand-banner{padding:76px 0;background:#073b4c}.brand-banner-inner{min-height:430px;justify-content:flex-end;padding:5%;background:linear-gradient(90deg,transparent 20%,rgba(3,42,54,.12) 52%,rgba(3,42,54,.88) 72%),url('../images/brand-banner.jpg') center/cover;border-radius:36px}.brand-banner-copy{max-width:490px;padding:34px;color:#fff;background:rgba(7,59,76,.82);border:1px solid rgba(255,255,255,.25);border-radius:28px;backdrop-filter:blur(12px)}.brand-banner h2{color:#fff;font-family:SanSans,Arial,sans-serif;font-size:clamp(2.55rem,4vw,4.4rem)}.brand-banner a{background:#39d4ae;color:#073b4c}.latest-runway{background:#f8fffd}.site-footer{background:#032a36}
@media(max-width:1150px){.header-inner{display:flex}.site-branding{width:220px}.site-branding img{width:220px!important;height:auto!important}.lead-story{height:auto;grid-template-columns:1fr}.lead-media{grid-column:1;grid-row:1;height:min(60vw,450px);border-radius:30px 100px 30px 30px}.lead-copy{grid-column:1;grid-row:2;padding:38px}.radar-stories{grid-template-columns:1fr 1fr}.radar-stories .rail-heading{grid-column:1/-1}}
@media(max-width:720px){.site-branding{width:155px;height:40px}.site-branding img{width:155px!important;max-width:155px!important}.lead-media{height:min(74vw,370px);border-radius:24px 70px 24px 24px}.lead-copy{padding:28px 22px}.lead-copy h1{font-size:clamp(2.15rem,10vw,3.1rem)}.radar-stories{grid-template-columns:1fr}.brand-banner-inner{min-height:480px;padding:20px;background:linear-gradient(rgba(3,42,54,.45),rgba(3,42,54,.78)),url('../images/brand-banner.jpg') center/cover}.brand-banner-copy{padding:26px}}
