*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--kb-paper);color:var(--kb-body);font:400 18px/1.7 var(--kb-font)}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid var(--kb-ink);outline-offset:5px}.dark a:focus-visible,.dark button:focus-visible{outline-color:var(--kb-gold)}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.02em;line-height:1.1;color:var(--kb-ink)}h1{font-size:clamp(56px,5vw,72px);line-height:1.05}h2{font-size:clamp(34px,3.5vw,48px)}h3{font-size:28px}p+p{margin-top:20px}ul{list-style:none;padding:0;margin:0}.wrap{width:min(calc(100% - 2 * var(--kb-gutter)),1240px);margin-inline:auto}.section{padding-block:var(--kb-section-y)}.tint{background:var(--kb-tint)}.dark{background:var(--kb-ink);color:var(--kb-paper)}.dark h1,.dark h2,.dark h3{color:var(--kb-paper)}.label{display:block;font-size:13px;line-height:1.4;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--kb-ink);margin-bottom:24px}.label:after{content:"";display:block;width:48px;height:4px;background:var(--kb-gold);margin-top:12px}.dark .label{color:var(--kb-paper)}.section-heading{margin-bottom:44px;max-width:700px}.section-heading h2{max-width:650px}.skip-link{position:absolute;left:20px;top:12px;z-index:20;padding:12px 20px;background:var(--kb-paper);color:var(--kb-ink);transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{position:relative;z-index:5;border-bottom:1px solid var(--kb-muted)}.header-main{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px}.brand{flex-shrink:0}.brand img{height:64px;width:auto}.header-actions{display:flex;align-items:center;gap:24px}.phone-block{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.header-actions .phone-block{align-items:flex-end;flex-direction:column;gap:4px;font-size:18px;line-height:1.4}.kb-chip{display:inline-block;font:400 12px/1.5 var(--kb-font);letter-spacing:0;text-transform:none;background:var(--kb-tint);color:var(--kb-ink);padding:2px 6px;border-radius:var(--kb-r-sm);vertical-align:middle}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding:12px 24px;font-size:16px;font-weight:600;line-height:1.35;background:var(--kb-gold);color:var(--kb-ink);border:1px solid var(--kb-gold)}.button.secondary{background:var(--kb-ink);border-color:var(--kb-muted);color:var(--kb-paper)}.arrow{font-size:24px;line-height:1;font-weight:400}.nav-toggle{display:none;background:transparent;border:1px solid var(--kb-muted);padding:12px 16px;min-height:44px;color:var(--kb-paper);font-size:16px}.primary-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:0 16px;font-size:16px;font-weight:500}.primary-nav a{display:block;padding-block:8px;border-bottom:2px solid transparent}.primary-nav a[aria-current]{border-bottom-color:var(--kb-gold)}.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--kb-ink)}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:68% center;z-index:-2}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(16,27,34,.97) 0%,rgba(16,27,34,.94) 38%,rgba(16,27,34,.83) 65%,rgba(16,27,34,.36) 100%)}.hero-content{padding-block:72px 80px}.hero .eyebrow{font-size:13px;font-weight:600;letter-spacing:.09em;line-height:1.5;margin-bottom:28px}.hero h1{max-width:850px}.hero .lede{max-width:640px;margin-top:28px;font-size:19px;line-height:1.65;color:var(--kb-paper)}.hero-proof{font-size:14px;line-height:1.8;max-width:680px;margin-top:24px}.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.hero .cta-row{max-width:850px}.proof-strip{padding-block:28px}.proof-marks{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px 48px}.proof-marks a{display:flex;justify-content:center;align-items:center;min-height:68px}.proof-marks img{width:160px;height:64px;object-fit:contain}.proof-marks .ssip-note{font-size:14px;line-height:1.4;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--kb-ink)}.section.tint+.proof-strip.tint{background:var(--kb-paper);border-bottom:1px solid var(--kb-border)}.division-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.division-panel{display:flex;flex-direction:column;min-width:0}.photo{aspect-ratio:4/3;width:100%;object-fit:cover;background:var(--kb-tint)}.division-panel .photo{aspect-ratio:4/5}.division-panel h3{font-size:27px;line-height:1.15;margin-top:24px;min-height:64px}.division-panel p{font-size:17px;line-height:1.65;margin-top:16px}.panel-link{display:flex;justify-content:space-between;gap:16px;margin-top:auto;padding-top:24px;padding-bottom:12px;border-bottom:1px solid var(--kb-border);color:var(--kb-ink);font-weight:500;font-size:16px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.project-grid[data-count="1"]{grid-template-columns:minmax(0,1fr);max-width:600px}.project-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid[data-count="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}.project-grid[data-count="4"] .project-card h3{font-size:26px}.project-card{display:flex;flex-direction:column;min-width:0}.project-card.text-card{background:var(--kb-tint);border-top:4px solid var(--kb-gold);padding:28px 28px 24px}.tint .project-card.text-card{background:var(--kb-paper)}.project-card figure{margin-bottom:24px}.project-card figcaption{font-size:13px;line-height:1.5;margin-top:8px;color:var(--kb-body)}.project-card .tag{font-size:13px;font-weight:600;line-height:1.4;letter-spacing:.09em;text-transform:uppercase;color:var(--kb-ink);margin-bottom:12px}.project-card .tag:before{content:"";display:inline-block;width:6px;height:6px;background:var(--kb-gold);border-radius:50%;margin-right:8px;vertical-align:middle}.project-card h3{font-size:30px;line-height:1.12;margin-bottom:20px}.project-card p{font-size:17px;line-height:1.65}.logo-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:32px;align-items:center}.logo-row img{width:100%;height:52px;object-fit:contain;filter:grayscale(1)}.voice-grid{display:grid;grid-template-columns:1fr 2fr;gap:80px}.quote-mark{font-size:120px;line-height:.9;color:var(--kb-ink);font-weight:500;letter-spacing:-.06em}.voice blockquote p{font-size:clamp(25px,2.4vw,34px);line-height:1.4;font-weight:500;letter-spacing:-.015em;color:var(--kb-ink)}.voice figcaption{margin-top:28px;font-size:16px;color:var(--kb-body)}.social-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:start}.social-grid h2{margin-bottom:24px}.social-grid p{max-width:560px}.text-link{display:inline-flex;align-items:center;gap:24px;color:var(--kb-ink);font-weight:600;margin-top:28px;text-decoration:underline;text-underline-offset:6px}.social-proof{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;border-block:1px solid var(--kb-border);padding-block:40px}.social-proof img{width:150px;height:120px;object-fit:contain;margin:auto}.carbon-statement{font-size:16px;line-height:1.5;color:var(--kb-body)}.carbon-statement strong{display:block;font-size:28px;font-weight:500;line-height:1.1;color:var(--kb-ink);margin-bottom:12px}.insight-list{border-top:1px solid var(--kb-border)}.insight-item{display:grid;grid-template-columns:190px 1fr 40px;gap:32px;align-items:start;padding-block:28px;border-bottom:1px solid var(--kb-border)}.insight-item time{font-size:15px;color:var(--kb-body);padding-top:4px}.insight-item h3{font-size:28px;line-height:1.2}.insight-item .arrow{color:var(--kb-ink);padding-top:4px}.closing{padding-block:80px}.closing-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:60px;align-items:start}.closing h2{font-size:clamp(40px,4vw,56px);max-width:360px}.closing p{margin-top:24px}.closing .cta-row{margin-top:0}.closing-contact{display:flex;flex-wrap:wrap;gap:24px;margin-top:28px;font-size:17px}.closing .text-link{color:var(--kb-paper);margin-top:24px}.site-footer{border-top:1px solid var(--kb-muted);padding-top:64px;color:var(--kb-muted);font-size:15px;line-height:1.65}.footer-top{display:grid;grid-template-columns:1fr 3fr;gap:64px}.footer-brand img{width:68px;height:68px;object-fit:contain;margin-bottom:24px}.footer-brand p{font-size:18px;color:var(--kb-paper)}.footer-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.footer-links h2{font-size:17px;line-height:1.4;letter-spacing:0;font-weight:500;margin-bottom:16px}.footer-links li+li{margin-top:4px}.footer-links a{display:inline-block;padding-block:4px}.footer-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-block:48px}.footer-facts address{font-style:normal}.footer-facts .fact-label{display:block;color:var(--kb-paper);font-weight:500;margin-bottom:8px}.footer-facts a{overflow-wrap:anywhere}.footer-marks{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-bottom:40px}.footer-marks a{display:flex;background:var(--kb-paper);padding:8px;width:96px;height:56px;align-items:center;justify-content:center}.footer-marks img{width:100%;height:100%;object-fit:contain}.footer-bottom{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid var(--kb-muted);padding-block:24px;font-size:14px}.footer-bottom nav{display:flex;gap:24px;flex-wrap:wrap}.stub{min-height:380px;padding-block:88px}.stub h1{max-width:950px}.stub .summary{max-width:720px;margin-top:28px}.build-note{background:var(--kb-tint);color:var(--kb-ink);padding:20px 24px;margin-top:32px;max-width:720px;font-size:16px}.route-anchor{scroll-margin-top:24px}.route-anchor:target{outline:3px solid var(--kb-ink);outline-offset:8px}.reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:no-preference){.reveal.is-pending{opacity:0;transform:translateY(16px)}.reveal.is-visible{opacity:1;transform:none;transition:opacity .45s ease-out,transform .45s ease-out}}
@media(min-width:1600px){.hero-content{padding-block:96px}.hero h1{max-width:940px}}
@media(max-width:1050px){.header-main{gap:16px}.header-actions{gap:16px}.division-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 24px}.division-panel .photo{aspect-ratio:4/3}.division-panel h3{min-height:0}.footer-top{grid-template-columns:1fr;gap:36px}.footer-links{grid-template-columns:repeat(5,minmax(0,1fr))}.logo-row{grid-template-columns:repeat(4,1fr);gap:32px}.voice-grid{gap:32px;grid-template-columns:120px 1fr}.social-grid{gap:48px}.project-grid{gap:24px}.project-grid[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}.closing-layout{grid-template-columns:1fr;gap:36px}}
@media(max-width:720px){h1{font-size:44px}h2{font-size:36px}.wrap{width:calc(100% - 40px)}.header-main{padding-block:20px;gap:16px;flex-wrap:wrap}.brand img{height:46px}.nav-toggle{display:block}.header-actions{display:none}.primary-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;font-size:16px;padding-bottom:20px}.js .primary-nav{display:none}.js .primary-nav.is-open{display:grid}.primary-nav .mobile-quote{display:block;grid-column:1/-1;margin-top:8px}.hero-content{padding-block:48px 52px}.hero:before{background:linear-gradient(90deg,rgba(16,27,34,.96),rgba(16,27,34,.84))}.hero-image{object-position:62% center}.hero .eyebrow{font-size:12px;margin-bottom:24px;letter-spacing:.08em}.hero .lede{font-size:18px;margin-top:24px;line-height:1.6}.hero-proof{font-size:13px;line-height:1.8;margin-top:24px}.hero .cta-row{display:grid;margin-top:28px;gap:12px}.button{font-size:15px;gap:14px;padding:16px}.proof-strip{padding-block:28px}.proof-marks{gap:16px 24px}.proof-marks img{width:135px;height:56px}.proof-marks a{min-height:56px}.proof-marks .ssip-note{flex-basis:100%;text-align:center}.section{padding-block:64px}.section-heading{margin-bottom:32px}.division-grid{grid-template-columns:1fr;gap:40px}.division-panel .photo{aspect-ratio:4/3}.division-panel h3{font-size:30px;margin-top:24px}.division-panel p{font-size:18px}.project-grid,.project-grid[data-count]{grid-template-columns:1fr;gap:40px}.project-card h3{font-size:30px}.project-card p{font-size:18px}.logo-row{grid-template-columns:repeat(2,1fr);gap:28px 36px}.logo-row img{height:46px;max-width:125px;margin:auto}.voice-grid{display:block}.quote-mark{font-size:88px;margin-bottom:12px}.voice blockquote p{font-size:26px;line-height:1.4}.social-grid{grid-template-columns:1fr;gap:32px}.social-proof{padding-block:28px}.social-proof img{width:120px;height:105px}.insight-item{grid-template-columns:1fr 24px;gap:10px 16px;padding-block:24px}.insight-item time{grid-column:1/-1}.insight-item h3{font-size:26px}.closing{padding-block:64px}.closing h2{font-size:36px}.closing .cta-row{display:grid}.closing-contact{display:grid;gap:16px;font-size:18px}.footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.footer-links h2{font-size:18px}.footer-facts{grid-template-columns:1fr;gap:28px;padding-block:40px}.footer-bottom{display:grid;gap:16px}.footer-marks{gap:8px}.footer-marks a{width:calc((100% - 16px)/3);height:58px}.stub{padding-block:64px;min-height:350px}.stub h1{overflow-wrap:anywhere}}
/* Override intrinsic HTML dimensions so every photograph keeps its designed crop. */
.photo{height:auto}
@media(min-width:721px){.primary-nav .mobile-quote{display:none}}


