/* AHA! FUTURE TECH — interior experience overhaul
   A coherent studio system: editorial hero, modular field notes, tactile project cards. */
:root{
 --aft-lime:#d7ff36;--aft-coral:#ff705e;--aft-electric:#6d8cff;
 --aft-cream:#f5f1e7;--aft-night:#10110f;--aft-panel:#191b17;
 --aft-panel-2:#22251f;--aft-rule:#3a3d34;--aft-copy:#b9b9ae;
 --aft-display:"Space Grotesk",sans-serif;--aft-reading:"Newsreader",Georgia,serif;
 --aft-code:"DM Mono",monospace;
}
.aft-main{overflow:hidden}
.elementor-page-232 .elementor,.elementor-page-324 .elementor,.elementor-page-326 .elementor,
.elementor-page-328 .elementor,.elementor-page-330 .elementor,.elementor-page-332 .elementor,
.elementor-page-334 .elementor,.elementor-page-359 .elementor,
.elementor-page-345 .elementor,.elementor-page-347 .elementor,
.elementor-page-349 .elementor,.elementor-page-351 .elementor{padding-bottom:clamp(60px,9vw,130px)}
/* Shared page rhythm */
.elementor-page-232 .elementor > .e-con,
.elementor-page-324 .elementor > .e-con,
.elementor-page-326 .elementor > .e-con,
.elementor-page-328 .elementor > .e-con,
.elementor-page-330 .elementor > .e-con,
.elementor-page-332 .elementor > .e-con,
.elementor-page-334 .elementor > .e-con,
.elementor-page-359 .elementor > .e-con,
.elementor-page-345 .elementor > .e-con,
.elementor-page-347 .elementor > .e-con,
.elementor-page-349 .elementor > .e-con,
.elementor-page-351 .elementor > .e-con{position:relative}
.elementor-page-232 .elementor > .e-con:not(:first-child),
.elementor-page-324 .elementor > .e-con:not(:first-child),
.elementor-page-326 .elementor > .e-con:not(:first-child),
.elementor-page-328 .elementor > .e-con:not(:first-child),
.elementor-page-330 .elementor > .e-con:not(:first-child),
.elementor-page-332 .elementor > .e-con:not(:first-child){border-top:1px solid rgba(215,255,54,.12)}
.elementor-page-232 .elementor > .e-con:not(:first-child) .e-con-inner,
.elementor-page-324 .elementor > .e-con:not(:first-child) .e-con-inner,
.elementor-page-326 .elementor > .e-con:not(:first-child) .e-con-inner,
.elementor-page-328 .elementor > .e-con:not(:first-child) .e-con-inner,
.elementor-page-330 .elementor > .e-con:not(:first-child) .e-con-inner,
.elementor-page-332 .elementor > .e-con:not(:first-child) .e-con-inner{max-width:1180px;margin-inline:auto}
.aft-kicker{display:inline-flex;align-items:center;gap:10px;font:500 10px/1.4 var(--aft-code)!important;letter-spacing:.14em!important;text-transform:uppercase}
.aft-kicker:before{content:"";width:22px;height:2px;background:var(--aft-coral);display:inline-block}
.elementor-widget-text-editor p{max-width:78ch}
.elementor-widget-text-editor ul{padding-left:1.2em}
.elementor-widget-text-editor li::marker{color:var(--aft-lime)}
/* Editorial hero: asymmetric, high contrast, more like the homepage */
.elementor-page-232 .elementor > .e-con:first-child,
.elementor-page-324 .elementor > .e-con:first-child,
.elementor-page-326 .elementor > .e-con:first-child,
.elementor-page-328 .elementor > .e-con:first-child,
.elementor-page-330 .elementor > .e-con:first-child,
.elementor-page-332 .elementor > .e-con:first-child{
 min-height:460px;display:flex;align-items:center;isolation:isolate;
}
.elementor-page-232 .elementor > .e-con:first-child:after,
.elementor-page-324 .elementor > .e-con:first-child:after,
.elementor-page-326 .elementor > .e-con:first-child:after,
.elementor-page-328 .elementor > .e-con:first-child:after,
.elementor-page-330 .elementor > .e-con:first-child:after,
.elementor-page-332 .elementor > .e-con:first-child:after{
 content:"";position:absolute;z-index:-1;right:clamp(20px,8vw,130px);top:18%;width:clamp(150px,24vw,330px);aspect-ratio:1;
 border:1px solid rgba(215,255,54,.35);border-radius:50%;
 background:radial-gradient(circle at 50% 50%,rgba(215,255,54,.12),rgba(109,140,255,.06) 38%,transparent 70%);
 box-shadow:0 0 0 24px rgba(215,255,54,.025),0 0 0 48px rgba(109,140,255,.025);
 pointer-events:none
}
.elementor-page-232 .elementor > .e-con:first-child:before,
.elementor-page-324 .elementor > .e-con:first-child:before,
.elementor-page-326 .elementor > .e-con:first-child:before,
.elementor-page-328 .elementor > .e-con:first-child:before,
.elementor-page-330 .elementor > .e-con:first-child:before,
.elementor-page-332 .elementor > .e-con:first-child:before{
 top:38px;left:clamp(20px,calc((100vw - 1180px)/2),100px);
 color:var(--aft-lime);font:500 10px var(--aft-code);letter-spacing:.16em
}
.elementor-page-232 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
.elementor-page-324 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
.elementor-page-326 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
.elementor-page-328 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
.elementor-page-330 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
.elementor-page-332 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title{
 max-width:900px;font-size:clamp(56px,8vw,112px);line-height:.88;letter-spacing:-.075em!important;
 text-wrap:balance;text-shadow:0 3px 0 rgba(0,0,0,.12)
}
.elementor-page-232 .elementor > .e-con:first-child .aft-lead,
.elementor-page-324 .elementor > .e-con:first-child .aft-lead,
.elementor-page-326 .elementor > .e-con:first-child .aft-lead,
.elementor-page-330 .elementor > .e-con:first-child .aft-lead,
.elementor-page-332 .elementor > .e-con:first-child .aft-lead{
 max-width:690px;font:500 clamp(20px,2.3vw,29px)/1.38 var(--aft-reading)!important;color:var(--aft-cream)!important
}
/* Images become deliberate editorial plates */
.elementor-page-232 .elementor-widget-image img,
.elementor-page-324 .elementor-widget-image img,
.elementor-page-326 .elementor-widget-image img,
.elementor-page-328 .elementor-widget-image img,
.elementor-page-345 .elementor-widget-image img,
.elementor-page-347 .elementor-widget-image img,
.elementor-page-349 .elementor-widget-image img,
.elementor-page-351 .elementor-widget-image img{
 display:block;width:100%;max-height:620px;object-fit:cover;border:1px solid var(--aft-rule);
 filter:saturate(.82) contrast(1.04);transition:filter .35s ease,transform .5s cubic-bezier(.2,.7,.2,1)
}
.elementor-page-232 .elementor-widget-image img:hover,
.elementor-page-324 .elementor-widget-image img:hover,
.elementor-page-326 .elementor-widget-image img:hover,
.elementor-page-328 .elementor-widget-image img:hover{filter:saturate(1.08) contrast(1.06);transform:scale(1.008)}
/* About — a manifesto, not a CV preamble */
.elementor-page-232 .elementor-widget-text-editor h2{
 display:flex;align-items:center;gap:14px;font:500 11px var(--aft-code)!important;letter-spacing:.13em!important
}
.elementor-page-232 .elementor-widget-text-editor h2:before{content:"↳";color:var(--aft-coral);font-size:18px}
.elementor-page-232 .elementor-widget-text-editor h2+p{max-width:760px;font:500 clamp(21px,2.4vw,30px)/1.42 var(--aft-reading)!important;color:var(--aft-cream)!important}
.elementor-page-232 .elementor-widget-text-editor> .elementor-widget-container>p:last-child{
 display:inline-block;padding:20px 25px;background:var(--aft-lime);color:#10110f!important;font:600 16px var(--aft-code);transform:rotate(-1deg)
}
/* Experience — make each role read like a timeline event */
.elementor-page-324 .aft-role{position:relative;grid-template-columns:155px minmax(0,1fr);gap:42px;padding:46px 0 46px 24px;border-top:1px solid var(--aft-rule)}
.elementor-page-324 .aft-role:before{content:"";position:absolute;left:0;top:52px;width:9px;height:9px;background:var(--aft-lime);box-shadow:0 0 0 5px rgba(215,255,54,.1)}
.elementor-page-324 .aft-role-year{font:500 19px var(--aft-code)!important;color:var(--aft-coral)!important}
.elementor-page-324 .aft-role-body h3{font-size:clamp(27px,3vw,38px)!important}
.elementor-page-324 .aft-role-body .aft-kicker{color:var(--aft-lime)!important}
.elementor-page-324 .aft-early-grid>div{transition:background .2s ease,transform .2s ease}
.elementor-page-324 .aft-early-grid>div:hover{background:#292d21;transform:translateY(-4px)}
/* AI & Engineering — visual research notebook */
.elementor-page-326 .elementor > .e-con:nth-child(2){background:var(--aft-panel);border-block:1px solid var(--aft-rule)}
.elementor-page-326 .aft-ai-grid>div{position:relative;overflow:hidden;transition:background .25s ease,transform .25s ease}
.elementor-page-326 .aft-ai-grid>div:after{content:"";position:absolute;right:-30px;bottom:-50px;width:130px;height:130px;border:1px solid rgba(215,255,54,.18);border-radius:50%}
.elementor-page-326 .aft-ai-grid>div:hover{background:#282d20;transform:translateY(-3px)}
.elementor-page-326 .aft-ai-grid span{font:500 11px var(--aft-code)!important;color:var(--aft-coral)!important}
.elementor-page-326 .aft-ai-grid h3{font-size:clamp(25px,3vw,34px)!important}
.elementor-page-326 .elementor > .e-con:nth-child(3) h2,
.elementor-page-326 .elementor > .e-con:nth-child(5) h2,
.elementor-page-326 .elementor > .e-con:nth-child(6) h2{font-size:clamp(42px,6vw,72px)!important;letter-spacing:-.07em!important}
/* Projects index — turn case studies into a designed catalogue */
.elementor-page-328 .elementor > .e-con:first-child{min-height:420px}
.elementor-page-328 .elementor > .e-con:not(:first-child){max-width:1180px;margin:0 auto;padding:clamp(32px,5vw,68px) 28px}
.elementor-page-328 .elementor > .e-con:not(:first-child) .elementor-widget-text-editor h2{
 margin:0 0 24px;padding:0;border:0;font:500 11px var(--aft-code)!important;letter-spacing:.16em!important;color:var(--aft-coral)!important
}
.elementor-page-328 .elementor-widget-text-editor h2+p,
.elementor-page-328 .elementor-widget-text-editor h2+p+p,
.elementor-page-328 .elementor-widget-text-editor h2+p+p+p{
 position:relative;min-height:190px;padding:30px!important;background:var(--aft-panel)!important;border:1px solid var(--aft-rule)!important;
 transition:transform .25s ease,border-color .25s ease,background .25s ease
}
.elementor-page-328 .elementor-widget-text-editor h2+p:hover,
.elementor-page-328 .elementor-widget-text-editor h2+p+p:hover,
.elementor-page-328 .elementor-widget-text-editor h2+p+p+p:hover{transform:translateY(-5px);border-color:var(--aft-lime)!important;background:#20241a!important}
.elementor-page-328 .elementor-widget-text-editor h2+p strong,
.elementor-page-328 .elementor-widget-text-editor h2+p+p strong,
.elementor-page-328 .elementor-widget-text-editor h2+p+p+p strong{font:600 30px/1.05 var(--aft-display)!important;color:var(--aft-cream)!important}
/* Writing — feature-led editorial archive */
.elementor-page-330 .elementor > .e-con:first-child{min-height:420px}
.elementor-page-330 .elementor > .e-con:nth-child(2){background:var(--aft-panel);border-block:1px solid var(--aft-rule)}
.elementor-page-330 .elementor > .e-con:nth-child(2) .elementor-widget-text-editor p{font:500 clamp(22px,2.5vw,31px)/1.35 var(--aft-reading)!important;color:var(--aft-cream)!important}
.aft-writing-archive{position:relative}
.aft-writing-archive:before{content:"FIELD NOTES / TRANSMISSIONS";display:block;max-width:1180px;margin:0 auto;padding:42px 28px 0;color:var(--aft-lime);font:500 10px var(--aft-code);letter-spacing:.16em}
.aft-writing-card{position:relative;min-height:300px;transition:background .25s ease}
.aft-writing-card:before{content:"";position:absolute;top:0;left:0;width:36px;height:3px;background:var(--aft-coral)}
.aft-writing-card:hover{background:#25291f!important}
.aft-writing-card h3{font-size:clamp(26px,3vw,36px)!important}
.aft-writing-card p{font-size:15px!important}
.aft-writing-card-link{color:var(--aft-lime)!important}
/* CV — compact dossier */
.elementor-page-332 .aft-cv-grid>div,.elementor-page-332 .aft-cv-four>div{
 position:relative;background:var(--aft-panel);transition:background .2s ease,transform .2s ease
}
.elementor-page-332 .aft-cv-grid>div:hover,.elementor-page-332 .aft-cv-four>div:hover{background:#272b20;transform:translateY(-3px)}
.elementor-page-332 .aft-cv-grid span,.elementor-page-332 .aft-cv-four strong{font-family:var(--aft-code)!important;color:var(--aft-lime)!important}
.elementor-page-332 .elementor-widget-button .elementor-button{padding:15px 22px!important}
/* Project detail pages — visual case-study frame */
.elementor-page-345 .elementor > .e-con:first-child,
.elementor-page-347 .elementor > .e-con:first-child,
.elementor-page-349 .elementor > .e-con:first-child,
.elementor-page-351 .elementor > .e-con:first-child{max-width:1180px;margin:0 auto;padding:clamp(70px,9vw,120px) 28px 70px;position:relative}
.elementor-page-345 .elementor > .e-con:not(:first-child),
.elementor-page-347 .elementor > .e-con:not(:first-child),
.elementor-page-349 .elementor > .e-con:not(:first-child),
.elementor-page-351 .elementor > .e-con:not(:first-child){max-width:1180px;margin:0 auto;padding:42px 28px;border-top:1px solid var(--aft-rule)}
.elementor-page-345 .elementor-heading-title,.elementor-page-347 .elementor-heading-title,
.elementor-page-349 .elementor-heading-title,.elementor-page-351 .elementor-heading-title{font-size:clamp(38px,5vw,66px)!important;line-height:.98!important}
.elementor-page-345 .elementor-widget-text-editor figure,
.elementor-page-347 .elementor-widget-text-editor figure,
.elementor-page-349 .elementor-widget-text-editor figure,
.elementor-page-351 .elementor-widget-text-editor figure{margin:28px 0!important;padding:25px!important;background:var(--aft-panel)!important;border:1px solid var(--aft-rule)!important;border-left:3px solid var(--aft-lime)!important;border-radius:0!important}
.elementor-page-345 .elementor-widget-text-editor figure div,
.elementor-page-347 .elementor-widget-text-editor figure div,
.elementor-page-349 .elementor-widget-text-editor figure div,
.elementor-page-351 .elementor-widget-text-editor figure div{background:#24271f!important;color:var(--aft-cream)!important;border-radius:0!important}
.elementor-page-345 .elementor-widget-text-editor figure figcaption,
.elementor-page-347 .elementor-widget-text-editor figure figcaption,
.elementor-page-349 .elementor-widget-text-editor figure figcaption,
.elementor-page-351 .elementor-widget-text-editor figure figcaption{font:500 10px var(--aft-code)!important;letter-spacing:.13em;text-transform:uppercase;color:var(--aft-lime)!important}
/* Contact pages */
.elementor-page-334 .elementor,.elementor-page-359 .elementor{max-width:1180px;margin:0 auto;padding:clamp(70px,10vw,130px) 28px 120px}
.elementor-page-334 .elementor-heading-title,.elementor-page-359 .elementor-heading-title{font-size:clamp(58px,9vw,112px)!important;line-height:.9!important;letter-spacing:-.07em!important}
.elementor-page-334 .elementor-widget-form,.elementor-page-359 .elementor-widget-form{max-width:680px;padding:clamp(22px,4vw,42px);background:var(--aft-panel);border:1px solid var(--aft-rule);border-top:3px solid var(--aft-lime)}
.elementor-page-334 input,.elementor-page-334 textarea,.elementor-page-359 input,.elementor-page-359 textarea{background:#10110f!important;border:1px solid var(--aft-rule)!important;border-radius:0!important;color:var(--aft-cream)!important}
.elementor-page-334 button,.elementor-page-359 button{border-radius:0!important}
/* Article pages: make long reads feel like a printed journal */
.aft-article-hero-inner{padding-top:clamp(80px,11vw,145px)!important;padding-bottom:clamp(65px,8vw,100px)!important}
.aft-article-title{max-width:1000px!important;font-size:clamp(52px,8vw,108px)!important;line-height:.9!important}
.aft-article-dek{max-width:760px!important;font-size:clamp(23px,2.7vw,34px)!important}
.aft-prose blockquote{margin:2.2em 0;padding:8px 0 8px 28px;border-left:3px solid var(--aft-coral);font:500 27px/1.35 var(--aft-reading);color:var(--aft-cream)}
.aft-prose img{border:1px solid var(--aft-rule)}
.aft-prose hr{border:0;border-top:1px solid var(--aft-rule);margin:3em 0}
/* Motion with reduced-motion respect */
@media(prefers-reduced-motion:no-preference){
 .elementor-page-232 .elementor > .e-con:not(:first-child),
 .elementor-page-324 .elementor > .e-con:not(:first-child),
 .elementor-page-326 .elementor > .e-con:not(:first-child),
 .elementor-page-328 .elementor > .e-con:not(:first-child),
 .elementor-page-330 .elementor > .e-con:not(:first-child),
 .elementor-page-332 .elementor > .e-con:not(:first-child){animation:aft-rise .65s both;animation-timeline:view();animation-range:entry 0% entry 22%}
 @keyframes aft-rise{from{opacity:.45;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
}
@media(max-width:720px){
 .elementor-page-232 .elementor > .e-con:first-child,.elementor-page-324 .elementor > .e-con:first-child,
 .elementor-page-326 .elementor > .e-con:first-child,.elementor-page-328 .elementor > .e-con:first-child,
 .elementor-page-330 .elementor > .e-con:first-child,.elementor-page-332 .elementor > .e-con:first-child{min-height:0}
 .elementor-page-232 .elementor > .e-con:first-child:after,.elementor-page-324 .elementor > .e-con:first-child:after,
 .elementor-page-326 .elementor > .e-con:first-child:after,.elementor-page-328 .elementor > .e-con:first-child:after,
 .elementor-page-330 .elementor > .e-con:first-child:after,.elementor-page-332 .elementor > .e-con:first-child:after{width:120px;right:5px;top:18%}
 .elementor-page-232 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
 .elementor-page-324 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
 .elementor-page-326 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
 .elementor-page-328 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
 .elementor-page-330 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
 .elementor-page-332 .elementor > .e-con:first-child .elementor-widget-heading .elementor-heading-title{font-size:clamp(48px,14vw,76px)!important}
 .elementor-page-324 .aft-role{grid-template-columns:1fr;gap:12px}
 .elementor-page-328 .elementor-widget-text-editor h2+p,.elementor-page-328 .elementor-widget-text-editor h2+p+p,.elementor-page-328 .elementor-widget-text-editor h2+p+p+p{min-height:0}
 .elementor-page-334 .elementor,.elementor-page-359 .elementor{padding:65px 20px 80px}
 .aft-article-title{font-size:clamp(46px,13vw,72px)!important}
}
