/* Scoped to the portfolio. Existing header, footer, menus and global styles remain unchanged. */
.kf-portfolio,.kf-home-work{color:#f5f5f0;--kf-green:#00E5A0;--kf-panel:#1C1C1E;--kf-border:rgba(255,255,255,.12)}
.kf-portfolio{width:min(calc(100% - 2 * var(--pf-gutter,1.25rem)),var(--pf-max,1440px));max-width:1440px;margin:0 auto;padding:clamp(48px,7vw,100px) 0 80px}
.kf-work-intro{max-width:1100px;margin-bottom:64px}
.kf-work-intro h1{font-family:Syne,sans-serif;font-size:clamp(2.6rem,5.4vw,5rem);font-weight:700;line-height:1.06;letter-spacing:-.045em;margin:20px 0 24px}
.kf-work-intro h1 span{color:var(--kf-green)}
.kf-work-intro>p:not(.pf-eyebrow){max-width:760px;color:#b7b7b7;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.8}
.kf-work-tagline{display:block;color:#b7b7b7;font-size:.9rem;margin-top:24px}
.kf-section-heading{margin-bottom:30px}.kf-section-heading h2,.kf-logo-heading h2,.kf-work-cta h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.15;letter-spacing:-.035em;margin:12px 0 0}
.kf-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 28px}
.kf-work-card{min-width:0}.kf-work-screen{background:var(--kf-panel);border:1px solid var(--kf-border);border-radius:16px;overflow:hidden;transition:border-color .2s ease,transform .25s ease}
.kf-work-card:hover .kf-work-screen{border-color:rgba(0,229,160,.45);transform:translateY(-3px)}
.kf-browser-bar{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;background:#1C1C1E;color:#aaa;font-size:10px}.kf-browser-bar i{width:5px;height:5px;background:#67676c;border-radius:50%}.kf-browser-bar span{margin-left:10px}
.kf-work-screen img{display:block;width:100%;height:auto;aspect-ratio:1363/936;object-fit:contain;object-position:top;background:#fff;margin:0;border-radius:0}
.kf-work-copy{padding:22px 2px 0}.kf-work-copy .pf-eyebrow{font-size:.67rem;letter-spacing:.13em;margin:0 0 12px}.kf-work-title{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.kf-work-title h3{font-size:clamp(1.4rem,2.1vw,1.95rem);margin:0;line-height:1.2;letter-spacing:-.03em}.kf-work-copy>p:not(.pf-eyebrow){font-size:1rem;color:#b7b7b7;line-height:1.7;max-width:580px;margin:14px 0}
.kf-work-link{display:inline-flex;align-items:center;gap:14px;color:#f5f5f0!important;text-decoration:none!important;font-size:.9rem;font-weight:600;min-height:44px;border-bottom:1px solid rgba(0,229,160,.55);transition:color .2s ease}.kf-work-link:hover{color:var(--kf-green)!important}.kf-work-link span{color:var(--kf-green);font-size:1.2rem}.kf-work-link:focus-visible,.kf-logo-track:focus-visible,.kf-logo-controls button:focus-visible{outline:2px solid var(--kf-green);outline-offset:5px}
.kf-work-status{display:inline-block;padding:5px 9px;border:1px solid rgba(0,229,160,.3);border-radius:30px;font-size:.7rem;color:var(--kf-green)}
.kf-work-section{margin-bottom:80px}.kf-secondary .kf-work-grid{gap:40px 28px}.kf-secondary .kf-work-title h3{font-size:1.45rem}
.kf-internal-case{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:center;border:1px solid var(--kf-border);border-radius:20px;padding:clamp(24px,4vw,56px);margin:0 0 80px;background:linear-gradient(120deg,rgba(0,229,160,.045),#1C1C1E)}
.kf-internal-visual{display:flex;flex-direction:column;align-items:flex-start;gap:22px;min-height:250px;justify-content:center;border-right:1px solid var(--kf-border)}
.kf-internal-visual>strong{color:var(--kf-green);font-family:Syne,sans-serif;font-size:clamp(5rem,8vw,8rem);line-height:.95;letter-spacing:-.07em}.kf-internal-visual>strong span{display:block;letter-spacing:0;font-family:Inter,sans-serif;font-size:1rem;color:#ccc;margin-top:18px;font-weight:400;line-height:1.5}
.kf-private-pill{display:flex;align-items:center;gap:10px;border:1px solid var(--kf-border);padding:9px 13px;border-radius:30px;font-size:.8rem;color:#ccc}
.kf-internal-copy h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.15;letter-spacing:-.035em;margin:14px 0 22px}.kf-internal-copy>p{color:#b7b7b7;line-height:1.8}.kf-internal-copy .pf-eyebrow{color:var(--kf-green)}.kf-case-facts{display:flex;flex-wrap:wrap;list-style:none;padding:0;gap:8px;margin:22px 0}.kf-case-facts li{padding:7px 10px;background:rgba(255,255,255,.045);border-radius:5px;font-size:.75rem}.kf-internal-copy .kf-private-note{font-size:.8rem;color:#999}
.kf-work-pending{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:250px;aspect-ratio:1363/966;background:radial-gradient(ellipse at 75% 10%,rgba(0,229,160,.09),transparent 65%),#1C1C1E;gap:18px}.kf-work-pending strong{font-size:clamp(2.5rem,5vw,4rem);font-family:Syne,sans-serif;letter-spacing:-.04em}.kf-work-pending>span:last-child{color:#aaa;font-size:.85rem}
.kf-logo-section{margin:64px 0}.kf-logo-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.kf-logo-heading h2{font-size:clamp(1.5rem,2.5vw,2.1rem)}.kf-logo-track{display:flex;gap:14px;overflow-x:auto;list-style:none;margin:0;padding:4px 0 15px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#505052 #1C1C1E}.kf-logo-track li{flex:0 0 148px;height:110px;border-radius:10px;overflow:hidden;scroll-snap-align:start;background:#fff;display:flex;align-items:center;justify-content:center}.kf-logo-track img{display:block;width:110px;height:100px;object-fit:contain}.kf-logo-controls{display:flex;gap:8px}.kf-logo-controls[hidden]{display:none}.kf-logo-controls button{width:44px;height:44px;color:#f5f5f0;background:#1C1C1E;border:1px solid var(--kf-border);border-radius:50%;cursor:pointer;font-size:20px}.kf-logo-controls button:hover{border-color:var(--kf-green)}
.kf-work-cta{padding:clamp(24px,4vw,54px);background:#1C1C1E}.kf-work-cta>p:not(.pf-eyebrow){color:#b7b7b7;max-width:740px;line-height:1.8}.kf-work-cta h2{max-width:800px}
.kf-home-work .kf-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.kf-home-work .kf-work-title h3{font-size:1.4rem}.kf-home-work .kf-work-copy>p{font-size:.9rem}.kf-all-work{margin-top:30px}.kf-case-screen img{width:100%;height:auto;object-fit:contain;max-height:none}
@media(max-width:900px){.kf-home-work .kf-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kf-home-work .kf-work-card:last-child{grid-column:1/-1;max-width:calc(50% - 12px)}.kf-internal-case{grid-template-columns:1fr}.kf-internal-visual{border-right:0;border-bottom:1px solid var(--kf-border);min-height:0;padding-bottom:28px}}
@media(max-width:700px){.kf-work-grid,.kf-home-work .kf-work-grid{grid-template-columns:1fr;gap:36px}.kf-home-work .kf-work-card:last-child{grid-column:auto;max-width:none}.kf-portfolio{padding-top:40px}.kf-work-intro{margin-bottom:42px}.kf-work-intro h1{font-size:clamp(2.3rem,9vw,3.5rem)}.kf-work-intro h1 br{display:none}.kf-work-intro h1 span{display:block}.kf-work-section,.kf-internal-case{margin-bottom:52px}.kf-work-copy{padding-top:18px}.kf-logo-track li{flex-basis:126px;height:96px}.kf-logo-track img{width:96px;height:88px}.kf-logo-heading{align-items:center}.kf-logo-controls{flex-shrink:0}.kf-internal-case{padding:24px}.kf-work-pending{min-height:210px}}
@media(prefers-reduced-motion:reduce){.kf-work-screen,.kf-work-link{transition:none}.kf-work-card:hover .kf-work-screen{transform:none}}
.kf-work-detail{display:inline-flex;align-items:center;min-height:44px;color:#b7b7b7!important;font-size:.8rem;margin-left:22px;text-decoration:none!important}.kf-work-detail:hover{color:#00E5A0!important}.kf-work-detail:focus-visible{outline:2px solid #00E5A0;outline-offset:4px}
.kf-work-brand-cover{background:#f6f3ef;aspect-ratio:1363/966;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.kf-work-brand-cover img{width:45%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:10px}.kf-work-brand-cover span{color:#744c4c;font-size:.8rem}
.wp-block-post-content>main.kf-portfolio{width:min(calc(100% - 2 * var(--pf-gutter,1.25rem)),var(--pf-max,1440px));max-width:1440px;margin-inline:auto}
.pf-project-single__featured.kf-case-screen img{width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important}
/* 3.11.2: seamless draggable ribbon, monochrome to original colour. */
.kf-logo-viewport{overflow-x:auto;scrollbar-width:thin;cursor:grab;touch-action:pan-y;user-select:none}
.kf-logo-viewport:focus-visible{outline:2px solid var(--kf-green);outline-offset:4px}
.kf-logo-motion{display:flex;width:max-content}
.kf-logo-motion .kf-logo-track{flex:none;overflow:visible;gap:14px;padding:4px 14px 4px 0;scroll-snap-type:none}
.kf-logo-track img{filter:grayscale(1);opacity:1;transition:filter .3s ease;clip-path:inset(1px);border:0!important;box-shadow:none!important;pointer-events:none}
.kf-logo-track li{border:0!important;box-shadow:none!important}
.kf-logo-track li:hover img{filter:grayscale(0)}
.kf-logo-enhanced .kf-logo-viewport{overflow:hidden}
.kf-logo-enhanced .kf-logo-motion{will-change:transform}
.kf-logo-dragging .kf-logo-viewport{cursor:grabbing}
.kf-logo-motion .kf-logo-track[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.kf-logo-track img{transition:none}}
.kf-logo-track img{width:100px;height:100px}
@media(max-width:700px){.kf-logo-track img{width:88px;height:88px}}

/* Quiet project cards: screenshots are reserved for the project detail pages. */
.kf-work-card--compact{display:flex;flex-direction:column;background:#1C1C1E;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:clamp(1.5rem,3vw,2rem);transition:border-color .2s ease,transform .2s ease}
.kf-work-card--compact:hover{border-color:rgba(0,229,160,.45);transform:translateY(-3px)}
.kf-work-card--compact .kf-work-copy{display:flex;flex-direction:column;flex:1;padding:0}
.kf-work-card--compact .kf-work-copy>p:not(.pf-eyebrow){flex:1}
.kf-work-card--compact .kf-work-detail{order:1;align-self:flex-start;min-height:44px;display:inline-flex;align-items:center;margin-top:1rem;color:#00E5A0;text-decoration:none;font-weight:600}
.kf-work-card--compact .kf-work-link{order:2;align-self:flex-start;border:0;font-size:.8rem;color:#b7b7b7!important}
.kf-work-card--compact .kf-work-title h3{font-size:clamp(1.4rem,2vw,1.8rem)}
.kf-work-card--compact a:focus-visible{outline:2px solid #00E5A0;outline-offset:4px}
.kf-home-work>.kf-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
@media(max-width:1000px){.kf-home-work>.kf-work-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.kf-work-card--compact{transition:none}.kf-work-card--compact:hover{transform:none}}
@media(max-width:1000px){.kf-home-work>.kf-work-grid>.kf-work-card{grid-column:auto;max-width:none}}

/* Private project previews use the same text-only cards as other projects. */
.kf-ab-projects{margin-block:clamp(48px,7vw,96px)}
.kf-ab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.kf-ab-grid .kf-work-card{min-width:0}
.kf-ab-grid .kf-work-detail{margin-left:0}
@media(max-width:700px){.kf-ab-grid{grid-template-columns:1fr}}
