.kh-contact{display:flex;justify-content:center;align-items:center;flex:1}.kh-contact__frame{position:relative;display:grid;grid-template-columns:1fr;gap:2rem;width:100%;max-width:64rem;padding:2rem;border:1.5px solid var(--line);border-radius:1rem;background:var(--card);box-shadow:0 4px 24px color-mix(in srgb,var(--line) 40%,transparent)}@media(min-width:768px){.kh-contact__frame{grid-template-columns:1fr 1.2fr;gap:2.5rem;align-items:stretch}}.kh-contact__image{width:100%;height:100%;border-radius:.5rem;overflow:hidden;display:none;position:relative}@media(min-width:768px){.kh-contact__image{display:block}}.kh-contact__image img{width:100%;height:100%;object-fit:cover;display:block}.kh-contact__form{display:flex;flex-direction:column;gap:1.1rem;width:100%}.kh-field{display:flex;flex-direction:column;gap:.375rem}.kh-field__label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft)}.kh-field__input,.kh-field__textarea{width:100%;padding:.75rem 1rem;border:1.5px solid var(--line);border-radius:.625rem;background:var(--bg);color:var(--text);font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease;outline:none}.kh-field__input:focus,.kh-field__textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.kh-field__textarea{min-height:120px;resize:vertical}.kh-terms{display:flex;align-items:flex-start;gap:.625rem;font-size:.85rem;color:var(--text-soft);line-height:1.5}.kh-terms input[type=checkbox]{width:1rem;height:1rem;margin-top:.15rem;flex-shrink:0;accent-color:var(--accent);cursor:pointer}.kh-terms a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;font-weight:600;transition:opacity .2s ease}.kh-terms a:hover{opacity:.75}.kh-submit{margin-top:.5rem}.kh-quicknav{display:grid;grid-template-columns:1fr;gap:1.25rem}@media(min-width:640px){.kh-quicknav{grid-template-columns:repeat(3,1fr)}}.kh-quicknav__card{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;border-radius:1rem;border:1.5px solid var(--line);background:var(--card);text-decoration:none;color:var(--text);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.kh-quicknav__card:hover{border-color:var(--accent);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 10%,transparent);transform:translateY(-2px)}.kh-quicknav__icon{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border-radius:.625rem;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);flex-shrink:0}.kh-quicknav__icon svg{width:1.25rem;height:1.25rem}.kh-quicknav__title{font-size:1.1rem;font-weight:700;line-height:1.3}.kh-quicknav__desc{font-size:.875rem;color:var(--text-soft);line-height:1.5}.kh-quicknav__stat{font-size:.8rem;font-weight:600;color:var(--accent)}.kh-quicknav__arrow{margin-top:auto;display:flex;align-items:center;gap:.375rem;font-size:.85rem;font-weight:600;color:var(--accent);opacity:0;transform:translate(-4px);transition:opacity .25s ease,transform .25s ease}.kh-quicknav__card:hover .kh-quicknav__arrow{opacity:1;transform:translate(0)}.kh-posts{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:640px){.kh-posts{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.kh-posts{grid-template-columns:repeat(3,1fr)}}.kh-post-card{display:flex;flex-direction:column;border-radius:.875rem;border:1.5px solid var(--line);background:var(--card);overflow:hidden;text-decoration:none;color:var(--text);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.kh-post-card:hover{border-color:var(--accent);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 10%,transparent);transform:translateY(-3px)}.kh-post-card__img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-bottom:1px solid var(--line)}.kh-post-card__body{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.25rem 1.25rem;flex:1}.kh-post-card__category{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent)}.kh-post-card__title{font-size:1rem;font-weight:700;line-height:1.4;margin:0;color:var(--text)}.kh-post-card__excerpt{font-size:.85rem;line-height:1.6;opacity:.75;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.kh-post-card__meta{font-size:.75rem;color:var(--text-soft);margin-top:auto;padding-top:.5rem}.kh-resources{display:grid;grid-template-columns:1fr;gap:1.25rem}@media(min-width:640px){.kh-resources{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.kh-resources{grid-template-columns:repeat(4,1fr)}}.kh-resource-card{display:flex;align-items:flex-start;gap:.875rem;padding:1.125rem 1.25rem;border-radius:.875rem;border:1.5px solid var(--line);background:var(--card);text-decoration:none;color:var(--text);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.kh-resource-card:hover{border-color:var(--accent);box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 10%,transparent);transform:translateY(-2px)}.kh-resource-card__icon{width:2.25rem;height:2.25rem;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:.5rem;background:color-mix(in srgb,var(--accent) 10%,transparent);overflow:hidden}.kh-resource-card__icon img{width:1.5rem;height:1.5rem;object-fit:contain}.kh-resource-card__body{display:flex;flex-direction:column;gap:.25rem;min-width:0}.kh-resource-card__label{font-size:.9rem;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kh-resource-card__desc{font-size:.78rem;color:var(--text-soft);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kh-projects{display:flex;flex-direction:column;gap:3rem}.kh-project-block{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center}@media(min-width:768px){.kh-project-block{grid-template-columns:1fr 1fr;gap:3rem}.kh-project-block--reversed .kh-project-block__image{order:2}.kh-project-block--reversed .kh-project-block__content{order:1}}.kh-project-block__image{width:100%;border-radius:1rem;overflow:hidden;border:1.5px solid var(--line)}.kh-project-block__image img{width:100%;height:auto;display:block;object-fit:cover}.kh-project-block__content{display:flex;flex-direction:column;gap:1rem}.kh-project-block__title{font-size:1.5rem;font-weight:800;line-height:1.3;margin:0}.kh-project-block__desc{font-size:.95rem;line-height:1.7;color:var(--text-soft)}.kh-about{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center}@media(min-width:768px){.kh-about{grid-template-columns:1fr 1.2fr;gap:3rem}}.kh-about__image{display:flex;justify-content:center}.kh-about__image img{max-width:240px;width:100%;border-radius:1rem;object-fit:contain}@media(min-width:768px){.kh-about__image img{max-width:100%}}.kh-about__content{display:flex;flex-direction:column;gap:1rem}.kh-about__content p{font-size:.95rem;line-height:1.75;color:var(--text-soft)}.kh-contact-cta{text-align:center;max-width:38rem;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem;align-items:center}.kh-contact-cta__title{font-size:1.6rem;font-weight:800;line-height:1.3}.kh-contact-cta__text{font-size:.95rem;line-height:1.7;color:var(--text-soft)}.kh-section-heading{margin-bottom:2rem}.kh-section-heading__label{display:block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:.5rem}.kh-section-heading__title{font-size:1.6rem;font-weight:800;line-height:1.3;margin:0}.kh-section-heading__link{display:inline-flex;align-items:center;gap:.375rem;margin-top:.75rem;font-size:.85rem;font-weight:600;color:var(--accent);text-decoration:none;transition:opacity .2s ease}.kh-section-heading__link:hover{opacity:.75}@keyframes kh-frame-pulse{0%{transform:scale(1)}25%{transform:scale(.975)}50%{transform:scale(1.015)}70%{transform:scale(.995)}to{transform:scale(1)}}@keyframes kh-p-sparkle{0%{transform:translate(0) rotate(0) scale(.3);opacity:0}25%{opacity:.8;transform:translate(calc(var(--dx) * .3),calc(var(--dy) * .3)) rotate(calc(var(--rot) * .3)) scale(1)}to{transform:translate(var(--dx),var(--dy)) rotate(var(--rot)) scale(0);opacity:0}}
