:root{--ink:#211912;--cream:#f3eee5;--paper:#faf7f1;--copper:#a96f49;--sand:#d7b88f;--line:rgba(33,25,18,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.5 "DM Sans",sans-serif;overflow-x:hidden}.grain{position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.site-header{position:absolute;top:0;left:0;width:100%;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:30px 4vw;color:var(--paper)}.wordmark{color:inherit;text-decoration:none;display:inline-flex;flex-direction:column;line-height:.75}.wordmark span{font:400 clamp(1.9rem,3vw,2.8rem)/.75 Arial,sans-serif;letter-spacing:.08em}.wordmark small{font-size:.5rem;letter-spacing:.19em;margin-top:10px}.site-header nav{display:flex;align-items:center;gap:28px}.site-header nav a{color:inherit;text-decoration:none;font-size:.82rem;text-transform:uppercase;letter-spacing:.12em}.client-link{border-bottom:1px solid currentColor;padding-bottom:4px}.hero{position:relative;min-height:100svh;padding:150px 4vw 55px;display:flex;flex-direction:column;justify-content:center;color:var(--paper);background:linear-gradient(135deg,#241a14 0%,#493225 48%,#9d7355 100%);isolation:isolate;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 72% 32%,transparent 0 12%,rgba(20,12,7,.2) 33%,rgba(14,8,5,.78) 100%)}.ambient{position:absolute;border-radius:50%;filter:blur(90px);opacity:.65;z-index:-2;animation:drift 18s ease-in-out infinite alternate}.ambient-one{width:60vw;height:60vw;background:#c78e65;right:-16vw;top:-20vw}.ambient-two{width:42vw;height:42vw;background:#5b2d1d;left:-13vw;bottom:-20vw;animation-duration:24s}.eyebrow,.section-number{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem}.hero h1{font:400 clamp(4rem,10vw,10rem)/.78 "Italiana",serif;letter-spacing:-.045em;margin:7vh 0 9vh;max-width:1300px}.hero h1 span,.hero h1 em{display:block}.hero h1 em{font-style:italic;margin-left:11vw;color:#e5cbae}.hero-bottom{display:flex;align-items:end;justify-content:space-between;margin-left:37vw}.hero-bottom p{max-width:430px}.round-link{width:100px;height:100px;border:1px solid rgba(255,255,255,.6);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:8px;color:inherit;text-decoration:none;transition:.35s}.round-link:hover{background:var(--paper);color:var(--ink);transform:rotate(-8deg)}.scroll-note{position:absolute;left:4vw;bottom:48px;writing-mode:vertical-rl;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase}.film-section{padding:11vw 4vw;background:var(--ink);color:var(--paper)}.film-section .section-number{margin-bottom:34px;color:#cfbda8}.film-stage{position:relative;aspect-ratio:16/8.5;overflow:hidden;background:linear-gradient(125deg,#825e49,#34231c)}.film-stage video{width:100%;height:100%;object-fit:cover}.media-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 50% 35%,rgba(222,183,137,.15),rgba(10,7,5,.72)),linear-gradient(120deg,#52382a,#17110d)}.media-fallback:before{content:"";position:absolute;width:30vw;height:42vw;border-radius:50%;border:1px solid rgba(255,255,255,.2);transform:rotate(34deg)}.media-fallback span{font-size:.72rem;letter-spacing:.22em}.media-fallback p{font:italic 400 clamp(2.4rem,6vw,6rem)/1 "Italiana",serif;margin:.25em}.play-button{position:absolute;right:35px;bottom:35px;width:76px;height:76px;border-radius:50%;border:0;background:var(--paper);color:var(--ink);font-size:1rem;cursor:pointer}.film-caption{display:grid;grid-template-columns:1.5fr .75fr;gap:12vw;align-items:end;padding-top:70px}.film-caption h2,.inquiry-intro h2{font:400 clamp(3rem,7vw,7rem)/.88 "Italiana",serif;letter-spacing:-.035em;margin:0}.film-caption h2 em,.inquiry-intro h2 em,.manifesto-copy em{font-style:italic;color:var(--sand)}.film-caption p{max-width:440px;color:#cbbfb4}.manifesto{padding:12vw 4vw}.manifesto-copy{font:400 clamp(3.3rem,8vw,8.5rem)/.93 "Italiana",serif;letter-spacing:-.04em;max-width:1400px;margin:7vw 0}.manifesto-copy em{color:var(--copper)}.approach-notes{margin-left:45%;border-top:1px solid var(--line)}.approach-notes p{display:grid;grid-template-columns:140px 1fr;gap:30px;margin:0;padding:24px 0;border-bottom:1px solid var(--line)}.approach-notes span{text-transform:uppercase;letter-spacing:.14em;font-size:.74rem}.inquiry-section{display:grid;grid-template-columns:1fr 1fr;gap:10vw;padding:11vw 4vw;background:#bd8b67;color:#1f1711}.inquiry-intro h2{margin:4vw 0}.inquiry-intro>p:last-child{max-width:400px}.inquiry-form{align-self:end}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.inquiry-form label{display:block;margin-top:27px}.inquiry-form label span{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;margin-bottom:8px}.inquiry-form input,.inquiry-form textarea{width:100%;border:0;border-bottom:1px solid rgba(31,23,17,.45);background:transparent;border-radius:0;padding:10px 0;font:inherit;color:inherit;outline:none}.inquiry-form input:focus,.inquiry-form textarea:focus{border-color:var(--paper)}.inquiry-form button{margin-top:45px;width:100%;border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:21px 24px;display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.14em;cursor:pointer;transition:.25s}.inquiry-form button:hover{background:transparent;color:var(--ink)}.honeypot{position:absolute!important;left:-9999px!important}.form-status{padding:14px;border:1px solid currentColor}.success{color:#173a25}.error{color:#641e18}footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:55px 4vw;background:var(--ink);color:var(--paper)}footer p{font-size:.82rem;color:#bfb3a7}footer>a{color:inherit;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem}.footer-mark{text-transform:none}.reveal{opacity:0;transform:translateY(28px);animation:rise 1.15s cubic-bezier(.2,.7,.2,1) forwards}.hero h1{animation-delay:.15s}.hero-bottom{animation-delay:.35s}@keyframes rise{to{opacity:1;transform:none}}@keyframes drift{to{transform:translate(-10vw,8vw) scale(1.2)}}
@media(max-width:760px){.site-header{padding:22px 20px}.site-header nav a:not(.client-link){display:none}.hero{padding:125px 20px 45px}.hero h1{font-size:17vw;line-height:.85;margin:12vh 0}.hero h1 em{margin-left:6vw}.hero-bottom{margin-left:0;align-items:center}.hero-bottom p{max-width:240px;font-size:.86rem}.round-link{width:78px;height:78px}.scroll-note{display:none}.film-section,.manifesto,.inquiry-section{padding:90px 20px}.film-stage{aspect-ratio:4/5}.film-caption,.inquiry-section{grid-template-columns:1fr;gap:55px}.film-caption{padding-top:45px}.film-caption h2,.inquiry-intro h2{font-size:13vw}.approach-notes{margin-left:0}.approach-notes p{grid-template-columns:90px 1fr}.field-row{grid-template-columns:1fr;gap:0}footer{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ambient,.reveal{animation:none}.reveal{opacity:1;transform:none}}

/* Supplied paper textures are blended beneath the existing color treatment. */
.hero:after{content:"";position:absolute;inset:-8%;z-index:-1;background:url("assets/paper-dark.jpg") center/cover;opacity:.22;mix-blend-mode:screen;filter:sepia(.35) contrast(1.08);transform:translate3d(0,var(--parallax-y,0),0) scale(1.08);will-change:transform}
.film-section{position:relative;isolation:isolate;color:var(--ink);background:linear-gradient(rgba(250,247,241,.84),rgba(243,238,229,.94)),url("assets/paper-light.jpg") center/cover;background-blend-mode:normal,multiply}
.film-section:before{content:"";position:absolute;inset:0;z-index:-1;background:url("assets/paper-light.jpg") center/cover;opacity:.16;mix-blend-mode:multiply;filter:sepia(.2) saturate(.72)}
.film-section .section-number{color:var(--copper)}
.film-caption h2 em{color:var(--copper)}
.film-caption p{color:rgba(33,25,18,.72)}
.manifesto{position:relative;isolation:isolate;overflow:hidden;color:var(--paper);background:linear-gradient(rgba(33,25,18,.9),rgba(33,25,18,.96)),url("assets/paper-dark.jpg") center/cover;background-blend-mode:normal,screen}
.manifesto:before{content:"";position:absolute;inset:-8%;z-index:-1;background:url("assets/paper-dark.jpg") center/cover;opacity:.17;mix-blend-mode:screen;filter:sepia(.25) contrast(1.05);transform:translate3d(0,var(--parallax-y,0),0) scale(1.08);will-change:transform}
.manifesto-copy em{color:var(--sand)}
.approach-notes{border-color:rgba(250,247,241,.25)}
.approach-notes p{border-color:rgba(250,247,241,.25)}
.approach-notes span,.manifesto .section-number{color:var(--sand)}
.inquiry-section{position:relative;isolation:isolate;color:var(--ink);background:linear-gradient(rgba(224,193,157,.8),rgba(243,238,229,.94)),url("assets/paper-light.jpg") center/cover;background-blend-mode:normal,multiply}
.inquiry-section:before{content:"";position:absolute;inset:0;z-index:-1;background:url("assets/paper-light.jpg") center/cover;opacity:.15;mix-blend-mode:multiply;filter:sepia(.3) saturate(.8)}
.inquiry-intro h2 em{color:#8f5737}
.inquiry-form input:focus,.inquiry-form textarea:focus{border-color:var(--copper)}
@media(prefers-reduced-motion:reduce){.hero:after,.manifesto:before{transform:scale(1.08);will-change:auto}}

/* Primary brand mark supplied as a light transparent PNG for dark sections. */
.wordmark{display:inline-flex;align-items:center;line-height:1}
.wordmark img{display:block;width:clamp(155px,16vw,235px);height:auto;opacity:.96}
.footer-mark img{width:clamp(180px,20vw,285px)}
@media(max-width:760px){.wordmark img{width:145px}.footer-mark img{width:185px}}

/* Stronger texture travel keeps the parallax visible on touch screens. */
.hero:after,.manifesto:before{inset:-14%;transform:translate3d(0,var(--parallax-y,0px),0) scale(1.12);transform-origin:center;will-change:transform}
.hero:after{opacity:.28}
.manifesto:before{opacity:.23}
@media(prefers-reduced-motion:reduce){.hero:after,.manifesto:before{transform:scale(1.12);will-change:auto}}

/* Footer centered (added). Delete this block to go back to the 3-column footer. */
footer{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px;padding:60px 4vw}

/* Stronger parallax travel (added). Larger inset keeps texture edges hidden. */
.hero:after,.manifesto:before{inset:-30%}
