@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600&display=swap');
:root{color-scheme:only light;--paper:#f4f1ea;--ink:#292a27;--muted:#696b61;--bronze:#8a6a42;--line:#d6d1c6;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,video:focus-visible{outline:2px solid var(--bronze);outline-offset:6px}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);line-height:1.08;letter-spacing:-.048em}h1{font-size:clamp(46px,4.6vw,82px)}h2{font-size:clamp(42px,4.8vw,76px)}h1 em,h2 em{font-weight:400;color:var(--bronze)}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:600;margin-bottom:27px}.skip{position:fixed;top:-100px;left:20px;background:var(--ink);color:white;padding:12px;z-index:99}.skip:focus{top:10px}.opening{display:grid;grid-template-columns:45% 55%;max-width:2000px;margin:auto;min-height:min(900px,100svh)}.identity{display:flex;flex-direction:column;padding:24px clamp(28px,4.6vw,90px) 30px}.identity header{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.brand{display:block;width:220px;max-width:80%;mix-blend-mode:multiply}.brand img{object-fit:contain}.identity nav{display:flex;gap:26px;font-size:12px}.identity nav a{padding:4px 0;border-bottom:1px solid transparent}.identity nav a:hover{border-bottom-color:var(--bronze)}.hero-copy{padding:70px 0 76px;margin:auto 0}.hero-copy>p:not(.eyebrow){max-width:330px;margin:27px 0 32px;color:var(--muted);font-size:15px}.button{display:inline-flex;gap:28px;justify-content:space-between;align-items:center;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:16px 23px;border-radius:2px;font-size:12px;transition:background .2s,transform .2s}.button:hover{background:#41433b;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.opening-bottom{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted)}.opening-bottom span:last-child{font-size:9px}.hero-photo{position:relative;min-width:0;overflow:hidden}.hero-photo>img{height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 53%}.hero-photo figcaption{position:absolute;bottom:25px;left:30px;color:#fff;font-size:11px;text-shadow:0 1px 5px #000;background:#292a2760;padding:6px 12px}.section-pad{padding:100px clamp(28px,7vw,140px)}.intro{max-width:1600px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr;column-gap:15%;align-items:end}.intro .eyebrow{grid-column:1/-1}.intro>p:last-child{max-width:370px;color:var(--muted);font-size:15px;padding-bottom:8px}.project{display:grid;grid-template-columns:58% 42%;max-width:1800px;margin:0 auto 100px;align-items:center}.project figure{position:relative}.project figure img{aspect-ratio:1/1.12;object-fit:cover;object-position:center}.project figcaption{font-size:10px;color:var(--muted);margin:12px 24px 0}.project-copy{padding:45px clamp(30px,5.5vw,110px)}.project-copy h2{font-size:clamp(40px,4vw,65px)}.project-copy>p:not(.eyebrow){margin:28px 0;color:var(--muted);max-width:340px;font-size:14px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:12px;border-bottom:1px solid var(--bronze);padding:9px 0;transition:color .2s}.text-link:hover{color:var(--bronze)}.project-two{grid-template-columns:42% 58%}.project-two figure{grid-column:2;grid-row:1}.project-two .project-copy{grid-column:1;grid-row:1}.services{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#e9e6de}.services>div>p:not(.eyebrow){max-width:390px;color:var(--muted);margin:28px 0 20px;font-size:14px}.service-list{padding-top:25px}.service-list article{display:flex;gap:28px;border-top:1px solid #c9c4b9;padding:26px 0}.service-list article>span{font-size:10px;color:var(--bronze);padding-top:8px}.service-list h3{font-family:var(--serif);font-size:29px;letter-spacing:-.025em}.service-list p{font-size:13px;color:var(--muted);margin-top:8px;max-width:310px}.film{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;max-width:1550px;margin:auto}.film-copy>p:not(.eyebrow){max-width:325px;font-size:14px;margin:27px 0;color:var(--muted)}.instagram-card{background:#fff;max-width:420px;width:100%;justify-self:center;border:1px solid #e4e1da;box-shadow:0 16px 45px #292a2709;border-radius:7px;overflow:hidden}.instagram-card header{padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:8px}.instagram-profile{display:flex;gap:10px;align-items:center;min-width:0}.instagram-profile strong{display:block;font-size:11px}.instagram-profile small{display:block;font-size:10px;color:var(--muted)}.avatar{font:28px var(--serif);display:grid;place-items:center;border:1px solid var(--bronze);border-radius:50%;width:38px;height:38px;flex-shrink:0;color:var(--bronze)}video{display:block;width:100%;aspect-ratio:9/16;object-fit:contain;background:#171815}.post-body{padding:12px 17px 20px;font-size:11px}.post-actions{display:flex;align-items:center;gap:14px;margin-bottom:9px}.post-actions>span{font:31px/1 Arial}.post-actions svg{width:22px;height:22px;fill:none;stroke:var(--ink);stroke-width:1.6}.save-icon{margin-left:auto}.post-body>a{display:inline-block;margin-top:12px;color:var(--bronze)}.closing{text-align:center;border-top:1px solid var(--line)}.closing .button{margin-top:32px}footer{display:flex;gap:25px;justify-content:space-between;border-top:1px solid var(--line);padding:25px 5%;font-size:11px;color:var(--muted)}.mobile-contact{display:none}.contact-header{display:flex;justify-content:space-between;padding:30px 5%;font-size:12px}.contact-main{text-align:center;min-height:calc(100svh - 155px);padding:20px 24px 90px;display:flex;flex-direction:column;align-items:center}.contact-brand{width:270px;margin-bottom:32px}.contact-main h1{font-size:clamp(45px,5vw,78px)}.contact-main .eyebrow{margin-bottom:23px}.contact-intro{font-size:14px;color:var(--muted);margin:25px 0 30px}.contact-buttons{display:flex;gap:12px;justify-content:center}.contact-buttons .button{min-width:180px}.outline{background:transparent;color:var(--ink)}.outline:hover{background:#e4dfd4}.contact-email{margin-top:30px;font-size:14px;border-bottom:1px solid var(--line)}.instagram-link{margin-top:12px;font-size:11px}::view-transition-old(root),::view-transition-new(root){animation-duration:.22s}@view-transition{navigation:auto}
@media(min-width:1800px){.opening{min-height:980px}.hero-copy{padding:90px 0}.hero-photo>img{object-position:center 55%}}
@media(max-width:1000px){.identity{padding:22px 28px}.hero-copy{padding:50px 0}.opening-bottom>span{display:none}.identity nav{gap:20px}.brand{width:190px}.project-copy{padding:35px}.services,.film{gap:7%}.section-pad{padding:75px 5%}.hero-copy h1{font-size:52px}}
@media(max-width:650px){.opening{display:flex;flex-direction:column;min-height:0}.identity{padding:18px 25px 24px}.identity header{align-items:center;gap:5px}.brand{width:195px}.identity nav{justify-content:center;font-size:12px;gap:28px}.hero-copy{text-align:center;padding:43px 0 30px}.hero-copy h1{font-size:49px}.hero-copy .eyebrow{margin-bottom:18px;font-size:9px}.hero-copy>p:not(.eyebrow){margin:22px auto 25px;max-width:280px;font-size:14px}.opening-bottom{justify-content:center}.hero-photo{height:auto;aspect-ratio:4/5}.hero-photo>img{position:static;height:100%;object-position:center 56%}.hero-photo figcaption{left:20px;bottom:17px;font-size:9px}.section-pad{padding:65px 25px}.intro{display:block}.intro h2{font-size:45px}.intro>p:last-child{margin-top:25px;font-size:14px}.eyebrow{font-size:9px;margin-bottom:20px}.project,.project-two{display:flex;flex-direction:column;margin-bottom:30px}.project figure{width:100%}.project figure img{aspect-ratio:4/5;object-fit:cover}.project-copy{padding:42px 25px 35px;width:100%}.project-copy h2{font-size:44px}.project-copy>p:not(.eyebrow){max-width:100%;margin:23px 0 17px}.project figcaption{margin-left:25px}.services,.film{display:block}.services h2,.film h2,.closing h2{font-size:45px}.service-list{padding-top:30px}.service-list h3{font-size:27px}.service-list article{padding:22px 0}.film-copy{margin-bottom:40px}.instagram-card{max-width:380px;margin:auto}.instagram-profile strong{font-size:10px}footer{font-size:10px;padding:24px 25px 85px;flex-wrap:wrap;gap:15px}footer>a:last-child{margin-left:auto}.mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;background:var(--paper);border-top:1px solid var(--line);padding:12px 24px calc(12px + env(safe-area-inset-bottom));gap:20px;box-shadow:0 -4px 18px #00000005}.mobile-contact a{width:50%;text-align:center;font-size:12px;padding:5px}.mobile-contact a+a{border-left:1px solid var(--line)}.contact-header{padding:24px;font-size:10px}.contact-main{padding-top:15px;min-height:calc(100svh - 120px)}.contact-brand{width:235px;margin-bottom:35px}.contact-main h1{font-size:47px}.contact-intro br{display:none}.contact-intro{max-width:300px}.contact-buttons{width:100%;max-width:360px}.contact-buttons .button{min-width:0;width:50%;padding:15px 18px;gap:15px}.contact-page footer{padding-bottom:25px}}
@media(min-width:651px){.hero-photo>img{position:static;height:auto;min-height:100%;object-fit:cover}.opening{align-items:stretch}}
@media(max-width:650px){.hero-copy h1{font-size:41px}.hero-copy{padding:32px 0 25px}.hero-copy>p:not(.eyebrow){margin:18px auto 22px}.identity{padding-bottom:20px}}
/* Revised image-led composition: fewer labels, stronger contact paths. */
.identity{padding:44px clamp(26px,4vw,75px)}.identity header{align-items:center}.brand{width:310px;max-width:100%;mix-blend-mode:normal}.hero-copy{padding:45px 0;margin:auto 0;text-align:center}.hero-copy h1{font-size:clamp(48px,4.6vw,78px);line-height:1.06;letter-spacing:-.05em}.hero-actions{display:flex;justify-content:center;gap:12px;margin-top:40px}.button{border-radius:30px;padding:16px 25px;font-size:13px;min-height:52px}.hero-actions .button{min-width:155px}.essential-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;margin-top:28px}.essential-nav a{display:flex;align-items:center;gap:10px;font-size:12px;padding:8px 0;border-bottom:1px solid var(--line)}.essential-nav a:hover{border-color:var(--bronze);color:var(--bronze)}.section-pad{padding:68px clamp(25px,5vw,90px)}.intro{column-gap:8%;padding-top:60px;padding-bottom:60px}.intro h2{font-size:clamp(36px,3.6vw,56px)}.intro>p:last-child{max-width:490px}.project{grid-template-columns:66% 34%;max-width:2000px;margin-bottom:32px}.project-two{grid-template-columns:34% 66%}.project figure img{aspect-ratio:1/1;object-position:center}.project-copy{padding:32px clamp(25px,3vw,58px)}.project-copy h2{font-size:clamp(36px,3.4vw,58px)}.project-copy>p:not(.eyebrow){margin:24px 0}.project-copy .button{padding:15px 21px;font-size:12px;gap:16px}.services{gap:8%}.film{gap:8%;max-width:1600px}.instagram-card{max-width:490px}.film-contact{display:flex;width:max-content;max-width:100%;margin-top:25px}.closing{padding-top:65px;padding-bottom:65px}.contact-brand{width:300px}.contact-main{padding-top:25px}.contact-buttons .button{border-radius:30px}
@media(max-width:1000px) and (min-width:651px){.hero-copy h1{font-size:43px}.identity{padding:30px 23px}.hero-actions{flex-direction:column;align-items:center}.hero-actions .button{width:210px}.essential-nav{gap:10px 16px}.project,.project-two{grid-template-columns:60% 40%}.project-two{grid-template-columns:40% 60%}.project-copy{padding:25px}.project-copy h2{font-size:36px}.project-copy .button{font-size:11px;padding:13px 16px}.brand{width:260px}}
@media(max-width:650px){.identity{padding:24px 24px 30px}.identity header{gap:0}.brand{width:255px}.hero-copy{padding:22px 0 0}.hero-copy h1{font-size:43px}.hero-actions{margin-top:28px;gap:10px}.hero-actions .button{min-width:0;flex:1;padding:14px 18px;font-size:12px}.essential-nav{margin-top:20px;gap:20px}.essential-nav a{font-size:11px}.hero-photo{aspect-ratio:3/4}.hero-photo>img{object-fit:cover;object-position:center}.section-pad{padding:45px 25px}.intro h2{font-size:37px}.intro>p:last-child{margin-top:20px}.project,.project-two{display:flex;margin-bottom:0}.project figure img{aspect-ratio:3/4;object-fit:cover}.project-copy{padding:32px 25px 40px}.project-copy h2{font-size:41px}.project-copy .button{margin-top:3px}.project-copy>p:not(.eyebrow){margin:20px 0}.film-copy{margin-bottom:30px}.film-contact{font-size:12px}.contact-brand{width:270px}.contact-main h1{margin-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Desktop composition follows viewport height rather than stretching portraits. */
@media(min-width:651px){
 .opening{height:min(900px,100svh);min-height:620px;max-width:1600px;grid-template-columns:1fr auto;align-items:stretch}
 .identity{justify-content:center;gap:clamp(24px,5vh,54px);padding:36px clamp(24px,4vw,70px);min-width:0}
 .identity .brand{width:clamp(220px,20vw,300px)}
 .hero-copy{margin:0;padding:0}
 .hero-copy h1{font-size:clamp(40px,3.5vw,62px);max-width:580px;margin:auto;text-wrap:balance}
 .hero-actions{margin-top:30px}
 .hero-photo{height:100%;aspect-ratio:1056/1489;width:auto}
 .hero-photo>img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:contain}
 .project,.project-two{display:flex;max-width:1500px;width:100%;margin:0 auto 36px;justify-content:center;align-items:center}
 .project-two{flex-direction:row-reverse}
 .project figure{flex:0 1 auto;min-width:0;max-width:58%}
 .project figure img{width:auto;max-width:100%;height:auto;max-height:min(850px,92svh);aspect-ratio:auto;object-fit:contain}
 .project-copy{flex:1;max-width:560px;padding:40px clamp(28px,5vw,80px)}
 .project-copy h2{font-size:clamp(36px,3.3vw,58px)}
}
@media(min-width:651px) and (max-width:1000px){
 .opening{min-height:620px;grid-template-columns:48% 52%;height:760px;max-height:100svh}
 .hero-photo{width:100%;aspect-ratio:auto;background:#e9e6de}
 .hero-photo>img{object-fit:cover}
 .hero-copy h1{font-size:39px}
 .identity{gap:22px;padding:24px}
 .hero-actions{flex-direction:row;flex-wrap:wrap;gap:10px}
 .hero-actions .button{width:auto;min-width:130px;padding:13px 18px}
 .project-copy{padding:30px}
}
@media(max-width:650px){
 .hero-photo{height:auto;aspect-ratio:auto}
 .hero-photo>img{position:static;width:100%;height:auto;object-fit:contain}
 .project figure img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
}
