/* Stable, independently typeset states keep the name's kerning intact. */
.ak-identity,.site-header .logo a.ak-identity{height:1.3em;min-width:0;direction:ltr!important;flex:none!important}
.ak-id-short,.ak-id-full{position:absolute;left:0;top:0;display:block;white-space:nowrap;transition:opacity .25s ease,transform .5s cubic-bezier(.22,1,.36,1);color:inherit;line-height:1.3}
.ak-id-short{opacity:1;transform:translateY(0)}.ak-id-full{opacity:0;transform:translateY(7px);pointer-events:none}
.ak-expanded .ak-id-short{opacity:0;transform:translateY(-7px)}.ak-expanded .ak-id-full{opacity:1;transform:translateY(0)}
.ak-identity.ak-expanded .ak-id-full{background:linear-gradient(110deg,#bceaff,#fff 35%,#fff 60%,#ffc6e6);background-clip:text;-webkit-background-clip:text;color:transparent}
:root{--ak-bg:#000;--ak-ink:#fff;--ak-muted:#aaa;--ak-line:rgba(255,255,255,.15);color-scheme:dark}
:root[data-theme=light]{--ak-bg:#fff;--ak-ink:#161616;--ak-muted:#626262;--ak-line:rgba(0,0,0,.16);color-scheme:light}
/* Fine inset rules. The first work section has no divider. */
.ak-home-work:before{width:100%;border-top:1px solid var(--ak-line)}
.ak-get-in-touch{position:relative;border-top:0}.ak-get-in-touch:before{content:"";position:absolute;top:0;left:6%;right:6%;height:1px;background:var(--ak-line)}
.ak-home-footer{border-top:0;position:relative}.ak-home-footer:before{content:"";position:absolute;top:0;left:6%;right:6%;height:1px;background:var(--ak-line)}
.ak-preferences{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;padding:20px 6% 32px;color:var(--ak-muted);font:14px/1.5 Arial,sans-serif;clear:both}
.ak-pref-group{display:flex;gap:4px;border:1px solid var(--ak-line);border-radius:99px;padding:4px;width:max-content}
.ak-preferences button{appearance:none;background:transparent;border:0;border-radius:99px;color:var(--ak-muted);font:inherit;padding:8px 15px;cursor:pointer;min-height:38px}
.ak-preferences button[aria-pressed=true]{background:var(--ak-ink);color:var(--ak-bg)}.ak-preferences button:focus-visible{outline:2px solid var(--ak-muted);outline-offset:3px}
.ak-contact-title{padding:70px 0;text-align:center;border-block:1px solid var(--ak-line)}.ak-contact-title h1{font:400 clamp(48px,8vw,120px)/1.1 'Times New Roman',Times,serif!important;margin:0;color:var(--ak-ink)!important}
.ak-contact-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:60px 3%;text-align:center}.ak-contact-info h2{font:400 16px/1.4 Arial,sans-serif!important;margin:0 0 12px;color:var(--ak-muted)!important}.ak-contact-info p,.ak-contact-info a{font:400 clamp(14px,1.6vw,22px)/1.6 Arial,sans-serif!important;margin:0;color:var(--ak-ink)!important;overflow-wrap:anywhere}
html[data-theme=light],html[data-theme=light] body{background:var(--ak-bg)!important;color:var(--ak-ink)!important}
[data-theme=light] body:before{filter:invert(1)}
[data-theme=light] :is(.site-wrap,.site-container,.site-content,.page-container,.page,.page-content,#project-canvas,#project-modules,main,.site-header,.project-module){background-color:transparent!important}
[data-theme=light] :is(header .brand,header .menu,.site-header .logo a,.hero-greeting,.hero-title,.ak-scroll-cue,.ak-home-work h2,.ak-get-in-touch h2,.ak-home-grid .title,.ak-contact-email,.ak-home-footer,.ak-home-footer a,.ak-contact-social a){color:var(--ak-ink)!important}
[data-theme=light] :is(.rich-text,.rich-text *,.page-header h1,.page-header h1 span,.ak-about-row p,.ak-about-row h2,.ak-about-brand-marks h2,.project-module-text,.project-module-text *,form label,form legend,.ak-contact-notice,.back-to-top a){color:var(--ak-ink)!important}
[data-theme=light] :is(header nav a,.site-header nav a){color:#555!important}
[data-theme=light] :is(header nav a:hover,header nav a[aria-current],.site-header nav a:hover,.site-header nav a[aria-current]){color:#000!important}
[data-theme=light] :is(.ak-home-grid .date,.ak-scroll-cue,.ak-home-footer,.ak-home-footer a,.ak-contact-social a,.ak-about-figure figcaption){color:var(--ak-muted)!important}
[data-theme=light] .ak-identity.ak-expanded .ak-id-full{background:linear-gradient(110deg,#17485f,#161616 35%,#161616 65%,#743254);background-clip:text;-webkit-background-clip:text;color:transparent}
[data-theme=light] .ak-brand-logo{--logo-color:#161616;color:#161616!important}
[data-theme=light] .ak-about-crop{background:#000}
[data-theme=light] .site-header .hamburger i{background:#161616!important}
[data-theme=light] .contact-form :is(input,textarea){color:#161616!important;background:#f5f5f5!important;border-color:#b8b8b8!important}
[data-theme=light] .contact-form :is(button,input[type=submit]){background:#161616!important;color:#fff!important}
[data-theme=light] :is(.social svg,.back-to-top svg){fill:#161616!important}
[data-theme=light] .project-cover:not(.ak-home-grid .project-cover) .details-wrap{background:rgba(255,255,255,.9)!important;color:#161616!important}
[data-theme=light] .project-cover :is(.title,.date){color:var(--ak-ink)!important}
[data-theme=light] .ak-home-grid .details-wrap{background:none!important}
@media(max-width:1100px){
 [data-theme=light] body>header>nav.open,[data-theme=light] body.ak-menu-open .site-header nav{background:linear-gradient(155deg,#ffffffbb,#ffffff40 60%),#eeeeee66!important;border-color:#0002!important;box-shadow:inset 0 1px 0 #fff8,0 18px 60px #0002!important}
 [data-theme=light] body>header>nav.open a,[data-theme=light] body.ak-menu-open .site-header nav a{color:#333!important}
 [data-theme=light] body>header>nav.open a:hover,[data-theme=light] body>header>nav.open a[aria-current],[data-theme=light] body.ak-menu-open .site-header nav a:hover,[data-theme=light] body.ak-menu-open .site-header nav a[aria-current]{background:#0001!important;color:#000!important}
}
@media(prefers-reduced-motion:reduce){.ak-id-short,.ak-id-full{transition:none}}
/* Clip the spam-trap field locally so RTL never adds 10,000px of overflow. */
.ak-honeypot{left:0!important;right:auto!important;width:1px!important;height:1px!important;clip-path:inset(50%);overflow:hidden!important;white-space:nowrap;pointer-events:none}
[data-theme=light] a:focus-visible,[data-theme=light] button:focus-visible{outline-color:#161616}

@font-face{font-family:AKMonument;src:url('assets/fonts/MonumentGrotesk-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:AKMonument;src:url('assets/fonts/MonumentGrotesk-Medium.woff2') format('woff2');font-style:normal;font-weight:500 900;font-display:swap}
/* Editorial type follows Monument Grotesk; the hero and identity keep their original type. */
body{font-family:AKMonument,Arial,sans-serif!important}
.site-content :is(h1,h2,h3,h4),.site-content :is(h1,h2,h3,h4) span,.ak-home-work h2,.ak-get-in-touch h2,.ak-contact-title h1,.ak-home-grid .title{font-family:AKMonument,Arial,sans-serif!important;font-weight:500!important;letter-spacing:-.04em}
.site-content :is(.rich-text,.rich-text *,p,figcaption,label,input,textarea,button,.title,.date,.description),.ak-contact-info :is(h2,p,a),.ak-contact-email,.ak-contact-social a,.ak-home-footer,.ak-home-footer :is(p,a),.ak-preferences{font-family:AKMonument,Arial,sans-serif!important}
.site-header nav a,body>header>nav a{font-family:AKMonument,Arial,sans-serif!important;font-weight:400!important}
.site-content .rich-text .bold{font-weight:500!important}
.ak-preferences{justify-content:flex-end}
/* Quiet project captions, sized proportionally to their cards. */
.ak-home-grid .title,.site-content .project-cover .title{font-size:clamp(12px,1.05vw,15px)!important;font-weight:400!important;line-height:1.45!important;letter-spacing:0!important}
.ak-home-grid .date,.site-content .project-cover .date{font-size:10px!important;line-height:1.4!important}
@media(max-width:700px){.ak-home-grid .title,.site-content .project-cover .title{font-size:13px!important}.ak-home-grid .details-wrap{padding-top:12px}}
/* Compact navigation rhythm, matching the reference's regular grotesk type. */
body>header>nav,.site-header nav{gap:clamp(14px,1.35vw,21px)!important}
body>header>nav a,.site-header nav a{font-family:AKMonument,Arial,sans-serif!important;font-size:12px!important;font-weight:400!important;letter-spacing:0!important;line-height:1.4!important}
@media(max-width:1100px){body>header>nav.open,body.ak-menu-open .site-header nav{gap:2px!important}body>header>nav.open a,body.ak-menu-open .site-header nav a{padding:12px 17px!important;font-size:14px!important}}
/* Original colours remain visible at rest and on hover. */
.project-cover img,.project-cover:hover img,.project-cover:focus-within img,.project-cover:active img{filter:none!important}
.ak-get-in-touch h2.ak-touch-ready{opacity:0;transform:translateY(45px) rotateX(45deg);filter:blur(10px);transform-origin:50% 100%;will-change:transform,opacity,filter}
.ak-get-in-touch h2.ak-touch-ready.ak-touch-in{animation:ak-touch-arrive 1.25s cubic-bezier(.16,1,.3,1) both}
@keyframes ak-touch-arrive{0%{opacity:0;transform:translateY(45px) rotateX(45deg);filter:blur(10px);letter-spacing:.09em}60%{opacity:1;filter:blur(0)}100%{opacity:1;transform:translateY(0) rotateX(0);filter:blur(0);letter-spacing:-.04em}}
@media(prefers-reduced-motion:reduce){.ak-get-in-touch h2.ak-touch-ready{opacity:1;transform:none;filter:none;animation:none!important}}
/* Work groups the three original collections. */
.ak-work-menu{position:relative!important;display:block!important;flex:none!important;margin:0!important;padding:0!important}
.ak-work-toggle{appearance:none;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;margin:0!important;color:inherit;font:400 12px/1.4 AKMonument,Arial,sans-serif!important;letter-spacing:0;text-transform:uppercase;cursor:pointer;white-space:nowrap}
body>header .ak-work-toggle,.site-header .ak-work-toggle{color:#999}
.ak-work-toggle:hover,.ak-work-toggle:focus-visible,.is-open>.ak-work-toggle{color:var(--ak-ink)!important}
.ak-work-dropdown{display:none!important;position:absolute!important;top:100%;left:-17px;min-width:175px;width:max-content;padding:17px 7px 7px!important;margin:0!important;border-radius:0 0 13px 13px;z-index:70;background:var(--ak-bg);box-shadow:0 12px 28px #0002}
.ak-work-menu.is-open>.ak-work-dropdown{display:grid!important;gap:2px!important}
body>header>nav .ak-work-dropdown a,.site-header nav .ak-work-dropdown a{display:block!important;width:auto!important;padding:10px!important;margin:0!important;text-align:left!important;font:400 12px/1.4 AKMonument,Arial,sans-serif!important;text-transform:none!important;color:var(--ak-muted)!important;border-radius:6px;white-space:nowrap}
body>header>nav .ak-work-dropdown a:hover,.site-header nav .ak-work-dropdown a:hover{background:color-mix(in srgb,var(--ak-ink) 8%,transparent)!important;color:var(--ak-ink)!important}
@media(max-width:1100px){body>header>nav.open .ak-work-menu,body.ak-menu-open .site-header nav .ak-work-menu{width:100%!important}.ak-work-toggle{display:block!important;width:100%!important;text-align:left!important;padding:12px 17px!important;font-size:14px!important;color:var(--ak-ink)!important}.ak-work-dropdown{position:static!important;width:auto!important;min-width:0!important;padding:0 12px 5px 22px!important;background:transparent!important;box-shadow:none;border-radius:0}.ak-work-menu.is-open>.ak-work-dropdown{display:grid!important}body>header>nav.open .ak-work-dropdown a,body.ak-menu-open .site-header nav .ak-work-dropdown a{font-size:13px!important;padding:10px 12px!important}}
/* Mobile navigation uses the same solid dropdown treatment as desktop Work. */
@media(max-width:1100px){
 body>header>nav.open,body.ak-menu-open .site-header nav,[data-theme=light] body>header>nav.open,[data-theme=light] body.ak-menu-open .site-header nav{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:2px!important;left:auto!important;right:6%!important;width:min(220px,88vw)!important;padding:7px!important;border:0!important;border-radius:13px!important;background:var(--ak-bg)!important;box-shadow:0 12px 28px #0002!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
 body.ak-menu-open .site-header .nav-container{left:auto!important;right:6%!important;width:min(220px,88vw)!important}
 body.ak-menu-open .site-header nav{width:100%!important}
 body>header>nav.open a,body.ak-menu-open .site-header nav a,body>header>nav.open .ak-work-toggle,body.ak-menu-open .site-header nav .ak-work-toggle{padding:11px 12px!important;border-radius:6px!important;font:400 12px/1.4 AKMonument,Arial,sans-serif!important;letter-spacing:0!important;text-align:left!important;color:var(--ak-muted)!important;text-transform:none!important;background:transparent!important;box-shadow:none!important}
 body>header>nav.open a:hover,body>header>nav.open a[aria-current],body.ak-menu-open .site-header nav a:hover,body.ak-menu-open .site-header nav a[aria-current],body>header>nav.open .ak-work-toggle:hover,body.ak-menu-open .site-header nav .ak-work-toggle:hover{background:color-mix(in srgb,var(--ak-ink) 8%,transparent)!important;color:var(--ak-ink)!important;box-shadow:none!important}
 .ak-work-dropdown{padding:0 0 3px 12px!important}
 body>header>nav.open .ak-work-dropdown a,body.ak-menu-open .site-header nav .ak-work-dropdown a{padding:10px 12px!important;font-size:12px!important}
}
/* About mobile: meaningful reading order, headings before copy, images before captions. */
@media(max-width:700px){
 .ak-about-page .ak-about-row{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:18px!important;width:88%!important;max-width:100%!important;padding:30px 0!important;margin:0 auto!important}
 .ak-about-page .ak-about-row h2{order:0!important;margin:0!important;font-size:clamp(23px,6.4vw,29px)!important;line-height:1.2!important;text-align:left!important;color:var(--ak-ink)!important}
 .ak-about-page .ak-about-row>figure{order:0!important;align-self:center;width:100%!important;margin:0!important}
 .ak-about-page .ak-about-row>p{order:1!important;margin:0!important;font-size:15px!important;line-height:1.8!important;text-align:left!important}
 .ak-about-page .ak-about-figure figcaption{font-size:11px!important;line-height:1.5!important;text-align:left!important;margin-top:10px!important}
 .ak-about-page .project-module-text{float:none!important;clear:both!important;width:88%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important;padding-left:0!important;padding-right:0!important}
 .ak-about-page .project-module-text .rich-text{font-size:15px!important;line-height:1.8!important;overflow:visible!important}
 .ak-about-page .rich-text [style*="text-align"]{text-align:left!important}
 .ak-about-page .rich-text .ak-about-section-title,.ak-about-page .rich-text .ak-about-section-title *{font-size:clamp(26px,7.4vw,34px)!important;line-height:1.25!important;letter-spacing:-.035em!important;white-space:nowrap!important;display:inline!important}
 .ak-about-page .ak-about-heading-wrap{margin:28px 0 22px!important;padding:0!important;line-height:1.25!important}
 .ak-about-page .ak-about-heading-wrap>br{display:none!important}
 .ak-about-page .rich-text .texteditor-inline-lineheight{line-height:1.8!important;font-size:15px!important}
 .ak-about-page .ak-about-brand-marks{width:88%!important;margin:0 auto!important;padding:32px 0!important}
 .ak-about-page .ak-about-brand-marks>h2{font-size:28px!important;margin-bottom:22px!important}
}
@media(max-width:700px){.ak-about-page .ak-about-row p{font-weight:400!important}.ak-about-page .project-module-text{padding-top:18px!important;padding-bottom:18px!important}}
/* Real headings replace the inherited 35px line box and nested clipping spans. */
.ak-about-page .rich-text h2.ak-about-clean-heading{display:block!important;box-sizing:border-box!important;position:relative!important;width:auto!important;max-width:100%!important;min-height:0!important;max-height:none!important;font-family:AKMonument,Arial,sans-serif!important;font-weight:500!important;letter-spacing:-.035em!important;white-space:normal!important;margin:32px 0 24px!important;padding:.12em 0!important;clip-path:none!important;color:var(--ak-ink)!important;text-align:center!important;opacity:0;transform:translateY(18px);transition:opacity .75s ease,transform .9s cubic-bezier(.22,1,.36,1)}
.ak-about-page .rich-text h2.ak-about-clean-heading.ak-heading-in{opacity:1;transform:none}
@media(max-width:700px){.ak-about-page .rich-text h2.ak-about-clean-heading{text-align:left!important;margin:22px 0!important}}
@media(prefers-reduced-motion:reduce){.ak-about-page .rich-text h2.ak-about-clean-heading{opacity:1;transform:none;transition:none}}
/* Brands: the same subtle 3px lift as the reference, without altering SVG artwork. */
.ak-about-brand-marks .ak-brand-logo svg{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
@media(hover:hover) and (pointer:fine){.ak-about-brand-marks .ak-brand-logo:hover svg{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.ak-about-brand-marks .ak-brand-logo svg{transition:none!important;transform:none!important}}

/* Match link and button line boxes across Safari and Chromium. */
@media(min-width:1101px){
body>header>nav,.site-header nav{align-items:center!important;flex-wrap:nowrap!important}
.site-header nav>.page-title,body>header>nav>.ak-work-menu,.site-header nav>.ak-work-menu{display:flex!important;align-items:center!important;line-height:1.4!important;font-size:12px!important}
body>header>nav>a,.site-header nav>.page-title>a,.ak-work-toggle{display:block!important;vertical-align:middle!important;font:400 12px/1.4 AKMonument,Arial,sans-serif!important;margin:0!important;padding:0!important}
.ak-work-toggle{-webkit-appearance:none;appearance:none}
}

/* Direct taps, without double-tap zoom or delayed synthetic clicks. */
header :is(.menu,.hamburger-click-area,.ak-work-toggle,nav a){touch-action:manipulation;-webkit-tap-highlight-color:transparent}

/* A neutral identity and a compact, centred appearance switch. */
html .ak-identity.ak-expanded .ak-id-full{background:none!important;background-clip:border-box!important;-webkit-text-fill-color:currentColor;color:var(--ak-ink)!important}
body>header,.site-header{position:relative!important}
.ak-theme-toggle{position:absolute!important;left:50%!important;top:24px!important;transform:translateX(-50%);display:grid!important;place-items:center;width:44px!important;height:44px!important;padding:0!important;margin:0!important;border:0!important;border-radius:50%;background:transparent!important;box-shadow:none!important;color:var(--ak-ink)!important;font:22px/1 system-ui!important;cursor:pointer;z-index:35;touch-action:manipulation;-webkit-appearance:none;appearance:none}
.ak-theme-toggle:focus-visible{outline:1px solid var(--ak-ink);outline-offset:3px}
@media(max-width:1100px){.ak-theme-toggle{top:16px!important}}

/* Keep the contact invitation as one native text run, matching the contact page. */
.ak-get-in-touch #contact-heading{font-family:AKMonument,Arial,sans-serif!important;font-weight:500!important;font-size:clamp(42px,10vw,150px)!important;line-height:1.13!important;letter-spacing:-.055em!important;text-transform:none!important;font-kerning:normal;font-variant-ligatures:normal;overflow:visible!important;padding:.08em .025em;margin:0 0 26px;white-space:nowrap}
@media(max-width:700px){.ak-get-in-touch #contact-heading{font-size:clamp(32px,12.4vw,86px)!important}}


/* Restore the small sun/moon appearance switch. */
.ak-theme-toggle{width:44px!important;height:44px!important;top:24px!important;border-radius:50%;font:22px/1 system-ui!important}
@media(max-width:1100px){.ak-theme-toggle{top:16px!important}}

/* Native vector icons render identically on home and WordPress pages. */
.ak-theme-toggle svg{display:block!important;width:24px!important;height:24px!important;max-width:none!important;max-height:none!important;fill:none;pointer-events:none;opacity:1!important;visibility:visible!important}

.ak-small-copyright,.ak-small-copyright *{font-size:10px!important;line-height:1.6!important;font-weight:400!important}

/* Consistent titles on Work category cards, sized separately from home captions. */
.ak-work-gallery .project-cover .details-wrap{padding:clamp(18px,2.2vw,34px) 0 0!important}
.ak-work-gallery .project-cover .details-inner{padding:0 clamp(18px,2.2vw,34px)!important;box-sizing:border-box}
.site-content .ak-work-gallery .project-cover .title{font:500 clamp(18px,1.65vw,26px)/1.25 AKMonument,Arial,sans-serif!important;letter-spacing:-.02em!important;white-space:normal!important;overflow-wrap:break-word;padding:0 0 8px!important;margin:0!important;text-align:left!important}
.site-content .ak-work-gallery .project-cover .date{font:400 12px/1.4 AKMonument,Arial,sans-serif!important;letter-spacing:0!important;padding:0!important;margin:0!important;text-align:left!important;opacity:.8}
@media(max-width:600px){.site-content .ak-work-gallery .project-cover .title{font-size:18px!important}.ak-work-gallery .project-cover .details-wrap{padding-top:18px!important}.ak-work-gallery .project-cover .details-inner{padding-inline:18px!important}}

@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.ak-home-grid .project-cover:hover img{transform:scale(1.07)!important}}

/* Stills uses one gap for rows and columns, independent of legacy card widths. */
.ak-stills-gallery .project-covers {
  --stills-gap: clamp(12px, 1.25vw, 24px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--stills-gap);
  padding: var(--stills-gap);
  box-sizing: border-box;
}
.ak-stills-gallery .project-covers::after { display: none; }
.ak-stills-gallery .project-covers > .project-cover {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
}
@media (max-width: 1100px) {
  .ak-stills-gallery .project-covers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
  .ak-stills-gallery .project-covers { grid-template-columns: minmax(0, 1fr); }
}
