@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#090a0d;--panel:#101115;--panel2:#15161a;--line:rgba(255,255,255,.12);--text:#f5f2ed;--muted:#9e9c9a;--gold:#edc45f;--wrap:1320px;color-scheme:dark;font-family:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);margin:0;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::selection{color:#08090c;background:var(--gold)}.wrap{width:min(var(--wrap),calc(100% - 112px));margin-inline:auto}.section{padding:128px 0}.eyebrow{display:block;font-size:10px;line-height:1.4;font-weight:700;letter-spacing:.21em;color:var(--gold);text-transform:uppercase}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:56px}.section-head h2{max-width:690px;font-size:clamp(34px,4.6vw,66px);letter-spacing:-.067em;line-height:1.09;font-weight:500;margin:18px 0 0}.section-head>p{max-width:350px;margin:0 0 8px;color:var(--muted);font-size:14px;line-height:1.8}
.site-header{height:82px;position:absolute;z-index:30;inset:0 0 auto;background:linear-gradient(180deg,rgba(0,0,0,.54),transparent)}.nav{height:100%;display:flex;align-items:center;gap:32px}.wordmark{white-space:nowrap;font-weight:800;font-size:21px;letter-spacing:.08em}.wordmark-dot{color:var(--gold)}.nav-links{display:flex;align-items:center;gap:34px;margin:auto}.nav-links a{font-size:12px;color:#dedbd6;transition:color .2s}.nav-links a:hover{color:var(--gold)}.nav-cta{font-size:11px;font-weight:600;padding:14px 22px;border:1px solid var(--gold);border-radius:30px;white-space:nowrap}.nav-cta span{margin-left:14px;color:var(--gold)}.nav-cta:hover{background:var(--gold);color:#0e0e0e}.nav-cta:hover span{color:inherit}.menu-toggle{display:none;background:transparent;border:none;width:38px;height:38px;padding:9px}.menu-toggle span{display:block;width:100%;height:1px;background:white;margin:8px 0}
.hero{min-height:min(900px,100svh);height:800px;position:relative;display:flex;align-items:center;background:#070708 var(--hero-image) center/cover no-repeat}.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,6,8,.95) 0%,rgba(6,6,8,.70) 34%,rgba(6,6,8,.10) 73%),linear-gradient(0deg,rgba(5,5,7,.78),transparent 36%)}.hero-inner{position:relative;z-index:1;padding-top:65px}.hero-inner .eyebrow:before{content:'';display:inline-block;vertical-align:middle;background:var(--gold);width:26px;height:1px;margin-right:15px}.hero h1{max-width:800px;font-size:clamp(48px,7.9vw,108px);font-weight:600;line-height:.99;letter-spacing:-.075em;margin:34px 0}.hero-description{max-width:520px;font-size:15px;line-height:1.9;color:#d0ceca}.hero-actions{display:flex;gap:16px;margin-top:35px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:36px;min-height:48px;padding:15px 24px;font-size:12px;font-weight:700;border:1px solid transparent;transition:background .2s,border .2s,transform .2s}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#100e09}.btn-gold:hover{background:#ffe29b}.btn-outline{border-color:#848383;color:#fff;background:rgba(0,0,0,.18)}.btn-outline:hover{border-color:#fff}.hero-bottom{position:absolute;bottom:27px;left:50%;transform:translateX(-50%);z-index:1;display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:700;color:#bdbdbd;letter-spacing:.18em}.scroll-indicator span{display:block;font-size:17px;text-align:center;margin-top:10px}
.works-section{background:#0b0c0f}.filter-list{display:flex;flex-wrap:wrap;gap:10px;margin:-12px 0 40px}.filter{border:1px solid #404044;background:transparent;padding:10px 18px;border-radius:24px;color:#c6c5c2;font-size:11px}.filter:hover,.filter.active{background:var(--gold);color:#171310;border-color:var(--gold)}.filter sup{font-size:8px;margin-left:4px}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 24px}.project-card-wide{grid-column:1/-1}.project-media{position:relative;display:block;width:100%;overflow:hidden;background:#1a1b20;border:0;padding:0;aspect-ratio:1.85;text-align:left;color:white}.project-card-wide .project-media{aspect-ratio:2.42}.project-media>img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.project-card:hover .project-media>img{transform:scale(1.035)}.project-media .media-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.48))}.project-index{position:absolute;top:20px;left:22px;color:#fff;font-size:12px;letter-spacing:.08em}.not-ready,.media-action{position:absolute;bottom:18px;right:18px;border:1px solid rgba(255,255,255,.55);background:rgba(0,0,0,.5);padding:9px 13px;font-size:10px;letter-spacing:.11em}.play-circle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #fff;background:rgba(0,0,0,.29);width:64px;height:64px;display:grid;place-items:center;border-radius:50%;font-size:19px}.playable:hover .play-circle{background:var(--gold);color:#0b0c0e;border-color:var(--gold)}.project-info{padding:19px 0 0}.project-category{font-size:10px;color:var(--gold);letter-spacing:.12em;text-transform:uppercase}.project-info h3{font-size:clamp(22px,2.6vw,34px);font-weight:500;letter-spacing:-.05em;margin:10px 0}.project-info p{font-size:13px;line-height:1.8;max-width:550px;color:var(--muted);margin:0}.project-card[hidden]{display:none}.empty-state{color:var(--muted)}
.interlude{background:radial-gradient(ellipse at 75% 40%,rgba(94,68,34,.21),transparent 55%),#151314;padding:115px 0}.interlude p{font-size:clamp(37px,5.2vw,73px);line-height:1.16;letter-spacing:-.065em;margin:23px 0 0}.interlude em{font-style:normal;color:var(--gold)}.services-section{background:#0e0f12}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.service-card{min-height:370px;background:#202127 var(--service-image) center/cover no-repeat;position:relative;padding:24px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.service-card:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(2,3,7,.96),rgba(2,3,7,.13) 76%)}.service-number{font-size:13px;letter-spacing:.15em}.service-card h3{font-weight:600;letter-spacing:-.045em;font-size:22px;max-width:290px;line-height:1.16;margin:0 0 12px}.service-card p{font-size:12px;line-height:1.65;color:#dedcd7;max-width:320px}.service-card a{font-size:11px;color:var(--gold);font-weight:700}.service-card a span{margin-left:10px}
.process-section{padding:115px 0;background:#17181c}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.process-layout h2{font-size:clamp(35px,4.8vw,65px);letter-spacing:-.067em;line-height:1.1;font-weight:500;margin:25px 0}.process-layout>div>p{color:var(--muted);font-size:14px;line-height:1.8;max-width:440px}.process-steps>div{display:grid;grid-template-columns:26px 1fr;column-gap:16px;padding:21px 0;border-bottom:1px solid var(--line)}.process-steps>div>span{grid-row:span 2;color:var(--gold);font-size:11px}.process-steps strong{font-size:16px;font-weight:600}.process-steps p{margin:7px 0 0;color:var(--muted);font-size:12px}
.about-section{background:#0b0c0f}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.team-image{aspect-ratio:1.06;background:#000;overflow:hidden}.team-image img{width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:saturate(.82);transition:transform .5s}.team-card:hover img{transform:scale(1.035)}.team-card h3{font-size:20px;letter-spacing:-.04em;margin:18px 0 6px}.team-card p{font-size:12px;margin:0;color:var(--gold)}
.contact-section{padding:125px 0 115px;background:radial-gradient(ellipse at 88% 12%,rgba(92,61,31,.25),transparent 40%),#121113}.contact-section h2{font-size:clamp(38px,5.3vw,72px);letter-spacing:-.065em;line-height:1.06;font-weight:500;margin:22px 0}.contact-description{font-size:14px;color:var(--muted);line-height:1.8}.contact-options{margin:55px 0 60px;max-width:920px}.contact-link{display:grid;grid-template-columns:180px 1fr 24px;gap:15px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line);font-size:13px}.contact-link span:first-child{color:var(--muted)}.contact-link strong{font-weight:500}.contact-link span:last-child{color:var(--gold);font-size:17px}.contact-link:hover strong{color:var(--gold)}.contact-form{max-width:730px}.contact-form h3{font-size:22px;font-weight:600;margin:0 0 6px}.contact-form>p{color:var(--muted);font-size:13px;margin:0 0 24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:block;font-size:12px;margin-bottom:16px}.contact-form input,.contact-form textarea{display:block;margin-top:10px;width:100%;background:#1c1d21;border:1px solid #37383d;border-radius:0;color:#fff;padding:15px 16px;outline:none;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold)}.contact-form small{display:block;font-size:10px;max-width:600px;line-height:1.5;color:#8b8b8e;margin-top:15px}.form-status{font-size:13px;margin:12px 0!important}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.footer{padding:35px 0;border-top:1px solid var(--line)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-inner>span,.footer-inner>a:last-child{font-size:10px;color:var(--muted)}
.video-modal[hidden]{display:none}.video-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center}.video-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.91)}.video-modal-shell{position:relative;width:min(1100px,calc(100% - 42px));max-height:95svh}.video-modal-top{display:flex;align-items:center;justify-content:space-between;padding:0 0 16px;font-size:14px}.video-modal-top button{background:transparent;border:1px solid #666;color:#fff;border-radius:50%;width:36px;height:36px}.video-modal-container{aspect-ratio:16/9;background:#000}.video-modal-container iframe,.video-modal-container video{display:block;width:100%;height:100%;border:0}.locked-scroll{overflow:hidden}
@media(max-width:1050px){.wrap{width:calc(100% - 68px)}.hero{height:740px}.services-grid{grid-template-columns:repeat(2,1fr)}.process-layout{gap:50px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.site-header{height:68px}.nav-cta{margin-left:auto;font-size:10px;padding:11px 12px}.nav-cta span{margin-left:3px}.menu-toggle{display:block}.nav-links{position:absolute;top:67px;left:0;right:0;background:#101014;padding:26px 22px;flex-direction:column;align-items:flex-start;gap:25px;display:none;border-bottom:1px solid #444}.nav-links.open{display:flex}.nav-links a{font-size:16px}.hero{height:auto;min-height:750px;min-height:100svh;background-position:65% center}.hero-scrim{background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.39)),linear-gradient(0deg,#090a0c,transparent 32%)}.hero-inner{padding-top:40px}.hero h1{font-size:clamp(49px,13vw,76px)}.hero-description{font-size:13px;max-width:390px}.hero-bottom>span:last-child{display:none}.hero-bottom{font-size:8px}.section{padding:84px 0}.section-head{display:block;margin-bottom:40px}.section-head h2{font-size:42px}.section-head>p{margin-top:25px}.projects-grid{grid-template-columns:1fr;gap:37px}.project-card-wide{grid-column:auto}.project-card-wide .project-media,.project-media{aspect-ratio:1.45}.filter-list{margin:0 0 30px}.interlude{padding:85px 0}.interlude p{font-size:39px}.services-grid{grid-template-columns:1fr;gap:12px}.service-card{min-height:360px}.process-layout{grid-template-columns:1fr;gap:18px}.process-section{padding:85px 0}.team-grid{grid-template-columns:1fr 1fr;gap:22px 12px}.team-image{aspect-ratio:.86}.team-card h3{font-size:16px}.contact-section{padding:90px 0}.contact-options{margin:30px 0 50px}.contact-link{grid-template-columns:1fr 25px;gap:5px}.contact-link span:first-child{grid-column:1/-1}.contact-link strong{font-size:15px}.contact-link span:last-child{grid-column:2;grid-row:2}.form-row{grid-template-columns:1fr;gap:0}.footer-inner{flex-wrap:wrap}.footer-inner>span{order:3;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:0.01ms!important}}

/* REKA v2: four portfolio cards per page; original typography/colors unchanged. */
.featured-projects:empty{display:none}
.featured-projects:not(:empty){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 24px;margin-bottom:44px}
.featured-projects .project-card-wide{grid-column:1/-1}
.featured-projects .project-card[hidden]{display:none}
.featured-projects:has(.project-card:not([hidden])){margin-bottom:44px}
.featured-projects:not(:has(.project-card:not([hidden]))){display:none}
.project-spacer{min-height:345px;background:transparent;pointer-events:none}
.portfolio-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:57px}
.portfolio-pagination[hidden]{display:none}
.page-numbers{display:flex;align-items:center;gap:8px}
.page-arrow,.page-number{height:42px;min-width:42px;border:1px solid #393a3e;background:transparent;color:#dbd9d2;font:inherit;font-size:14px;cursor:pointer;transition:border-color .25s,background .25s,color .25s}
.page-arrow{font-size:20px}
.page-number:hover,.page-arrow:not(:disabled):hover{border-color:#d8ad59;color:#edc45f}
.page-number.active{border-color:#d8ad59;background:#d8ad59;color:#08090b}
.page-arrow:disabled{opacity:.32;cursor:default}
.page-indicator{color:#a19c92;font-size:11px;letter-spacing:.12em;margin-left:4px;font-variant-numeric:tabular-nums}
#projects-grid{scroll-margin-top:110px}
@media(max-width:700px){.featured-projects:not(:empty){grid-template-columns:1fr;gap:37px;margin-bottom:37px}.project-spacer{display:none}.portfolio-pagination{margin-top:35px;gap:9px}.page-arrow,.page-number{height:40px;min-width:40px}}
