/*
Theme Name: Arsalan Portfolio
Author: Arsalan Nadeem
Description: Lightweight custom portfolio with projects, testimonials and experience editing. No page builder required.
Version: 1.0.0
Requires at least: 6.3
Requires PHP: 7.4
Text Domain: arsalan-portfolio
*/
@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700;750;800&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#111310;--panel:#1a1e17;--line:#343a2d;--text:#eeeede;--muted:#9ba391;--lime:#d2fb69;--pad:60px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}::selection{background:var(--lime);color:var(--bg)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--lime);outline-offset:5px}.wrap{width:calc(100% - var(--pad)*2);max-width:1520px;margin:auto}.mono,.eyebrow,.tags{font-family:'Space Grotesk',monospace;font-size:12px;font-weight:500;letter-spacing:.08em}.eyebrow{color:var(--lime);margin:0 0 30px}.progress{position:fixed;top:0;height:2px;background:var(--lime);width:0;z-index:30}header{height:84px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#111310f5;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:650;letter-spacing:.16em;line-height:1.4}.monogram{font-family:'Space Grotesk',sans-serif;font-size:36px;font-weight:700;letter-spacing:-.09em;position:relative}.monogram span{font-size:20px;color:var(--lime);position:relative;top:-10px;margin-left:3px}nav{display:flex;align-items:center;gap:40px;font-size:13px}nav a:hover{color:var(--lime)}nav sup{font-size:12px;color:var(--muted);margin-left:4px}.nav-contact{padding:10px 0 10px 28px;border-left:1px solid var(--line)}.nav-contact span{margin-left:20px;color:var(--lime)}.menu{display:none}.hero{overflow:hidden}.hero-top{display:flex;justify-content:space-between;color:var(--muted);padding-top:27px}.hero-top b{margin-left:12px;color:var(--text);font-weight:400}.hero-stage{height:clamp(420px,41vw,650px);position:relative;margin-top:20px}.hero-guides{position:absolute;inset:0;background:linear-gradient(90deg,transparent calc(25% - 1px),#363e282e 25%,transparent calc(25% + 1px),transparent calc(50% - 1px),#363e282e 50%,transparent calc(50% + 1px),transparent calc(75% - 1px),#363e282e 75%,transparent calc(75% + 1px));border-inline:1px solid #363e282e}.hero-title{margin:0;font-weight:650;font-size:clamp(125px,15vw,228px);line-height:.86;letter-spacing:-.082em;position:absolute;inset:0}.title-first{position:absolute;top:2%;left:-.015em;z-index:1}.title-small{position:absolute;font-size:.35em;line-height:1;top:47%;left:25%;letter-spacing:-.065em;font-weight:500;color:var(--muted)}.title-last{position:absolute;bottom:4%;left:-.015em;font-size:.76em;color:var(--lime);z-index:4;letter-spacing:-.067em;white-space:nowrap}.title-last>span{font-size:.54em;display:inline-block;vertical-align:middle;margin-left:22px;animation:rotate 30s linear infinite}.portrait{position:absolute;right:10%;top:2%;width:32%;height:88%;transform:rotate(6deg);z-index:2;isolation:isolate;transition:transform .6s cubic-bezier(.2,.8,.2,1);will-change:transform}.portrait-field{position:absolute;inset:0;background:#7b8558;clip-path:polygon(0 0,87% 0,100% 12%,100% 100%,0 100%)}.portrait-field:after{content:'';position:absolute;inset:14px;border:1px solid #c7da9250}.portrait img{position:absolute;width:106%;max-width:none;height:110%;object-fit:contain;object-position:bottom;left:-3%;bottom:0;filter:saturate(.4) contrast(1.03);z-index:2}.portrait-index{position:absolute;top:15px;left:18px;color:#e7edd5;font-size:12px;z-index:3}.portrait-caption{position:absolute;z-index:3;left:-20px;bottom:50px;display:flex;flex-direction:column;background:var(--text);color:var(--bg);padding:11px 18px;transform:rotate(-6deg);font-size:12px;letter-spacing:.1em}.portrait-caption span:last-child{font-size:12px;color:#525943}.hero-side{position:absolute;right:-9px;top:13%;writing-mode:vertical-rl;color:var(--muted);font-size:12px;letter-spacing:.2em}.hero-bottom{display:grid;grid-template-columns:1fr 1fr 160px;gap:55px;align-items:center;padding:15px 0 30px}.hero-id{display:flex;align-items:center;gap:22px}.hero-id p{font-size:15px;line-height:1.5}.cross{font-size:54px;color:var(--muted);line-height:1}.intro{color:var(--muted);max-width:390px;margin:0;font-size:15px;line-height:1.8}.round-cta{border:1px solid #7b8957;width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:11px;justify-self:end;transform:rotate(-12deg);transition:.3s}.round-cta span{font-size:12px;font-family:'Space Grotesk',sans-serif;line-height:1.5}.round-cta b{font-size:30px;color:var(--lime);font-weight:400}.round-cta:hover{background:var(--lime);color:var(--bg);transform:rotate(0)}.round-cta:hover b{color:var(--bg)}.hero-foot{border-top:1px solid var(--line);padding:19px 0;display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.work-section{height:310vh;background:#e6e8db;color:#151910;position:relative;margin-top:35px}.work-sticky{position:sticky;top:84px;height:calc(100vh - 84px);min-height:650px;overflow:hidden;padding:34px 0 20px;display:flex;flex-direction:column}.work-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.work-header h2{font-size:clamp(45px,5vw,75px);line-height:.98}.work-header h2 em{color:#7d866b}.work-header .eyebrow{color:#525c44;font-size:12px;margin-bottom:14px}.work-tools{display:flex;flex-direction:column;align-items:flex-end;gap:23px}.filters{display:flex;gap:5px}.filters button{background:transparent;color:#626d53;border:0;padding:9px 15px;font-size:12px}.filters .active{background:#1e2517;color:#eef5df}.filters sup{font-size:12px;margin-left:5px}.work-controls{display:flex;align-items:center;gap:8px}.work-controls>span{margin-right:25px;font-size:12px;color:#69725b}.work-controls button{width:37px;height:37px;border:1px solid #b2b8a7;background:none;color:#1e2517;font-size:20px}.work-controls button:hover{background:#d2fb69}.rail-window{overflow:hidden;flex:1;min-height:0}.projects{display:flex;gap:26px;padding:0 var(--pad);width:max-content;height:100%;will-change:transform}.project{width:min(65vw,900px);height:100%;display:flex;flex-direction:column;flex-shrink:0;position:relative}.project[hidden]{display:none}.project-image{flex:1;min-height:0;display:block;position:relative;overflow:hidden;background:#c7caba}.project-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .6s;filter:saturate(.5)}.project:hover img{transform:scale(1.055);filter:saturate(1)}.project-image:after{content:'OPEN PROJECT ↗';position:absolute;right:25px;bottom:25px;border-radius:50%;width:95px;height:95px;display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:.04em;background:var(--lime);color:#151910;opacity:0;transform:rotate(-15deg) scale(.8);transition:.3s}.project-image:hover:after,.project-image:focus-visible:after{opacity:1;transform:rotate(0) scale(1)}.project-info{display:flex;align-items:center;justify-content:space-between;padding:15px 0 8px;gap:20px}.project-info>div{display:flex;align-items:baseline;gap:22px}.project h3{font-size:27px;line-height:1.2;letter-spacing:-.035em;font-weight:550;margin:0}.project p{color:#636d58;font-size:12px;margin:0}.project-arrow{font-size:30px;line-height:1}.work-bottom{padding-top:22px;display:flex;gap:30px;align-items:center}.work-bottom .mono{font-size:12px;color:#647056}.work-meter{height:2px;flex:1;background:#bcc3af}.work-meter i{height:100%;display:block;width:0;background:#222c17}.section{padding-top:125px;padding-bottom:125px}h2{font-size:clamp(42px,5.1vw,78px);font-weight:500;letter-spacing:-.065em;line-height:1.06;margin:0}h2 em{font-style:normal;color:var(--lime)}.muted{color:var(--muted)}.about{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:100px;align-items:center}.about h2{font-size:clamp(42px,5.6vw,85px);line-height:1.11}.about-sign{margin-top:50px}.signature{font-family:'Space Grotesk',sans-serif;font-size:36px;letter-spacing:-.07em;color:var(--text);display:block;transform:rotate(-7deg);transform-origin:left}.about-sign>span:last-child{display:block;font-size:12px;letter-spacing:.16em;margin-top:20px;color:var(--muted)}.large-copy{font-size:27px;line-height:1.4;letter-spacing:-.035em;margin:0 0 24px}.about-body>p:not(.large-copy){color:var(--muted);font-size:15px;line-height:1.85}.facts{margin-top:35px}.facts>div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:15px 0;gap:20px;font-size:12px}.facts span{font-family:'Space Grotesk',sans-serif;font-size:12px;color:var(--muted);letter-spacing:.08em}.facts b{font-weight:400}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:55px}.section-heading p:not(.eyebrow){color:var(--muted);font-size:14px;margin:0 0 8px}.services{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);transition:background .25s}details[open]{background:#1b2016}summary{display:flex;align-items:center;gap:35px;padding:30px 25px;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary .mono{color:var(--muted);width:35px}summary h3{font-size:clamp(22px,3.2vw,46px);letter-spacing:-.05em;line-height:1.25;font-weight:450;margin:0}.plus{margin-left:auto;font-size:38px;color:var(--muted);font-weight:300}details[open] .plus{transform:rotate(45deg);color:var(--lime)}details[open] summary h3{color:var(--lime)}.service-content{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;padding:0 40px 35px 95px}.service-content p{color:var(--muted);font-size:15px;margin:0;max-width:540px}.tags{font-size:12px;align-self:end;line-height:2;color:var(--text)}.stack{display:flex;gap:28px;align-items:center;justify-content:space-between;padding:35px 0 0;font-size:12px;flex-wrap:wrap}.stack>span{color:var(--muted);font-size:12px}.stack b{font-weight:500;letter-spacing:-.03em;font-family:'DM Sans',sans-serif;font-size:20px}.experience{padding-top:0}.experience .section-heading{margin-bottom:35px}.experience h2{font-size:45px}.background-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.background-grid article{padding:35px 30px;border-right:1px solid var(--line)}.background-grid article:first-child{padding-left:0}.background-grid article:last-child{border:0}.background-grid .eyebrow{font-size:12px;margin-bottom:22px}.background-grid h3{font-size:21px;font-weight:500;line-height:1.3;margin:0}.background-grid p:not(.eyebrow){color:var(--muted);font-size:13px}.background-grid .mono{font-size:12px}.quote-section{background:var(--lime);color:#1a220e;padding:90px 0;position:relative;overflow:hidden}.quote-section .eyebrow{color:#4f602e}.quote-layout{display:grid;grid-template-columns:1fr 6fr;gap:30px}.quote-mark{font-size:170px;line-height:1;font-family:Georgia,serif}.quote-layout blockquote{font-size:clamp(35px,5vw,76px);letter-spacing:-.065em;line-height:1.15;margin:0 0 40px;max-width:1100px}.quote-by{display:flex;justify-content:space-between;align-items:center;font-size:14px}.quote-by small{display:block;margin-top:6px;font-size:12px}.quote-by .mono{font-size:12px}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:110px}.contact h2{font-size:clamp(45px,5.8vw,88px);font-weight:550;line-height:.99;letter-spacing:-.065em}.contact h2 a:hover{color:var(--lime)}.contact p{color:var(--muted);margin-top:30px;font-size:15px}.email{font-size:20px;border-bottom:1px solid var(--line);padding-bottom:4px;display:inline-block}.phone{display:block;color:var(--muted);font-size:14px;margin-top:14px}form{padding:10px 0 0}label{display:block;font-size:12px;margin-bottom:26px;color:#bac3ac}input,textarea,select{width:100%;border:0;border-bottom:1px solid #46503b;padding:13px 0;background:transparent;color:var(--text);border-radius:0;outline:none;font-size:15px}select{background:var(--bg)}input:focus,textarea:focus,select:focus{border-color:var(--lime)}textarea{resize:vertical;min-height:90px}.button{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:18px 22px;font-size:14px;border:0;font-weight:600;transition:.2s}.primary{background:var(--lime);color:#17200e}.primary:hover{background:#ddffa3;transform:translateY(-3px)}.button span{font-size:22px;line-height:1}form .button{width:100%}.contact .form-note{font-size:12px;margin-top:12px}.closing-type{font-size:22vw;line-height:.77;font-weight:650;letter-spacing:-.07em;color:#2a3022;text-align:center;overflow:hidden;padding-top:10px;white-space:nowrap}.closing-type>span{font-size:.15em;vertical-align:top;display:inline-block;line-height:1.3;margin-left:.2em}footer{display:flex;justify-content:space-between;align-items:center;padding-top:30px;padding-bottom:30px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.skip{position:fixed;top:-100px;left:20px;z-index:40;background:var(--lime);color:#111;padding:15px}.skip:focus{top:10px}.reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}.js-motion .reveal:not(.visible){opacity:0;transform:translateY(40px)}.hero-title>span{animation:arrive 1.2s cubic-bezier(.2,.8,.2,1) both}.hero-title .title-small{animation-delay:.13s}.hero-title .title-last{animation-delay:.23s}.portrait{animation:portrait-in 1.3s .15s both}@keyframes arrive{from{opacity:0;translate:0 60px;clip-path:inset(0 0 100% 0)}to{opacity:1;translate:0 0;clip-path:inset(0 0 0 0)}}@keyframes portrait-in{from{opacity:0;translate:0 50px;rotate:-5deg}to{opacity:1;translate:0 0;rotate:0deg}}@keyframes rotate{to{rotate:360deg}}
@media(min-width:1700px){.hero-stage{height:650px}.hero-title{font-size:228px}}@media(max-height:820px) and (min-width:901px){.work-sticky{min-height:560px}.work-header h2{font-size:48px}.work-header{margin-bottom:18px}.work-sticky{padding-top:24px}.work-tools{gap:12px}.work-bottom{padding-top:14px}.project h3{font-size:23px}}@media(max-width:1100px){:root{--pad:35px}.hero-stage{height:440px}.hero-title{font-size:15vw}.title-small{top:43%}.portrait{right:8%;width:35%;height:85%}.hero-bottom{gap:30px;grid-template-columns:1fr 1fr 120px}.hero-id{gap:15px}.round-cta{width:105px;height:105px}.about-grid,.contact{gap:50px}.project-info>div{display:block}.project p{margin-top:5px}.service-content{gap:30px}.stack{justify-content:flex-start}.about h2{font-size:54px}}
@media(max-width:900px){.work-section{height:auto!important}.work-sticky{position:relative;top:0;height:auto;min-height:0;padding-top:50px;padding-bottom:30px}.rail-window{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.rail-window::-webkit-scrollbar{display:none}.projects{transform:none!important;height:auto;padding-right:var(--pad)}.project{width:80vw;height:auto;scroll-snap-align:center}.project-image{aspect-ratio:4/3;flex:auto}.work-tools{gap:10px}.work-controls>span{display:none}.work-bottom{margin-top:15px}.work-header h2{font-size:52px}.work-header{align-items:flex-end}.section{padding-top:85px;padding-bottom:85px}.experience{padding-top:0}.about-grid{gap:45px}.about h2{font-size:47px}.about-body .large-copy{font-size:24px}.background-grid h3{font-size:18px}.background-grid article{padding:28px 20px}.contact h2{font-size:58px}.contact{gap:40px}}
@media(max-width:650px){:root{--pad:22px}html{scroll-padding-top:72px}header{height:72px}.brand{font-size:12px;gap:10px}.monogram{font-size:30px}.menu{display:block;border:1px solid var(--line);background:none;color:var(--text);padding:9px 13px;font-size:12px}nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--bg);padding:24px;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:24px}.nav-contact{padding-left:0;border:0}.hero-top{font-size:12px;padding-top:22px}.hero-top>span:last-child{display:none}.hero-stage{margin-top:26px;height:440px}.hero-title{font-size:23vw;line-height:.9}.title-first{top:0;left:0}.title-small{top:37%;left:1%;font-size:.5em;writing-mode:vertical-rl;transform:rotate(180deg)}.title-last{bottom:5%;font-size:.6em;letter-spacing:-.068em;left:0}.title-last>span{margin-left:7px;font-size:.5em}.portrait{right:7%;top:21%;width:65%;height:67%;transform:rotate(7deg)}.portrait img{height:114%;width:106%}.portrait-index{font-size:12px;left:10px;top:10px}.portrait-caption{left:-8px;bottom:38px;padding:8px 12px;font-size:12px}.portrait-caption span:last-child{font-size:12px}.hero-side{right:0;top:29%;font-size:12px}.hero-bottom{display:grid;grid-template-columns:1fr 92px;gap:18px;padding:0 0 27px}.hero-id{display:none}.intro{font-size:13px;line-height:1.75;max-width:290px}.round-cta{width:86px;height:86px;gap:7px}.round-cta span{font-size:12px}.round-cta b{font-size:23px}.hero-foot{font-size:12px;gap:10px;padding:15px 0}.work-section{margin-top:20px}.work-header{display:block;margin-bottom:23px}.work-header h2{font-size:51px}.work-tools{flex-direction:row;justify-content:space-between;align-items:center;margin-top:25px;gap:8px}.filters{gap:0}.filters button{padding:8px 10px;font-size:12px}.work-controls{gap:5px}.work-controls button{width:30px;height:30px;font-size:16px}.projects{gap:15px}.project{width:84vw}.project h3{font-size:22px}.project p{font-size:12px}.project-image:after{opacity:1;transform:none;width:65px;height:65px;font-size:12px;right:15px;bottom:15px}.work-bottom{gap:14px}.work-bottom>.mono:first-child{display:none}.work-bottom .mono{font-size:12px}.section{padding-top:70px;padding-bottom:70px}.section-heading{display:block;margin-bottom:30px}.section-heading p:not(.eyebrow){margin-top:22px;font-size:13px}h2{font-size:47px}.eyebrow{font-size:12px;margin-bottom:22px}.about-grid,.contact{grid-template-columns:1fr;gap:40px}.about h2{font-size:52px}.about-sign{margin-top:30px}.signature{font-size:30px}.about-sign>span:last-child{font-size:12px}.about-body>p:not(.large-copy){font-size:14px}.facts>div{font-size:12px}.facts span{font-size:12px}summary{gap:10px;padding:24px 13px}summary h3{font-size:24px}summary .mono{font-size:12px;width:22px;flex-shrink:0}.plus{font-size:27px}.service-content{display:block;padding:0 18px 25px 45px}.service-content p{font-size:13px;margin-bottom:20px}.tags{font-size:12px}.stack{gap:18px;padding-top:27px}.stack>span{width:100%;font-size:12px}.stack b{font-size:17px}.experience{padding-top:0}.experience h2{font-size:40px}.background-grid{grid-template-columns:1fr;border-bottom:0}.background-grid article,.background-grid article:first-child{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.background-grid article:last-child{border-bottom:1px solid var(--line)}.background-grid h3{font-size:21px}.background-grid .eyebrow{margin-bottom:13px}.quote-section{padding:55px 0}.quote-layout{grid-template-columns:30px 1fr;gap:10px}.quote-mark{font-size:65px}.quote-layout blockquote{font-size:36px;margin-bottom:30px}.quote-by{font-size:12px}.quote-by small{font-size:12px}.quote-by .mono{display:none}.contact h2{font-size:55px}.contact{gap:40px}.email{font-size:18px}.contact p{font-size:14px}.closing-type{font-size:22vw}footer{gap:15px;font-size:12px}footer .monogram{font-size:25px}.reveal{transition-duration:.5s}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal:not(.visible){opacity:1;transform:none}.work-section{height:auto!important}.work-sticky{position:relative;top:0;height:auto;min-height:0}.rail-window{overflow-x:auto}.projects{transform:none!important;height:auto}.project{height:auto}.project-image{aspect-ratio:4/3;flex:auto}}

