.kpa-state-page{background:var(--bg,#0c0c0c);color:#f5f5f5;padding:64px max(24px,calc((100vw - 1200px)/2)) 84px;overflow:hidden}
.kpa-state-layout{display:flex;flex-direction:column;gap:28px;align-items:center;min-height:460px}
.kpa-state-copy{width:100%;max-width:760px;text-align:center}
.hero .kll-hero-project{position:absolute;inset:0;display:block;pointer-events:auto;z-index:1;cursor:pointer}
.hero .hero-visual{translate:none!important;background-image:none!important}
.hero .hero-visual::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background-image:url("kllakar-hero-enhanced.png");background-size:cover;background-position:calc(50% + 5px) 50%;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 78%,transparent),linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 78%,transparent),linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}
.hero .kll-hero-tooltip strong{font-weight:600;color:inherit;white-space:nowrap}
.hero .kll-hero-project:focus-visible{outline:2px solid var(--pink,#ff00ff);outline-offset:-4px}
.hero .kll-hero-tooltip{position:absolute;left:50%;top:25%;box-sizing:border-box;display:block;width:max-content;max-width:min(280px,calc(100vw - 32px));padding:9px 12px;border:1px solid #ffffff24;border-radius:6px;background:#080808f2;box-shadow:0 5px 16px #0003;color:#fff;font:400 12px/1.5 var(--font-body,Inter,sans-serif);text-align:center;pointer-events:none;opacity:0;transform:translate(-50%,calc(-100% + 8px));transition:opacity .35s ease,transform .35s ease}
.hero .kll-hero-tooltip:after{content:'';position:absolute;left:50%;bottom:-5px;width:8px;height:8px;background:#080808;transform:translateX(-50%) rotate(45deg);border-right:1px solid #ffffff24;border-bottom:1px solid #ffffff24}
.hero .kll-hero-tooltip[hidden]{display:none!important}.hero .kll-hero-tooltip.is-visible{opacity:1;transform:translate(-50%,-100%)}
body:has(.hero:hover) #kpa-root:not(.kpa-pinned):not([data-reaction]) :is(.kpa-panel,.kpa-cursor){visibility:hidden}
@media(prefers-reduced-motion:reduce){.hero .kll-hero-tooltip{transition:none}}
.kpa-verified{line-height:0}.kpa-verified svg{display:block}
.kpa-state-eyebrow{font:600 12px/1.4 var(--font-body,Inter,sans-serif);letter-spacing:.15em;color:#ff00ff;margin:0 0 22px}
.kpa-state-page h1{font-family:var(--font-display,"Bebas Neue"),Impact,sans-serif;font-size:clamp(68px,8vw,88.5px);font-weight:400;line-height:1.02;letter-spacing:0;margin:0 0 20px;background:linear-gradient(#f3f3f3,#818181);background-clip:text;-webkit-background-clip:text;color:transparent}
.kpa-state-description{color:#d3d3d3;max-width:540px;font:400 18px/1.6 var(--font-body,Inter,sans-serif);margin:0 auto 26px}
.kpa-state-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.kpa-state-links a{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:12px 23px;border-radius:999px;text-decoration:none;white-space:nowrap;font:600 13px/1.4 var(--font-body,Inter,sans-serif)}
.kpa-state-primary{background:#ff00ff;color:#080808}.kpa-state-secondary{border:1px solid #ffffff40;color:#eee}.kpa-state-links a:hover{filter:brightness(1.16)}.kpa-state-links a:focus-visible,.kpa-confirmation-link:focus-visible{outline:2px solid #ff00ff;outline-offset:5px}
.kpa-state-art{position:relative;display:flex;justify-content:center;align-items:center;min-height:280px;padding-bottom:36px;isolation:isolate}
.kpa-state-head{position:relative;width:min(320px,26vw);flex-shrink:0}.kpa-state-head>img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 16px 30px #0006)}
.kpa-four{font:400 clamp(100px,12vw,190px)/1 "Bebas Neue",Impact,sans-serif;color:#ff00ff;opacity:.85;margin:0 -16px;z-index:-1}
.kpa-art-caption{position:absolute;bottom:5px;left:0;right:0;text-align:center;color:#777;letter-spacing:.12em;font:500 9px/1.5 var(--font-body,Inter,sans-serif)}
.kpa-lost-mark{position:absolute;right:6%;top:0;color:#ff00ff;font:70px/1 "Bebas Neue",Impact,sans-serif;transform:rotate(12deg)}
.kpa-art-seal{position:absolute;right:3%;bottom:9%;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#ff00ff;color:#0c0c0c;font:32px/1 system-ui;box-shadow:0 0 0 6px #0c0c0c}.kpa-art-seal svg{width:100%;height:100%}
[data-kpa-page=lost] .kpa-state-head{animation:kpa-search 6s ease-in-out infinite}[data-kpa-page=thanks] .kpa-state-head{animation:kpa-grateful 5s ease-in-out infinite}
.kpa-receipt{display:flex;justify-content:center;align-items:center;gap:8px;color:#c8c8c8;font:500 12px/1.5 var(--font-body,Inter,sans-serif);margin:0 0 18px}.kpa-receipt svg{width:23px;height:23px;color:#ff00ff}
#form-success .form-success-icon.kpa-success-head{position:relative;display:block;margin:0 auto 10px;width:112px;height:112px;border:0;background:none;box-shadow:none;font-size:84px;line-height:112px;border-radius:0}
.kpa-success-head>img{width:100%;height:100%;object-fit:contain}.kpa-verified{position:absolute;width:34px;height:34px;right:-3px;bottom:2px;color:#ff00ff;filter:drop-shadow(0 2px 4px #0009)}.kpa-verified svg{width:100%;height:100%}
#form-success .kpa-success-label{font:500 10px/1.5 var(--font-body,Inter,sans-serif);letter-spacing:.13em;text-transform:uppercase;color:#aaa;margin:0 0 9px}
.kpa-confirmation-link{display:block;width:max-content;max-width:100%;margin:16px auto 0;color:#ccc;font:500 12px/1.5 var(--font-body,Inter,sans-serif);text-decoration:underline;text-underline-offset:4px}
#form-success.is-celebrating .kpa-success-head>img{animation:kpa-grateful 1.8s ease-in-out 2}
@keyframes kpa-search{0%,35%,100%{transform:rotate(0)}45%,60%{transform:rotate(-8deg) translateX(-5px)}72%,85%{transform:rotate(7deg) translateX(5px)}}
@keyframes kpa-grateful{0%,20%,60%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-9px) rotate(-5deg)}42%{transform:translateY(-4px) rotate(5deg)}}
@media(max-width:767px){.kpa-state-page{padding:40px 22px 50px}.kpa-state-layout{grid-template-columns:1fr;gap:28px;min-height:0}.kpa-state-page h1{font-size:clamp(45px,14vw,58px);line-height:.93}.kpa-state-description{font-size:14px}.kpa-state-art{min-height:230px;padding-bottom:25px}.kpa-state-head{width:190px}.kpa-four{font-size:118px;margin:0 -11px}.kpa-art-seal{width:45px;height:45px;font-size:25px}.kpa-lost-mark{font-size:48px}.kpa-state-links a{padding:12px 18px;gap:12px;font-size:12px}.kpa-art-caption{font-size:8px}}
@media(prefers-reduced-motion:reduce){.kpa-state-head,#form-success.is-celebrating .kpa-success-head>img{animation:none!important}}




/* Header audio control: original ambient sound, explicit visitor consent. */
.kll-header-actions{column-gap:6px!important}
.kll-header-actions .kll-music-toggle{display:grid!important;place-items:center;flex:0 0 32px;width:32px;height:32px;margin:0!important;padding:6px!important;background:transparent!important;border:0!important;border-radius:6px;color:inherit;cursor:pointer;box-shadow:none!important}
.kll-music-toggle svg{display:block;width:20px;height:20px;pointer-events:none}
.kll-music-toggle:hover{opacity:.75}.kll-music-toggle:focus-visible{outline:2px solid currentColor;outline-offset:2px}
/* Sitewide heading alignment; founder introduction retains its editorial alignment. */
html body :is(main,footer,.booking-summary,.booking-thankyou) :is(h1,h2,h3,h4,h5,h6){text-align:center!important;margin-inline:auto!important}
html body.home section#about > .founder-copy > h2,html body .founder-copy > :is(h1,h2,h3,h4,h5,h6){text-align:left!important;margin-left:0!important;margin-right:auto!important}
/* Center section names above headings throughout the site. */
html body main .eyebrow{display:block!important;width:100%!important;text-align:center!important;margin-inline:auto!important}
/* Project card captions follow the image left edge. */
html body main :is(.service,.service-list-item,.package-card,.related-project-card,.project-card,.portfolio-card,.blog-card,.service-card,.t-card,.founder-card) :is(h1,h2,h3,h4,h5,h6),html body main .kll-card-title{
 text-align:left!important;margin-left:0!important;margin-right:0!important
}
/* Article body headings are aligned with the reading column. */
html body.single-post main :is(.blog-copy-section,.entry-content,.post-content) :is(h1,h2,h3,h4,h5,h6){text-align:left!important;margin-left:0!important;margin-right:0!important}
/* Navigation label and icon stay fixed while the pointer moves. */
html body .site-header .menu-button,html body .site-header .menu-button > :is(span,img){transform:none!important;translate:none!important}
/* Keep image viewer in the current viewport instead of the document top. */
html body dialog.k-lightbox[open]{position:fixed!important;inset:0!important;margin:0!important;width:100%!important;height:100dvh!important;max-width:none!important;max-height:none!important}
/* Portfolio card copy stays independent of section headings. */
html body main .portfolio-list-item .kll-card-title{display:flex!important;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;text-align:left!important;margin:20px 0 8px!important}
.portfolio-list-item .kll-card-title-text{display:block;min-width:0;flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left}
.portfolio-list-item .kll-card-arrow{flex:0 0 auto}
.portfolio-list-item .kll-card-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-align:left;margin:0;line-height:1.6;font-size:14px;color:var(--muted,#aaa);min-height:3.2em}
/* Card titles retain the site white; card category labels align with their copy. */
html body main .portfolio-list-item .kll-card-title,html body main .portfolio-list-item .kll-card-title-text{color:var(--text,#f5f5f5)!important}
html body main .portfolio-list-item .kll-card-arrow{color:var(--accent,#ff00e5)}
html body main .blog-list-meta .eyebrow{width:auto!important;text-align:left!important;margin-left:0!important;margin-right:0!important}