/*
Theme Name: Inkage Atelier — Aperture
Theme URI: https://www.inkageatelier.com/
Author: Inkage Atelier
Description: A standalone cinematic WordPress theme for Inkage Atelier with a fully editable Elementor homepage, live WordPress post portfolio, local Lottie motion and responsive layouts.
Version: 2.8.20
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: inkage-atelier-aperture
Tags: custom-logo, one-column, full-width-template, portfolio
*/

@font-face{font-family:Inkage;src:url('assets/media/dm-sans.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Inkage;src:url('assets/media/dm-sans-italic.woff2') format('woff2');font-style:italic;font-weight:100 900;font-display:swap}

:root{
  --white:#fff;
  --paper:#f4f4f1;
  --ink:#0d0d0c;
  --muted:#6d6d68;
  --line:#d5d5ce;
  --blue:#2447ff;
  --pad:clamp(1.2rem,4vw,4.75rem);
  --header:5.25rem;
  --ease:cubic-bezier(.18,.74,.24,1);
}

*{box-sizing:border-box}
html,body{width:100%;max-width:100%;overflow-x:hidden}
html{scroll-behavior:smooth;background:var(--white);font-size:16px}
body{margin:0;background:var(--white);color:var(--ink);font-family:Inkage,Arial,sans-serif;line-height:1.45}
body.menu-open{overflow:hidden;overscroll-behavior:none}
@supports (overflow:clip){html,body,main{overflow-x:clip}}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
button,input,textarea{font:inherit;color:inherit}
::selection{background:var(--blue);color:#fff}
.elementor-popup-modal .dialog-widget-content,
.elementor-popup-modal .dialog-message,
.elementor-popup-modal .elementor-location-popup{border:0!important;outline:0!important;box-shadow:none!important}
.elementor-popup-modal .dialog-widget-content,
.elementor-popup-modal .dialog-message{background:transparent!important}
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.direction-icon{display:inline-block;width:.82em;height:.82em;overflow:visible;vertical-align:-.06em;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:square;stroke-linejoin:miter;vector-effect:non-scaling-stroke}

.skip-link{position:fixed;z-index:1000;top:-4rem;left:1rem;padding:.8rem 1rem;background:var(--ink);color:#fff;transition:top .2s}
.skip-link:focus{top:1rem}
.preloader{position:fixed;z-index:999;inset:0;display:grid;place-items:center;background:#fff;transition:opacity .45s var(--ease),visibility .45s}
.preloader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.preloader>div{width:min(46vw,16rem);aspect-ratio:1}
.preloader p{position:absolute;left:var(--pad);right:var(--pad);bottom:1.8rem;display:flex;justify-content:space-between;margin:0;padding-top:.75rem;border-top:1px solid var(--line);font-size:.72rem;font-weight:650;text-transform:uppercase;letter-spacing:.12em}
.scroll-rail{position:fixed;z-index:92;right:0;top:0;width:3px;height:100vh;background:#ecece8;pointer-events:none;transition:opacity .2s}
.scroll-rail span{display:block;width:100%;height:0;background:var(--blue)}
.cursor{position:fixed;z-index:100;left:0;top:0;width:4.7rem;height:4.7rem;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.25);transition:opacity .2s,transform .35s var(--ease);mix-blend-mode:multiply}
.cursor.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
.cursor span{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}

.site-header{position:fixed;z-index:90;left:0;right:0;top:0;width:100%;max-width:100%;height:var(--header);padding:0 var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid transparent;transition:height .4s var(--ease),background .35s,border-color .35s}
.site-header.scrolled{height:4.35rem;background:rgba(255,255,255,.91);border-color:var(--line);backdrop-filter:blur(16px)}
.brand{width:9.2rem;height:3.2rem;display:flex;align-items:center}
.brand img{object-fit:contain;object-position:left center}
#site-nav{display:block}
.site-nav-list{display:flex;align-items:center;gap:clamp(1.2rem,2.3vw,2.6rem);margin:0;padding:0;list-style:none}
#site-nav a,.header-cta{position:relative;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.095em}
#site-nav a::after,.header-cta::after{content:"";position:absolute;left:0;right:0;bottom:-.4rem;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
#site-nav a:hover::after,.header-cta:hover::after{transform:scaleX(1);transform-origin:left}
.header-cta{justify-self:end}.header-cta span{color:var(--blue);margin-left:.35rem}
.menu-toggle{display:none;border:0;background:none;padding:.5rem 0;cursor:pointer}
.site-nav-list li{position:relative;margin:0;padding:0;list-style:none}
.site-nav-list>.menu-item{display:flex;align-items:center;gap:.3rem}
#site-nav .sub-menu{position:absolute;z-index:8;top:calc(100% + .85rem);left:-1rem;width:max-content;min-width:18rem;max-width:min(24rem,calc(100vw - 2rem));margin:0;padding:.55rem;display:flex;flex-direction:column;gap:0;background:rgba(247,247,244,.97);border:1px solid var(--line);box-shadow:0 1.4rem 3.8rem rgba(13,13,12,.13);opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,.8rem,0) scale(.985);transform-origin:top left;transition:opacity .22s ease,visibility 0s linear .34s,transform .42s var(--ease);will-change:opacity,transform}
#site-nav .sub-menu .menu-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem}
#site-nav .sub-menu>.menu-item{opacity:0;transform:translateY(.45rem);transition:opacity .24s ease,transform .38s var(--ease)}
#site-nav .sub-menu>.menu-item+.menu-item{border-top:1px solid rgba(13,13,12,.12)}
#site-nav .sub-menu a{display:block;width:100%;min-width:0;padding:.78rem .82rem;font-size:.75rem;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
#site-nav .sub-menu a::after{right:.82rem;left:.82rem;bottom:.55rem}
#site-nav .sub-menu .sub-menu{top:-.7rem;left:calc(100% + .7rem)}
.site-nav-list>.menu-item-has-children>.sub-menu::before{content:"";position:absolute;right:0;bottom:100%;left:0;height:1rem}
#site-nav .sub-menu .menu-item-has-children>.sub-menu::before{content:"";position:absolute;top:0;right:100%;bottom:0;width:.7rem}
.site-nav-list>.menu-item:last-child>.sub-menu{right:-1rem;left:auto}
#site-nav .menu-item-has-children:hover>.sub-menu,#site-nav .menu-item-has-children:focus-within>.sub-menu,#site-nav .menu-item-has-children.submenu-open>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
#site-nav .menu-item-has-children:hover>.sub-menu>.menu-item,#site-nav .menu-item-has-children:focus-within>.sub-menu>.menu-item,#site-nav .menu-item-has-children.submenu-open>.sub-menu>.menu-item{opacity:1;transform:none}
#site-nav .menu-item-has-children:hover>.sub-menu>.menu-item:nth-child(2),#site-nav .menu-item-has-children:focus-within>.sub-menu>.menu-item:nth-child(2),#site-nav .menu-item-has-children.submenu-open>.sub-menu>.menu-item:nth-child(2){transition-delay:.045s}
#site-nav .menu-item-has-children:hover>.sub-menu>.menu-item:nth-child(3),#site-nav .menu-item-has-children:focus-within>.sub-menu>.menu-item:nth-child(3),#site-nav .menu-item-has-children.submenu-open>.sub-menu>.menu-item:nth-child(3){transition-delay:.09s}
.submenu-toggle{position:relative;flex:0 0 auto;width:1.5rem;height:1.5rem;margin:0;padding:0;display:grid;place-items:center;border:0;border-radius:50%;outline-offset:2px;background:transparent;color:var(--ink);cursor:pointer;-webkit-appearance:none;appearance:none}
.submenu-toggle-icon{position:relative;display:block;width:.58rem;height:1px;background:currentColor;border-radius:999px;transition:transform .3s var(--ease)}
.submenu-toggle-icon::after{content:"";position:absolute;inset:0;display:block;width:100%;height:100%;background:currentColor;border-radius:inherit;transform:rotate(90deg);transition:transform .3s var(--ease),opacity .2s ease}
.submenu-toggle[aria-expanded="true"] .submenu-toggle-icon{transform:rotate(45deg)}

.hero{position:relative;width:100%;max-width:100%;min-height:0;padding:calc(var(--header) + 2.6rem) var(--pad) 3.5rem;background:var(--white);overflow:hidden;contain:layout paint}
.hero-grid{position:absolute;inset:0;background:linear-gradient(90deg,transparent calc(25% - .5px),rgba(13,13,12,.07) 25%,transparent calc(25% + .5px),transparent calc(50% - .5px),rgba(13,13,12,.07) 50%,transparent calc(50% + .5px),transparent calc(75% - .5px),rgba(13,13,12,.07) 75%,transparent calc(75% + .5px))}
.hero-kicker{position:relative;z-index:4;margin:0;display:flex;justify-content:space-between;padding-top:.65rem;border-top:1px solid var(--ink);font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}
.hero h1{position:relative;z-index:3;width:100%;max-width:100%;margin:5vh 0 0;font-size:clamp(3.7rem,8.7vw,10rem);font-weight:500;line-height:.78;letter-spacing:-.076em;text-transform:uppercase;pointer-events:none}
.hero h1 span,.hero h1 strong{display:block;font-weight:inherit}
.hero h1 span:nth-child(3),.hero h1 strong:nth-child(4){text-align:right}
.hero h1 strong{font-weight:240;font-style:italic;text-transform:none;letter-spacing:-.066em;color:transparent;-webkit-text-stroke:1.5px var(--ink)}
.hero-apertures{position:relative;z-index:2;width:100%;max-width:100%;height:clamp(30rem,49vw,51rem);margin:clamp(4rem,7vw,7rem) 0 3.5rem;overflow:hidden}
.aperture{position:absolute;z-index:2;overflow:hidden;background:#ddd;box-shadow:0 1.5rem 5rem rgba(0,0,0,.15);transform:translate3d(0,var(--float,0),0);will-change:transform,clip-path}
.aperture img{object-position:var(--hero-focus-x,50%) var(--hero-focus-y,50%);filter:saturate(.95) contrast(1.04);transition:transform 1.3s var(--ease),object-position .35s var(--ease)}
.aperture:hover img{transform:scale(1.04)}
.aperture-one{left:0;top:18%;width:25%;height:57%;clip-path:inset(0 42% 0 0)}
.aperture-two{left:27%;top:0;width:46%;height:100%;clip-path:inset(0 0 0 0)}
.aperture-three{right:0;top:24%;width:25%;height:55%;clip-path:inset(0 0 0 38%)}
.hero-bottom{position:relative;z-index:5;display:flex;justify-content:space-between;align-items:end}
.hero-bottom p{margin:0;font-size:clamp(1.05rem,1.55vw,1.45rem);line-height:1.28;letter-spacing:-.02em}
.hero-bottom a{width:min(19rem,32vw);display:flex;justify-content:space-between;padding:1rem 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.hero-bottom b{color:var(--blue);font-size:1rem}
.hero-reel{position:absolute;z-index:4;right:var(--pad);bottom:13rem;font-size:.62rem;letter-spacing:.16em;writing-mode:vertical-rl}

.section{position:relative;padding:clamp(8rem,14vw,15rem) var(--pad)}
.section-label{position:absolute;z-index:5;top:3.3rem;left:var(--pad);right:var(--pad);display:flex;align-items:center;gap:1rem;padding-top:.7rem;border-top:1px solid var(--ink)}
.section-label span{width:2.2rem;color:var(--blue);font-size:.72rem;font-weight:700;letter-spacing:.14em}
.section-label p{margin:0;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}
.eyebrow{margin:0 0 1rem;font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}
h2 em{font-weight:240}

.manifesto{background:var(--paper)}
.manifesto-heading{margin-left:8.333%;max-width:82rem}
.manifesto-heading h2,.services-heading h2,.process-heading h2,.work-heading h2,.collaborate-copy h2,.faq-heading h2,.contact-heading h2{margin:0;font-size:clamp(3.2rem,7.4vw,8.7rem);font-weight:510;line-height:.88;letter-spacing:-.07em}
.manifesto-scenes{margin-top:clamp(6rem,11vw,11rem);border-top:1px solid var(--line)}
.manifesto-scene{display:grid;grid-template-columns:clamp(8rem,12vw,12rem) 5rem 1fr;align-items:center;min-height:39vh;border-bottom:1px solid var(--line)}
.manifesto-motion{width:min(100%,8.5rem);aspect-ratio:1;justify-self:center}
.manifesto-scene>span{align-self:start;padding-top:2.2rem;color:var(--blue);font-size:.7rem;font-weight:700;letter-spacing:.13em}
.manifesto-scene>div:last-child{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:4rem}
.manifesto-scene h3{margin:0;font-size:clamp(2.35rem,4.3vw,5.2rem);font-weight:500;line-height:.93;letter-spacing:-.055em}
.manifesto-scene p{max-width:31rem;margin:0;color:var(--muted);font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.6}

.services{padding-left:0;padding-right:0;padding-bottom:0;background:var(--white)}
.services>.section-label{left:var(--pad);right:var(--pad)}
.services-heading{padding:0 var(--pad);margin-left:8.333%;max-width:82rem}
.service-experience{display:grid;grid-template-columns:1fr 1fr;margin-top:clamp(7rem,12vw,12rem);border-top:1px solid var(--line)}
.service-list{min-width:0}
.service-beat{min-height:100vh;padding:clamp(7rem,10vw,11rem) clamp(2rem,6vw,7rem) 5rem var(--pad);display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid var(--line);opacity:.4;transition:opacity .5s var(--ease)}
.service-beat.active{opacity:1}
.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem}
.service-top>span{color:var(--blue);font-size:.7rem;font-weight:700;letter-spacing:.14em}
.service-top>div{position:relative;width:clamp(5.5rem,9vw,9rem);aspect-ratio:1}
.service-beat h3{margin:0 0 1.5rem;font-size:clamp(3.3rem,6.2vw,7.5rem);font-weight:500;line-height:.84;letter-spacing:-.07em}
.service-beat>p{max-width:34rem;margin:0;color:var(--muted);font-size:clamp(1rem,1.35vw,1.22rem);line-height:1.58}
.service-mobile-image{display:none!important}
.service-stage{position:sticky;top:0;height:100vh;padding:var(--header) var(--pad) 2rem 2rem;background:var(--paper);overflow:hidden}
.stage-line{height:3rem;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--ink);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}
.stage-line b{font-weight:700;color:var(--blue)}
.stage-images{position:relative;height:calc(100% - 6rem);overflow:hidden;background:#d8d8d3}
.stage-images::before{content:"";position:absolute;z-index:10;inset:1rem;border:1px solid rgba(255,255,255,.65);pointer-events:none}
.stage-images img{position:absolute;inset:0;opacity:0;transform:scale(1.08);filter:saturate(.9);transition:opacity .7s var(--ease),transform 1.1s var(--ease),clip-path .9s var(--ease);clip-path:inset(0 0 100% 0)}
.stage-images img.active{opacity:1;transform:scale(1);clip-path:inset(0)}
.service-stage>p{margin:.7rem 0 0;font-size:.6rem;letter-spacing:.16em}

.process{background:var(--ink);color:#fff}
.process .section-label{border-color:#41413e}.process .section-label span{color:#91a0ff}
.process-heading{margin-left:8.333%;max-width:78rem}
.process-heading .eyebrow{color:#96968f}
.process-stack{margin-top:clamp(6rem,10vw,10rem)}
.process-card{position:sticky;top:7rem;min-height:calc(100vh - 9rem);margin-bottom:10rem;display:grid;grid-template-columns:1.35fr .65fr;background:#fff;color:var(--ink);border:1px solid #30302d;box-shadow:0 2rem 4rem rgba(0,0,0,.28);overflow:hidden}
.process-card:nth-child(2){top:7.75rem}.process-card:nth-child(3){top:8.5rem}.process-card:nth-child(4){top:9.25rem;margin-bottom:0}
.process-card figure{margin:0;min-height:38rem;overflow:hidden}
.process-card figure img{transition:transform 1.1s var(--ease)}
.process-card:hover figure img{transform:scale(1.025)}
.process-card>div{position:relative;padding:clamp(3rem,5vw,6rem);display:flex;flex-direction:column;justify-content:center}
.process-card>div>span{position:absolute;top:2rem;right:2rem;color:var(--blue);font-size:.72rem;font-weight:700;letter-spacing:.14em}
.process-card h3{margin:0 0 1.5rem;font-size:clamp(2.8rem,4.8vw,5.7rem);font-weight:500;line-height:.9;letter-spacing:-.06em}
.process-card>div>p:last-child{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.6}

.work{background:var(--white)}
.work-heading{margin-left:8.333%;max-width:79rem}
.work-gallery{margin-top:clamp(7rem,11vw,11rem)}
.work-item{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2.5rem,7vw,8rem);align-items:end;padding:5.5rem 0;border-top:1px solid var(--line)}
.work-item.reverse{grid-template-columns:.75fr 1.25fr}
.work-item.reverse figure{order:2}.work-item.reverse>div{order:1;padding-left:8vw}
.work-item figure{height:min(76vh,50rem);margin:0;overflow:hidden;background:var(--paper)}
.work-item img{filter:saturate(.92);transition:transform 1.1s var(--ease),filter .6s}
.work-item:hover img{transform:scale(1.025);filter:saturate(1.06)}
.work-item>div{padding-bottom:1rem}
.work-item>div>span{display:block;margin-bottom:1.5rem;color:var(--blue);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em}
.work-item h3{margin:0 0 1.5rem;font-size:clamp(2.4rem,4.3vw,5.1rem);font-weight:500;line-height:.94;letter-spacing:-.058em}
.work-item p{max-width:28rem;margin:0 0 2rem;color:var(--muted);font-size:1.02rem;line-height:1.55}
.work-item b{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em}
.work-empty{margin:0;padding:5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:1.1rem}
.line-link{width:min(100%,38rem);margin:2rem 0 0 auto;padding:1.2rem 0;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);font-size:clamp(1.3rem,2.3vw,2.3rem);letter-spacing:-.03em}
.line-link b{font-weight:400;color:var(--blue);transition:transform .35s var(--ease)}
.line-link:hover b{transform:translate(.3rem,-.3rem)}

.collaborate{background:var(--paper);display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(3rem,8vw,9rem);align-items:center}
.collaborate-image{height:min(77vh,50rem);margin:0;overflow:hidden}
.collaborate-image img{height:110%;transition:transform 1s var(--ease)}
.collaborate-image:hover img{transform:scale(1.025)}
.collaborate-copy h2{font-size:clamp(3.2rem,6.15vw,7.2rem)}
.collaborate-copy .lead{margin:2.6rem 0;font-size:clamp(1.12rem,1.65vw,1.5rem);line-height:1.48;letter-spacing:-.022em}
.collaborate-copy>p:last-of-type{color:var(--muted)}
.collaborate-columns{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:3rem 0;padding-top:1.5rem;border-top:1px solid var(--line)}
.collaborate-columns h3{margin:0 0 1rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.14em}
.collaborate-columns ul{margin:0;padding:0;list-style:none;color:var(--muted)}
.collaborate-columns li{padding:.38rem 0;border-bottom:1px solid #dfdfd8}
.line-link.compact{width:100%;margin-top:3rem}

.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}
.faq-heading{position:sticky;top:8rem;align-self:start}
.faq-heading h2{font-size:clamp(3.1rem,5.8vw,6.8rem)}
.faq-list{padding-top:1rem}
.faq-list details{border-top:1px solid var(--line)}
.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{display:flex;justify-content:space-between;gap:1rem;padding:1.65rem 0;list-style:none;cursor:pointer;font-size:clamp(1.1rem,1.5vw,1.4rem);letter-spacing:-.02em}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{color:var(--blue);font-size:1.5rem;transition:transform .35s}
.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list details p{max-width:39rem;margin:-.25rem 0 1.75rem;color:var(--muted);line-height:1.65}

.contact{background:var(--paper)}
.contact-heading{margin-left:8.333%;max-width:84rem}
.inquiry-form{width:min(100%,78rem);margin:clamp(5rem,9vw,9rem) auto 0;display:grid;grid-template-columns:1fr 1fr;gap:2.5rem 3rem}
.inquiry-form>label{padding-bottom:.65rem;border-bottom:1px solid var(--ink)}
.inquiry-form label>span,.inquiry-form legend{display:block;margin-bottom:.7rem;color:var(--muted);font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}
.inquiry-form input,.inquiry-form textarea{width:100%;border:0;outline:0;background:transparent;font-size:clamp(1.14rem,1.75vw,1.55rem);letter-spacing:-.024em;resize:vertical}
.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#a6a69f}
.inquiry-form fieldset{grid-column:1/-1;margin:.8rem 0 0;padding:0;border:0}
.choices{display:flex;flex-wrap:wrap;gap:.65rem}
.choices label{display:inline-flex;border-radius:999px;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.choices input{position:absolute;opacity:0;pointer-events:none}
.choices span{display:block!important;margin:0!important;padding:.72rem 1rem;border:1px solid var(--line);border-radius:999px;color:var(--ink)!important;transition:background .25s,color .25s,border-color .25s}
.choices input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff!important}
.choices input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.inquiry-form .full{grid-column:1/-1}
.inkage-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.dual-form-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;margin-top:1rem;border-bottom:1px solid var(--ink)}
.inkage-action-button{min-width:0;padding:1.3rem 1.25rem 1.3rem 0;display:flex;justify-content:space-between;align-items:center;border:0;background:transparent;cursor:pointer;text-align:left;font-size:clamp(1.65rem,3vw,3.6rem);font-weight:500;line-height:1;letter-spacing:-.055em;transition:padding .35s var(--ease),background .3s,color .3s}
.inkage-action-button+.inkage-action-button{padding-left:1.25rem;border-left:1px solid var(--line)}
.inkage-action-button b{font-weight:400;color:var(--blue)}
.inkage-action-button:hover{padding-left:1rem;padding-right:1rem;background:var(--ink);color:#fff}
.inkage-action-button:disabled{opacity:.5;cursor:wait}
.form-note,.form-status{grid-column:1/-1;margin:0;color:var(--muted);font-size:.72rem}
.form-status:not(:empty){padding:.8rem 0;border-bottom:1px solid var(--line);color:var(--ink)}

/* Optional Elementor Pro Form template integration */
.elementor-form-slot{grid-column:1/-1;min-width:0}
.inquiry-form-elementor .elementor-form-fields-wrapper{margin-left:-1.5rem;margin-right:-1.5rem}
.inquiry-form-elementor .elementor-field-group{padding-left:1.5rem!important;padding-right:1.5rem!important;margin-bottom:2.5rem}
.inquiry-form-elementor .elementor-field-label{margin-bottom:.7rem;color:var(--muted);font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}
.inquiry-form-elementor .elementor-field:not([type="checkbox"]):not([type="radio"]){padding:.35rem 0 .65rem!important;border:0!important;border-bottom:1px solid var(--ink)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--ink)!important;font-family:inherit;font-size:clamp(1.14rem,1.75vw,1.55rem)}
.inquiry-form-elementor .elementor-field:focus{outline:0!important;box-shadow:none!important}
.inquiry-form-elementor .elementor-field-type-submit,.inquiry-form-elementor .inkage-whatsapp-action{width:50%!important;margin-top:1rem;margin-bottom:0;border-bottom:1px solid var(--ink)}
.inquiry-form-elementor .elementor-field-type-submit{padding-right:0!important}
.inquiry-form-elementor .inkage-whatsapp-action{padding-left:0!important}
.inquiry-form-elementor .elementor-button,.inquiry-form-elementor .inkage-whatsapp-button{width:100%;min-height:5.5rem;padding:1.3rem 1.25rem!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--ink)!important;box-shadow:none!important;display:flex;justify-content:space-between;align-items:center;text-align:left;font-family:inherit;font-size:clamp(1.65rem,3vw,3.6rem);font-weight:500;line-height:1;letter-spacing:-.055em}
.inquiry-form-elementor .elementor-button::after{content:"";width:.72em;height:.72em;flex:0 0 auto;background:var(--blue);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 10 10 2M4 2h6v6' fill='none' stroke='black' stroke-width='1.35'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 10 10 2M4 2h6v6' fill='none' stroke='black' stroke-width='1.35'/%3E%3C/svg%3E") center/contain no-repeat}
.inquiry-form-elementor .elementor-button:hover,.inquiry-form-elementor .inkage-whatsapp-button:hover{background:var(--ink)!important;color:#fff!important}
.elementor-form-help{grid-column:1/-1;margin:0;padding:1rem;border:1px solid var(--line);color:var(--muted)}

footer{width:100%;max-width:100%;padding:clamp(7rem,11vw,11rem) var(--pad) 2rem;background:var(--ink);color:#fff;overflow:hidden}
.footer-ticker{margin-left:calc(var(--pad) * -1);margin-right:calc(var(--pad) * -1);padding:2.4rem 0 2.8rem;border-top:1px solid #383835;border-bottom:1px solid #383835;overflow:hidden;contain:layout paint;isolation:isolate}
.footer-ticker-track{display:flex;width:max-content;will-change:transform;animation:footer-ticker 28s linear infinite}
.ticker-group{display:flex;flex-shrink:0;align-items:center}
.ticker-group span{display:flex;flex-shrink:0;align-items:center;white-space:nowrap;font-size:clamp(3.5rem,8vw,9.4rem);font-weight:500;line-height:.84;letter-spacing:-.072em}
.ticker-group span::after{content:"✦";display:inline-block;margin:0 .28em;color:var(--blue);font-size:.25em;line-height:1}
.ticker-group em{margin-left:.16em;color:transparent;-webkit-text-stroke:1px #c0c0b8;font-weight:260}
@keyframes footer-ticker{to{transform:translateX(-50%)}}
.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4rem;margin-top:clamp(7rem,11vw,11rem);padding-top:1.5rem;border-top:1px solid #383835}
.footer-grid .eyebrow{color:#898983}
.footer-grid a{display:block;width:max-content;max-width:100%;margin:.45rem 0;color:#dbdbd3;transition:color .2s}.footer-grid a:hover{color:#91a0ff}
.footer-base{display:grid;grid-template-columns:2fr 1fr auto auto;gap:2rem;margin-top:7rem;padding-top:1.2rem;border-top:1px solid #383835;color:#8a8a84;font-size:.67rem;text-transform:uppercase;letter-spacing:.08em}
.disclaimer{max-width:52rem;margin:2rem 0 0;color:#666660;font-size:.65rem}

.js .reveal{opacity:0;transform:translateY(3rem);transition:opacity .9s var(--ease),transform 1s var(--ease)}
.js .reveal.visible{opacity:1;transform:none}

@media (max-width:1050px){
  .site-header{grid-template-columns:1fr auto}
  .site-header.scrolled{background:rgba(255,255,255,.97);-webkit-backdrop-filter:none;backdrop-filter:none}
  body.menu-open .site-header,body.menu-open .site-header.scrolled{height:var(--header);background:#fff;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
  body.menu-open .scroll-rail{opacity:0}
  .brand{position:relative;z-index:2}
  #site-nav{position:fixed;z-index:1;inset:0;width:100%;min-height:100vh;height:100dvh;padding:calc(var(--header) + 4rem) var(--pad) max(3rem,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.8rem;background:#fff;overflow-y:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-1rem);transition:opacity .35s,visibility .35s,transform .5s var(--ease)}
  #site-nav.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
  .site-nav-list{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.8rem}
  #site-nav a{font-size:clamp(2.6rem,8vw,5.5rem);font-weight:500;line-height:1;letter-spacing:-.055em;text-transform:none}
  .site-nav-list{width:100%}
  .site-nav-list>.menu-item,#site-nav .sub-menu .menu-item{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem}
  #site-nav .sub-menu,#site-nav .sub-menu .sub-menu{position:static;grid-column:1/-1;width:100%;min-width:0;max-width:none;max-height:0;margin:0;padding:0 0 0 clamp(1rem,4vw,2rem);display:flex;gap:.15rem;overflow:hidden;border:0;background:transparent;box-shadow:none;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-.55rem);transition:max-height .55s var(--ease),margin .45s var(--ease),padding .45s var(--ease),opacity .22s ease,visibility 0s linear .55s,transform .45s var(--ease);will-change:max-height,opacity,transform}
  #site-nav .sub-menu>.menu-item{opacity:1;transform:none;transition:none}
  #site-nav .sub-menu>.menu-item+.menu-item{border-top:0}
  #site-nav .sub-menu::before{display:none}
  #site-nav .menu-item-has-children.submenu-open>.sub-menu{max-height:48rem;margin:.25rem 0 .55rem;padding-top:.2rem;padding-bottom:.35rem;opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
  #site-nav .menu-item-has-children.submenu-open>.sub-menu>.menu-item{opacity:1;transform:none;transition-delay:0s}
  #site-nav .sub-menu a{padding:.38rem 0;font-size:clamp(1.25rem,4.6vw,1.75rem);font-weight:500;line-height:1.1;letter-spacing:-.025em;white-space:normal}
  #site-nav .sub-menu .sub-menu a{font-size:clamp(1.05rem,4vw,1.45rem);color:var(--muted)}
  #site-nav .sub-menu a::after{right:0;left:0;bottom:.18rem}
  #site-nav .submenu-toggle{justify-self:end;width:2.75rem;height:2.75rem;border:1px solid var(--line);background:#f7f7f4;color:var(--ink);-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background-color .25s ease,border-color .25s ease,color .25s ease,transform .18s ease}
  #site-nav .submenu-toggle:active{transform:scale(.94)}
  #site-nav .submenu-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
  #site-nav .submenu-toggle[aria-expanded="true"]{border-color:var(--ink);background:var(--ink);color:#fff}
  #site-nav .submenu-toggle-icon{width:.78rem;height:1.5px;transform:none}
  #site-nav .submenu-toggle[aria-expanded="true"] .submenu-toggle-icon{transform:none}
  #site-nav .submenu-toggle[aria-expanded="true"] .submenu-toggle-icon::after{opacity:0;transform:rotate(90deg) scaleX(0)}
  .header-cta{display:none}
  .menu-toggle{position:relative;z-index:2;display:flex;align-items:center;justify-content:flex-start;width:auto;min-width:6rem;padding:.7rem 2.15rem .7rem .55rem;border-radius:999px;line-height:1}
  .menu-toggle span{font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
  .menu-toggle i{position:absolute;right:.45rem;top:calc(50% - .24rem);width:1.15rem;height:1px;background:var(--ink);transition:top .3s,transform .3s}
  .menu-toggle i:last-child{top:calc(50% + .24rem)}
  .menu-toggle[aria-expanded="true"] i{top:50%;transform:rotate(45deg)}
  .menu-toggle[aria-expanded="true"] i:last-child{transform:rotate(-45deg)}
  .manifesto-scene{grid-template-columns:9rem 4rem 1fr}
  .manifesto-scene>div:last-child{gap:2rem}
  .service-beat{padding-right:3rem}
  .process-card{grid-template-columns:1.1fr .9fr}
}

@media (max-width:760px){
  :root{--pad:1.1rem;--header:4.2rem}
  .cursor{display:none}.scroll-rail{width:2px}
  .site-header,.site-header.scrolled{height:var(--header)}
  .brand{width:7.25rem;height:2.55rem}
  .menu-toggle{min-width:5.8rem;padding-right:2rem;padding-left:.45rem}
  .preloader>div{width:12rem}.preloader p span{display:none}
  .hero{min-height:0;padding-top:calc(var(--header) + 1.7rem);padding-bottom:2rem}
  .hero-grid{background:linear-gradient(90deg,transparent calc(50% - .5px),rgba(13,13,12,.07) 50%,transparent calc(50% + .5px))}
  .hero-kicker span:last-child{display:none}
  .hero h1{margin-top:4rem;font-size:clamp(3.2rem,16.6vw,5.8rem);line-height:.82}
  .hero h1 span:nth-child(3),.hero h1 strong:nth-child(4){text-align:left}
  .hero h1 strong{-webkit-text-stroke:1px var(--ink)}
  .hero-apertures{height:67vw;min-height:17rem;margin:3.2rem 0 2.5rem}
  .aperture-one{left:0;top:16%;width:31%;height:58%;clip-path:inset(0 38% 0 0)}
  .aperture-two{left:23%;top:0;width:59%;height:100%}
  .aperture-three{right:0;top:28%;width:27%;height:51%;clip-path:inset(0 0 0 34%)}
  .hero-bottom{align-items:end}
  .hero-bottom p{font-size:.9rem}.hero-bottom a{width:8.5rem;font-size:.57rem}
  .hero-reel{display:none}

  .section{padding:7.5rem var(--pad)}
  .section-label{top:2.2rem}.section-label span{width:1.6rem}
  .manifesto-heading,.services-heading,.process-heading,.work-heading,.contact-heading{margin-left:0}
  .manifesto-heading h2,.services-heading h2,.process-heading h2,.work-heading h2,.collaborate-copy h2,.faq-heading h2,.contact-heading h2{font-size:clamp(2.85rem,13vw,4.8rem);line-height:.91}
  .manifesto-scenes{margin-top:5rem}
  .manifesto-scene{grid-template-columns:5rem 1fr;min-height:0;padding:2rem 0 4rem}
  .manifesto-motion{grid-column:1;width:3.8rem}.manifesto-scene>span{grid-column:2;padding:1rem 0 0;justify-self:end}
  .manifesto-scene>div:last-child{grid-column:1/-1;display:block;margin-top:2rem}
  .manifesto-scene h3{font-size:2.7rem}.manifesto-scene p{margin-top:1.3rem;font-size:1rem}

  .services{padding-left:0;padding-right:0;padding-bottom:0}
  .services-heading{padding:0 var(--pad)}
  .service-experience{position:relative;display:flex;flex-direction:column;margin-top:5rem}
  .service-list{position:relative;z-index:2;order:2;background:var(--white)}
  .service-stage{display:block;z-index:4;order:1;top:56vh;top:calc(100dvh - clamp(18rem,44dvh,24rem));height:44vh;height:clamp(18rem,44dvh,24rem);min-height:0;padding:.65rem var(--pad) calc(.85rem + env(safe-area-inset-bottom));background:var(--paper);box-shadow:0 -.8rem 2.6rem rgba(13,13,12,.08)}
  .service-stage .stage-line{height:2.65rem}
  .service-stage .stage-images{height:calc(100% - 5rem)}
  .service-stage .stage-images::before{inset:.65rem}
  .service-stage>p{margin:.55rem 0 0}
  .service-beat{min-height:100vh;min-height:100svh;padding:clamp(2.75rem,7vh,4.5rem) var(--pad) calc(clamp(18rem,44dvh,24rem) + 2.25rem);justify-content:flex-start;opacity:.28}
  .service-beat.active{opacity:1}
  .service-top{margin-bottom:2rem}.service-top>div{width:5.7rem}
  .service-beat h3{font-size:clamp(3rem,14vw,5rem)}
  .service-beat>p{font-size:1rem}
  .service-mobile-image{display:none}

  .process-stack{margin-top:5rem;padding-bottom:1rem}
  .process-card,.process-card:nth-child(2),.process-card:nth-child(3),.process-card:nth-child(4){position:sticky;display:block;min-height:0;margin-bottom:4rem}
  .process-card:nth-child(1){top:calc(var(--header) + .65rem)}
  .process-card:nth-child(2){top:calc(var(--header) + 1.15rem)}
  .process-card:nth-child(3){top:calc(var(--header) + 1.65rem)}
  .process-card:nth-child(4){top:calc(var(--header) + 2.15rem);margin-bottom:0}
  .process-card figure{min-height:0;height:34vh;height:clamp(12.5rem,34svh,19rem);aspect-ratio:auto}
  .process-card>div{padding:2.15rem 1.25rem 2.35rem}
  .process-card h3{font-size:clamp(2.35rem,11vw,2.7rem)}.process-card>div>p:last-child{font-size:1rem}

  .work-gallery{margin-top:5rem}
  .work-item,.work-item.reverse{display:flex;flex-direction:column;align-items:stretch;gap:2rem;padding:3rem 0}
  .work-item.reverse figure,.work-item.reverse>div{order:initial}.work-item.reverse>div{padding-left:0}
  .work-item figure{height:auto;aspect-ratio:.86}
  .work-item>div{padding:0}.work-item h3{font-size:2.7rem}

  .collaborate{display:block}
  .collaborate-image{height:auto;aspect-ratio:.86;margin-bottom:4rem}
  .collaborate-columns{grid-template-columns:1fr;gap:2rem}
  .collaborate-copy .lead{font-size:1.15rem}

  .faq{display:block}
  .faq-heading{position:relative;top:auto}
  .faq-list{margin-top:4rem}.faq-list summary{font-size:1.05rem}

  .inquiry-form{grid-template-columns:1fr;margin-top:4rem;gap:2rem}
  .inquiry-form fieldset,.inquiry-form .full,.dual-form-actions,.form-note,.form-status{grid-column:1}
  .dual-form-actions{grid-template-columns:1fr}
  .inkage-action-button{font-size:2.1rem;padding:1.25rem 0}
  .inkage-action-button+.inkage-action-button{padding-left:0;border-left:0;border-top:1px solid var(--line)}
  .inquiry-form-elementor .elementor-field-type-submit,.inquiry-form-elementor .inkage-whatsapp-action{width:100%!important}
  .inquiry-form-elementor .inkage-whatsapp-action{border-top:1px solid var(--line)}
  .inquiry-form-elementor .elementor-form-fields-wrapper{margin-left:0;margin-right:0}
  .inquiry-form-elementor .elementor-field-group{padding-left:0!important;padding-right:0!important}

  footer{padding-top:6rem}
  .footer-ticker{padding:1.6rem 0 1.9rem}
  .ticker-group span{font-size:clamp(3rem,13vw,5rem)}
  .ticker-group em{-webkit-text-stroke:.7px #c0c0b8}
  .footer-grid{grid-template-columns:1fr;gap:2.5rem;margin-top:6rem}
  .footer-base{grid-template-columns:1fr;gap:.7rem;margin-top:5rem}
}

/* 2.7.4 large-type mobile navigation. */
@media (max-width:1050px){
  body.inkage-aperture-page .inkage-aperture-root #site-nav{
    padding:calc(var(--header) + 4.5rem) var(--pad) max(3rem,env(safe-area-inset-bottom))!important;
  }
  body.inkage-aperture-page .inkage-aperture-root #site-nav .site-nav-list{gap:.72rem!important}
  body.inkage-aperture-page .inkage-aperture-root #site-nav .site-nav-list>li>a{
    font-size:clamp(2.45rem,7.4vw,4.9rem)!important;
    font-weight:500!important;
    line-height:1.02!important;
    letter-spacing:-.055em!important;
    text-transform:none!important;
  }
  body.inkage-aperture-page .inkage-aperture-root #site-nav .submenu-toggle{
    width:3.25rem!important;
    height:3.25rem!important;
    background:#fafaf7!important;
  }
}
@media (max-width:760px){
  body.inkage-aperture-page .inkage-aperture-root #site-nav{
    padding:calc(var(--header) + 4.35rem) 1.1rem max(2.5rem,env(safe-area-inset-bottom))!important;
  }
  body.inkage-aperture-page .inkage-aperture-root #site-nav .site-nav-list>li>a{
    font-size:clamp(2.35rem,10.7vw,3.35rem)!important;
    line-height:1.02!important;
  }
  body.inkage-aperture-page .inkage-aperture-root #site-nav .sub-menu a{
    font-size:clamp(1.15rem,5vw,1.55rem)!important;
    letter-spacing:-.025em!important;
  }
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .preloader{display:none}
  .footer-ticker-track{animation:none;transform:none}
  .ticker-group:nth-child(2),.ticker-group span:nth-child(n+2){display:none}
  .ticker-group{padding-left:var(--pad)}
}


/* WordPress integration */
.inkage-aperture-root{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);overflow:hidden;background:var(--white);color:var(--ink);font-family:Inkage,Arial,sans-serif}
@supports (overflow:clip){.inkage-aperture-root{overflow:clip}}
.elementor-widget-inkage-aperture-home,.elementor-widget-inkage-aperture-home>.elementor-widget-container{width:100%;max-width:none!important;margin:0!important;padding:0!important}
.elementor-widget-inkage-aperture-home .elementor-widget-container{overflow:visible}
.inkage-aperture-page .elementor-section-wrap>.elementor-section,.inkage-aperture-page .elementor-section-wrap>.e-con{margin:0!important;padding:0!important;max-width:none!important}
.elementor-editor-active .inkage-aperture-root .reveal{opacity:1!important;transform:none!important}
.elementor-editor-active .inkage-aperture-root .preloader,.elementor-editor-active .inkage-aperture-root .cursor,.elementor-editor-active .inkage-aperture-root .scroll-rail{display:none!important}
.inkage-aperture-root.inkage-focus-editor-active .aperture{cursor:crosshair;touch-action:none;user-select:none}
.inkage-aperture-root.inkage-focus-editor-active .aperture:hover img,.inkage-aperture-root.inkage-focus-editor-active .aperture.inkage-focus-dragging img{transform:none!important}
.inkage-aperture-root.inkage-focus-editor-active .aperture.inkage-focus-dragging{cursor:grabbing}
.inkage-aperture-root.inkage-focus-editor-active .aperture[data-inkage-focus-label]::after{content:attr(data-inkage-focus-label);position:absolute;z-index:12;right:.45rem;bottom:.45rem;padding:.32rem .46rem;background:rgba(13,13,12,.82);color:#fff;font:700 .5rem/1 Inkage,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;opacity:0;transform:translateY(.25rem);transition:opacity .2s var(--ease),transform .2s var(--ease);pointer-events:none}
.inkage-aperture-root.inkage-focus-editor-active .aperture:hover::after,.inkage-aperture-root.inkage-focus-editor-active .aperture.inkage-focus-dragging::after{opacity:1;transform:none}
.inkage-aperture-root.inkage-focus-editor-active .inkage-focal-marker{position:absolute;z-index:13;left:var(--hero-focus-x,50%);top:var(--hero-focus-y,50%);width:1.9rem;height:1.9rem;border:1px solid #fff;border-radius:50%;background:rgba(36,72,255,.86);box-shadow:0 0 0 3px rgba(36,72,255,.22);transform:translate(-50%,-50%);pointer-events:none}
.inkage-aperture-root.inkage-focus-editor-active .inkage-focal-marker::before,.inkage-aperture-root.inkage-focus-editor-active .inkage-focal-marker::after{content:"";position:absolute;inset:50% auto auto 50%;background:#fff;transform:translate(-50%,-50%)}
.inkage-aperture-root.inkage-focus-editor-active .inkage-focal-marker::before{width:.72rem;height:1px}
.inkage-aperture-root.inkage-focus-editor-active .inkage-focal-marker::after{width:1px;height:.72rem}
.inkage-aperture-root.inkage-focus-editor-active .aperture.inkage-focus-save-failed::after{content:"Use the focus sliders";background:#b42318}
body.admin-bar .site-header{top:32px}
body.admin-bar #site-nav{padding-top:calc(var(--header) + 4rem + 32px)}
.wp-page-content{width:min(100% - 2.4rem,76rem);margin:0 auto;padding:8rem 0;font-family:Inkage,Arial,sans-serif}
.wp-page-content>*{max-width:100%}
@media (max-width:782px){body.admin-bar .site-header{top:46px}body.admin-bar #site-nav{padding-top:calc(var(--header) + 4rem + 46px)}}

/* Elementor Site Kit isolation
 * Elementor prints global heading, paragraph, link and image rules after a
 * theme stylesheet. These scoped rules keep the homepage design authoritative
 * without disabling Elementor or affecting an embedded Elementor Pro form.
 */
body.inkage-aperture-page .inkage-aperture-root,
body.inkage-aperture-page .inkage-aperture-root h1,
body.inkage-aperture-page .inkage-aperture-root h2,
body.inkage-aperture-page .inkage-aperture-root h3,
body.inkage-aperture-page .inkage-aperture-root h4,
body.inkage-aperture-page .inkage-aperture-root h5,
body.inkage-aperture-page .inkage-aperture-root h6,
body.inkage-aperture-page .inkage-aperture-root p,
body.inkage-aperture-page .inkage-aperture-root a,
body.inkage-aperture-page .inkage-aperture-root button,
body.inkage-aperture-page .inkage-aperture-root input,
body.inkage-aperture-page .inkage-aperture-root textarea,
body.inkage-aperture-page .inkage-aperture-root select,
body.inkage-aperture-page .inkage-aperture-root label,
body.inkage-aperture-page .inkage-aperture-root legend,
body.inkage-aperture-page .inkage-aperture-root summary{font-family:Inkage,Arial,sans-serif}
body.inkage-aperture-page .inkage-aperture-root h1,
body.inkage-aperture-page .inkage-aperture-root h2,
body.inkage-aperture-page .inkage-aperture-root h3,
body.inkage-aperture-page .inkage-aperture-root h4,
body.inkage-aperture-page .inkage-aperture-root h5,
body.inkage-aperture-page .inkage-aperture-root h6{color:inherit}
body.inkage-aperture-page .inkage-aperture-root a{color:inherit;text-decoration:none}
body.inkage-aperture-page .inkage-aperture-root figure{margin:0}
body.inkage-aperture-page .inkage-aperture-root img{display:block;width:100%;max-width:none;height:100%;object-fit:cover}
body.inkage-aperture-page .inkage-aperture-root .brand img{object-fit:contain;object-position:left center}
body.inkage-aperture-page .inkage-aperture-root .collaborate-image img{height:110%}

body.inkage-aperture-page .inkage-aperture-root .hero h1{margin:5vh 0 0;font-size:clamp(3.7rem,8.7vw,10rem);font-weight:500;line-height:.78;letter-spacing:-.076em;text-transform:uppercase}
body.inkage-aperture-page .inkage-aperture-root .hero h1 strong{font-weight:240;font-style:italic;text-transform:none;letter-spacing:-.066em;color:transparent}
body.inkage-aperture-page .inkage-aperture-root .manifesto-heading h2,
body.inkage-aperture-page .inkage-aperture-root .services-heading h2,
body.inkage-aperture-page .inkage-aperture-root .process-heading h2,
body.inkage-aperture-page .inkage-aperture-root .work-heading h2,
body.inkage-aperture-page .inkage-aperture-root .collaborate-copy h2,
body.inkage-aperture-page .inkage-aperture-root .faq-heading h2,
body.inkage-aperture-page .inkage-aperture-root .contact-heading h2{margin:0;font-size:clamp(3.2rem,7.4vw,8.7rem);font-weight:510;line-height:.88;letter-spacing:-.07em}
body.inkage-aperture-page .inkage-aperture-root .collaborate-copy h2{font-size:clamp(3.2rem,6.15vw,7.2rem)}
body.inkage-aperture-page .inkage-aperture-root .faq-heading h2{font-size:clamp(3.1rem,5.8vw,6.8rem)}
body.inkage-aperture-page .inkage-aperture-root .manifesto-scene h3{margin:0;font-size:clamp(2.35rem,4.3vw,5.2rem);font-weight:500;line-height:.93;letter-spacing:-.055em}
body.inkage-aperture-page .inkage-aperture-root .service-beat h3{margin:0 0 1.5rem;font-size:clamp(3.3rem,6.2vw,7.5rem);font-weight:500;line-height:.84;letter-spacing:-.07em}
body.inkage-aperture-page .inkage-aperture-root .process-card h3{margin:0 0 1.5rem;font-size:clamp(2.8rem,4.8vw,5.7rem);font-weight:500;line-height:.9;letter-spacing:-.06em}
body.inkage-aperture-page .inkage-aperture-root .work-item h3{margin:0 0 1.5rem;font-size:clamp(2.4rem,4.3vw,5.1rem);font-weight:500;line-height:.94;letter-spacing:-.058em}
body.inkage-aperture-page .inkage-aperture-root .collaborate-columns h3{margin:0 0 1rem;font-size:.68rem;font-weight:700;line-height:1.45;letter-spacing:.14em;text-transform:uppercase}

body.inkage-aperture-page .inkage-aperture-root .preloader p,
body.inkage-aperture-page .inkage-aperture-root .hero-kicker,
body.inkage-aperture-page .inkage-aperture-root .hero-bottom p,
body.inkage-aperture-page .inkage-aperture-root .section-label p,
body.inkage-aperture-page .inkage-aperture-root .manifesto-scene p,
body.inkage-aperture-page .inkage-aperture-root .service-beat>p,
body.inkage-aperture-page .inkage-aperture-root .process-card>div>p:last-child,
body.inkage-aperture-page .inkage-aperture-root .form-note,
body.inkage-aperture-page .inkage-aperture-root .form-status{margin-top:0;margin-bottom:0}
body.inkage-aperture-page .inkage-aperture-root .work-item p{margin:0 0 2rem}
body.inkage-aperture-page .inkage-aperture-root .faq-list details p{margin:-.25rem 0 1.75rem}
body.inkage-aperture-page .inkage-aperture-root .service-stage>p{margin:.7rem 0 0}
body.inkage-aperture-page .inkage-aperture-root .eyebrow{margin:0 0 1rem}
body.inkage-aperture-page .inkage-aperture-root .collaborate-copy .lead{margin:2.6rem 0}
body.inkage-aperture-page .inkage-aperture-root .disclaimer{margin:2rem 0 0}

body.inkage-aperture-page .inkage-aperture-root .process-heading h2,
body.inkage-aperture-page .inkage-aperture-root footer h2{color:#fff}
body.inkage-aperture-page .inkage-aperture-root .footer-grid a{color:#dbdbd3}
body.inkage-aperture-page .inkage-aperture-root .footer-grid a:hover{color:#91a0ff}
body.inkage-aperture-page .inkage-aperture-root .footer-base a{color:#8a8a84}

/* Keep Elementor Site Kit form controls from replacing the cinematic
 * underline fields with boxed inputs. These rules intentionally target only
 * the theme's native enquiry form, leaving embedded Elementor Pro forms under
 * their dedicated integration rules above.
 */
body.inkage-aperture-page .inkage-aperture-root .service-mobile-image{display:none!important}
body.inkage-aperture-page .inkage-aperture-root #site-nav .submenu-toggle{margin:0!important;padding:0!important;border-radius:50%!important;box-shadow:none!important;-webkit-appearance:none!important;appearance:none!important}
body.inkage-aperture-page .inkage-aperture-root .inquiry-form-native>label:not(.inkage-honeypot)>input,
body.inkage-aperture-page .inkage-aperture-root .inquiry-form-native>label.full>textarea{
  display:block!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--ink)!important;
  font:inherit!important;
  font-size:clamp(1.14rem,1.75vw,1.55rem)!important;
  line-height:1.45!important;
  letter-spacing:-.024em!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
body.inkage-aperture-page .inkage-aperture-root .inquiry-form-native>label:not(.inkage-honeypot)>input{height:auto!important}
body.inkage-aperture-page .inkage-aperture-root .inquiry-form-native>label.full>textarea{resize:vertical!important}
body.inkage-aperture-page .inkage-aperture-root .inquiry-form-native>label:not(.inkage-honeypot)>input:focus,
body.inkage-aperture-page .inkage-aperture-root .inquiry-form-native>label.full>textarea:focus{outline:0!important;box-shadow:none!important}
body.inkage-aperture-page .inkage-aperture-root .inquiry-form-native>label:not(.inkage-honeypot)>input::placeholder,
body.inkage-aperture-page .inkage-aperture-root .inquiry-form-native>label.full>textarea::placeholder{color:#a6a69f!important;opacity:1!important}
body.inkage-aperture-page .inkage-aperture-root .choices label,
body.inkage-aperture-page .inkage-aperture-root .choices span{-webkit-tap-highlight-color:transparent!important}
body.inkage-aperture-page .inkage-aperture-root .choices label{display:inline-flex!important;border-radius:999px!important;touch-action:manipulation}
body.inkage-aperture-page .inkage-aperture-root .choices span{overflow:hidden;-webkit-user-select:none;user-select:none}
body.inkage-aperture-page .inkage-aperture-root .dual-form-actions{
  width:100%!important;
  margin-top:1rem!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  border-right:0!important;
  border-bottom:1px solid var(--ink)!important;
  border-left:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.inkage-aperture-page .inkage-aperture-root .dual-form-actions .inkage-action-button{
  width:100%!important;
  min-width:0!important;
  min-height:5.5rem!important;
  margin:0!important;
  padding:1.3rem 1.15rem!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:1rem!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--ink)!important;
  font-family:Inkage,Arial,sans-serif!important;
  font-size:clamp(1.65rem,3vw,3.6rem)!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
  text-align:left!important;
  cursor:pointer!important;
  -webkit-appearance:none!important;
  appearance:none!important;
  -webkit-tap-highlight-color:transparent!important;
}
body.inkage-aperture-page .inkage-aperture-root .dual-form-actions .inkage-action-button+.inkage-action-button{border-left:1px solid var(--line)!important}
@media (hover:hover){body.inkage-aperture-page .inkage-aperture-root .dual-form-actions .inkage-action-button:hover{background:var(--ink)!important;color:#fff!important}}

@media (max-width:1050px){
  body.inkage-aperture-page .inkage-aperture-root .menu-toggle{
    position:relative!important;
    z-index:2!important;
    width:auto!important;
    min-width:6rem!important;
    min-height:2.75rem!important;
    margin:0!important;
    padding:.7rem 2.15rem .7rem .55rem!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    border:0!important;
    border-radius:999px!important;
    outline:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:var(--ink)!important;
    line-height:1!important;
    -webkit-appearance:none!important;
    appearance:none!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  body.inkage-aperture-page .inkage-aperture-root .menu-toggle span{font-family:Inkage,Arial,sans-serif!important;font-size:.875rem!important;font-weight:700!important;line-height:1!important;letter-spacing:.1em!important;text-transform:uppercase!important}
}

@media (max-width:760px){
  body.inkage-aperture-page .inkage-aperture-root .menu-toggle{min-width:5.8rem!important;padding-right:2rem!important;padding-left:.45rem!important}
  body.inkage-aperture-page .inkage-aperture-root .hero h1{margin-top:4rem;display:flex;flex-direction:column;align-items:flex-start;font-size:clamp(3.2rem,16.6vw,5.8rem);line-height:1}
  body.inkage-aperture-page .inkage-aperture-root .hero h1>span,
  body.inkage-aperture-page .inkage-aperture-root .hero h1>strong{width:100%;line-height:.86}
  body.inkage-aperture-page .inkage-aperture-root .hero h1>strong:nth-child(2){margin-top:.025em}
  body.inkage-aperture-page .inkage-aperture-root .hero h1>span:nth-child(3){margin-top:.18em;font-size:.82em;letter-spacing:-.07em;white-space:nowrap}
  body.inkage-aperture-page .inkage-aperture-root .hero h1>strong:nth-child(4){margin-top:.035em}
  body.inkage-aperture-page .inkage-aperture-root .manifesto-heading h2,
  body.inkage-aperture-page .inkage-aperture-root .services-heading h2,
  body.inkage-aperture-page .inkage-aperture-root .process-heading h2,
  body.inkage-aperture-page .inkage-aperture-root .work-heading h2,
  body.inkage-aperture-page .inkage-aperture-root .collaborate-copy h2,
  body.inkage-aperture-page .inkage-aperture-root .faq-heading h2,
  body.inkage-aperture-page .inkage-aperture-root .contact-heading h2{font-size:clamp(2.85rem,13vw,4.8rem);line-height:.91}
  body.inkage-aperture-page .inkage-aperture-root .manifesto-scene h3{font-size:2.7rem}
  body.inkage-aperture-page .inkage-aperture-root .service-beat h3{font-size:clamp(3rem,14vw,5rem)}
  body.inkage-aperture-page .inkage-aperture-root .process-card h3{font-size:clamp(2.35rem,11vw,2.7rem)}
  body.inkage-aperture-page .inkage-aperture-root .work-item h3{font-size:2.7rem}
  body.inkage-aperture-page .inkage-aperture-root .work-item figure{height:auto;aspect-ratio:.86}
  body.inkage-aperture-page .inkage-aperture-root .service-stage>p{margin:.55rem 0 0}
  body.inkage-aperture-page .inkage-aperture-root .service-beat{min-height:100vh!important;min-height:100svh!important;padding:clamp(2.75rem,7vh,4.5rem) var(--pad) calc(clamp(18rem,44dvh,24rem) + 2.25rem)!important;justify-content:flex-start!important}
  body.inkage-aperture-page .inkage-aperture-root .service-list .service-beat:last-child{min-height:105vh!important;min-height:105svh!important}
  body.inkage-aperture-page .inkage-aperture-root .dual-form-actions{grid-template-columns:1fr!important}
  body.inkage-aperture-page .inkage-aperture-root .dual-form-actions .inkage-action-button{min-height:5.7rem!important;padding:1.3rem 1.1rem!important;font-size:clamp(1.55rem,7vw,2.1rem)!important}
  body.inkage-aperture-page .inkage-aperture-root .dual-form-actions .inkage-action-button+.inkage-action-button{border-top:1px solid var(--line)!important;border-left:0!important}
}

/* 2.7.11 — visible mobile submenu state and contact-action hover motion. */
@media (max-width:1050px){
  body.inkage-aperture-page .inkage-aperture-root #site-nav .submenu-toggle[aria-expanded="true"]{border-color:var(--ink)!important;background:var(--ink)!important;color:#fff!important}
  body.inkage-aperture-page .inkage-aperture-root #site-nav .submenu-toggle-icon{display:block!important;width:.9rem!important;height:2px!important;background:currentColor!important;opacity:1!important;transform:none!important}
  body.inkage-aperture-page .inkage-aperture-root #site-nav .submenu-toggle-icon::after{content:""!important;display:block!important;width:100%!important;height:100%!important;background:currentColor!important;opacity:1!important;transform:rotate(90deg)!important}
  body.inkage-aperture-page .inkage-aperture-root #site-nav .submenu-toggle[aria-expanded="true"] .submenu-toggle-icon::after{opacity:0!important;transform:rotate(90deg) scaleX(0)!important}
}
body.inkage-aperture-page .inkage-aperture-root #contact .dual-form-actions .inkage-action-button,
body.inkage-aperture-page .inkage-aperture-root #contact .dual-form-actions .inkage-action-button>span,
body.inkage-aperture-page .inkage-aperture-root #contact .dual-form-actions .inkage-action-button>b{transition:padding .35s var(--ease),background-color .3s ease,color .3s ease,transform .35s var(--ease)!important}
@media (hover:hover) and (pointer:fine){
  body.inkage-aperture-page .inkage-aperture-root #contact .dual-form-actions .inkage-action-button:hover{padding-right:.95rem!important;padding-left:1.35rem!important;background:var(--ink)!important;color:#fff!important}
  body.inkage-aperture-page .inkage-aperture-root #contact .dual-form-actions .inkage-action-button:hover>span{transform:translateX(.18rem)!important}
  body.inkage-aperture-page .inkage-aperture-root #contact .dual-form-actions .inkage-action-button:hover>b{transform:translate(.18rem,-.18rem)!important}
}
@media (prefers-reduced-motion:reduce){
  body.inkage-aperture-page .inkage-aperture-root #contact .dual-form-actions .inkage-action-button,
  body.inkage-aperture-page .inkage-aperture-root #contact .dual-form-actions .inkage-action-button>*{transition:none!important}
}

/* 2.8.13 — staggered, pointer-responsive homepage hero typography. */
body.inkage-aperture-page .inkage-aperture-root .hero h1{
  pointer-events:auto;
  touch-action:pan-y;
}
body.inkage-aperture-page .inkage-aperture-root .hero h1>span,
body.inkage-aperture-page .inkage-aperture-root .hero h1>strong{
  --hero-shift-x:0px;
  --hero-shift-y:0px;
  position:relative;
  translate:var(--hero-shift-x) var(--hero-shift-y);
  transition:translate .28s var(--ease),opacity .28s ease,color .34s ease,-webkit-text-stroke-color .34s ease;
  will-change:translate;
}
body.inkage-aperture-page .inkage-aperture-root .hero.hero-motion-enabled:not(.hero-motion-ready) h1>*{opacity:0}
body.inkage-aperture-page .inkage-aperture-root .hero.hero-motion-ready:not(.hero-motion-settled) h1>*{animation:inkage-hero-line-in .86s var(--ease) both}
body.inkage-aperture-page .inkage-aperture-root .hero.hero-motion-ready:not(.hero-motion-settled) h1>*:nth-child(2){animation-delay:.10s}
body.inkage-aperture-page .inkage-aperture-root .hero.hero-motion-ready:not(.hero-motion-settled) h1>*:nth-child(3){animation-delay:.20s}
body.inkage-aperture-page .inkage-aperture-root .hero.hero-motion-ready:not(.hero-motion-settled) h1>*:nth-child(4){animation-delay:.30s}
body.inkage-aperture-page .inkage-aperture-root .hero h1.is-hero-focused>*{opacity:.34}
body.inkage-aperture-page .inkage-aperture-root .hero h1.is-hero-focused>*.is-hero-active{opacity:1}
body.inkage-aperture-page .inkage-aperture-root .hero h1>span.is-hero-active{color:var(--blue)}
body.inkage-aperture-page .inkage-aperture-root .hero h1>strong.is-hero-active{color:rgba(36,71,255,.075);-webkit-text-stroke-color:var(--blue)}
@keyframes inkage-hero-line-in{
  from{opacity:0;transform:translate3d(0,.34em,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
@media (hover:none){
  body.inkage-aperture-page .inkage-aperture-root .hero h1>*.is-hero-active{translate:.035em 0}
}
@media (prefers-reduced-motion:reduce){
  body.inkage-aperture-page .inkage-aperture-root .hero h1>*{animation:none!important;translate:none!important;transition:none!important;opacity:1!important}
}

/* 2.8.15 — continuous homepage FAQ disclosure motion. */
body.inkage-aperture-page .inkage-aperture-root .faq-list .faq-answer{
  display:block;
  overflow:hidden;
}
body.inkage-aperture-page .inkage-aperture-root .faq-list .faq-answer.inkage-faq-animating{
  will-change:height,opacity;
}
body.inkage-aperture-page .inkage-aperture-root .faq-list details:not(.inkage-faq-open)>summary span{
  transform:none!important;
}
body.inkage-aperture-page .inkage-aperture-root .faq-list details.inkage-faq-open>summary span{
  transform:rotate(45deg)!important;
}
@media (prefers-reduced-motion:reduce){
  body.inkage-aperture-page .inkage-aperture-root .faq-list .faq-answer{
    animation:none!important;
    transition:none!important;
  }
}
