:root{--bg:#000000;--dark:#000000;--paper:#eeeee8;--ink:#161713;--acid:#d5f768;--muted:#a5a9a1;--border:rgba(246,248,240,.20);--pad:clamp(20px,4.6vw,90px);--font:'Manrope','Arial',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--paper);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}::selection{background:var(--acid);color:var(--ink)}.grain{position:fixed;z-index:90;pointer-events:none;inset:0;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.14' filter='url(%23n)'/%3E%3C/svg%3E")}.section-container{max-width:1680px;margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.site-header{position:absolute;top:0;left:0;width:100%;height:96px;z-index:80;display:flex;align-items:center;gap:5vw;padding:0 var(--pad);border-bottom:1px solid var(--border)}.wordmark{font-weight:800;letter-spacing:-.085em;font-size:clamp(23px,2.3vw,31px);line-height:1}.wordmark-star{color:var(--acid);font-size:.65em;margin-left:5px;vertical-align:top;letter-spacing:0}.site-nav{display:flex;gap:clamp(24px,3.4vw,68px);align-items:center;margin-left:auto}.site-nav a,.header-cta,.eyebrow,.section-kicker,.hero-meta,.hero-bottom,.text-link,.card-index,.concept-badge,.project-view,.work-note,.contact-bottom,.site-footer,.hero-image-label,.service-list>span{font-family:'DM Sans',Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.115em}.site-nav a{display:flex;align-items:flex-start;gap:6px;transition:color .2s}.site-nav a:hover{color:var(--acid)}.site-nav span{font-size:9px;color:var(--acid)}.header-cta{border:1px solid #cbd0c5;padding:14px 17px;margin-left:2vw;white-space:nowrap;transition:background .2s,color .2s}.header-cta span{font-size:17px;margin-left:25px}.header-cta:hover{background:var(--acid);color:var(--ink);border-color:var(--acid)}.menu-button{display:none}
.hero{min-height:800px;min-height:100svh;position:relative;overflow:hidden;padding:127px var(--pad) 42px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.hero-ambient{position:absolute;pointer-events:none;inset:0;background:radial-gradient(circle at 72% 34%,rgba(133,149,127,.15),transparent 40%),radial-gradient(circle at 20% 94%,rgba(69,78,68,.18),transparent 47%);z-index:-1}.hero-meta{display:flex;justify-content:space-between;color:#b7beb2;line-height:1.4}.hero-meta>span{display:inline-flex;gap:10px;align-items:center}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 0 5px #d5f76815}.meta-asterisk{color:var(--acid);font-size:16px}.hero-grid{width:100%;display:grid;grid-template-columns:1.35fr .68fr;align-items:center;gap:clamp(28px,4vw,72px);max-width:1700px;margin:auto}.hero-copy{position:relative;z-index:3}.eyebrow{color:var(--acid);margin:0 0 25px}.hero-title{font-size:clamp(76px,10.2vw,183px);letter-spacing:-.098em;line-height:.88;font-weight:800;margin:0 0 33px;white-space:nowrap}.hero-italic{font-weight:400;letter-spacing:-.13em}.stroke-text{color:transparent;-webkit-text-stroke:1.5px var(--paper);font-weight:700}.hero-period{color:var(--acid)}.hero-description{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;max-width:820px}.hero-description p{font-size:clamp(14px,1.1vw,17px);font-weight:400;line-height:1.7;color:#adb2a8;max-width:420px;margin:0}.text-link{white-space:nowrap;padding-bottom:9px;border-bottom:1px solid #aaaead;transition:color .2s}.text-link:hover{color:var(--acid)}.text-link span{font-size:19px;margin-left:12px}.hero-visual{width:100%;max-width:500px;justify-self:end;aspect-ratio:.76;position:relative;z-index:1;margin-top:20px}.hero-image-wrap{height:100%;overflow:hidden;border-radius:48% 48% 2px 2px;background:#393d3b;filter:saturate(.8);border:1px solid #484d45}.hero-image-wrap:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0a0b09bc 0%,transparent 45%);pointer-events:none}.hero-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:51% 47%;transition:transform .8s}.hero-visual:hover img{transform:scale(1.035)}.hero-image-label{position:absolute;bottom:23px;left:24px;right:24px;display:flex;justify-content:space-between;gap:10px;color:white;font-size:9px}.hero-orbit{display:grid;place-items:center;position:absolute;width:99px;height:99px;top:14%;left:-53px;border-radius:100%;background:var(--acid);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:10px;line-height:1.7;font-weight:800;transform:rotate(-16deg);text-align:center;padding:10px;box-shadow:0 12px 44px #0003}.hero-bottom{display:flex;align-items:center;justify-content:space-between;color:#b0b3aa}.scroll-indicator{display:grid;place-items:center;border:1px solid #535950;border-radius:50%;height:39px;width:39px;font-size:18px;color:var(--acid);animation:bob 2s infinite}.ticker{overflow:hidden;background:var(--acid);color:#121510;white-space:nowrap;padding:18px 0}.ticker-inner{width:max-content;animation:marquee 50s linear infinite}.ticker-inner span{font-family:var(--font);font-size:clamp(14px,1.5vw,22px);font-weight:800;letter-spacing:.03em}.ticker b{padding:0 23px;font-size:15px}
.work-section{padding-top:135px;padding-bottom:150px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:64px}.section-kicker{color:var(--acid);display:block}.section-heading h2{font-size:clamp(54px,8.3vw,136px);letter-spacing:-.085em;line-height:.9;margin:25px 0 0;font-weight:800}.punctuation{color:var(--acid)}.section-heading p{max-width:270px;color:#a9aea5;font-size:14px;line-height:1.8;margin:0 0 8px}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px 24px}.project-card-featured{grid-column:1/-1}.project-media{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:center}.project-media-photo{height:clamp(360px,56vw,730px);background:#202826}.project-media-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#1115 0,transparent 45%,#0009 100%);pointer-events:none}.project-media-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 51%;filter:brightness(.86) saturate(.92);transition:transform .9s,filter .9s}.project-card:hover .project-media-photo img{transform:scale(1.045);filter:brightness(.99) saturate(1.06)}.card-index{position:absolute;top:25px;left:26px;z-index:2;color:#fff}.project-view{position:absolute;z-index:2;bottom:26px;right:26px;display:flex;align-items:center;justify-content:center;min-width:132px;min-height:50px;padding:10px 15px;background:var(--acid);color:var(--ink);opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s}.project-card:hover .project-view,.project-card:focus-visible .project-view{opacity:1;transform:none}.project-information{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-top:22px}.project-information h3{font-size:clamp(26px,3.3vw,44px);letter-spacing:-.055em;line-height:1.1;margin:0 0 8px}.project-information h3 span{font-weight:400;font-size:.65em;color:var(--acid);display:inline-block;vertical-align:top;transition:transform .25s}.project-card:hover h3 span{transform:translate(4px,-4px)}.project-information p{margin:0;color:#a9ada5;font-size:13px}.project-information>span{font-size:12px;color:#a9ada5;margin-top:7px}.project-media-solatte{height:clamp(370px,39vw,560px)}.project-media-solatte{background:radial-gradient(circle at 53% 41%,#8b4d38 2%,#563126 34%,#241c1b 73%)}.concept-badge{position:absolute;top:26px;right:26px;z-index:2;color:inherit;opacity:.7;font-size:10px}.solatte-graphics{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;filter:drop-shadow(18px 23px 33px #08050460);transform:rotate(-18deg);transition:transform .7s}.project-card:hover .solatte-graphics{transform:rotate(-12deg) scale(1.04)}.coffee-outer{width:clamp(225px,28vw,380px);height:clamp(225px,28vw,380px);border-radius:50%;border:34px solid #b17c5b;box-shadow:inset 4px 6px 27px #0008,0 0 0 12px #ffffff25,14px 25px 50px #0007;background:#2f120d;display:flex;align-items:center;justify-content:center}.coffee-inner{width:76%;height:76%;border-radius:50%;background:radial-gradient(circle at 30% 30%,#f3bf92 0%,#c6824e 10%,#642c1d 40%,#250e0d 76%);box-shadow:inset -10px -14px 25px #140605a8;position:relative;overflow:hidden}.coffee-inner:before{content:'';position:absolute;width:160%;height:60%;border:19px solid #edaa794a;border-radius:50%;transform:rotate(-26deg);left:-23%;top:25%}.visual-wordmark{position:absolute;bottom:35px;left:32px;font-size:clamp(37px,5.4vw,86px);font-weight:800;letter-spacing:-.085em;line-height:.9;z-index:2}.visual-wordmark-solatte{color:#fff0da}.visual-wordmark-solatte span{font-size:10px;letter-spacing:.13em;margin-left:9px}.work-note{color:#7f857e;font-size:10px;margin:50px 0 0;max-width:660px;line-height:1.7}.work-note span{color:var(--acid);margin-right:9px}
.about-section{background:var(--paper);color:var(--ink);padding:130px 0 140px}.about-inner{display:grid;grid-template-columns:1fr 3fr;gap:50px}.about-section .section-kicker{color:#5c6e3b}.orbit-icon{font-size:clamp(80px,13vw,215px);color:#c7d1bb;line-height:1;margin-top:60px;animation:spin 30s linear infinite;transform-origin:center}.about-content h2{font-size:clamp(48px,7.6vw,124px);line-height:.99;letter-spacing:-.088em;font-weight:800;margin:0}.about-content h2>span:not(.punctuation){font-weight:400;font-style:italic}.about-content .punctuation{color:#879f43}.about-bottom{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;margin-top:80px}.about-bottom>p{max-width:520px;font-size:clamp(16px,1.5vw,21px);line-height:1.7;letter-spacing:-.025em;margin:0}.service-list{border-top:1px solid #a9ada4}.service-list>span{color:#6d7568;display:block;padding:14px 0 22px}.service-list>div{font-size:13px;font-weight:700;letter-spacing:.025em;padding:13px 0;border-bottom:1px solid #c6c8c0}
.contact-section{padding-top:150px;padding-bottom:120px}.contact-preface{font-size:clamp(15px,1.6vw,23px);color:#aaa;letter-spacing:-.02em;margin:60px 0 12px}.contact-title{font-size:clamp(58px,9.25vw,150px);line-height:.99;letter-spacing:-.092em;font-weight:800;margin:0 0 90px}.contact-title span{color:transparent;-webkit-text-stroke:1.5px #ebeee5}.contact-title em{font-style:normal;color:var(--acid)}.contact-bottom{border-top:1px solid var(--border);padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:#9caa97}.contact-pending{color:#d6eab2}.site-footer{padding:28px var(--pad) 35px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--border);color:#8e9389;font-size:10px}.site-footer a{color:var(--acid)}
/* project pages */
.project-page .site-header{position:relative}.project-page{background:var(--bg)}.project-page-hero{padding:88px var(--pad) 76px;max-width:1680px;margin:auto}.breadcrumb{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.12em;color:#adb0a7}.breadcrumb a{color:var(--acid)}.project-title{font-size:clamp(66px,11vw,170px);line-height:.91;font-weight:800;letter-spacing:-.095em;margin:34px 0 35px}.project-lead{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--border);padding-top:24px}.project-lead p{max-width:510px;font-size:17px;line-height:1.7;color:#bcbfb6;margin:0}.project-meta{display:grid;grid-template-columns:1fr 1fr;gap:25px 20px;max-width:580px;margin-left:auto}.project-meta div span{display:block;font-size:10px;letter-spacing:.1em;color:#90978c;font-weight:700;margin-bottom:9px}.project-meta div strong{font-size:13px;line-height:1.5;font-weight:600}.project-feature-image{height:clamp(400px,65vw,850px);overflow:hidden;position:relative;background:#242725}.project-feature-image img{width:100%;height:100%;object-fit:cover;object-position:center 52%}.project-feature-image:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,#050605a1,transparent 45%)}.feature-caption{position:absolute;z-index:1;bottom:25px;left:var(--pad);font-family:'DM Sans';font-size:11px;font-weight:700;letter-spacing:.1em}.project-body{max-width:1680px;margin:0 auto;padding:100px var(--pad) 140px}.project-body-intro{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;margin-bottom:95px}.project-body-intro h2{font-size:clamp(43px,6vw,78px);line-height:1.02;letter-spacing:-.078em;margin:0}.project-body-intro p{font-size:clamp(16px,1.5vw,20px);line-height:1.8;color:#b6bab1;margin:0}.image-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.image-grid img{width:100%;height:clamp(300px,54vw,710px);object-fit:cover;object-position:center center}.project-next{background:var(--acid);color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:44px var(--pad)}.project-next span{font-family:'DM Sans';font-weight:700;font-size:11px;letter-spacing:.1em}.project-next strong{font-size:clamp(30px,5vw,70px);letter-spacing:-.07em}.concept-feature{height:clamp(420px,61vw,790px);position:relative;display:grid;place-items:center;overflow:hidden}.concept-feature-solatte{background:radial-gradient(circle at 60% 35%,#7f4333,#2b1a17 65%,#171110)}.concept-feature .project-media{width:100%;height:100%}.concept-feature .visual-wordmark{font-size:clamp(70px,12vw,200px)}.video-slot{border:1px solid #555b52;min-height:310px;display:grid;place-content:center;text-align:center;gap:10px;background:#1b1e1a;margin:40px 0 0;padding:30px}.video-slot strong{font-size:20px;letter-spacing:-.03em}.video-slot p{color:#aeb2a9;font-size:13px;line-height:1.7;max-width:440px;margin:0 auto}.video-slot code{font-size:12px;color:var(--acid)}
@keyframes marquee{to{transform:translateX(-50%)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bob{50%{transform:translateY(6px)}}
/* entry motion */.fade-up{opacity:0;transform:translateY(26px);animation:enter .9s both}.fade-up:nth-child(2){animation-delay:.12s}.hero-meta{animation-delay:.1s}.hero-visual{animation-delay:.4s}.hero-description{animation-delay:.4s}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.is-visible{opacity:1;transform:none}@keyframes enter{to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.hero-title{font-size:clamp(70px,9.6vw,114px)}.hero-grid{grid-template-columns:1.2fr .8fr}.hero-description{display:block}.hero-description .text-link{display:inline-block;margin-top:26px}.hero-visual{max-width:340px}.hero-orbit{width:70px;height:70px;left:-35px;font-size:7px}.contact-title{font-size:9vw}}
@media(max-width:740px){:root{--pad:22px}.site-header{height:73px}.site-nav{position:absolute;display:none;top:73px;left:0;right:0;padding:32px var(--pad);flex-direction:column;align-items:flex-start;gap:27px;background:#141713;border-bottom:1px solid var(--border)}.site-nav.is-open{display:flex}.site-nav a{font-size:14px}.header-cta{display:none}.menu-button{display:flex;margin-left:auto;width:39px;height:32px;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:none;border:1px solid #52574f}.menu-button span{height:1px;width:17px;background:#fff}.hero{min-height:auto;padding:110px var(--pad) 30px}.hero-meta{font-size:8px}.hero-meta>span:nth-child(2){display:none}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:40px;padding:70px 0 45px}.hero-title{font-size:clamp(63px,16vw,110px);margin-bottom:25px}.hero-description p{font-size:14px}.hero-visual{max-width:none;width:75%;aspect-ratio:.96;align-self:flex-end;max-height:450px;margin-right:8px;margin-top:0}.hero-orbit{top:10%;left:-37px}.hero-image-label{font-size:8px;left:13px;right:13px}.hero-bottom{font-size:9px}.hero-bottom>span:last-child{display:none}.ticker{padding:13px 0}.ticker-inner span{font-size:13px}.ticker b{padding:0 10px}.work-section{padding-top:85px;padding-bottom:95px}.section-heading{display:block;margin-bottom:38px}.section-heading h2{font-size:clamp(54px,12vw,84px)}.section-heading p{margin:20px 0 0;max-width:330px}.projects-grid{grid-template-columns:1fr;gap:47px}.project-card-featured{grid-column:auto}.project-media-photo{height:390px}.project-media-solatte{height:390px}.coffee-outer{height:240px;width:240px}.project-information h3{font-size:30px}.project-view{opacity:1;transform:none;font-size:9px;min-width:109px;min-height:40px;bottom:16px;right:16px}.about-section{padding:80px 0}.about-inner{display:block}.orbit-icon{display:none}.about-content{margin-top:34px}.about-content h2{font-size:clamp(46px,10vw,78px)}.about-bottom{display:block;margin-top:50px}.about-bottom>p{font-size:16px}.service-list{margin-top:50px}.contact-section{padding-top:100px;padding-bottom:80px}.contact-preface{margin-top:50px}.contact-title{font-size:clamp(51px,10vw,90px);margin-bottom:55px}.contact-bottom{flex-direction:column;line-height:1.7}.site-footer{flex-wrap:wrap;justify-content:space-between;line-height:1.8}.site-footer>span:nth-child(2){display:none}.project-page-hero{padding:58px var(--pad) 50px}.project-title{font-size:clamp(58px,12vw,94px);margin:33px 0}.project-lead,.project-body-intro{grid-template-columns:1fr;gap:30px}.project-lead p{font-size:15px}.project-meta{margin:0;gap:22px}.project-feature-image{height:540px}.project-body{padding:75px var(--pad) 90px}.project-body-intro{margin-bottom:40px}.image-grid{grid-template-columns:1fr}.image-grid img{height:400px}.project-next{padding-top:28px;padding-bottom:28px}.project-next strong{font-size:37px}.project-next span{font-size:8px}.concept-feature{height:490px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.fade-up,.reveal{opacity:1;transform:none}}
/* V2 — Film-led portfolio and verified project footage */
.hero-title{font-size:clamp(74px,9vw,160px)}
.hero-visual{max-width:515px}
.hero-image-wrap{border-radius:44% 44% 2px 2px}
.project-media-featured{height:clamp(400px,54vw,760px)}
.media-sidenote{position:absolute;z-index:2;bottom:30px;left:30px;letter-spacing:.14em;font-size:10px;font-weight:700;color:#fff;opacity:.9}
.project-media-still{height:clamp(370px,39vw,560px);background:#080b12}
.project-media-still img{width:100%;height:100%;object-fit:cover;transition:transform .9s,filter .9s;filter:saturate(.94) brightness(.91)}
.project-media-still:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.17),transparent 48%,rgba(0,0,0,.56))}
.project-media-still:hover img{transform:scale(1.055);filter:saturate(1.1) brightness(1)}
.project-media-still .card-index,.project-media-still .project-view,.still-tag{z-index:2}
.still-tag{position:absolute;bottom:27px;left:27px;color:#f7f8f1;font:700 10px 'DM Sans',sans-serif;letter-spacing:.12em}
.project-media-still .project-view{bottom:58px}
.project-media-mihan img{object-fit:cover;object-position:60% center}
.project-information h3{max-width:85%}
.video-feature{height:clamp(420px,53vw,800px)}
.video-feature img{object-fit:cover;object-position:center 55%;filter:brightness(.85) saturate(1.06)}
.jump-to-film{z-index:3;position:absolute;right:var(--pad);bottom:22px;padding:15px 18px;border:1px solid rgba(255,255,255,.8);font-size:11px;letter-spacing:.1em;font-weight:700;color:white;transition:background .2s,color .2s}
.jump-to-film:hover{background:var(--acid);color:var(--ink);border-color:var(--acid)}
.film-block{scroll-margin-top:25px;border-top:1px solid var(--border);padding-top:25px;margin-top:65px}
.film-topline{display:flex;justify-content:space-between;gap:20px;margin-bottom:20px;color:var(--acid);font:700 11px 'DM Sans',sans-serif;letter-spacing:.12em}
.film-topline span:last-child{color:#858c80}
.film-block video{display:block;width:100%;max-height:780px;background:#060607;aspect-ratio:16/9;object-fit:contain}
.film-annotation{color:#8e958d;font-size:12px;line-height:1.6;letter-spacing:.02em}
/* Motion: soft and respectful, no automatic video playback */
@media(max-width:1100px){.hero-title{font-size:clamp(72px,8.6vw,110px)}}
@media(max-width:740px){.hero-title{font-size:clamp(62px,14.9vw,110px)}.hero-visual{max-width:none}.project-media-featured{height:390px}.project-media-still{height:390px}.still-tag{bottom:24px;left:18px}.media-sidenote{bottom:18px;left:20px}.film-topline{font-size:9px}.film-topline span:last-child{display:none}.video-feature{height:480px}.jump-to-film{bottom:56px;right:var(--pad)}.project-feature-image .feature-caption{bottom:15px;max-width:80%;line-height:1.5}.film-block{margin-top:38px}}

/* v3: project thumbnails now use actual frames from the user's finished films */
.project-media-solatte-actual img{object-position:center center}
.project-media-solatte-actual .concept-badge{color:#fff;opacity:.95;background:rgba(5,7,9,.50);padding:8px 10px;backdrop-filter:blur(6px)}
.project-media-solatte-actual .still-tag{color:#fff;text-shadow:0 1px 10px #000}
.project-feature-image.video-feature img{object-position:center center}


/* V3 / small mouse gestures: editorial, lightweight, with accessible fallbacks. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .hero {--pointer-x:50%;--pointer-y:50%}
  .hero::before {content:"";position:absolute;pointer-events:none;inset:0;z-index:0;opacity:var(--hero-glimmer,0);background:radial-gradient(520px circle at var(--pointer-x) var(--pointer-y),rgba(213,247,104,.085),rgba(213,247,104,.025) 42%,transparent 72%);transition:opacity .4s ease}
  .hero > * {position:relative}
  .hero .hero-ambient {position:absolute}
  .hero-copy {translate:var(--title-shift-x,0px) var(--title-shift-y,0px);transition:translate .12s ease-out;will-change:translate}
  .hero-orbit {translate:var(--orbit-x,0px) var(--orbit-y,0px);transition:translate .15s ease-out}
  .wordmark-star {display:inline-block;rotate:var(--symbol-spin,0deg);translate:var(--star-x,0px) var(--star-y,0px);transition:rotate .25s ease,translate .25s ease}
  .hero-title .stroke-text {transition:-webkit-text-stroke-color .35s ease,color .35s ease}
  .hero-title:hover .stroke-text {-webkit-text-stroke-color:var(--acid)}
  .project-card .project-media {transition:filter .45s ease}
  .project-card:hover .project-media {filter:brightness(1.055)}
  .project-card .project-information h3 span {display:inline-block;transition:translate .25s ease,rotate .25s ease}
  .project-card:hover .project-information h3 span {translate:4px -3px;rotate:7deg}
}
.pointer-marker{position:fixed;top:0;left:0;z-index:105;width:34px;height:34px;pointer-events:none;display:none;opacity:0;translate:-50% -50%;border:1px solid rgba(213,247,104,.72);border-radius:50%;color:var(--acid);font-family:'DM Sans',Arial,sans-serif;font-size:10px;font-weight:800;letter-spacing:.02em;place-items:center;box-shadow:0 0 0 5px rgba(213,247,104,.035),0 0 28px rgba(213,247,104,.09);transition:opacity .19s ease,width .3s cubic-bezier(.2,.8,.2,1),height .3s cubic-bezier(.2,.8,.2,1),background .3s,color .3s,border-color .3s;will-change:transform}
.pointer-marker::after{content:'✳';font-size:13px;animation:spin 11s linear infinite}
.pointer-marker.is-active{opacity:1}
.pointer-marker.is-over-card {width:67px;height:67px;background:var(--acid);border-color:var(--acid);color:var(--ink);box-shadow:0 10px 30px rgba(0,0,0,.20)}
.pointer-marker.is-over-card::after{content:'VIEW ↗';font-size:11px;animation:none}
.pointer-marker.is-over-link{width:21px;height:21px;background:var(--acid);border-color:var(--acid);box-shadow:0 0 28px rgba(213,247,104,.17)}
.pointer-marker.is-over-link::after{content:''}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.pointer-marker{display:grid}}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.pointer-marker{display:none!important}.hero-copy,.hero-orbit{translate:none!important}}
/* Framing for genuine nighttime Jerash scene & chosen Mihan frame */
.project-media-jerash{background:#060508}
.project-media-jerash::before{content:'';position:absolute;inset:-24px;opacity:.68;background:url('assets/jerash-frame.jpg') center / cover no-repeat;filter:blur(35px) brightness(.75)}
.project-media-jerash img{object-fit:contain;position:relative;z-index:1;filter:brightness(1.01) saturate(1.1)}
.project-media-jerash:hover img{transform:scale(1.035);filter:brightness(1.1) saturate(1.13)}
.project-media-mihan img{object-position:62% center}
.project-feature-image.jerash-feature,.project-feature-image.mihan-feature{height:auto;min-height:380px;aspect-ratio:16/9;background:#08080a}
.project-feature-image.jerash-feature img{object-fit:contain;object-position:center center}
.project-feature-image.mihan-feature img{object-fit:cover;object-position:center center}
@media(max-width:740px){.project-feature-image.jerash-feature,.project-feature-image.mihan-feature{min-height:280px;aspect-ratio:4/3}}

/* V4: Pure black editorial background, with film-grain overlay removed.
   This leaves pointer interactions in place but removes the permanent texture. */
html,body,.project-page{background:#000 !important}
.grain{display:none !important;background:none !important}
.hero-ambient{background:none !important}
.about-section{background:#000 !important;color:var(--paper) !important;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.about-section .section-kicker,.about-content .punctuation{color:var(--acid)}
.orbit-icon{color:rgba(213,247,104,.28)}
.about-bottom>p{color:#bec3b8}
.service-list{border-top-color:var(--border)}
.service-list>span{color:#9da599}
.service-list>div{border-bottom-color:var(--border)}
.contact-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 54px}
.contact-link{border:1px solid var(--border);min-height:116px;padding:20px 19px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;position:relative;transition:background .25s,border-color .25s,color .25s}
.contact-link:hover{border-color:var(--acid);background:#0d1309}
.contact-link .contact-link-label{font-family:'DM Sans',Arial,sans-serif;font-size:10px;letter-spacing:.13em;font-weight:700;color:var(--acid)}
.contact-link strong{font-size:clamp(12px,1.3vw,18px);font-weight:650;letter-spacing:-.025em;overflow-wrap:anywhere}
.contact-link .contact-link-arrow{position:absolute;top:17px;right:19px;font-size:17px;color:var(--acid)}
.contact-link-plain{cursor:default}
.contact-link-plain:hover{border-color:var(--border);background:transparent}
.contact-link-plain .contact-link-arrow{font-size:9px;letter-spacing:.02em;top:24px}
@media(max-width:900px){.contact-links{grid-template-columns:1fr}.contact-link{min-height:105px}.contact-link strong{font-size:16px}}

/* Portrait documentary footage: preserve original framing, no stretching. */
.film-block video.pedco-portrait-video {width:min(100%,470px);height:auto;aspect-ratio:512/910;max-height:none;object-fit:contain;margin:0 auto;background:#000;}


/* V7 — Editorial mobile refinement. No decorative emoji glyphs or jittery marquee. */
.wordmark{letter-spacing:-.075em}
.link-arrow{display:inline-block;width:20px;height:20px;margin-left:14px;vertical-align:-5px;flex-shrink:0}
/* Smooth seamless ticker: identical track copies, translated by exactly one copy. */
.ticker{padding:0;overflow:hidden;background:var(--acid)}
.ticker-inner{display:flex;align-items:center;width:max-content;animation:yasmeen-ticker 85s linear infinite;will-change:transform}
.ticker-set{display:flex;align-items:center;flex:0 0 auto;gap:0;min-height:68px;white-space:nowrap}
.ticker-set span{font:800 clamp(15px,1.5vw,22px)/1.2 var(--font);letter-spacing:.02em;padding:0 25px}
.ticker-set i,.ticker-mobile i{display:inline-block;flex:0 0 auto;width:9px;height:9px;background:#111;transform:rotate(45deg)}
.ticker-mobile{display:none}
@keyframes yasmeen-ticker{to{transform:translate3d(-50%,0,0)}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.ticker:hover .ticker-inner{animation-play-state:paused}}
@media(max-width:740px){
  html,body{max-width:100%;overflow-x:clip}
  .site-header{height:77px;padding:0 22px;border-bottom:1px solid rgba(255,255,255,.15)}
  .wordmark{font-size:26px;letter-spacing:-.078em}
  .site-nav{top:77px;background:#000;padding:27px 22px 31px}
  .menu-button{border:1px solid rgba(255,255,255,.4);width:44px;height:44px;gap:6px;transition:border-color .25s ease}
  .menu-button span{width:19px;height:1.5px}
  .menu-button:focus-visible{outline:2px solid var(--acid);outline-offset:4px}
  .hero{padding:112px var(--pad) 30px}
  .hero-grid{gap:34px;padding:56px 0 40px}
  .hero-title{font-size:clamp(46px,12.6vw,69px);letter-spacing:-.084em;line-height:.98;margin-bottom:29px;white-space:nowrap}
  .hero-italic{letter-spacing:-.10em}
  .stroke-text{-webkit-text-stroke:1.15px var(--paper)}
  .hero-description p{font-size:14px;line-height:1.75;max-width:430px}
  .text-link{display:inline-flex!important;align-items:center;gap:14px;margin-top:27px!important;font-size:10px;letter-spacing:.12em;padding-bottom:11px}
  .link-arrow{width:18px;height:18px;margin-left:0;vertical-align:middle}
  .hero-visual{width:85%;aspect-ratio:.91;max-height:460px;margin-right:0;align-self:flex-end}
  .hero-orbit{width:76px;height:76px;left:-27px;top:11%;font-size:7px;line-height:1.55}
  .hero-bottom{margin-top:2px}
  /* Mobile ticker is a deliberately static specialty strip, not an infinitely panning marquee. */
  .ticker-inner{display:none}
  .ticker-mobile{display:flex;align-items:center;justify-content:space-evenly;gap:9px;min-height:54px;padding:10px 14px;color:#10140a}
  .ticker-mobile span{font:800 clamp(10px,2.55vw,12px)/1.25 'DM Sans',Arial,sans-serif;letter-spacing:.07em;white-space:nowrap}
  .ticker-mobile i{width:5px;height:5px}
  .work-section{padding-top:77px}
  .project-information h3{font-size:clamp(26px,7.6vw,32px)}
  .project-card .project-information h3 span{font-family:Arial,sans-serif;font-variant-emoji:text}
  .hero-image-label{font-size:8px}
}
@media(max-width:365px){
  .hero-title{font-size:clamp(42px,12vw,46px)}
  .ticker-mobile{gap:7px;padding:9px 12px}
  .ticker-mobile span{font-size:9.5px;letter-spacing:.045em}
  .hero-visual{width:83%}
}
@media(prefers-reduced-motion:reduce){.ticker-inner{animation:none}}


/* V10 — full professional identity with the YASMEEN wordmark preserved. */
.hero-intro{max-width:420px;min-width:0}
.hero-byline{display:flex;flex-direction:column;gap:5px;margin-top:22px;padding-left:13px;border-left:2px solid var(--acid)}
.hero-byline-name{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:11px;letter-spacing:.17em;font-weight:800;line-height:1.5;color:var(--paper)}
.hero-byline-role{font-family:'DM Sans',Arial,sans-serif;font-size:11px;line-height:1.45;letter-spacing:.035em;font-weight:400;color:#aeb4aa}
.about-nameplate{font-family:'DM Sans',Arial,sans-serif;letter-spacing:.125em;font-size:11px;font-weight:700;margin-bottom:30px;color:var(--acid)}
@media(max-width:1100px){.hero-intro{max-width:460px}}
@media(max-width:740px){
 .hero-intro{max-width:100%}
 .hero-byline{margin-top:21px;gap:4px;padding-left:11px}
 .hero-byline-name{font-size:10px;letter-spacing:.15em}
 .hero-byline-role{font-size:11px}
 .about-nameplate{font-size:10px;margin-bottom:24px;line-height:1.6}
}

/* Jerash on-site photography: faithful 4:3 documentary photo, no cropping */
.project-photo-gallery{border-top:1px solid var(--border);margin-top:85px;padding-top:26px}.photo-gallery-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;font-family:'DM Sans',sans-serif;font-size:10px;font-weight:700;letter-spacing:.11em;color:#aeb5aa}.site-photo{margin:0}.site-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#080808}.site-photo figcaption{font-family:'DM Sans',sans-serif;letter-spacing:.1em;font-weight:600;color:#adb5a5;font-size:10px;padding-top:16px;line-height:1.6}@media(max-width:740px){.project-photo-gallery{margin-top:60px}.photo-gallery-heading{font-size:9px;flex-wrap:wrap}.site-photo figcaption{font-size:9px}}

/* V12: Project-led editorial layout; hero now highlights CGI product storytelling. */
.hero-visual .hero-image-wrap{background:#120a07}
.hero-visual .hero-image-wrap img{object-fit:cover;object-position:50% 50%}
.hero-visual .hero-image-label{background:linear-gradient(transparent,#0007);padding-top:25px}
.work-filters{display:flex;flex-wrap:wrap;gap:9px;margin:-5px 0 30px}
.work-filter{background:transparent;border:1px solid rgba(240,240,236,.27);color:#d4d7d0;padding:12px 16px;font:700 10px 'DM Sans',Arial,sans-serif;letter-spacing:.1em;cursor:pointer;transition:background .25s,border-color .25s,color .25s}
.work-filter span{color:#bac39b;margin-left:5px}
.work-filter:hover,.work-filter:focus-visible{border-color:var(--acid);outline-offset:3px}
.work-filter.is-selected{background:var(--acid);border-color:var(--acid);color:#101208}
.work-filter.is-selected span{color:#344308}
.project-card[hidden]{display:none!important}
.project-card-featured .project-media img{object-position:center center}
.project-media .still-tag{z-index:3;pointer-events:none}
.project-media-golha img{object-position:center 52%}
.project-media-nexa img{object-position:center 50%}
.project-media-pasargad{background:#030916}
.project-media-pasargad:before{content:'';position:absolute;inset:-36px;background:url('assets/pasargad-cover.webp') center / cover;filter:blur(30px) brightness(.43);pointer-events:none}
.project-media-pasargad img{object-fit:contain;position:relative;z-index:1;max-width:75%;object-position:center;filter:saturate(1.2)}
.project-feature-image.new-project-feature{height:clamp(390px,57vw,760px);background:#080a0f}
.project-feature-image.new-project-feature img{object-fit:cover;object-position:center center}
.project-feature-image.new-project-feature:has(img[src*="pasargad"]) img{object-fit:contain}
/* Avoid harsh bouncing indicator, including earlier icon animations on Safari. */
.scroll-indicator,.scroll-indicator svg,.v8-down,.v8-down svg{animation:none!important;transform:none!important;transition:color .25s,border-color .25s!important}
.scroll-indicator:hover{color:#fff;border-color:#fff}
@media(max-width:740px){
 .work-filters{flex-wrap:nowrap;overflow-x:auto;gap:8px;margin:2px calc(-1 * var(--pad)) 26px;padding:0 var(--pad) 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .work-filters::-webkit-scrollbar{display:none}
 .work-filter{flex:0 0 auto;padding:12px 14px;font-size:10px}
 .project-card-featured .project-media{height:360px}
 .project-media-pasargad img{max-width:70%}
 .project-feature-image.new-project-feature{height:390px}
 .project-feature-image.new-project-feature:has(img[src*="pasargad"]){height:530px}
 .hero-visual .hero-image-wrap img{object-position:center}
}
@media(prefers-reduced-motion:reduce){.work-filter{transition:none}}
