@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#15181b;--ink-2:#30343a;--muted:#6f747c;--line:#e7e8e9;--paper:#fff;--bg:#f7f7f6;--accent:#f2683d;--accent2:#ff855c;--night:#111417;--r:18px;--max:1320px;--shadow:0 14px 42px rgba(15,21,25,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.56;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%}::selection{background:#ffb29b;color:#151515}.container{max-width:var(--max);margin:auto;padding:0 38px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:82px;position:sticky;z-index:100;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;gap:39px}.brand{display:flex;align-items:center;flex-shrink:0}.brand img{width:145px;display:block;height:auto}.main-nav{display:flex;align-items:center;gap:33px;margin:auto}.main-nav a,.header-right a{font-size:13px;font-weight:700;letter-spacing:.015em;color:#555b62;transition:color .2s}.main-nav a:hover,.main-nav a.active,.header-right a:hover{color:var(--accent)}.header-right{display:flex;align-items:center;gap:18px}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:100px;min-height:45px;padding:11px 21px;font-size:13px;font-weight:800;letter-spacing:.01em;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s;border:1px solid transparent}.nav-cta{background:#191c20;color:white!important}.nav-cta:hover,.btn:hover{transform:translateY(-2px)}.nav-cta:hover{background:#41454a}.btn-orange{background:var(--accent);color:#fff;box-shadow:0 8px 19px rgba(242,104,61,.2)}.btn-orange:hover{background:#dc522b}.btn-white{background:#fff;color:#171b1f}.btn-white:hover{background:#f5f5f5}.btn-border{border-color:#ccc;background:#fff;color:#222}.btn-dark{background:#191c20;color:#fff}.btn-ghost{border-color:#474b4c;background:transparent;color:#fff}.btn-ghost:hover{border-color:#fff}.mobile-toggle{display:none;background:transparent;border:0;padding:8px}.mobile-toggle span{display:block;width:24px;height:2px;background:#181a1c;margin:5px 0}
.hero{background:#121518;color:#fff;position:relative;overflow:hidden;isolation:isolate}.hero:before{content:"";position:absolute;inset:-60% -18% auto auto;width:860px;height:860px;background:radial-gradient(circle,rgba(242,104,61,.17),transparent 63%);pointer-events:none;z-index:-1}.hero:after{content:"";inset:0;position:absolute;pointer-events:none;z-index:-1;opacity:.27;background-image:linear-gradient(90deg,transparent 99%,rgba(255,255,255,.05) 100%),linear-gradient(0deg,transparent 99%,rgba(255,255,255,.05) 100%);background-size:95px 95px}.hero-inner{padding-top:85px;padding-bottom:93px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:74px}.eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:800}.eyebrow .dot{height:8px;width:8px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 5px rgba(242,104,61,.14)}.hero .eyebrow{color:#bdc3c6}.hero h1{font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:clamp(44px,5.1vw,75px);letter-spacing:-.065em;line-height:1.09;margin:26px 0 25px}.hero h1 em{font-style:normal;color:#ff8a62}.hero-description{color:#c3c6c6;font-size:16px;max-width:480px;line-height:1.83;margin:0 0 32px}.hero-actions{display:flex;gap:13px;align-items:center;flex-wrap:wrap}.hero-minibar{display:flex;align-items:center;flex-wrap:wrap;gap:13px;color:#b2b7bc;font-size:12px;font-weight:600;margin-top:44px}.hero-minibar i{display:block;width:4px;height:4px;border-radius:50%;background:#797e82}.hero-media{position:relative}.showreel-frame{position:relative;border-radius:18px;overflow:hidden;background:#1d2228;border:1px solid #42474c;aspect-ratio:16/10;display:block;width:100%;box-shadow:0 30px 70px rgba(0,0,0,.36);padding:0;text-align:left}.showreel-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.67);transform:scale(1.02);transition:transform .7s,filter .5s}.showreel-frame:hover img{transform:scale(1.08);filter:brightness(.85)}.showreel-frame:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,#27252b 8%,#34414a 62%,#171b23);z-index:-1}.play-circle{height:69px;width:69px;border-radius:50%;background:#fff;box-shadow:0 8px 34px rgba(0,0,0,.27);display:grid;place-items:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#161a1d;transition:transform .2s}.showreel-frame:hover .play-circle{transform:translate(-50%,-50%) scale(1.1)}.play-circle svg{width:22px;height:22px;margin-left:4px}.showreel-label{position:absolute;inset:auto 24px 24px 24px;display:flex;align-items:flex-end;justify-content:space-between;gap:15px;color:white}.showreel-label strong{font-size:18px;font-family:Manrope}.showreel-label span{font-size:11px;font-weight:800;letter-spacing:.13em;color:#e0e1e3;text-transform:uppercase}.showreel-label .watch-time{white-space:nowrap;background:rgba(0,0,0,.52);padding:7px 9px;border-radius:6px}.media-note{position:absolute;right:-15px;bottom:-24px;background:#fff;color:#1c2025;border:1px solid #eee;box-shadow:var(--shadow);border-radius:12px;padding:12px 18px;font-weight:800;font-size:11px;letter-spacing:.09em;text-transform:uppercase;display:flex;align-items:center;gap:9px}.media-note span{height:7px;width:7px;background:var(--accent);border-radius:50%}
.trust-line{border-bottom:1px solid var(--line);background:#fff}.trust-inner{display:flex;justify-content:space-between;gap:26px;align-items:center;padding-top:25px;padding-bottom:25px}.trust-line .smallcaps{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:#9b9da2;white-space:nowrap}.trust-items{display:flex;gap:42px;align-items:center;flex-wrap:wrap}.trust-items span{font-size:12px;font-weight:700;color:#464a4f}
.section{padding:98px 0}.section-soft{background:var(--bg)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:35px}.section-top h2,.section h2,.cta-inner h2{font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:clamp(31px,3.2vw,45px);letter-spacing:-.055em;line-height:1.18;margin:11px 0 0}.section-kicker{font-size:11px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:var(--accent)}.section-subtext{max-width:560px;color:var(--muted);font-size:14px;margin:14px 0 0}.text-arrow{font-size:13px;font-weight:800;display:inline-flex;gap:9px;align-items:center;white-space:nowrap}.text-arrow:hover{color:var(--accent)}.text-arrow span{font-size:20px;line-height:1}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:22px;row-gap:34px}.project-card{min-width:0}.card-thumb{display:block;position:relative;border-radius:13px;overflow:hidden;aspect-ratio:16/9;background:linear-gradient(135deg,#263b44,#121721 62%,#68483d);border:1px solid rgba(0,0,0,.07)}.card-thumb img{height:100%;width:100%;display:block;object-fit:cover;transition:transform .5s;position:relative}.project-card:hover .card-thumb img{transform:scale(1.07)}.thumb-overlay{position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.47));pointer-events:none}.thumb-play{position:absolute;bottom:14px;right:14px;color:#fff;background:rgba(0,0,0,.55);width:37px;height:37px;border-radius:50%;display:grid;place-items:center}.thumb-play svg{height:14px;width:14px;margin-left:2px}.card-copy{padding:15px 3px 0}.card-category{font-size:10px;letter-spacing:.12em;font-weight:800;text-transform:uppercase;color:var(--accent)}.card-copy h3{font-family:Manrope;font-size:18px;letter-spacing:-.035em;line-height:1.3;margin:6px 0 6px;transition:color .2s}.project-card:hover .card-copy h3{color:var(--accent)}.card-copy p{font-size:12px;color:var(--muted);margin:0;line-height:1.55}.pill-filters{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0 32px}.filter-pill{border:1px solid #e4e6e7;background:#fff;padding:10px 17px;border-radius:100px;font-size:12px;color:#5e636a;font-weight:800;transition:all .2s}.filter-pill.active,.filter-pill:hover{background:#1b1e20;color:#fff;border-color:#1b1e20}.search-box{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:0 18px;background:white;border-radius:100px;width:min(100%,350px);min-height:47px}.search-box svg{width:17px;height:17px;color:#979da2}.search-box input{border:0;outline:0;background:transparent;width:100%;font-size:13px}.portfolio-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 27px}.result-count{font-size:12px;color:var(--muted);font-weight:700}.empty-state{padding:50px 10px;text-align:center;border:1px dashed #ddd;border-radius:14px;grid-column:1/-1;color:var(--muted)}
.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{position:relative;border:1px solid #e4e5e6;border-radius:15px;background:#fff;padding:29px;min-height:256px;display:flex;flex-direction:column;transition:transform .22s,box-shadow .22s,border-color .22s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#ffcab9}.service-icon{height:41px;width:41px;border-radius:11px;background:#fff1eb;color:var(--accent);display:grid;place-items:center;margin-bottom:21px}.service-icon svg{width:21px;height:21px;stroke-width:1.7}.service-card h3{font:800 17px/1.3 Manrope;margin:0 0 10px;letter-spacing:-.025em}.service-card p{font-size:13px;color:#6d7378;margin:0 0 22px;line-height:1.72}.service-link{margin-top:auto;font-size:12px;font-weight:800;color:#30343a;display:flex;gap:6px;align-items:center}.service-link span{color:var(--accent);font-size:17px}
.process-band{background:#171a1e;color:#fff;padding:76px 0}.process-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:72px;align-items:center}.process-band h2{font:800 clamp(30px,3.2vw,44px)/1.2 Manrope;letter-spacing:-.05em;margin:14px 0}.process-band p{color:#b7bdc2;font-size:14px;line-height:1.8}.steps{display:grid;gap:3px}.step{padding:18px 0;border-bottom:1px solid #3b3e42;display:grid;grid-template-columns:40px 1fr;gap:17px}.step:last-child{border-bottom:0}.step .step-number{font:800 12px Manrope;color:var(--accent)}.step strong{font:800 16px Manrope}.step p{margin:5px 0 0;font-size:12px}
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:95px}.about-art{min-height:390px;border-radius:19px;background:radial-gradient(circle at 40% 40%,#3b444c,#15191d 65%);color:#fff;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden}.about-art:before{position:absolute;content:"";width:340px;height:340px;border:1px solid rgba(255,255,255,.1);border-radius:50%}.about-art:after{position:absolute;content:"";width:250px;height:250px;border:1px solid rgba(255,255,255,.12);border-radius:50%}.about-art img{width:78%;position:relative;z-index:1}.about-art .art-tag{position:absolute;left:22px;bottom:22px;border:1px solid #666b6e;background:rgba(0,0,0,.25);padding:8px 11px;border-radius:7px;font-size:10px;letter-spacing:.12em;font-weight:800}.about-copy h2{font:800 clamp(31px,3.3vw,46px)/1.22 Manrope;letter-spacing:-.054em;margin:12px 0 20px}.about-copy p{color:var(--muted);font-size:14px;line-height:1.84}.value-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid var(--line);padding-top:25px;margin-top:27px}.value-row strong{font-size:14px;display:block}.value-row span{font-size:12px;color:var(--muted);display:block;margin-top:4px}
.cta-band{background:var(--accent);color:#fff;padding:72px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-inner h2{max-width:710px;margin:12px 0 14px}.cta-inner p{margin:0;color:#fff2e9;font-size:14px}.cta-inner .btn{flex-shrink:0}.site-footer{background:#131619;color:#fff;padding:67px 0 25px}.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:50px;padding-bottom:68px}.footer-logo{width:168px;display:block}.footer-about{max-width:340px;color:#a5aaae;font-size:13px;line-height:1.8;margin:16px 0 0}.footer-col h4{font:800 12px Manrope;text-transform:uppercase;letter-spacing:.11em;margin:0 0 18px}.footer-col a,.footer-col p{display:block;color:#a5aaae;font-size:13px;margin:0 0 10px;overflow-wrap:anywhere}.footer-col a:hover{color:var(--accent2)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #33373b;padding-top:23px;color:#999fa3;font-size:11px}
.subhero{background:#f6f6f4;padding:69px 0 59px;border-bottom:1px solid #ededec}.subhero h1{font:800 clamp(36px,4.7vw,62px)/1.11 Manrope;letter-spacing:-.06em;margin:14px 0 17px}.subhero p{max-width:630px;color:var(--muted);font-size:15px;margin:0;line-height:1.75}.subhero .section-kicker{color:var(--accent)}.work-page .section{padding-top:53px}.breadcrumbs{font-size:12px;color:#81878c;display:flex;gap:11px;align-items:center;flex-wrap:wrap}.breadcrumbs a:hover{color:var(--accent)}.detail-section{padding:45px 0 100px}.detail-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,.65fr);align-items:start;gap:48px}.detail-player{background:#13181f;aspect-ratio:16/9;width:100%;border-radius:17px;overflow:hidden;position:relative}.detail-player iframe{border:0;width:100%;height:100%}.detail-player img{object-fit:cover;width:100%;height:100%;filter:brightness(.65)}.detail-player .play-circle{z-index:2}.detail-player button{border:0;position:absolute;inset:0;background:transparent;width:100%;height:100%;cursor:pointer}.detail-title{font:800 clamp(30px,3vw,42px)/1.16 Manrope;letter-spacing:-.05em;margin:29px 0 11px}.detail-lead{font-size:14px;color:var(--muted);line-height:1.82}.detail-divider{border:0;border-top:1px solid var(--line);margin:29px 0}.detail-section h3{font:800 18px Manrope}.detail-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.detail-tag{padding:7px 10px;background:#f2f2f1;border-radius:7px;color:#5a6065;font-size:11px;font-weight:700}.detail-sidebar{position:sticky;top:112px;border:1px solid var(--line);border-radius:16px;padding:28px;background:#fff}.detail-sidebar h3{font:800 21px Manrope;letter-spacing:-.04em;margin:8px 0 10px}.detail-sidebar p{font-size:13px;color:var(--muted);line-height:1.7}.detail-sidebar .btn{width:100%;margin-top:14px}.meta-item{padding:15px 0;border-bottom:1px solid var(--line)}.meta-label{display:block;color:#969ba0;font-weight:800;letter-spacing:.1em;font-size:10px;text-transform:uppercase}.meta-item strong{font-size:13px;display:block;margin-top:4px}.detail-rel{margin-top:75px}
.contact-section{padding:70px 0 110px}.contact-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:80px}.contact-intro h2{font:800 clamp(30px,3.4vw,45px)/1.2 Manrope;letter-spacing:-.05em;margin:10px 0 18px}.contact-intro p{font-size:14px;line-height:1.8;color:var(--muted)}.contact-direct{margin-top:32px;padding-top:27px;border-top:1px solid var(--line)}.contact-direct a{font:800 20px Manrope;letter-spacing:-.025em;overflow-wrap:anywhere}.contact-direct a:hover{color:var(--accent)}.contact-direct span{display:block;font-size:12px;color:var(--muted);margin:9px 0}.contact-card{border:1px solid var(--line);border-radius:17px;padding:32px;box-shadow:0 12px 50px rgba(0,0,0,.035)}.contact-card h3{font:800 22px Manrope;letter-spacing:-.035em;margin:0 0 5px}.contact-card>p{font-size:12px;color:var(--muted);margin:0 0 23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px}.form-field label{font-size:12px;font-weight:800}.form-field input,.form-field textarea,.form-field select{width:100%;background:#fafafa;border:1px solid #e3e4e5;outline:0;border-radius:9px;padding:12px 14px;color:#27292c;font-size:13px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #f2683d1b}.form-field textarea{min-height:122px;resize:vertical}.form-footnote{font-size:11px;color:#90959a;margin:12px 0 0}.contact-card .btn{width:100%}.message-status{color:#a93f1e;font-size:12px;margin-top:11px;min-height:18px}
.video-modal[hidden]{display:none}.video-modal{position:fixed;inset:0;background:rgba(7,9,12,.91);z-index:300;display:grid;place-items:center;padding:55px 30px 30px}.modal-dialog{width:min(1120px,100%);aspect-ratio:16/9;position:relative}.modal-dialog iframe{width:100%;height:100%;border:0;border-radius:12px}.modal-close{position:absolute;right:0;top:-44px;color:white;background:none;border:0;font-weight:800;font-size:13px}.modal-backdrop{position:absolute;inset:0}.skip-link{position:absolute;left:-999px;top:5px;background:#fff;padding:10px;z-index:500}.skip-link:focus{left:10px}
@media(max-width:1050px){.hero-inner{gap:37px}.hero h1{font-size:clamp(40px,5.5vw,61px)}.main-nav{gap:20px}.header-inner{gap:24px}.services-grid{grid-template-columns:repeat(2,1fr)}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid{gap:45px}.process-grid{gap:39px}}
@media(max-width:750px){.container{padding:0 22px}.site-header{height:72px}.header-inner{gap:14px;justify-content:space-between}.brand img{width:133px}.mobile-toggle{display:block}.header-right{margin-left:auto}.header-right .header-email{display:none}.main-nav{position:absolute;display:none;inset:72px 0 auto 0;padding:19px 22px 26px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 15px 30px rgba(0,0,0,.06);margin:0;flex-direction:column;align-items:flex-start;gap:21px}.main-nav.open{display:flex}.hero-inner{grid-template-columns:1fr;gap:46px;padding-top:66px;padding-bottom:70px}.hero h1{font-size:clamp(44px,10vw,69px);max-width:650px}.hero-description{font-size:15px}.showreel-frame{aspect-ratio:16/10}.trust-inner{display:block}.trust-items{gap:14px 26px;margin-top:13px}.section{padding:72px 0}.section-top{align-items:start;flex-direction:column;gap:16px}.services-grid{grid-template-columns:repeat(2,1fr);gap:12px}.service-card{min-height:270px;padding:23px}.about-grid,.process-grid,.contact-layout{grid-template-columns:1fr;gap:35px}.about-art{min-height:290px}.cta-inner{align-items:start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;gap:33px}.footer-brand{grid-column:1/-1}.detail-layout{grid-template-columns:1fr}.detail-sidebar{position:static}.detail-section{padding-bottom:70px}.contact-section{padding:55px 0 78px}.subhero{padding:53px 0 48px}}
@media(max-width:520px){.container{padding:0 18px}.site-header{height:68px}.main-nav{inset:68px 0 auto}.header-right .nav-cta{padding:10px 15px;min-height:39px;font-size:11px}.hero-inner{padding-top:52px;padding-bottom:59px;gap:35px}.hero h1{font-size:43px}.hero-description{font-size:14px}.hero-actions{align-items:stretch}.hero-actions .btn{width:100%}.hero-minibar{margin-top:26px}.media-note{right:-4px;bottom:-17px;padding:9px 12px;font-size:9px}.showreel-label{inset:auto 13px 13px}.showreel-label strong{font-size:14px}.play-circle{height:54px;width:54px}.work-grid,.services-grid{grid-template-columns:1fr}.section{padding:63px 0}.section-top h2,.section h2{font-size:33px}.service-card{min-height:0}.service-card p{margin-bottom:18px}.portfolio-toolbar{align-items:flex-start;flex-direction:column}.search-box{width:100%}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column}.form-grid{grid-template-columns:1fr;gap:0}.contact-card{padding:22px}.cta-band{padding:53px 0}.contact-direct a{font-size:17px}.about-art{min-height:240px}.showreel-label .watch-time{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Studio CMS additions — rest of public design is unchanged. */
.project-card .card-copy .card-client{color:#868b90;font-size:12px;margin:6px 0 0;font-weight:600}
.detail-client{font-size:15px;color:#747a80;font-weight:700;margin:0 0 10px}.detail-client[hidden]{display:none}

/* Inquiry form: functional AJAX submission, original design retained. */
.inquiry-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
#inquiry-submit:disabled{cursor:wait;opacity:.7}
#inquiry-status{min-height:1.2em;margin-top:13px;font-size:13px;font-weight:650}
#inquiry-status.is-success{color:#17643e}
#inquiry-status.is-error{color:#aa3426}
.form-footnote a{text-decoration:underline;text-underline-offset:3px}

/* Portfolio browsing refinement: preserve the existing Rugved visual language. */
.portfolio-more-wrap{display:flex;justify-content:center;margin-top:43px}
.portfolio-more-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-width:244px;padding:9px 9px 9px 27px;border-radius:100px;border:1px solid #e2e4e5;background:#fff;color:#202429;box-shadow:0 6px 22px rgba(20,25,28,.04);font-size:13px;font-weight:800;transition:transform .22s,border-color .22s,box-shadow .22s,background .22s}
.portfolio-more-btn:hover,.portfolio-more-btn:focus-visible{transform:translateY(-3px);border-color:#f2a38d;box-shadow:0 12px 32px rgba(242,104,61,.13);outline:none}
.portfolio-more-icon{width:41px;height:41px;display:grid;place-items:center;border-radius:50%;background:#f2683d;color:#fff;font-size:20px;line-height:1;transition:transform .22s,background .22s}
.portfolio-more-btn:hover .portfolio-more-icon,.portfolio-more-btn:focus-visible .portfolio-more-icon{transform:rotate(45deg);background:#da522b}
.archive-section{margin-bottom:67px}
.archive-section:last-of-type{margin-bottom:0}
.archive-heading{font:800 clamp(22px,2.3vw,31px)/1.24 Manrope,Arial,sans-serif;letter-spacing:-.04em;margin:0 0 26px}
.archive-section[data-archive-section="featured"]:not(:first-child){padding-top:43px;border-top:1px solid var(--line)}
.archive-section[hidden],.empty-state[hidden]{display:none!important}
@media(max-width:520px){.portfolio-more-wrap{margin-top:32px}.portfolio-more-btn{width:100%;min-width:0}.archive-section{margin-bottom:48px}}

/* 2026-09-22: centered, modern portfolio navigation CTA */
#work .portfolio-more-wrap{display:flex;position:relative;width:100%;align-items:center;justify-content:center;text-align:center;margin:44px auto 0;clear:both}
#work .portfolio-more-btn{display:inline-flex;align-items:center;justify-content:center;gap:28px;width:auto;min-width:262px;max-width:100%;margin-inline:auto;padding:9px 10px 9px 25px;border:1px solid #e6e8e9;border-radius:18px;background:#fff;color:#1d2226;box-shadow:0 9px 30px rgba(29,34,38,.065);font-size:13px;font-weight:800;letter-spacing:-.012em;line-height:1.2;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
#work .portfolio-more-btn:hover,#work .portfolio-more-btn:focus-visible{transform:translateY(-3px);border-color:#ec9b83;box-shadow:0 15px 35px rgba(28,29,30,.11);outline-offset:4px}
#work .portfolio-more-icon{display:grid;place-items:center;flex:0 0 40px;height:40px;width:40px;border-radius:12px;background:#f2683d;color:white;font-size:21px;font-weight:500;transition:transform .22s ease,background .22s ease}
#work .portfolio-more-btn:hover .portfolio-more-icon{transform:translate(2px,-2px);background:#dc592f}
@media(max-width:520px){#work .portfolio-more-wrap{margin-top:32px}#work .portfolio-more-btn{width:min(100%,360px);justify-content:space-between}}

/* RUGVED V3 — subtle, non-destructive client experience upgrades */
@media(min-width:1051px){.hero-inner{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:48px}.hero h1{font-size:clamp(49px,4.65vw,74px)}}
.hero-video{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:2;background:#141618}
.showreel-frame{aspect-ratio:16/9;isolation:isolate}
.showreel-frame .showreel-poster{position:absolute;inset:0;z-index:1}
.hero-video-actions{position:absolute;left:16px;right:16px;bottom:16px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none}
.hero-video-caption{font-size:10px;font-weight:800;letter-spacing:.12em;text-shadow:0 1px 8px #000;color:#fff;background:rgba(10,13,17,.5);padding:7px 10px;border-radius:8px}
.hero-sound-button{pointer-events:auto;background:#fff;color:#181b1e;border:1px solid #fff;font-size:11px;font-weight:800;padding:10px 13px;border-radius:999px;box-shadow:0 8px 24px #0005;transition:transform .2s,background .2s}
.hero-sound-button:hover{transform:translateY(-2px);background:#ffeddf}
.card-thumb{border-radius:13px;width:100%;padding:0;text-align:left;cursor:pointer}
.thumb-play{top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:55px;height:55px;background:#fff;color:#171b1f;box-shadow:0 10px 30px #0005;transition:transform .22s,background .22s}
.thumb-play svg{height:19px;width:19px;margin-left:3px}
.project-card:hover .thumb-play,.card-thumb:focus-visible .thumb-play{transform:translate(-50%,-50%) scale(1.08);background:#ffe1d5}
.card-thumb:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.brand-band[hidden]{display:none!important}
.brand-band{padding:54px 0 68px;background:#fafaf9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.brand-intro{margin-bottom:25px}.brand-intro h2{font-family:Manrope,Arial,sans-serif;letter-spacing:-.045em;font-weight:800;line-height:1.2;font-size:clamp(27px,3vw,38px);margin:8px 0}
.brand-intro p{color:var(--muted);font-size:13px;margin:0}
.brand-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.brand-tile{min-height:93px;display:flex;align-items:center;justify-content:center;text-align:center;padding:17px 15px;border:1px solid #e8e9e9;border-radius:13px;background:white;transition:transform .2s,border-color .2s}
.brand-tile strong{font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:clamp(13px,1.3vw,18px);letter-spacing:-.035em;overflow-wrap:anywhere}
.brand-tile img{display:block;width:100%;height:54px;max-width:165px;object-fit:contain}
.brand-tile:hover{transform:translateY(-2px);border-color:#ffc4b3}
@media(max-width:1050px){.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-band{padding:42px 0}.hero-video-caption{font-size:8px;letter-spacing:.05em}.hero-sound-button{font-size:10px;padding:9px}}

/* V4: give the lead film more visual weight while retaining mobile layout. */
@media(min-width:1051px){.hero-inner{grid-template-columns:minmax(0,.80fr) minmax(0,1.20fr);gap:35px}.hero-media{min-width:0}.hero h1{font-size:clamp(46px,4.5vw,72px)}}
.showreel-frame .hero-mp4{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2;background:#15191c}
.showreel-frame .hero-mp4[hidden],.showreel-frame iframe[hidden]{display:none!important}

/* V5 — responsive watch panel, softer larger play target, and service galleries. */
.modal-open{overflow:hidden!important}
.card-thumb .thumb-play{width:76px;height:76px;border:1px solid rgba(255,255,255,.67);background:rgba(255,255,255,.32);backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px);box-shadow:0 12px 38px #0005;color:#fff;display:grid;place-items:center}
.card-thumb .thumb-play svg{width:27px;height:27px;margin-left:4px;filter:drop-shadow(0 1px 2px #0005)}
.card-thumb .thumb-play:before{content:'';position:absolute;inset:10px;border-radius:50%;background:rgba(20,24,28,.40);z-index:-1}
.project-card:hover .thumb-play,.card-thumb:focus-visible .thumb-play{transform:translate(-50%,-50%) scale(1.095);background:rgba(255,255,255,.48);color:#fff}
.card-title-button{font:inherit;font-weight:inherit;letter-spacing:inherit;color:inherit;background:none;border:0;padding:0;text-align:left;line-height:inherit;cursor:pointer}
.card-title-button:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px}
.card-title-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}
.video-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:clamp(12px,3vw,50px)}
.video-modal[hidden]{display:none!important}
.video-modal .modal-backdrop{position:absolute;inset:0;background:rgba(8,11,14,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:0;cursor:pointer}
.video-modal .modal-dialog{position:relative;z-index:1;width:min(1320px,100%);max-height:min(850px,94vh);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 40px 110px #0009;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);align-items:stretch}
.modal-close{position:absolute;z-index:7;right:16px;top:16px;border:1px solid #e6e6e6;border-radius:99px;background:#fff;color:#1a1f22;font-size:12px;font-weight:800;padding:10px 14px;box-shadow:0 3px 20px #0002;cursor:pointer}
.modal-close:hover{background:#fff0e9;border-color:#ffb8a2}
.modal-player-area{background:#111416;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:18px}
.modal-player{width:100%;aspect-ratio:16/9;background:#000;overflow:hidden;border-radius:12px}
.modal-player iframe{display:block;width:100%;height:100%;border:0;aspect-ratio:16/9}
.modal-player-note{margin:12px 0 0;color:#bdc2c7;text-align:center;font-size:11px}
.modal-project-info{min-width:0;max-height:inherit;overflow-y:auto;padding:80px clamp(24px,3vw,42px) 34px;display:flex;align-items:flex-start;flex-direction:column}
.modal-eyebrow{color:#f2683d;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin-bottom:16px}
.modal-project-info h2{font-family:Manrope,Arial,sans-serif;letter-spacing:-.05em;font-size:clamp(25px,2.6vw,39px);line-height:1.18;margin:0 0 17px;overflow-wrap:anywhere}
.modal-client{font-size:12px;font-weight:800;color:#666e73;margin:0 0 20px}
.modal-project-info>p{font-size:14px;line-height:1.8;color:#596067;margin:0 0 22px;white-space:pre-line}
.modal-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:14px}
.modal-tags span{border:1px solid #e7e7e7;border-radius:99px;background:#f8f8f7;padding:5px 10px;font-size:11px;font-weight:700;color:#596067}
.modal-inquiry{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;margin-top:24px;padding:13px 17px;border-radius:11px;background:#f2683d;color:#fff;font-size:12px;font-weight:800}
.modal-inquiry:hover{background:#df5530}
#services[hidden]{display:none!important}
.service-actions{margin-top:auto;display:grid;gap:10px;justify-items:start}
.service-view{display:inline-flex;align-items:center;gap:13px;border-radius:99px;padding:11px 15px;border:1px solid rgba(242,104,61,.23);color:#cd4e2d;background:rgba(242,104,61,.085);font-size:12px;font-weight:800;transition:background .2s,transform .2s}
.service-view:hover,.service-view:focus-visible{transform:translateY(-2px);background:rgba(242,104,61,.16);outline-offset:3px}
.service-actions .service-link{margin-top:0}
.service-archive-empty{margin-top:24px;padding:22px;border:1px solid #e9e9e9;border-radius:13px;background:white;color:#60676e}
@media(max-width:900px){.video-modal .modal-dialog{grid-template-columns:1fr;width:min(740px,100%);overflow-y:auto}.modal-player-area{padding:12px}.modal-project-info{padding:28px 24px 32px;overflow:visible}.modal-close{top:15px;right:15px}.modal-player-area{padding-top:59px}.modal-project-info h2{font-size:clamp(24px,5vw,33px)}}
@media(max-width:520px){.card-thumb .thumb-play{width:68px;height:68px}.video-modal{padding:8px}.video-modal .modal-dialog{max-height:95dvh;border-radius:16px}.modal-player-area{padding:56px 8px 9px}.modal-project-info{padding:22px 18px 25px}.modal-project-info h2{font-size:25px}.modal-close{right:10px;top:10px}}

/* V7: single-circle play control, hero framing, unobtrusive sound control */
.card-thumb .thumb-play{width:56px;height:56px;border:1px solid rgba(255,255,255,.88);background:rgba(255,255,255,.75);color:#171b1f;box-shadow:0 9px 28px rgba(0,0,0,.26);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:none;z-index:3}
.card-thumb .thumb-play::before{display:none!important;content:none!important}
.card-thumb .thumb-play svg{width:28px;height:28px;margin-left:4px;filter:none}
.project-card:hover .thumb-play,.card-thumb:focus-visible .thumb-play{background:rgba(255,255,255,.93);color:#171b1f;transform:translate(-50%,-50%) scale(1.08)}
.showreel-frame .showreel-poster,.showreel-frame .hero-mp4,.showreel-frame .hero-video{transform-origin:center center;transition:transform .14s ease-out}
.showreel-frame .showreel-poster:hover{filter:brightness(.67)}
.hero-video-actions{inset:0;display:block;pointer-events:none}
.hero-video-caption{position:absolute;bottom:14px;left:14px;max-width:calc(100% - 100px)}
.hero-sound-button{position:absolute;right:14px;top:14px;bottom:auto;min-height:40px;width:40px;height:40px;padding:9px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.65);backdrop-filter:blur(9px);box-shadow:0 5px 22px rgba(0,0,0,.25)}
.hero-sound-button svg{width:20px;height:20px;display:block}
.hero-sound-button:hover{background:white}
.hero-mp4:fullscreen{transform:none!important;object-fit:contain!important}
@media(max-width:520px){.card-thumb .thumb-play{width:51px;height:51px}.card-thumb .thumb-play svg{width:27px;height:27px}.hero-sound-button{right:10px;top:10px;width:36px;height:36px;min-height:36px}}

/* V8: hero controls change the size and placement of the video WINDOW, not zoom the footage. */
.hero-media{min-width:0;overflow:visible}
.hero-media .showreel-frame{left:50%;margin-inline:0;max-width:calc(100vw - 36px);transform:translate(-50%,0);transition:width .22s ease,transform .22s ease}
.hero-media .showreel-frame .showreel-poster,.hero-media .showreel-frame .hero-mp4,.hero-media .showreel-frame .hero-video{transform:none!important;transform-origin:initial;transition:none}
.hero-media .showreel-frame .showreel-poster:hover{transform:none!important}
@media (prefers-reduced-motion: reduce){.hero-media .showreel-frame{transition:none}}

/* V12 — project details: clear editorial hierarchy without changing player size. */
.video-modal .modal-project-info{padding:70px clamp(22px,2.6vw,38px) 0;display:flex;flex-direction:column;gap:0;min-height:0;overflow:hidden}
.modal-info-header{padding-bottom:20px;border-bottom:1px solid #ecedef;flex:none}
.video-modal .modal-eyebrow{display:block;margin:0 0 12px;color:#e75e37;font-size:11px;font-weight:800;letter-spacing:.12em}
.video-modal .modal-project-info h2{font-size:clamp(23px,2.25vw,32px);line-height:1.23;letter-spacing:-.045em;margin:0 0 13px}
.video-modal .modal-client{display:inline-flex;width:fit-content;margin:0;padding:8px 12px;border:1px solid #e7e9ea;background:#f7f7f5;color:#464c51;border-radius:9px;font-size:12px;font-weight:700}
.video-modal .modal-client[hidden]{display:none}
.modal-summary-scroll{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:22px 8px 19px 0}
.modal-description p{margin:0 0 17px;white-space:pre-line;overflow-wrap:anywhere}
.modal-description .modal-description-lead{font-size:15px;color:#292f33;line-height:1.67;font-weight:600}
.modal-description .modal-description-text{color:#626970;font-size:13.5px;line-height:1.75}
.modal-info-footer{border-top:1px solid #eceeef;padding:16px 0 26px;flex:none;background:#fff}
.video-modal .modal-tags{margin:0;padding:0 0 14px;gap:6px}
.video-modal .modal-tags:empty{display:none}
.video-modal .modal-inquiry{margin:0;display:flex;width:100%;justify-content:center;gap:15px;padding:15px 18px;border-radius:12px;min-height:48px}
.privacy-content{margin-top:45px;padding-top:12px;border-top:1px solid #e8e9e9;max-width:800px}
.privacy-content h2{font-size:22px;letter-spacing:-.035em;margin:36px 0 10px}.privacy-content p{font-size:15px;line-height:1.78;color:#59636d;margin:0}
.privacy-content a{color:#de5734;text-decoration:underline}
@media(max-width:900px){.video-modal .modal-project-info{overflow:visible;min-height:auto;padding:24px 23px 0}.modal-summary-scroll{overflow:visible;max-height:none;padding:19px 0}.modal-info-footer{padding:18px 0 23px}}
@media(max-width:520px){.video-modal .modal-project-info{padding:22px 18px 0}.video-modal .modal-project-info h2{font-size:24px}.modal-description .modal-description-lead{font-size:14px}}
.modal-info-header,.modal-summary-scroll,.modal-info-footer{width:100%;min-width:0}