/* Readable interface text at every breakpoint. */
.intro,.hero-id p,.about-body>p:not(.large-copy),.service-content p,.contact p{font-size:16px}label{font-size:14px}input,textarea,select{font-size:16px}nav,.filters button,.button{font-size:14px}.project p{font-size:13px}.hero-foot{flex-wrap:wrap}.work-bottom .mono{font-size:12px}@media(max-width:650px){.hero-top{font-size:12px}.hero-bottom{grid-template-columns:1fr 86px;gap:14px}.intro{font-size:15px}.round-cta span{font-size:10px}.portrait-index{font-size:9px}.portrait-caption{font-size:10px}.portrait-caption span:last-child{font-size:9px}.hero-side{font-size:9px}.hero-foot{font-size:10px}.filters button{font-size:12px}.project-image:after{font-size:9px}.work-bottom .mono{font-size:11px}.about-sign>span:last-child{font-size:11px}.tags{font-size:12px}footer{flex-wrap:wrap;font-size:12px}.contact .form-note{font-size:12px}}

/* Refined typography and editorial project collection. */

h1,h2,h3{font-family:'Space Grotesk','DM Sans',Arial,sans-serif}h2{font-weight:400;letter-spacing:-.055em;line-height:1.13}.hero-title{font-weight:500;letter-spacing:-.075em}.title-first{font-size:1.04em;letter-spacing:-.085em}.title-small{font-size:.36em;letter-spacing:-.07em;top:45%}.title-last{font-size:.8em;letter-spacing:-.08em}.title-last>span{font-size:.47em;margin-left:13px}.section-heading h2 em{color:var(--muted)}.about h2{font-weight:400;letter-spacing:-.065em}.about-body .large-copy{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(33px,3.55vw,55px);font-weight:400;letter-spacing:-.025em;line-height:1.15;margin-bottom:34px}.large-copy em{font-weight:400;color:var(--lime)}.about-body{border-left:1px solid var(--line);padding-left:42px}.about-grid{gap:65px;grid-template-columns:1.1fr 1fr}.contact h2{font-weight:400;letter-spacing:-.07em;line-height:1.06}
.work-section{height:auto;background:#171b15;color:var(--text);margin-top:30px;border-block:1px solid var(--line);overflow:hidden}.work-header{display:flex;justify-content:space-between;align-items:flex-end;width:100%;margin-bottom:45px}.work-header .eyebrow{color:var(--lime);font-size:12px;margin-bottom:22px}.work-header h2{font-size:clamp(47px,6vw,90px);font-weight:400;line-height:1.08;letter-spacing:-.065em}.work-header h2 em{color:var(--muted)}.work-intro{font-size:16px;color:var(--muted);margin:22px 0 0}.collection-number{font-family:'Space Grotesk',sans-serif;font-size:110px;font-weight:400;letter-spacing:-.09em;line-height:.95;color:#626f51;display:block;padding-right:10px}.collection-number>span{display:block;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:.06em;margin-top:15px;color:var(--muted)}.portfolio-toolbar{display:flex;justify-content:space-between;align-items:center;border-block:1px solid #343e2c;padding:17px 0;margin-bottom:50px;gap:20px}.filters{gap:24px}.filters button{padding:7px 0;border:0;background:none;color:var(--muted);font-size:14px;position:relative}.filters .active{background:none;color:var(--lime)}.filters button:after{content:'';position:absolute;left:0;right:0;bottom:-18px;height:2px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .25s}.filters .active:after{transform:scaleX(1)}.portfolio-toolbar>.mono{font-size:12px;color:var(--muted)}.projects{display:grid;grid-template-columns:1.08fr 1fr;column-gap:44px;row-gap:65px;padding:0 0 90px;width:100%;height:auto;transform:none!important;will-change:auto}.project{width:auto;height:auto;display:block;min-width:0}.project-offset{margin-top:80px;margin-bottom:-80px}.project-image{display:block;aspect-ratio:4/3;min-height:0;background:#242b20;border:1px solid #3d4734;position:relative;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:contain;filter:saturate(.78);transform:scale(1);transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .6s}.project:hover img{transform:scale(1.035);filter:saturate(1)}.project-image:after{display:none}.project-index{position:absolute;top:16px;left:16px;z-index:2;background:#10150fde;color:#e3edd6;font-family:'Space Grotesk',sans-serif;font-size:10px;letter-spacing:.1em;padding:7px 10px}.project-open{position:absolute;bottom:18px;right:18px;background:var(--lime);color:#1b2512;font-size:12px;padding:10px 14px;display:flex;align-items:center;gap:25px;opacity:0;transform:translateY(10px);transition:opacity .25s,transform .25s}.project-open b{font-size:19px;font-weight:400;line-height:1}.project-image:hover .project-open,.project-image:focus-visible .project-open{opacity:1;transform:none}.project-info{padding-top:20px;align-items:center}.project-info>div{display:block}.project-info p{font-size:12px;color:var(--muted);margin:0 0 5px}.project h3{font-size:clamp(24px,2.6vw,36px);font-weight:400;letter-spacing:-.05em}.project-arrow{width:43px;height:43px;border:1px solid #435036;border-radius:50%;display:grid;place-items:center;font-size:22px;transition:.25s}.project-arrow:hover{background:var(--lime);color:var(--bg)}
.expertise-section{background:#10140f;border-bottom:1px solid var(--line);margin-bottom:100px}.expertise-section .section-heading{align-items:flex-end;margin-bottom:55px}.expertise-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.expertise-card{background:#1a2017;border:1px solid #34402b;padding:35px 38px;display:flex;flex-direction:column;min-height:375px;position:relative;transition:border-color .3s,transform .3s,background .3s}.expertise-card:hover{border-color:#819858;transform:translateY(-5px)}.expertise-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:35px;color:var(--lime)}.expertise-top .mono{font-size:12px}.expertise-top svg{flex-shrink:0;opacity:.85}.expertise-card h3{font-size:clamp(30px,3.1vw,47px);font-weight:400;line-height:1.09;letter-spacing:-.06em;margin:0 0 22px}.expertise-card>p{font-size:16px;color:var(--muted);line-height:1.7;margin:0 0 30px;max-width:440px}.expertise-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #38452e;padding-top:23px;margin-top:auto}.expertise-bottom .tags{font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:0;color:#c1cfad}.service-enquiry{border:1px solid #64794b;background:none;color:var(--lime);border-radius:50%;width:44px;height:44px;display:grid;place-items:center;font-size:25px;flex-shrink:0;transition:.25s}.service-enquiry:hover{background:var(--lime);color:var(--bg);transform:rotate(45deg)}.expertise-featured{background:#d2e5a2;border-color:#d2e5a2;color:#1c2b13}.expertise-featured .expertise-top{color:#3a512a}.expertise-featured>p{color:#455735}.expertise-featured .expertise-bottom{border-color:#9fb87b}.expertise-featured .tags{color:#3d552b}.expertise-featured .service-enquiry{color:#263b19;border-color:#718d50}.expertise-featured .service-enquiry:hover{background:#263b19;color:#e9f6d6}.expertise-section .stack{padding-top:45px;gap:25px}.expertise-section .stack b{font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:400}.expertise-section .stack>span{font-size:12px}
@media(max-width:1100px){.about-grid{gap:40px}.about-body{padding-left:30px}.projects{column-gap:30px}.expertise-card{padding:28px}.expertise-card h3{font-size:36px}.expertise-top{margin-bottom:27px}.title-last{font-size:.8em}}
@media(max-width:900px){.work-section{padding-top:80px;padding-bottom:80px}.work-header h2{font-size:57px}.projects{display:grid;height:auto;padding:0 0 70px;gap:40px 25px}.project{width:auto;height:auto}.project-offset{margin-top:60px;margin-bottom:-60px}.project-image{aspect-ratio:4/3;flex:none}.project h3{font-size:25px}.project-info p{font-size:11px}.project-open{opacity:1;transform:none;font-size:11px;padding:8px 10px;gap:14px;right:12px;bottom:12px}.expertise-card h3{font-size:31px}.expertise-card>p{font-size:16px}.expertise-bottom{gap:10px}.expertise-bottom .tags{font-size:12px}.expertise-top .mono{font-size:11px}.expertise-section{margin-bottom:80px}.about-body .large-copy{font-size:37px}}
@media(max-width:650px){.title-first{font-size:1.02em;letter-spacing:-.085em}.title-small{font-size:.49em;top:37%;letter-spacing:-.055em}.title-last{font-size:.61em;letter-spacing:-.08em}.title-last>span{font-size:.44em;margin-left:6px}.work-section{padding-top:65px;padding-bottom:65px}.work-header{display:block;margin-bottom:27px}.work-header h2{font-size:49px;line-height:1.06}.work-intro{font-size:15px;margin-top:20px}.collection-number{display:none}.portfolio-toolbar{padding:14px 0;margin-bottom:30px;gap:12px}.filters{gap:19px}.filters button{font-size:12px;padding:6px 0}.filters button:after{bottom:-15px}.portfolio-toolbar>.mono{font-size:10px}.projects{display:grid;grid-template-columns:1fr;gap:35px;padding:0}.project-offset{margin:0}.project h3{font-size:28px}.project-info{padding-top:16px}.project-info p{font-size:12px}.project-index{font-size:9px;top:12px;left:12px;padding:6px 8px}.project-open{font-size:12px}.about-grid{grid-template-columns:1fr;gap:35px}.about-body{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.about-body .large-copy{font-size:40px;line-height:1.16;letter-spacing:-.025em;margin-bottom:26px}.about h2{font-size:49px}.expertise-section{margin-bottom:65px}.expertise-section .section-heading{margin-bottom:30px}.expertise-section h2{font-size:43px}.expertise-grid{grid-template-columns:1fr;gap:16px}.expertise-card{padding:28px 25px;min-height:0}.expertise-top{margin-bottom:27px}.expertise-card h3{font-size:37px}.expertise-card>p{font-size:16px;line-height:1.65;margin-bottom:26px}.expertise-top .mono{font-size:12px}.expertise-bottom .tags{font-size:12px}.expertise-top svg{width:38px;height:38px}.expertise-section .stack{padding-top:32px;gap:20px}.expertise-section .stack b{font-size:18px}.expertise-section .stack>span{font-size:11px}.contact h2{font-size:54px}}
@media(prefers-reduced-motion:reduce){.projects{display:grid!important;transform:none!important}.project-image{flex:none}.expertise-card:hover{transform:none}}
.hero-title .title-first{line-height:1.02;top:-4%}.hero-title .title-last{line-height:1.02;bottom:0}.expertise-top .mono{line-height:1.4}@media(max-width:650px){.hero-title .title-first{top:-3%}.hero-title .title-last{bottom:3%}}

/* Hero typography with a clear two-line rhythm. */
.hero-stage{height:clamp(400px,37vw,560px);margin-top:35px}.hero-title{font-family:'DM Sans',Arial,sans-serif;font-weight:500;font-size:clamp(70px,9vw,142px);letter-spacing:-.065em}.hero-title .title-first{top:13%;left:0;font-size:1em;letter-spacing:-.065em;line-height:1.1}.hero-title .title-small{top:44%;left:4px;font-size:clamp(16px,1.7vw,24px);letter-spacing:-.025em;line-height:1.4;font-weight:400;writing-mode:horizontal-tb;transform:none}.hero-title .title-last{bottom:19%;left:0;font-size:.73em;line-height:1.1;letter-spacing:-.055em}.hero-title .title-last>span{display:none}.portrait{right:5%;top:3%;width:32%;height:94%}.hero-side{right:0}.hero-guides{opacity:.35}
@media(max-width:650px){.hero-stage{height:550px;margin-top:22px}.hero-title{font-size:15vw}.hero-title .title-first{top:0}.hero-title .title-small{top:14%;font-size:16px;left:2px}.hero-title .title-last{top:21%;bottom:auto;font-size:.78em}.portrait{top:39%;height:57%;width:57%;right:12%}.hero-side{top:46%}}

/* Screenshot-led hero: clear copy beside a full-height portrait. */
.hero-replit{position:relative;background-color:#11191b;background-image:linear-gradient(#84978f0c 1px,transparent 1px),linear-gradient(90deg,#84978f0c 1px,transparent 1px);background-size:72px 72px;border-bottom:1px solid #334038}.hero-replit .hero-top{padding-top:32px;position:relative;z-index:3;font-size:12px;color:#cde97d;gap:20px;align-items:center}.hero-replit .hero-location{color:#aebcae;white-space:nowrap}.hero-replit .hero-location b{color:#edf2e8;font-variant-numeric:tabular-nums}.hero-replit .hero-stage{display:grid;grid-template-columns:1.35fr 1fr;gap:65px;min-height:550px;height:auto;margin-top:22px;position:relative}.hero-copy{padding:28px 0 55px;align-self:center}.hero-kicker{color:#829397;font-size:12px;margin:0 0 24px}.hero-copy h1{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(46px,5.9vw,92px);font-weight:600;line-height:1.04;letter-spacing:-.065em;margin:0 0 34px;color:#f0f1e9}.hero-copy h1>span{color:#cdea78}.hero-description{font-size:clamp(16px,1.45vw,20px);line-height:1.7;max-width:590px;color:#97a7ac;margin:0 0 30px}.hero-actions{display:flex;gap:12px;align-items:center}.hero-actions a{font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:600;letter-spacing:.04em;display:flex;align-items:center;gap:25px;padding:14px 19px;min-height:46px;border:1px solid #354146}.hero-actions .hero-work{color:#182014;background:#cdea78;border-color:#cdea78}.hero-actions a>span{font-size:20px;line-height:1}.hero-actions a:hover{border-color:#cdea78}.hero-replit .portrait{position:relative;right:auto;top:auto;width:100%;height:100%;min-height:550px;transform:none;align-self:stretch;animation:none;transition:transform .3s ease-out}.hero-replit .portrait-field{background:#1d2e2b;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%,0 10%);border:1px solid #798a46}.hero-replit .portrait-field:after{inset:16px;border-color:#8e9b4a66}.hero-replit .portrait img{width:111%;height:103%;left:-5.5%;bottom:0;object-fit:contain;object-position:bottom;filter:none}.portrait-initials{position:absolute;right:20px;top:16px;z-index:3;color:#cdea78;font-size:12px}
@media(max-width:1000px){.hero-replit .hero-stage{gap:25px;grid-template-columns:1.2fr 1fr;min-height:460px}.hero-replit .portrait{min-height:460px}.hero-copy h1{font-size:6vw}.hero-description{font-size:16px}}
@media(max-width:650px){.hero-replit .hero-top{flex-wrap:wrap;gap:12px;font-size:11px;padding-top:24px}.hero-replit .hero-top>span:last-child{display:block;font-size:12px}.hero-replit .hero-stage{display:flex;flex-direction:column;gap:12px;margin-top:0;height:auto;min-height:0}.hero-copy{padding:30px 0 10px;width:100%}.hero-kicker{margin-bottom:18px}.hero-copy h1{font-size:clamp(40px,10vw,64px);margin-bottom:24px}.hero-description{font-size:16px;line-height:1.65}.hero-replit .portrait{height:390px;min-height:390px;width:100%;max-width:390px;align-self:center;margin-top:24px}.hero-actions a{font-size:12px;gap:14px;padding:13px 15px}.hero-replit .portrait img{height:102%;width:100%;left:0}}
@media(prefers-reduced-motion:reduce){.hero-replit .portrait{transform:none!important;transition:none}}

.admin-bar header{top:32px}@media(max-width:782px){.admin-bar header{top:46px}}
