:root{--ink:#141414;--paper:#f4f0e7;--white:#fff;--red:#731f29;--gold:#bd9a5b;--muted:#69655d;--line:rgba(20,20,20,.17);--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{height:82px;padding:0 4.5vw;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:rgba(244,240,231,.97);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.13em;font-size:10px}.brand>span{width:39px;height:39px;border:1px solid;border-radius:50%;display:grid;place-items:center;font:15px var(--serif)}.brand strong{font-weight:500}.site-header nav{display:flex;gap:34px;text-transform:uppercase;letter-spacing:.14em;font-size:10px}.site-header nav a,.office{padding:8px 0;border-bottom:1px solid transparent}.site-header nav a:hover,.office:hover{border-color:currentColor}.header-actions{justify-self:end;display:flex;align-items:center;gap:22px}.office{text-transform:uppercase;letter-spacing:.14em;font-size:9px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--red);color:#fff;padding:17px 21px;text-transform:uppercase;letter-spacing:.14em;font-size:10px;border:1px solid var(--red);cursor:pointer;transition:.2s}.button:hover{background:var(--ink);border-color:var(--ink)}.button-small{padding:12px 16px;gap:15px}.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.45fr);gap:7vw;padding:11vh 4.5vw 9vh}.hero-copy{align-self:center}.overline,.section-number{text-transform:uppercase;letter-spacing:.19em;font-size:9px;color:var(--red);margin:0 0 32px}.hero h1,.positioning h2,.section-heading h2,.services h2,.process h2,.contact h2{font-family:var(--serif);font-weight:400;letter-spacing:-.055em}.hero h1{max-width:900px;margin:0;font-size:clamp(70px,8.7vw,142px);line-height:.82}.hero h1 em,.positioning h2 em{color:var(--red);font-weight:400}.hero-intro{max-width:610px;margin:48px 0 0;font:22px/1.45 var(--serif);color:#292722}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:42px}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.13em;border-bottom:1px solid;padding-bottom:5px}.hero-proof{align-self:end;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0 24px}.proof-head{display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.16em;font-size:8px;color:var(--muted)}.proof-mark{margin:45px 0 48px;font:76px/.8 var(--serif);letter-spacing:-.08em;color:var(--red)}.proof-mark span{display:block;margin-left:45px;color:var(--ink)}.proof-copy p{font:18px/1.4 var(--serif);margin:0 0 20px}.proof-copy a,.project-link{font-size:9px;text-transform:uppercase;letter-spacing:.13em;border-bottom:1px solid;padding-bottom:5px}.capability-strip{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;padding:21px 4.5vw;text-transform:uppercase;letter-spacing:.15em;font-size:9px}.capability-strip span:not(:last-child):after{content:'◆';color:var(--gold);margin-left:5vw;font-size:7px}.positioning{background:var(--white);display:grid;grid-template-columns:1fr 2fr;gap:8vw;padding:13vh 4.5vw}.positioning h2{font-size:clamp(56px,7vw,105px);line-height:.92;margin:0}.positioning>div>p{max-width:650px;margin:50px 0 0 auto;font:23px/1.5 var(--serif);color:#48443d}.work{background:var(--ink);color:var(--paper);padding:12vh 4.5vw}.light{color:var(--gold)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px}.section-heading h2{font-size:clamp(56px,6.3vw,96px);line-height:.92;margin:0}.project-link{margin-bottom:8px}.project-stage{background:#d2c1a2;padding:6vw;margin-top:8vh}.browser{max-width:1150px;margin:auto;background:#f8f7f3;box-shadow:0 28px 70px rgba(0,0,0,.28)}.browser-bar{height:42px;border-bottom:1px solid #d9d6cf;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 15px;color:#615f59}.browser-bar span{display:flex;gap:6px}.browser-bar i{width:7px;height:7px;background:#7d2730;border-radius:50%;opacity:.65}.browser-bar small{text-align:center;font-size:9px;letter-spacing:.1em}.browser-bar b{text-align:right;text-transform:uppercase;font-size:7px;letter-spacing:.15em;color:#39764d}.project-screen{padding:38px 42px 45px;color:#15202d;background:#f7f6f1}.project-nav{display:flex;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid #bcc1c4;text-transform:uppercase;letter-spacing:.1em;font-size:8px}.project-nav strong{font:20px var(--serif);letter-spacing:-.03em}.project-hero{max-width:800px;padding:7vh 0}.project-hero>p{text-transform:uppercase;letter-spacing:.17em;color:#a44d36;font-size:7px}.project-hero h3{font:clamp(38px,5vw,78px)/.96 var(--serif);letter-spacing:-.045em;margin:20px 0 32px}.project-hero div{display:flex;gap:10px}.project-hero span{border:1px solid #15202d;padding:10px 12px;text-transform:uppercase;font-size:7px;letter-spacing:.1em}.project-cards{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #bcc1c4}.project-cards span{padding:18px;border-right:1px solid #bcc1c4;font:15px var(--serif)}.project-cards span:last-child{border:0}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding:9vh 0}.case-label{text-transform:uppercase;color:var(--gold);letter-spacing:.17em;font-size:9px}.case-grid h3{font:42px/1.12 var(--serif);margin:25px 0 0;max-width:580px}.case-grid>div:last-child{font:19px/1.6 var(--serif);color:rgba(244,240,231,.73)}.deliverables{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid rgba(244,240,231,.2)}.deliverables article{padding:28px 25px 32px;border-right:1px solid rgba(244,240,231,.2)}.deliverables article:last-child{border:0}.deliverables span{color:var(--gold);font-size:9px}.deliverables strong{display:block;margin:28px 0 12px;font:21px var(--serif)}.deliverables p{color:rgba(244,240,231,.62);font-size:13px;line-height:1.55;margin:0}.services{padding:13vh 4.5vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.services-intro{position:sticky;top:130px;align-self:start}.services h2{font-size:clamp(52px,6vw,88px);line-height:.92;margin:0}.services-intro>p:last-child{max-width:500px;margin-top:40px;color:var(--muted);line-height:1.7}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:55px 1fr;gap:20px;padding:34px 0;border-bottom:1px solid var(--line)}.service-list article>span{color:var(--red);font-size:9px}.service-list h3{margin:0 0 12px;font:32px var(--serif)}.service-list p{margin:0;max-width:520px;color:var(--muted);line-height:1.6}.process{background:#d8cab1;padding:12vh 4.5vw}.section-heading.dark{align-items:start}.section-heading.dark>p{max-width:470px;margin:0;font:20px/1.5 var(--serif)}.process ol{list-style:none;margin:9vh 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.process li{padding:28px 25px 35px;border-right:1px solid var(--line)}.process li:last-child{border:0}.process li>span{font-size:9px;color:var(--red)}.process strong{display:block;margin:45px 0 12px;font:27px var(--serif)}.process li p{margin:0;color:var(--muted);line-height:1.55;font-size:13px}.contact{background:var(--red);color:#fff;padding:12vh 4.5vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact h2{font-size:clamp(60px,7vw,104px);line-height:.88;margin:0}.contact-copy>p:nth-of-type(2){max-width:530px;margin:40px 0 35px;font:21px/1.5 var(--serif);color:rgba(255,255,255,.74)}.contact-copy>a{border-bottom:1px solid;padding-bottom:6px;font-size:11px}.contact form label{display:block;margin-bottom:26px}.contact form label>span{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:8px;margin-bottom:9px;color:rgba(255,255,255,.65)}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact input,.contact select,.contact textarea{width:100%;border:0;border-bottom:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;padding:12px 0;outline:none;border-radius:0}.contact textarea{border:1px solid rgba(255,255,255,.35);padding:14px;resize:vertical}.contact input::placeholder,.contact textarea::placeholder{color:rgba(255,255,255,.47)}.contact select option{color:var(--ink)}.contact input:focus,.contact select:focus,.contact textarea:focus{border-color:#fff}.contact .submit{width:100%;background:#fff;color:var(--red);border-color:#fff;margin-top:8px}.contact form small{display:block;margin-top:13px;color:rgba(255,255,255,.55);font-size:10px}.contact form small a{text-decoration:underline}.form-error{min-height:18px;font-size:12px}.form-success{display:none;border-top:1px solid rgba(255,255,255,.3);padding-top:35px}.form-success.show{display:block}.form-success h3{font:60px var(--serif);margin:10px 0}.button:disabled{opacity:.65;cursor:wait}footer{background:var(--ink);color:var(--paper);padding:48px 4.5vw;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:30px}.footer-brand>span{border-color:var(--paper)}footer>p{text-align:center;margin:0;font:16px var(--serif)}footer>div{justify-self:end;display:flex;flex-direction:column;align-items:end;gap:13px;text-transform:uppercase;letter-spacing:.12em;font-size:8px;color:rgba(244,240,231,.65)}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero-proof{max-width:420px;margin-left:auto}.positioning,.services,.contact{grid-template-columns:1fr}.services-intro{position:static}.deliverables,.process ol{grid-template-columns:repeat(2,1fr)}.deliverables article:nth-child(2),.process li:nth-child(2){border-right:0}.case-grid{gap:5vw}.section-heading.dark{display:grid}.contact{gap:70px}}
@media(max-width:620px){.site-header{height:68px;padding:0 18px}.brand strong{display:none}.brand>span{width:35px;height:35px}.header-actions{gap:12px}.office{font-size:8px}.button-small{padding:10px 11px;font-size:8px}.hero{padding:75px 20px 65px}.hero h1{font-size:18vw}.hero-intro{font-size:19px;margin-top:32px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-proof{margin:20px 0 0}.capability-strip{overflow:hidden;justify-content:flex-start;white-space:nowrap;padding-left:20px}.capability-strip span:not(:last-child):after{margin-left:25px}.positioning,.work,.services,.process,.contact{padding:80px 20px}.positioning{grid-template-columns:1fr}.positioning h2{font-size:15vw}.positioning>div>p{font-size:19px}.section-heading{display:grid;align-items:start}.section-heading h2{font-size:14vw}.project-stage{padding:18px;margin-top:50px}.project-screen{padding:20px}.project-nav span{display:none}.project-hero{padding:35px 0}.project-hero h3{font-size:10vw}.project-hero div{display:grid}.project-cards{grid-template-columns:1fr 1fr}.project-cards span:nth-child(2){border-right:0}.case-grid{grid-template-columns:1fr;padding:60px 0}.case-grid h3{font-size:32px}.deliverables,.process ol{grid-template-columns:1fr}.deliverables article,.deliverables article:nth-child(2),.process li,.process li:nth-child(2){border-right:0;border-bottom:1px solid rgba(244,240,231,.2)}.services h2{font-size:15vw}.service-list h3{font-size:27px}.field-pair{grid-template-columns:1fr}.contact h2{font-size:16vw}footer{grid-template-columns:1fr;align-items:start}footer>p{text-align:left}footer>div{justify-self:start;align-items:start}}
.project-stage{padding:5vw}.project-shot{margin:0;background:#fff;box-shadow:0 28px 70px rgba(0,0,0,.24);overflow:hidden}.project-shot img{display:block;width:100%;height:auto}.project-shot figcaption{display:flex;justify-content:space-between;gap:20px;padding:15px 18px;color:#35312b;text-transform:uppercase;letter-spacing:.14em;font-size:8px}.project-shot-pair{display:grid;grid-template-columns:1fr 1fr;gap:2vw;margin-top:2vw}.project-shot-pair .project-shot{box-shadow:0 18px 45px rgba(0,0,0,.2)}
@media(max-width:620px){.project-shot-pair{grid-template-columns:1fr;gap:18px;margin-top:18px}.project-shot figcaption{align-items:flex-start;flex-direction:column;gap:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.pricing{background:#20201e;color:var(--paper);padding:12vh 4.5vw}.pricing-intro{display:grid;grid-template-columns:.6fr 1fr 1fr;gap:5vw;align-items:end;margin-bottom:8vh}.pricing-intro h2{font:clamp(56px,6vw,92px)/.9 var(--serif);letter-spacing:-.055em;margin:0}.pricing-intro>p:last-child{font:19px/1.55 var(--serif);color:rgba(244,240,231,.68);margin:0}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(244,240,231,.22)}.price-grid article{padding:34px 30px 38px;border-right:1px solid rgba(244,240,231,.22);display:flex;flex-direction:column;min-height:540px}.price-grid article:last-child{border:0}.featured-price{background:var(--paper);color:var(--ink)}.price-head{padding-bottom:27px;border-bottom:1px solid rgba(244,240,231,.22)}.featured-price .price-head{border-color:var(--line)}.price-head span{display:block;text-transform:uppercase;letter-spacing:.17em;font-size:9px;color:var(--gold);margin-bottom:20px}.featured-price .price-head span{color:var(--red)}.price-head strong{font:36px var(--serif);font-weight:400}.price-grid article>p{min-height:75px;margin:26px 0;color:rgba(244,240,231,.65);line-height:1.55;font-size:14px}.featured-price>p{color:var(--muted)}.price-grid ul{list-style:none;padding:0;margin:0 0 36px}.price-grid li{padding:10px 0;border-bottom:1px solid rgba(244,240,231,.13);font-size:12px}.featured-price li{border-color:var(--line)}.price-grid li:before{content:'✓';color:var(--gold);margin-right:10px}.featured-price li:before{color:var(--red)}.price-grid article>a{margin-top:auto;border-bottom:1px solid;padding-bottom:6px;align-self:flex-start;text-transform:uppercase;letter-spacing:.14em;font-size:9px}.care-plan{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding:34px 30px;border:1px solid rgba(244,240,231,.22);border-top:0}.care-plan span{display:block;text-transform:uppercase;letter-spacing:.16em;color:var(--gold);font-size:9px;margin-bottom:12px}.care-plan strong{font:28px var(--serif);font-weight:400}.care-plan p{margin:0;color:rgba(244,240,231,.65);font-size:13px;line-height:1.6}.pricing-note{max-width:850px;color:rgba(244,240,231,.45);font-size:10px;line-height:1.6;margin:22px 0 0}
@media(max-width:900px){.pricing-intro{grid-template-columns:1fr 1fr}.pricing-intro>.section-number{grid-column:1/3}.price-grid{grid-template-columns:1fr}.price-grid article{border-right:0;border-bottom:1px solid rgba(244,240,231,.22);min-height:auto}.price-grid article>p{min-height:auto}.care-plan{grid-template-columns:1fr}}
@media(max-width:620px){.pricing{padding:80px 20px}.pricing-intro{grid-template-columns:1fr}.pricing-intro>.section-number{grid-column:auto}.pricing-intro h2{font-size:15vw}.price-grid article{padding:28px 22px}.price-head strong{font-size:31px}.care-plan{padding:28px 22px}}
.studio{background:#fff;padding:12vh 4.5vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.studio h2,.faq h2{font:clamp(54px,6.2vw,94px)/.92 var(--serif);letter-spacing:-.055em;margin:0}.studio>div:last-child>p{font:20px/1.6 var(--serif);color:#4c4841;margin:0 0 24px}.studio dl{margin:50px 0 0;border-top:1px solid var(--line)}.studio dl>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.studio dt{text-transform:uppercase;letter-spacing:.14em;font-size:9px;color:var(--red)}.studio dd{margin:0;font:15px var(--serif)}.faq{padding:12vh 4.5vw;display:grid;grid-template-columns:.75fr 1.25fr;gap:10vw}.faq-intro>p:last-child{max-width:450px;color:var(--muted);line-height:1.7;margin-top:35px}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:0}.faq summary{list-style:none;cursor:pointer;padding:24px 45px 24px 0;font:22px var(--serif);position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:4px;color:var(--red)}.faq details[open] summary:after{content:'−'}.faq details p{max-width:720px;margin:0;padding:0 45px 25px 0;color:var(--muted);line-height:1.65;font-size:14px}
@media(max-width:900px){.studio,.faq{grid-template-columns:1fr;gap:60px}}
@media(max-width:620px){.studio,.faq{padding:80px 20px}.studio h2,.faq h2{font-size:14vw}.studio dl>div{grid-template-columns:1fr}.faq summary{font-size:19px}}
