.ak-projects{background:var(--white);border-top:1px solid var(--accent)}
.ak-projects .section-sub{max-width:760px}
.ak-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ak-project-card{display:flex;flex-direction:column;text-align:left;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--accent);border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;transition:transform .25s,border-color .25s,box-shadow .25s;min-width:0}
.ak-project-card:hover{transform:translateY(-4px);border-color:var(--primary);box-shadow:var(--shadow)}
.ak-project-card:focus-visible,.ak-dialog button:focus-visible,.ak-dialog a:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
.ak-project-card img{width:100%;height:200px;object-fit:cover}
.ak-project-body{padding:1.3rem;display:flex;flex-direction:column;gap:10px;flex:1}
.ak-project-body h3{font-size:22px;line-height:1.35}
.ak-project-body p{font-size:15px;color:var(--text-muted);line-height:1.6}
.ak-project-body .event-view{margin-top:auto}
.ak-status{color:var(--primary);font-size:13px;font-weight:600}
.ak-placeholder{font-size:13px;color:var(--text-muted)}
.ak-dialog{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--white);color:var(--text);width:min(860px,calc(100% - 32px));max-height:90dvh;margin:auto;padding:2rem;box-shadow:var(--shadow);overflow-y:auto;font:inherit}
.ak-dialog::backdrop{background:var(--text);opacity:.75}
.ak-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.ak-dialog h2{font-size:30px;line-height:1.25;overflow-wrap:anywhere}
.ak-dialog h3{font-size:20px;margin:1.5rem 0 .5rem}
.ak-dialog p,.ak-dialog li{font-size:16px;color:var(--text-muted);line-height:1.7;overflow-wrap:anywhere}
.ak-dialog ul,.ak-dialog ol{padding-left:1.4rem}
.ak-close,.ak-photo-step{width:42px;height:42px;flex-shrink:0;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:22px;cursor:pointer}
.ak-contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.5rem}
.ak-contact-actions a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:14px;overflow-wrap:anywhere;max-width:100%}
.ak-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:1rem}
.ak-gallery button{background:var(--bg);border:1px solid var(--accent);border-radius:var(--radius-sm);overflow:hidden;cursor:zoom-in;padding:0}
.ak-gallery img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.ak-photo-dialog{width:min(1000px,calc(100% - 32px))}
.ak-photo-dialog img{display:block;width:100%;max-height:66dvh;object-fit:contain}
.ak-photo-controls{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem}
@media(max-width:900px){.ak-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ak-project-grid{grid-template-columns:1fr}.ak-dialog{padding:1.2rem}.ak-dialog h2{font-size:24px}.ak-contact-actions{flex-direction:column}.ak-contact-actions a{width:100%}.ak-gallery{gap:8px}}
@media(prefers-reduced-motion:reduce){.ak-project-card{transition:none}.ak-project-card:hover{transform:none}}.ak-svc-nav{position:relative}
.ak-svc-menu{display:none;position:absolute;top:100%;left:-12px;min-width:260px;list-style:none;margin:0;padding:8px;background:var(--white);border:1px solid var(--accent);border-radius:var(--radius-sm);box-shadow:var(--shadow);z-index:200}
.ak-svc-menu:empty{display:none!important}
.ak-svc-nav:hover .ak-svc-menu,.ak-svc-nav:focus-within .ak-svc-menu{display:block}
.ak-svc-nav.ak-svc-closed .ak-svc-menu{display:none}
.ak-svc-menu a{display:block;padding:10px 12px;border-radius:var(--radius-sm);font-size:15px;white-space:nowrap}
.ak-svc-menu a:hover{background:var(--accent)}
.ak-svc-mobile{list-style:none;padding-left:1rem}
.ak-svc-mobile a{font-size:15px}
.ak-svc-heading{text-align:center;font-size:24px;margin:2.5rem 0 1.2rem}
.ak-svc-heading:empty{display:none}
.ak-svc-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.ak-svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ak-svc-grid{grid-template-columns:1fr}}
