:root{--ink:#0c3650;--paper:#f3efed;--lime:#c89152;--gold:#c89152;--navy:#0c3650;--navy-deep:#08283d;--muted:#8d8580;--line:rgba(12,54,80,.2)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{height:96px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:20;width:100%;color:#fff;border-bottom:1px solid #ffffff33}.brand{display:flex;align-items:center;gap:11px;font-size:12px;font-weight:700;line-height:.9;letter-spacing:.08em}.brand-mark{width:32px;height:32px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;position:relative}.brand-mark:before,.brand-mark:after{content:"";position:absolute;background:currentColor}.brand-mark:before{width:1px;height:25px}.brand-mark:after{height:1px;width:25px}.brand-mark i{width:6px;height:6px;background:var(--lime);transform:rotate(45deg);z-index:2}nav{display:flex;align-items:center;gap:34px;font-size:13px}nav a:not(.nav-cta){opacity:.78}nav a:hover{opacity:1}.nav-cta{border:1px solid #ffffff66;padding:13px 16px}.nav-cta span{color:var(--lime);margin-left:20px}.menu-toggle{display:none}.hero{height:min(900px,100vh);min-height:680px;position:relative;color:white;overflow:hidden;background:#0b0e0f}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center}.hero-shade{background:linear-gradient(90deg,rgba(5,8,9,.82) 0%,rgba(5,8,9,.46) 42%,rgba(5,8,9,.08) 72%),linear-gradient(0deg,rgba(0,0,0,.35),transparent 45%)}.hero-content{position:absolute;left:7.5vw;top:24%;z-index:2}.eyebrow,.section-label{font:500 11px DM Mono,monospace;text-transform:uppercase;letter-spacing:.16em}.eyebrow{display:flex;align-items:center;gap:10px;color:#deded8}.eyebrow span{height:7px;width:7px;background:var(--lime)}h1{font-size:clamp(74px,10.5vw,164px);line-height:.78;letter-spacing:-.075em;margin:55px 0 40px;font-weight:500}h1 em,.statement h2 em{font-weight:400;font-family:Georgia,serif}.hero-copy{font-size:15px;line-height:1.65;max-width:390px;color:#d2d2cc;margin-left:36vw}.circle-link{position:absolute;top:46%;left:-3vw;width:115px;height:115px;border:1px solid #ffffff66;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:14px;text-transform:uppercase;font:10px DM Mono,monospace;letter-spacing:.08em;transition:.3s}.circle-link:hover{background:var(--lime);color:#111;border-color:var(--lime);transform:rotate(-8deg)}.circle-link b{font-size:18px}.frame-count{position:absolute;right:4vw;bottom:36px;font:10px DM Mono;color:#aaa;letter-spacing:.1em}.hero-rule{position:absolute;bottom:36px;left:4vw;width:62%;height:1px;background:#ffffff44}.section-pad{padding:130px 7.5vw}.section-label{display:flex;gap:18px;align-items:center}.section-label span{color:#7a7a72}.intro{border-bottom:1px solid var(--line)}.intro-copy{display:grid;grid-template-columns:2fr 1fr;gap:8vw;align-items:end;margin-top:80px}.intro h2{font-size:clamp(48px,6.2vw,96px);line-height:.98;letter-spacing:-.06em;margin:0;font-weight:500}.intro h2 span{font-family:Georgia,serif;font-weight:400;color:#a6a49b}.intro-aside p{font-size:16px;line-height:1.7;margin:0 0 46px}.text-link{display:inline-flex;gap:40px;padding-bottom:8px;border-bottom:1px solid;font:11px DM Mono;text-transform:uppercase;letter-spacing:.1em}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:70px}.section-heading p{color:#77766f;font-size:13px}.work{background:#171715;color:#f4f2ea}.projects{display:grid;grid-template-columns:1.25fr .75fr;gap:4vw}.project{margin-bottom:80px}.project-c{grid-column:1/-1;width:76%;margin-left:auto}.project-art{height:520px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.art-one{background:radial-gradient(circle at 70% 40%,#d3a962 0 5%,transparent 24%),linear-gradient(135deg,#535e52,#15201d 65%)}.art-two{background:linear-gradient(160deg,#913b2d,#351712)}.art-three{background:linear-gradient(115deg,#a9c5c4,#4b706f 60%,#172d2c)}.project-art:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 20%,#ffffff0a 20.2% 20.35%);mix-blend-mode:overlay}.film-title{font-size:clamp(58px,8vw,120px);line-height:.72;font-weight:700;letter-spacing:-.08em;z-index:1}.film-title.small{font-size:53px}.film-title.light{color:#eaf4e8;text-align:right}.portrait{position:absolute;width:190px;height:370px;border-radius:45% 45% 5% 5%;background:#140b09;right:9%;bottom:-20%;box-shadow:0 0 80px #f39a6d55}.play{position:absolute;z-index:3;left:25px;bottom:25px;width:48px;height:48px;border-radius:50%;background:var(--lime);color:#111;display:grid;place-items:center;font-size:11px;padding-left:2px}.project-meta{display:grid;grid-template-columns:1fr auto;position:relative;padding-top:18px;border-top:1px solid #ffffff33}.project-meta h3{font-size:17px;margin:0 0 8px}.project-meta p,.project-meta span{font:10px DM Mono;color:#8d8d86;text-transform:uppercase;letter-spacing:.1em;margin:0}.project-meta span{grid-column:2;grid-row:1}.services{background:var(--lime)}.service-list{margin-top:80px;border-top:1px solid #1116}.service-list article{display:grid;grid-template-columns:70px 1.1fr 1fr 40px;gap:30px;align-items:center;padding:45px 0;border-bottom:1px solid #1116}.service-list article>span{font:11px DM Mono}.service-list h3{font-size:36px;line-height:1.05;margin:0}.service-list p{font-size:14px;line-height:1.7;max-width:390px}.service-list b{font-size:25px}.statement{background:#101210;color:#f2f0e9;overflow:hidden}.statement-track{font-size:clamp(20px,6vw,86px);white-space:nowrap;color:#ffffff08;font-weight:700;letter-spacing:-.06em;padding-top:40px}.statement-inner{text-align:center;padding-top:20px}.statement-inner p{font:11px DM Mono;text-transform:uppercase;letter-spacing:.15em;color:#999}.statement h2{font-size:clamp(60px,9vw,135px);line-height:.85;letter-spacing:-.07em;font-weight:500}.statement h2 em{color:var(--lime)}.contact{background:#e8e5dc}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:10vw;margin-top:80px;align-items:end}.contact h2{font-size:clamp(58px,7vw,105px);line-height:.91;letter-spacing:-.06em;margin:0;font-weight:500}.contact-grid p{font-size:16px;line-height:1.7;margin-bottom:45px}.contact-grid a{font:12px DM Mono;border-bottom:1px solid;padding-bottom:12px;display:flex;justify-content:space-between}.contact-grid a span{color:#557900}footer{background:#0c0d0c;color:#eee;padding:60px 7.5vw 35px;display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:50px;align-items:end;font:11px DM Mono;line-height:1.7}.footer-brand{font-family:Manrope}.socials{display:flex;gap:24px}.socials a{border-bottom:1px solid #ffffff44}.copyright{color:#777}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.cursor-glow{position:fixed;width:420px;height:420px;border-radius:50%;background:#c8ff3208;filter:blur(25px);pointer-events:none;z-index:50;transform:translate(-50%,-50%)}
@media(max-width:800px){.site-header{height:75px}.menu-toggle{display:flex;background:none;border:0;color:#fff;gap:12px;align-items:center}.menu-toggle i{width:18px;height:1px;background:currentColor;box-shadow:0 5px currentColor}nav{display:none;position:absolute;top:75px;left:0;right:0;background:#101210;padding:35px 5vw;flex-direction:column;align-items:flex-start}nav.open{display:flex}.hero{min-height:720px}.hero-content{left:5vw;right:5vw;top:23%}h1{font-size:22vw;margin-top:48px}.hero-copy{margin:0;max-width:280px}.circle-link{top:auto;left:auto;right:0;bottom:-180px}.hero-rule{left:5vw}.section-pad{padding:90px 5vw}.intro-copy,.contact-grid{grid-template-columns:1fr;gap:55px}.intro-copy{margin-top:55px}.projects{grid-template-columns:1fr}.project-c{grid-column:auto;width:100%;margin-left:0}.project-art{height:410px}.service-list article{grid-template-columns:35px 1fr 25px;gap:12px}.service-list article p{grid-column:2/-1}.service-list h3{font-size:28px}.contact h2{font-size:16vw}footer{grid-template-columns:1fr 1fr}.copyright{grid-column:2}.cursor-glow{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
.service-list p strong{display:block;margin-top:7px;font:500 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.1em}.service-list p strong a{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:2px}.service-list p strong a:hover{opacity:.6}
.service-copy h4{margin:18px 0 9px;font:500 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.1em}.client-links{margin:0;padding-left:18px;font:12px DM Mono,monospace;line-height:1.9}.client-links a{border-bottom:1px solid currentColor}.client-links a:hover{opacity:.6}@media(max-width:800px){.service-copy{grid-column:2/-1}}
.brand-logo{display:block;width:190px;height:auto;background:#f3f0f0}.site-header .brand-logo{width:176px}.footer-brand .brand-logo{width:210px}
@media(max-width:800px){.site-header .brand-logo{width:145px}.footer-brand .brand-logo{width:170px}}
.site-header{background:linear-gradient(180deg,rgba(8,40,61,.55),transparent);border-color:rgba(243,239,237,.25)}
.hero{background:var(--navy-deep)}
.hero-shade{background:linear-gradient(90deg,rgba(8,40,61,.9) 0%,rgba(8,40,61,.52) 42%,rgba(8,40,61,.08) 74%),linear-gradient(0deg,rgba(8,40,61,.48),transparent 45%)}
.eyebrow span,.brand-mark i{background:var(--gold)}
.circle-link:hover{background:var(--gold);border-color:var(--gold);color:var(--navy-deep)}
.work{background:var(--navy-deep);color:var(--paper)}
.art-one{background:radial-gradient(circle at 70% 40%,#c89152 0 5%,transparent 24%),linear-gradient(135deg,#71838a,var(--navy-deep) 65%)}
.art-two{background:linear-gradient(160deg,#c89152,#6e452d)}
.art-three{background:linear-gradient(115deg,#d9c6ad,#547083 60%,var(--navy-deep))}
.play{background:var(--gold);color:var(--navy-deep)}
.services{background:var(--gold);color:var(--navy-deep)}
.statement,footer{background:var(--navy-deep)}
.statement h2 em{color:var(--gold)}
.contact{background:#e8dfd6}
.contact-grid a span{color:var(--navy)}
.contact-form{display:grid;gap:10px;margin:0 0 35px}.contact-form label{font:500 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.12em}.contact-form label span{opacity:.65}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--navy);background:transparent;color:var(--navy);font:15px Manrope,Arial,sans-serif;padding:10px 0 12px;outline:none;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-bottom-width:2px}.contact-form button{display:flex;justify-content:space-between;align-items:center;margin-top:14px;border:1px solid var(--navy);background:var(--navy);color:var(--paper);padding:14px 16px;cursor:pointer;font:500 11px DM Mono,monospace;text-transform:uppercase;letter-spacing:.1em}.contact-form button:hover{background:transparent;color:var(--navy)}.contact-form button:disabled{cursor:wait;opacity:.65}.form-status{min-height:1.4em;margin:0!important;font:11px DM Mono,monospace!important}.form-honeypot{position:absolute;left:-9999px}.contact-email{margin-top:0}
.brand-logo{background:var(--paper)}
.cursor-glow{background:rgba(200,145,82,.07)}
.circle-link{left:auto;right:4vw;top:50%;z-index:3}
@media(max-width:800px){.circle-link{left:auto;right:5vw;top:62%;bottom:auto}}
.hero-copy{margin-left:0}
@media(max-width:800px){nav{background:var(--navy-deep)}}
.project-video-frame{position:relative;overflow:hidden;background:var(--navy-deep);height:520px}.project-video-frame video{display:block;width:100%;height:100%;object-fit:cover;background:var(--navy-deep)}
@media(max-width:800px){.project-video-frame{height:410px}}
.lowveld-logo-link{display:block;width:220px;margin-top:18px;padding:10px 14px;background:var(--navy-deep);border:1px solid rgba(255,255,255,.18);transition:transform .25s ease,opacity .25s ease}.lowveld-logo-link:hover{transform:translateY(-2px);opacity:.88}.lowveld-logo-link img{display:block;width:100%;height:auto}
@media(max-width:800px){.lowveld-logo-link{width:190px}}
