:root{--ink:#202b27;--paper:#f4f1e9;--muted:#68716a;--accent:#d9b993}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #b27843;outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:10px;z-index:10;background:white}header{height:98px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:var(--paper)}.brand{font-size:30px;letter-spacing:5px;line-height:1;font-weight:bold}.brand span{display:block;font-size:9px;letter-spacing:3.5px;margin-top:10px}nav{display:flex;align-items:center;gap:32px;font-size:13px}.navcta{border-bottom:1px solid;padding:10px 0}.hero{height:690px;min-height:65vh;position:relative;color:white;margin:0 18px}.hero>img,.shade{position:absolute;width:100%;height:100%;object-fit:cover}.shade{background:linear-gradient(90deg,rgba(8,23,19,.66),rgba(8,23,19,.12)),linear-gradient(0deg,rgba(8,23,19,.5),transparent)}.hero-content{position:relative;padding:110px 5vw}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:2.6px;margin:0 0 26px}h1,h2{font-family:Georgia,serif;font-weight:normal;line-height:1.06;letter-spacing:-2px;margin:0 0 28px}h1{font-size:clamp(58px,6.6vw,100px)}h2{font-size:clamp(40px,4vw,62px)}i{font-weight:normal}h3{font-weight:normal} .hero-content>p:not(.eyebrow){margin-bottom:32px}.button{display:inline-flex;gap:50px;align-items:center;background:var(--paper);color:var(--ink);padding:17px 25px;font-size:13px}.hero-bottom{position:absolute;bottom:28px;left:5vw;right:5vw;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px}.wrap{max-width:1400px;margin:auto;padding-left:6vw;padding-right:6vw}.intro{padding-top:110px;padding-bottom:100px;text-align:center}.intro p:last-child{max-width:630px;margin:auto;color:var(--muted)}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:30px}.sectionhead>p{color:var(--muted);font-size:14px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0}.filters button{border:1px solid #c9cdc4;background:transparent;padding:9px 20px;border-radius:30px;font-size:12px;cursor:pointer}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 28px}.film[hidden]{display:none}.still{position:relative;aspect-ratio:16/9;overflow:hidden;background:#deded4}.still img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.film:hover img{transform:scale(1.035)}.play{position:absolute;right:20px;top:20px;background:#f4f1e9e8;border-radius:50%;width:42px;height:42px;display:grid;place-items:center}.duration{position:absolute;bottom:14px;right:14px;background:#17211dba;color:white;font-size:11px;padding:3px 8px}.caption h3{font-family:Georgia,serif;font-size:26px;margin:15px 0 3px}.caption>span{font-size:11px;color:var(--muted)}#count{font-size:12px;color:var(--muted);padding:25px 0 65px}.services{background:var(--ink);color:var(--paper);padding:90px 0}.services .sectionhead>p{color:#c2c9c1}.servicegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:40px}.servicegrid article{border-top:1px solid #657068;padding-top:25px}.servicegrid span{color:var(--accent);font-size:12px}.servicegrid h3{font:27px Georgia,serif}.servicegrid p{font-size:14px;color:#c2c9c1}.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding-top:120px;padding-bottom:100px}.photo{position:relative}.photo img{width:100%;height:570px;object-fit:cover}.photo span{position:absolute;bottom:25px;left:25px;color:white;font-size:10px;letter-spacing:2px}.about p:not(.eyebrow){color:var(--muted)}.textlink{display:inline-block;margin-top:20px;border-bottom:1px solid;padding-bottom:8px;font-size:13px}.process{padding-bottom:100px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;border-top:1px solid #c9cdc4;padding-top:30px}.steps span{font-size:10px;letter-spacing:2px}.steps h3{font:25px Georgia,serif}.steps p{font-size:14px;color:var(--muted)}.contact{background:#ded8c8;padding:85px 0}.contact h2{font-size:clamp(55px,7vw,100px)}.contactrow{display:flex;align-items:center;justify-content:space-between;gap:30px}.contact .button{background:var(--ink);color:white}.small{font-size:11px;color:#586258}.small a{text-decoration:underline}footer{display:flex;align-items:center;gap:30px;padding-top:50px;padding-bottom:50px;flex-wrap:wrap}footer p{flex:1;font-size:12px}footer>a:not(.brand),footer small{font-size:11px}@media(max-width:760px){header{height:80px}.brand{font-size:23px}nav{gap:16px}nav a:not(.navcta){display:none}.hero{margin:0 8px;height:650px}.hero-content{padding-top:100px}.hero-bottom{flex-direction:column;gap:12px}.sectionhead,.contactrow{display:block}.grid{grid-template-columns:1fr}.servicegrid{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr}.photo img{height:430px}.steps{grid-template-columns:1fr;gap:15px}.intro,.about{padding-top:70px;padding-bottom:70px}.contactrow .button{margin:20px 0}footer p{flex-basis:100%}.filters{gap:7px}.filters button{padding:8px 13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.still img{transition:none}}
/* Manaia / contemporary film studio direction */
:root{--ink:#f2f2ed;--paper:#101110;--muted:#a4a7a0;--accent:#d6ef7a}body{font-family:Arial,Helvetica,sans-serif}header{height:110px;padding:14px 4vw;border-bottom:1px solid #30322c}.brand{display:block;line-height:0}.brand img{width:125px;height:82px;object-fit:contain}nav{font-size:12px;gap:40px}.navcta{border:1px solid #55594b;border-radius:30px;padding:12px 23px}h1,h2,h3{font-family:Arial,Helvetica,sans-serif}h1,h2{font-weight:800;letter-spacing:-.065em}h2 i{font-family:Georgia,serif;font-weight:normal;letter-spacing:-.055em}.hero{height:auto;min-height:0;margin:0;padding:35px 4vw 0;color:var(--ink)}.hero-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.hero-top .eyebrow{margin:0}.hero-index{font:9px monospace;letter-spacing:1px;color:var(--muted)}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:8px}.hero h1{font-size:clamp(70px,12vw,190px);line-height:.82;margin:40px 0 40px;position:relative;z-index:1;max-width:1300px}.hero h1 span{color:var(--accent);margin-left:16vw}.hero h1 sup{font-size:.45em;position:absolute;right:5%;top:0;font-weight:normal;color:var(--accent)}.hero-stage{height:540px;position:relative;overflow:hidden;border-radius:5px}.hero-stage video{width:100%;height:100%;object-fit:cover;object-position:center 42%}.stage-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#0008,transparent 75%),linear-gradient(0deg,#0008,transparent 50%)}.stage-copy{position:absolute;left:40px;top:50px}.stage-copy p{font-size:clamp(30px,4vw,58px);line-height:1.1;letter-spacing:-2px;margin-top:20px}.stage-copy .eyebrow{font-size:9px}.motion{position:absolute;right:25px;top:25px;border:1px solid #fff8;border-radius:30px;color:white;background:#0005;padding:10px 17px;cursor:pointer;font-size:10px}.watch-pill{position:absolute;right:35px;bottom:35px;border-radius:50%;width:145px;height:145px;background:var(--accent);color:#171b12;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:12px;gap:12px;transition:transform .25s}.watch-pill:hover{transform:rotate(-8deg)}.watch-pill span{font-size:36px;line-height:1}.frame-label{position:absolute;bottom:32px;left:40px;font:9px monospace;letter-spacing:1px}.hero-bottom{position:static;display:flex;padding:22px 0;font:10px monospace;letter-spacing:.5px;border-bottom:1px solid #35382e}.wrap{padding-left:6vw;padding-right:6vw}.intro{text-align:left;display:grid;grid-template-columns:1fr 2fr;padding-top:110px;padding-bottom:120px;gap:28px}.intro h2{font-size:clamp(40px,4.7vw,70px);font-weight:500;letter-spacing:-3px}.intro p:last-child{grid-column:2;margin:0;max-width:530px;font-size:15px}.intro .eyebrow{max-width:180px;line-height:1.8;padding-top:10px}.sectionhead h2{font-size:clamp(55px,7vw,100px);line-height:.94}.sectionhead>p{font-size:13px;max-width:320px}.eyebrow{font:10px monospace;letter-spacing:1.5px;color:var(--muted)}.filters{margin:35px 0 45px;border-top:1px solid #34372e;padding-top:25px}.filters button{border:0;border-radius:0;color:var(--muted);padding:8px 15px;background:none}.filters button[aria-pressed=true]{background:var(--accent);color:#14180f;border-radius:3px}.grid{grid-template-columns:repeat(12,1fr);gap:55px 28px;align-items:start}.film{grid-column:span 6}.film:nth-child(6n+1){grid-column:span 8}.film:nth-child(6n+2){grid-column:span 4;margin-top:110px}.film:nth-child(6n+2) .still{aspect-ratio:4/5}.film:nth-child(6n+5){grid-column:span 4}.film:nth-child(6n+5) .still{aspect-ratio:4/5}.film:nth-child(6n+6){grid-column:span 8;margin-top:90px}.still{border-radius:4px;background:#282c25}.caption{border-bottom:1px solid #35382e;padding:3px 0 20px}.caption h3{font:500 25px Arial;letter-spacing:-1px}.caption>span{font:10px monospace}.play{background:var(--accent);color:#161b10;top:auto;bottom:16px;right:16px;width:45px;height:45px}.duration{left:14px;right:auto}.collection-footer{display:flex;align-items:center;justify-content:space-between;padding:35px 0 90px}#count{padding:0;margin:0}.outline-button{background:none;color:var(--ink);border:1px solid #5f6454;padding:14px 23px;border-radius:30px;cursor:pointer;font-size:12px}.services{background:#d6ef7a;color:#171d10;padding:90px 0}.services .eyebrow,.services .sectionhead>p{color:#475035}.servicegrid{display:block;margin-top:50px}.servicegrid article{display:grid;grid-template-columns:60px 1fr 1fr;gap:25px;padding:26px 0;border-top:1px solid #9aaa6b;align-items:center}.servicegrid article:last-child{border-bottom:1px solid #9aaa6b}.servicegrid span{color:#48572c}.servicegrid h3{font:500 34px Arial;letter-spacing:-1px;margin:0}.servicegrid p{color:#404b30;margin:0;max-width:430px}.about{gap:8vw}.photo img{filter:grayscale(100%);border-radius:3px}.about h2{font-size:clamp(40px,4.5vw,66px)}.about .textlink{color:var(--accent)}.steps{border-color:#34372e}.steps h3{font:500 24px Arial;letter-spacing:-.8px}.steps span{color:var(--accent);font-family:monospace}.contact{background:#1c2019;border-top:1px solid #343a2e;padding:80px 0}.contact h2{font-size:clamp(65px,10vw,145px);line-height:.95}.contact h2 i{color:var(--accent);font-family:Arial;font-weight:800;font-style:normal}.contact .button{background:var(--accent);color:#172010;border-radius:40px;padding:20px 30px}.contact .small{color:#a4a7a0}.contactrow p{color:#b9bfb1}footer .brand img{width:105px}footer{padding-top:40px;padding-bottom:40px}footer p,footer small{color:var(--muted)}@media(min-width:1600px){.hero{max-width:1800px;margin:auto}}@media(max-width:760px){header{height:90px}.brand img{width:95px;height:65px}.hero{padding-top:25px}.hero-top .eyebrow{font-size:8px}.hero-index{display:none}.hero h1{font-size:16vw;margin:30px 0;line-height:.88}.hero h1 span{margin-left:8vw}.hero h1 sup{right:0}.hero-stage{height:470px}.stage-copy{left:23px;top:30px}.stage-copy p{letter-spacing:-1px}.watch-pill{width:110px;height:110px;right:20px;bottom:25px;font-size:10px}.motion{top:auto;bottom:150px;right:20px}.frame-label{left:20px;bottom:25px;max-width:130px;line-height:1.8}.hero-bottom{font-size:8px;gap:14px}.intro{display:block;padding-top:70px;padding-bottom:70px}.intro .eyebrow{max-width:none;margin-bottom:25px}.intro h2{letter-spacing:-2px}.grid{grid-template-columns:1fr;gap:35px}.film,.film:nth-child(n){grid-column:auto;margin:0}.film:nth-child(n) .still{aspect-ratio:16/10}.sectionhead h2{font-size:60px}.filters{gap:3px}.filters button{font-size:11px;padding:8px 10px}.servicegrid article{grid-template-columns:30px 1fr;gap:12px}.servicegrid h3{font-size:28px}.servicegrid p{grid-column:2}.contact h2{font-size:16vw}.collection-footer{gap:15px}.outline-button{padding:12px 16px}.services{padding:65px 0}}
/* Ocean & stone — final palette and interface system */
:root{--ink:#eeeae1;--paper:#151918;--muted:#aaaFA9;--accent:#9abbb4;--sand:#d8cbbb;--line:#39423f}body{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,.caption h3,.servicegrid h3,.steps h3{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif}h2 i,.contact h2 i{font-family:inherit;font-style:normal;font-weight:inherit;letter-spacing:inherit}h1,h2{letter-spacing:-.055em}header{position:sticky;top:0;z-index:20;height:92px;background:#151918f5;backdrop-filter:blur(16px);border-color:var(--line)}.brand img{width:105px;height:69px}nav{gap:32px}nav>a{transition:color .2s}nav>a:hover{color:var(--accent)}.navcta{background:var(--sand);color:#202b28;border:0;border-radius:6px;padding:13px 22px}nav .navcta:hover{background:#e8ddcf;color:#202b28}.hero h1 span{color:var(--sand)}.hero h1 sup{display:none}.live-dot{background:var(--accent)}.hero-top{margin-bottom:30px}.hero-index,.eyebrow,.caption>span,.steps span,.hero-bottom,.frame-label{font-family:inherit;letter-spacing:1.6px}.hero-stage,.still,.photo img{border-radius:8px}.watch-pill{width:auto;height:auto;bottom:32px;right:32px;border-radius:6px;padding:18px 25px;flex-direction:row;gap:30px;background:var(--sand);font-size:13px;font-weight:500;color:#202b28}.watch-pill span{font-size:22px}.watch-pill:hover{transform:translateY(-3px);background:#e8ddcf}.motion{border-radius:6px;background:#15191870;padding:11px 15px;min-height:40px}.hero-bottom,.caption,.filters,.steps{border-color:var(--line)}.intro h2{font-weight:500;line-height:1.14}.intro h2 i{color:var(--accent)}.sectionhead h2{font-size:clamp(54px,6.5vw,92px);line-height:.98}.sectionhead h2 i{color:var(--sand)}.sectionhead>p{line-height:1.9}.filters{gap:8px}.filters button{min-height:42px;padding:10px 19px;border-radius:6px;border:1px solid transparent;transition:background .2s,color .2s}.filters button:hover{color:var(--ink);background:#27312e}.filters button[aria-pressed=true]{background:#314b46;color:#e5efeb;border:1px solid #62867d;border-radius:6px}.caption h3{font-size:24px;letter-spacing:-.6px;margin-top:17px}.caption>span{font-size:11px;letter-spacing:.3px}.play{background:#d8cbbb;color:#202b28;width:42px;height:42px}.outline-button{border-color:#7c8b84;border-radius:6px;min-height:46px;transition:background .2s}.outline-button:hover{background:#2b3531}.services{background:#d8cbbb;color:#25322d}.services .eyebrow,.services .sectionhead>p{color:#4a5952}.servicegrid article,.servicegrid article:last-child{border-color:#a99f90;padding:31px 0}.servicegrid h3{font-size:32px;font-weight:500}.servicegrid span,.servicegrid p{color:#4a5952}.servicegrid p{line-height:1.8}.about h2{font-weight:600;line-height:1.05}.about h2 i{color:var(--sand)}.photo img{filter:none}.textlink{padding:10px 0}.steps h3{font-weight:500;line-height:1.25}.steps span{color:var(--accent)}.steps p,.about p:not(.eyebrow){line-height:1.85}.contact{background:#223d38;border-color:#45635b;padding:100px 0}.contact h2{font-weight:700}.contact h2 i{color:var(--sand)}.contact .eyebrow{color:#b4c6be}.contactrow p{color:#d0dad4}.contact .button{border-radius:6px;background:var(--sand);color:#202b28;padding:18px 26px;transition:background .2s,transform .2s}.contact .button:hover{background:#e8ddcf;transform:translateY(-2px)}.contact .small{color:#bdcdc4}a:focus-visible,button:focus-visible{outline:2px solid #9abbb4;outline-offset:5px}footer{border-top:1px solid var(--line)}@media(max-width:760px){header{height:80px}.brand img{width:88px;height:60px}nav{gap:15px}nav .navcta{font-size:11px;padding:12px 15px}nav a[href='#work']{display:block;font-size:12px}.hero h1{font-size:15.5vw}.hero-top .eyebrow{letter-spacing:1.3px}.hero-stage{height:450px}.watch-pill{bottom:24px;right:20px;left:20px;justify-content:space-between;padding:16px 20px;font-size:12px}.motion{bottom:85px;right:20px}.frame-label{bottom:100px;max-width:170px;font-size:8px}.hero-bottom{line-height:1.8;font-size:8px;letter-spacing:.5px}.intro h2{font-size:38px}.sectionhead h2{font-size:55px}.filters button{padding:10px 13px;font-size:11px}.servicegrid h3{font-size:27px}.contact{padding:70px 0}.contact h2{font-size:15vw}.collection-footer{padding-bottom:65px}.outline-button{font-size:11px}.caption h3{font-size:23px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Hero: wedding stills crossfading with a slow push-in (replaces the maternity clip) */
.hero-reel{position:absolute;inset:0;background:#111}
.hero-reel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity 1.6s ease,transform 9s linear}
.hero-reel img.is-on{opacity:1;transform:scale(1)}
.hero-reel.is-paused img{transition:opacity 1.6s ease}
.frame-label:hover{text-decoration:underline;text-underline-offset:3px}
@media (prefers-reduced-motion:reduce){.hero-reel img{transition:opacity .01s;transform:none}}