/* 00-blocks.css */
.page-hero .hero-content{padding-block:64px 72px}
.page-hero h1{max-width:900px}
.prose{max-width:720px}
.prose p+p{margin-top:20px}
.bullets{max-width:720px}
.bullets li{position:relative;padding-left:24px;line-height:1.6}
.bullets li+li{margin-top:12px}
.bullets li:before{content:"";position:absolute;left:0;top:.7em;width:8px;height:8px;border-radius:50%;background:var(--kb-gold)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.anchor-target{scroll-margin-top:24px}
@media(max-width:720px){.page-hero .hero-content{padding-block:44px 48px}.two-col{grid-template-columns:1fr;gap:32px}}

/* company.css */
.values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.social-proof.single{grid-template-columns:1fr}
.values h3{font-size:24px;margin-bottom:12px}
.timeline{border-left:4px solid var(--kb-gold);padding-left:28px;display:grid;gap:28px;max-width:760px;margin-top:32px;list-style:none;margin-inline:0;padding-block:0}
.timeline time{display:block;font:600 13px/1.4 var(--kb-font);letter-spacing:.09em;text-transform:uppercase;color:var(--kb-ink);margin-bottom:8px}
.timeline-note{font-weight:600;color:var(--kb-ink)}
.culture{border-left:4px solid var(--kb-gold);padding-left:24px;font-size:20px;line-height:1.55;color:var(--kb-ink);font-weight:500;margin-block:24px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.stats strong{display:block;font-size:clamp(44px,5vw,64px);font-weight:500;line-height:1;color:var(--kb-ink);letter-spacing:-.02em;margin-bottom:12px}
.stats span{font-size:16px}
.stats-note{margin-top:32px;font-size:16px}
.marks{display:flex;flex-wrap:wrap;gap:24px;align-items:center}
.marks a{display:flex;align-items:center;justify-content:center;width:160px;height:64px}
.marks img{width:100%;height:100%;object-fit:contain}
.enquiry{display:grid;gap:20px;max-width:720px}
.enquiry label{display:block;font-weight:600;color:var(--kb-ink);margin-bottom:8px}
.enquiry input,.enquiry select,.enquiry textarea{width:100%;min-height:52px;padding:12px 16px;font:inherit;color:var(--kb-ink);background:var(--kb-paper);border:1px solid var(--kb-border);border-radius:0}
.enquiry textarea{min-height:160px}
.enquiry :is(input,select,textarea):focus-visible{outline:3px solid var(--kb-ink);outline-offset:2px}
.enquiry .button{cursor:pointer}
.form-note{font-size:15px;color:var(--kb-body)}
/* Required fields and inline errors (fix round 21 Oct, A1). Error colour is a functional state, 8.5:1 on white. */
.form-legend{font-size:15px;color:var(--kb-body)}
.enquiry .req{color:var(--kb-ink);font-weight:600}
.enquiry [aria-invalid="true"]{border:2px solid #9b1c1c}
.field-error{margin-top:8px;font-size:15px;line-height:1.5;font-weight:600;color:#9b1c1c}
.form-status[data-state="error"]{color:#9b1c1c}
.contact-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0}
.contact-facts dt{font-size:13px;line-height:1.4;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--kb-ink);margin-bottom:8px}
.contact-facts dd{margin:0;overflow-wrap:anywhere}
.contact-facts a{color:var(--kb-ink)}
.contact-facts .text-link{margin-top:0}
/* Contact page (21 Oct): form leads, one reach-us card beside it; card below the form on mobile. */
.hero-compact .hero-content{padding-block:48px 52px}
.hero-compact .lede{margin-top:20px}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:64px;align-items:start}
.contact-form .enquiry{max-width:none}
.contact-card{background:var(--kb-tint);padding:36px 32px}
.contact-card .label{margin-bottom:20px}
.contact-card h2{font-size:clamp(24px,2vw,30px);margin-bottom:28px}
.contact-card .contact-facts{grid-template-columns:1fr;gap:22px}
@media(max-width:1050px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.values{gap:24px}.contact-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{gap:40px}}
@media(max-width:720px){.values,.stats{grid-template-columns:1fr;gap:24px}.contact-facts{grid-template-columns:1fr;gap:24px}.hero-compact .hero-content{padding-block:36px 40px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-card{padding:28px 24px}.contact-card .contact-facts{gap:20px}.timeline{padding-left:20px}.culture{font-size:18px;padding-left:18px}}

/* division.css */
.on-page{display:flex;flex-wrap:wrap;gap:8px 24px;padding-block:20px;border-bottom:1px solid var(--kb-border);font-size:15px;line-height:1.4;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.on-page a{color:var(--kb-ink);padding-block:8px;text-decoration:none}
.on-page a:hover{text-decoration:underline;text-decoration-color:var(--kb-gold);text-decoration-thickness:2px;text-underline-offset:8px}
.service-row{padding-block:40px}
.service-row+.service-row{border-top:1px solid var(--kb-border)}
.service-row:first-of-type{padding-top:0}
.service-row h2{font-size:clamp(28px,2.6vw,36px);margin-bottom:20px}
.service-row .prose+.bullets{margin-top:20px}
.service-row .bullets+.prose{margin-top:20px}
/* A row without a photograph keeps its text to a readable measure (fix round 21 Oct, L9). */
.service-row>.service-text{max-width:720px}
.service-photo .photo{display:block}
.split{align-items:start}
.split .section-heading{margin-bottom:0}
.split .prose+.text-link,.split .text-link{margin-top:24px}
.projects-link{margin-top:-8px}
.quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.quote{margin:0;padding:32px;background:var(--kb-paper);border:1px solid var(--kb-border)}
.quote:before{content:"\201C";display:block;font-size:72px;line-height:.9;color:var(--kb-ink);font-weight:500;letter-spacing:-.06em;margin-bottom:12px}
.quote blockquote{margin:0}
.quote p{font-size:19px;line-height:1.55;color:var(--kb-ink);font-weight:500}
/* Flipped rows are flipped in the DOM by the template (photo first), never by CSS order (fix round 21 Oct, C20). */
@media(max-width:1050px){.quote-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){
  .on-page{gap:4px 20px;font-size:14px;padding-block:12px}
  .service-row{padding-block:32px}
  .service-row h2{font-size:28px}
  .quote-grid{grid-template-columns:1fr;gap:20px}
  .quote{padding:24px}
  .split{gap:0}
  .split .section-heading{margin-bottom:24px}
}

/* legal.css */
/* Legal pages (/privacy/, /terms/): text-only, reuse the case-study section rhythm. */
.legal-body{margin-top:0}
.legal-body .cs-section:first-child{border-top:0;padding-top:0}
.legal-body .prose+.bullets,.legal-body .bullets+.prose{margin-top:16px}
.legal-body .prose a{color:var(--kb-ink);font-weight:600;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.legal-updated{margin-top:32px;font-size:15px;color:var(--kb-body)}

/* projects.css */
.hero-caption{font-size:13px;line-height:1.5;color:var(--kb-body);padding-block:12px}
.slim{padding-block:56px}
.slim h2{font-size:clamp(28px,2.6vw,36px);margin-bottom:12px}
.slim .text-link{margin-top:20px}
.cs-top{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px}
.cs-details .tag{display:block;font-size:13px;font-weight:600;line-height:1.4;letter-spacing:.09em;text-transform:uppercase;color:var(--kb-ink);margin-bottom:16px}
.cs-details .tag:before{content:"";display:inline-block;width:6px;height:6px;background:var(--kb-gold);border-radius:50%;margin-right:8px;vertical-align:middle}
.details-title{font-size:28px;line-height:1.2;margin-bottom:20px}
.details{display:grid;grid-template-columns:auto 1fr;gap:12px 24px;font-size:16px;margin:0}
.details dt{font-weight:600;color:var(--kb-ink)}
.details dd{margin:0;min-width:0;overflow-wrap:anywhere}
.cs-attribution{font-size:15px;color:var(--kb-body);border-left:4px solid var(--kb-gold);padding-left:16px}
.cs-body{max-width:820px;margin-top:56px}
.cs-section{padding-block:32px;border-top:1px solid var(--kb-border)}
.cs-section h2{font-size:clamp(26px,2.4vw,34px);margin-bottom:16px}
.cs-intro-line{margin-bottom:16px}
.cs-sub{margin-top:24px}
.cs-sub h3{font-size:24px;margin-bottom:12px}
.cs-sub .bullets{margin-top:16px}
@media(max-width:720px){
.slim{padding-block:44px}
.cs-top{grid-template-columns:1fr;gap:32px}
.details{grid-template-columns:1fr;gap:2px}
.details dd{margin-bottom:12px}
.details-title{font-size:26px}
.cs-body{margin-top:32px}
.cs-section h2{font-size:28px}
.cs-sub h3{font-size:22px}
}

/* soon.css */
.soon{font-size:.8em;font-weight:400;letter-spacing:0;text-transform:none;margin-left:.4em;color:var(--kb-body)}
.dark .soon{color:var(--kb-muted)}
.proof-note{margin-top:12px;text-align:center}
.footer-marks .kb-chip{align-self:center}

/* stub.css */
.coming-soon{min-height:380px;padding-block:88px}
.coming-soon h1{max-width:950px}
.coming-soon .summary{max-width:720px;margin-top:28px}
.coming-soon .summary a{text-decoration:underline;text-underline-offset:5px}
.coming-soon .cta-row{margin-top:36px}
@media(max-width:720px){.coming-soon{padding-block:64px;min-height:350px}.coming-soon h1{overflow-wrap:anywhere}}

/* zz-navigation.css */
/* Repositioned shared navigation: maintenance first, all existing routes retained. */
.primary-nav{font-size:16px;gap:24px}
.primary-nav>a{min-width:0;min-height:44px;display:flex;align-items:center;line-height:1.35}
.primary-nav>a:first-child{max-width:220px}
.footer-top{grid-template-columns:minmax(0,1fr);gap:32px}
.footer-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.footer-links>div{min-width:0}
/* Mobile footer: link groups in two columns (fix round 21 Oct, L7) so the footer is about half its single-column height. */
@media(max-width:720px){
  .brand img{height:56px}
  .primary-nav{grid-template-columns:minmax(0,1fr);gap:8px}
  .primary-nav>a:first-child{max-width:none}
  .primary-nav>a{min-height:44px;padding-block:12px}
  .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}
  .footer-links a{overflow-wrap:anywhere}
}

/* zz-reposition.css */
/* Scoped maintenance-first composition; existing palette, type and spacing. */
.claim-line{margin-top:20px;max-width:720px}
.hero .claim-line{max-width:640px;font-size:16px;line-height:1.6}
.offer-services{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px;font-size:16px;line-height:1.6}
.offer-services li{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 24px;margin-top:64px}
.offer-feature.division-panel{display:grid;align-items:center}
.offer-feature .offer-copy{min-width:0}
.offer-feature h3{font-size:clamp(28px,2.6vw,36px);margin-top:0;min-height:0}
.offer-feature .offer-services{display:grid}
.offer-grid .photo,.offer-feature .photo{aspect-ratio:4/3}
.offer-grid .offer-copy{display:flex;flex-direction:column;flex:1}
.offer-grid h3{min-height:0}
.offer-panel figure,.offer-feature figure{margin:0}
.offer-panel figcaption,.offer-feature figcaption,.project-feature figcaption,.service-photo figcaption{font-size:13px;line-height:1.5;margin-top:8px;color:var(--kb-body)}
.offer-grid .claim-line{font-size:16px}
.project-feature .section-heading{margin-bottom:24px}
.project-feature .cs-attribution{margin-top:24px}
.confirmation-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.confirmation-card{border:1px solid var(--kb-ink);padding:28px}
.confirmation-card h3{font-size:24px}
.confirmation-card .claim-line{font-size:16px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.breadcrumbs{padding-block:16px;font-size:14px;line-height:1.6}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px 16px;list-style:none;margin:0;padding:0}
.breadcrumbs li+li:before{content:'/';margin-right:16px}
.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.benefit-split>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.benefit-split .section-heading{margin-bottom:0}
.bordered-note .depth-note{padding:28px;border:1px solid var(--kb-ink);background:var(--kb-tint)}
.case-shell .details{row-gap:16px}
.case-shell .details dd{padding-bottom:16px;border-bottom:1px solid var(--kb-border)}
.case-shell .shell-exit{margin-top:32px}
.closing-compact{padding-block:48px}
.reposition-static.reveal,.reposition-static.reveal.is-pending,.reposition-static.reveal.is-visible{opacity:1;transform:none;transition:none;animation:none}
@media(max-width:720px){
 .offer-grid{grid-template-columns:1fr;gap:40px;margin-top:40px}
 .offer-feature h3{font-size:30px}
 .offer-feature.division-panel{gap:32px}
 .offer-services{display:grid;gap:12px}
 .confirmation-cards{grid-template-columns:1fr;gap:24px}
 .benefit-split>.wrap{grid-template-columns:1fr;gap:32px}
 .case-shell .details{row-gap:2px}
 .case-shell .shell-exit{width:100%}
 .project-feature{gap:32px}
}
