:root{--bone:#F2F0E8;--ink:#171717;--orange:#FF3B1F;--black:#000;--line:12px solid #000;--mono:'DM Mono',monospace;--sans:'DM Sans',Arial,sans-serif;--serif:'Instrument Serif',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:68px}body{margin:0;background:var(--bone);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}.mono,.eyebrow,.topbar,.section-kicker,.hero-sub,.hero-cta,.project-meta,.concept-note,.philo-overline,.service-no,.process-step>span,.contact label,.submit-button,.footer-bottom{font-family:var(--mono)}.skip-link{position:absolute;top:-50px;left:1rem;background:var(--orange);padding:.7rem;z-index:99}.skip-link:focus{top:1rem}.topbar{height:74px;border-bottom:var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 3.2vw;position:sticky;top:0;background:var(--bone);z-index:20}.wordmark{font:900 30px/.8 var(--sans);letter-spacing:-.1em;width:max-content}.wordmark span,.footer-logo span{font:500 10px var(--mono);vertical-align:top;letter-spacing:0;margin-left:4px}.topbar-note{font-size:9px;line-height:1.4;letter-spacing:.1em;justify-self:center}.site-nav{display:flex;justify-content:flex-end;gap:clamp(15px,2.5vw,42px);font-size:10px;letter-spacing:.1em}.site-nav a{transition:color .18s}.site-nav a:hover,.site-nav a:focus-visible{color:var(--orange)}.site-nav b{color:var(--orange)}.menu-toggle{display:none}.hero{min-height:calc(100svh - 74px);padding:20px 3.2vw 14px;border-bottom:var(--line);display:flex;flex-direction:column;position:relative;overflow:hidden}.hero-meta,.hero-foot{display:flex;justify-content:space-between;font:9px var(--mono);letter-spacing:.08em;z-index:2}.hero-title-wrap{margin:auto 0 0;position:relative;z-index:2}.eyebrow{font-size:10px;letter-spacing:.18em;margin:0 0 1.2vw}.hero h1,.display{font-size:clamp(72px,14.8vw,220px);letter-spacing:-.095em;line-height:.745;margin:0;font-weight:900}.hero h1{font-size:clamp(84px,16vw,240px)}.hero h1 em,.display em{color:var(--orange);font-style:normal}.hero-bottom{display:grid;grid-template-columns:1fr 1fr 1.1fr;align-items:end;min-height:230px;position:relative;z-index:1;margin-top:3vh}.hero-sub{font-size:12px;line-height:1.5;letter-spacing:.06em;align-self:center}.hero-cta{background:var(--orange);border:3px solid var(--black);padding:17px 20px;display:flex;justify-content:space-between;align-items:center;width:min(280px,90%);font-weight:500;font-size:11px;letter-spacing:.08em;position:relative;z-index:2;transition:background .18s,transform .18s}.hero-cta:hover{background:var(--ink);color:var(--bone);transform:translate(4px,-4px)}.hero-cta b{font-size:20px}.hero-art{min-width:0;width:100%;height:min(32vh,330px);position:relative;border:3px solid var(--black);background:#d8d6ce;overflow:hidden;align-self:stretch;transform:translateY(25px);margin:0 0 0 4vw}.hero-art img{display:block;width:100%;height:100%;object-fit:cover}.art-index{position:absolute;bottom:8px;left:10px;font-size:8px;color:var(--bone);text-shadow:0 1px 2px #000}.hero-foot{margin-top:auto;padding-top:24px;z-index:2}.section-pad{padding:34px 3.2vw 95px}.section-kicker{display:flex;justify-content:space-between;border-bottom:2px solid var(--black);padding-bottom:12px;font-size:9px;letter-spacing:.1em}.studio{border-bottom:var(--line)}.studio-head{display:grid;grid-template-columns:1.6fr .6fr;gap:3vw;align-items:end;padding:7vw 0 6vw}.studio .display{font-size:clamp(66px,10vw,146px);line-height:.83}.studio .display span{color:var(--orange)}.studio-copy{max-width:340px;font-size:15px;line-height:1.6;margin:0 2vw 7px 0}.principles{border-top:3px solid;display:grid;grid-template-columns:repeat(3,1fr)}.principle{display:grid;grid-template-columns:48px 1fr 30px;gap:10px;padding:20px 20px 21px 0;border-right:2px solid var(--black);align-items:start}.principle+ .principle{padding-left:20px}.principle:last-child{border:0}.principle-no{font:12px var(--mono);color:var(--orange)}.principle h3{font-size:18px;margin:0 0 7px;letter-spacing:-.04em}.principle p{font-size:12px;margin:0}.plus{font-size:17px}.work{background:#e2e0d8;border-bottom:var(--line)}.work-heading{display:flex;justify-content:space-between;align-items:end;padding:7vw 0 5vw}.work-heading .display{font-size:clamp(80px,13vw,190px);line-height:.78}.work-heading .display i{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;color:var(--orange)}.work-heading p{font:12px/1.5 var(--mono);margin:0 4vw 3px 0}.project-grid{display:grid;grid-template-columns:1.02fr .78fr;column-gap:7vw;row-gap:7vw;align-items:start}.project{min-width:0}.project-obsidian{margin-top:14vw}.project-form{margin-top:-8vw}.project-open{display:block;text-align:left;padding:0;border:0;background:transparent;width:100%;cursor:pointer}.project-image{display:block;position:relative;overflow:hidden;border:3px solid var(--black);aspect-ratio:1.08;background:#222;transition:transform .25s}.project-open:hover .project-image{transform:translate(-5px,-5px)}.project-meta{display:flex;justify-content:space-between;padding-top:12px;font-size:10px;letter-spacing:.04em}.project-meta b,.project-meta small{display:block}.project-meta small{font-size:9px;color:#5b5a55;margin-top:5px}.project-meta i{font:20px var(--sans);font-style:normal;color:var(--orange)}.visual-vanta{background:#242321;color:var(--bone)}.vanta-arch{position:absolute;width:55%;height:95%;left:22%;bottom:-8%;border:22px solid #d8d4c9;border-bottom:0;border-radius:48% 48% 0 0;box-shadow:inset 20px 0 40px #0008,20px 0 0 #99968b}.vanta-arch:after{content:"";position:absolute;left:50%;top:0;height:100%;width:2px;background:#333}.visual-word{position:absolute;font:900 clamp(28px,5vw,72px)/.8 var(--sans);letter-spacing:-.1em;left:6%;top:9%}.visual-small{position:absolute;right:6%;bottom:7%;font:8px/1.5 var(--mono);text-align:right}.visual-obsidian{background:#c8c3b7;color:#171717}.ob-orb{position:absolute;width:49%;aspect-ratio:1;border-radius:50%;background:#292925;left:24%;top:14%;box-shadow:20px 20px 0 #b0aa9d}.ob-line{position:absolute;left:0;right:0;top:65%;height:2px;background:var(--orange);transform:rotate(-17deg)}.ob-title{position:absolute;bottom:8%;left:8%;font:700 18px/.95 var(--sans);letter-spacing:.08em}.ob-title small{font:8px var(--mono)}.visual-rupture{background:var(--orange);color:var(--ink)}.rupture-circle{position:absolute;width:62%;aspect-ratio:1;border:3px solid var(--black);border-radius:50%;left:19%;top:15%;box-shadow:18px 13px 0 var(--bone),35px 25px 0 var(--black)}.rupture-word{position:absolute;left:9%;top:22%;font:900 clamp(48px,9vw,122px)/.66 var(--sans);letter-spacing:-.12em;transform:rotate(-9deg)}.rupture-bar{position:absolute;background:var(--bone);height:22px;width:125%;left:-10%;top:72%;transform:rotate(8deg);border-block:2px solid}.visual-form{background:#d0cec4}.form-tower{position:absolute;bottom:0;background:#30302d}.tower-a{left:12%;width:23%;height:73%;clip-path:polygon(25% 0,100% 20%,100% 100%,0 100%)}.tower-b{left:37%;width:28%;height:94%;clip-path:polygon(0 9%,68% 0,100% 100%,0 100%);background:#4a4943}.tower-c{right:6%;width:26%;height:60%;clip-path:polygon(0 0,100% 27%,100% 100%,0 100%)}.form-label{position:absolute;top:9%;left:7%;font:900 28px/.8 var(--sans);letter-spacing:-.1em}.form-caption{position:absolute;bottom:6%;right:5%;font:8px/1.4 var(--mono);text-align:right;color:var(--bone)}.concept-note{text-align:right;font-size:8px;letter-spacing:.1em;margin:45px 0 0}.philosophy{min-height:660px;background:var(--ink);color:var(--bone);padding:32px 3.2vw 55px;position:relative;overflow:hidden;border-bottom:var(--line)}.philo-grid{position:absolute;inset:0;pointer-events:none}.philosophy .section-kicker{border-color:var(--bone);position:relative}.philo-overline{font-size:9px;letter-spacing:.16em;margin:8vw 0 2vw;position:relative}.philosophy .display{font-size:clamp(62px,10.8vw,158px);line-height:.83;position:relative}.philosophy .display em{font-family:var(--serif);font-weight:400}.philo-bottom{display:flex;align-items:center;gap:25px;margin-top:5vw;position:relative}.orange-mark{width:48px;height:48px;background:var(--orange)}.philo-bottom p{font:11px/1.5 var(--mono);letter-spacing:.06em}.philo-index{font-size:9px;margin-left:auto;align-self:end}.services{border-bottom:var(--line)}.services-title{font-size:clamp(52px,8vw,116px);line-height:.85;padding:7vw 0 5vw}.services-title i{font:italic 400 1em var(--serif);letter-spacing:-.025em;color:var(--orange)}.service-list{border-top:3px solid var(--black)}.service{display:grid;grid-template-columns:.4fr 1.35fr 1fr 40px;align-items:center;gap:2vw;padding:22px 0;border-bottom:2px solid var(--black);position:relative;transition:padding .2s,color .2s}.service:hover{padding-left:16px;color:var(--orange)}.service-no{font-size:11px;color:var(--orange);align-self:start;padding-top:5px}.service h3{font-size:clamp(21px,3vw,40px);line-height:.9;letter-spacing:-.07em;margin:0}.service p{font-size:12px;line-height:1.45;max-width:280px;margin:0}.service-arrow{font:24px var(--sans);text-align:right}.process{background:#e2e0d8;border-bottom:var(--line)}.process-title{font-size:clamp(56px,9vw,130px);line-height:.83;padding:7vw 0 6vw}.process-title em{font-family:var(--serif);font-weight:400}.process-list{border-top:3px solid var(--black)}.process-step{display:grid;grid-template-columns:.3fr 1.05fr 1fr 30px;gap:2vw;align-items:center;padding:19px 0;border-bottom:2px solid var(--black)}.process-step>span{font-size:11px;color:var(--orange);align-self:start;padding-top:4px}.process-step h3{font-size:clamp(19px,2.5vw,32px);letter-spacing:-.06em;margin:0}.process-step p{font-size:12px;margin:0;max-width:300px}.process-step>b{font-size:18px;text-align:right}.contact{background:var(--orange);border-bottom:var(--line)}.contact .section-kicker{border-color:var(--black)}.contact-layout{display:grid;grid-template-columns:1.1fr .8fr;gap:8vw;padding:8vw 0 3vw}.contact h2{font-size:clamp(55px,8.7vw,126px);line-height:.82}.contact h2 em{color:var(--bone);font-family:var(--serif);font-weight:400}.contact-copy{max-width:400px;font-size:14px;line-height:1.5;margin:35px 0}.contact-aside{font-size:9px;line-height:1.7;letter-spacing:.1em}#contact-form{display:flex;flex-direction:column}#contact-form label{font-size:9px;letter-spacing:.1em;margin:0 0 8px}#contact-form label span{color:var(--bone)}#contact-form input,#contact-form select,#contact-form textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--black);border-radius:0;padding:11px 0;margin-bottom:20px;color:var(--ink);outline:0;font-size:14px}#contact-form input:focus,#contact-form select:focus,#contact-form textarea:focus{border-bottom:3px solid var(--bone)}#contact-form input::placeholder,#contact-form textarea::placeholder{color:#56352e}#contact-form select{appearance:none;background-image:none}#contact-form option{background:var(--bone)}#contact-form textarea{resize:vertical;min-height:90px}.submit-button{border:3px solid var(--black);background:var(--ink);color:var(--bone);display:flex;justify-content:space-between;align-items:center;padding:16px;font-size:10px;letter-spacing:.06em;cursor:pointer;transition:background .2s}.submit-button:hover{background:var(--bone);color:var(--ink)}.submit-button b{font:20px var(--sans)}.form-status{font:10px/1.5 var(--mono);margin:12px 0 0;min-height:30px}.form-status.error{color:#5d0600}.form-status.success{color:#102c17}.footer{background:var(--bone);padding:30px 3.2vw 14px}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;align-items:start;padding:2vw 0 6vw}.footer-logo{font:900 clamp(85px,18vw,260px)/.7 var(--sans);letter-spacing:-.12em}.footer-logo span{font-size:14px;letter-spacing:0}.footer-statement{font-size:clamp(24px,4.5vw,64px);font-weight:900;letter-spacing:-.08em;line-height:.82;margin:0}.footer-nav{display:flex;flex-direction:column;gap:12px;justify-self:end;font:10px var(--mono);letter-spacing:.06em}.footer-nav a:hover{color:var(--orange)}.footer-bottom{border-top:2px solid var(--black);padding-top:12px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.08em}.project-dialog{border:3px solid var(--black);padding:0;background:var(--bone);color:var(--ink);width:min(800px,calc(100% - 28px));max-height:min(88vh,900px);overflow:auto}.project-dialog::backdrop{background:#171717dd}.dialog-close{position:sticky;top:0;margin-left:auto;display:block;border:0;background:var(--orange);padding:12px 16px;font:10px var(--mono);cursor:pointer;z-index:1}.dialog-content{padding:0 5vw 5vw}.dialog-content h2{font-size:clamp(48px,10vw,100px);letter-spacing:-.1em;line-height:.8;margin:10px 0 18px}.dialog-content .dialog-kicker{font:10px var(--mono);letter-spacing:.12em}.dialog-content p{max-width:550px;font-size:15px;line-height:1.6}.dialog-art{height:270px;border:3px solid var(--black);margin:24px 0;position:relative;overflow:hidden}.dialog-art .project-image{height:100%;aspect-ratio:auto;border:0}.dialog-data{font:10px/1.7 var(--mono);border-top:2px solid;padding-top:12px}.reveal{transform:none}
.js-enabled .reveal{clip-path:inset(0 0 100% 0);transform:translateY(24px);transition:clip-path .8s cubic-bezier(.76,0,.24,1),transform .8s cubic-bezier(.2,.8,.2,1)}.js-enabled .reveal.is-visible{clip-path:inset(0);transform:none}.js-enabled .principle.reveal,.js-enabled .service.reveal,.js-enabled .process-step.reveal{clip-path:inset(0 100% 0 0)}.js-enabled .principle.reveal.is-visible,.js-enabled .service.reveal.is-visible,.js-enabled .process-step.reveal.is-visible{clip-path:inset(0)}
@media(max-width:760px){.topbar{height:64px;grid-template-columns:1fr auto;padding:0 5vw;border-bottom-width:8px}.wordmark{font-size:27px}.topbar-note{display:none}.menu-toggle{display:flex;gap:9px;align-items:center;border:0;background:none;font:10px var(--mono);letter-spacing:.1em;cursor:pointer;padding:12px 0}.menu-toggle i{display:block;width:20px;height:2px;background:var(--ink);position:relative}.menu-toggle i:after{content:"";position:absolute;left:0;top:6px;width:14px;height:2px;background:var(--ink)}.site-nav{display:none;position:absolute;top:56px;left:0;right:0;background:var(--bone);padding:22px 5vw 25px;border-bottom:8px solid var(--black);flex-direction:column;gap:0}.site-nav.open{display:flex}.site-nav a{padding:13px 0;border-bottom:1px solid #171717;font-size:12px}.hero{min-height:calc(100svh - 64px);padding:16px 5vw 12px}.hero-meta{font-size:7px}.hero-meta span:last-child{max-width:44%;text-align:right}.hero h1{font-size:clamp(72px,17vw,130px)}.hero-bottom{grid-template-columns:1fr 1fr;min-height:210px;margin-top:1vh}.hero-sub{font-size:10px}.hero-cta{grid-column:1;width:100%;padding:13px;font-size:9px}.hero-art{min-width:0;grid-column:2;grid-row:1/3;height:190px;margin-left:8px;transform:translateY(14px)}.hero-foot{font-size:7px}.hero-foot span:last-child{max-width:40%;text-align:right}.section-pad{padding:25px 5vw 65px}.section-kicker{font-size:8px}.studio-head{grid-template-columns:1fr;gap:25px;padding:65px 0 45px}.studio .display{font-size:clamp(58px,12.5vw,95px)}.studio-copy{font-size:13px;max-width:400px}.principles{grid-template-columns:1fr}.principle,.principle+.principle{border-right:0;border-bottom:1px solid;padding:17px 0;grid-template-columns:40px 1fr 25px}.principle:last-child{border-bottom:0}.principle h3{font-size:16px}.work-heading{padding:65px 0 40px;display:block}.work-heading .display{font-size:clamp(74px,15vw,120px)}.work-heading p{margin:25px 0 0;font-size:10px}.project-grid{grid-template-columns:1fr 1fr;column-gap:14px;row-gap:34px}.project-obsidian,.project-form{margin-top:0}.project-obsidian,.project-form{transform:translateY(30px)}.project-image{aspect-ratio:.9}.project-meta{font-size:8px;padding-top:8px}.project-meta small{font-size:7px;line-height:1.3}.visual-word{font-size:38px}.rupture-word{font-size:clamp(38px,10vw,60px)}.form-label{font-size:22px}.concept-note{font-size:7px;margin-top:55px}.philosophy{min-height:550px;padding:26px 5vw 42px}.philo-overline{margin:85px 0 20px}.philosophy .display{font-size:clamp(55px,11vw,86px)}.philo-bottom{gap:14px;margin-top:55px}.orange-mark{width:30px;height:30px;flex:none}.philo-bottom p{font-size:9px}.philo-index{font-size:7px}.services-title{font-size:clamp(47px,9vw,70px);padding:60px 0 40px}.service{grid-template-columns:30px 1fr 30px;gap:10px;padding:19px 0}.service h3{font-size:24px}.service p{grid-column:2;grid-row:2;font-size:11px;margin-top:8px}.service-arrow{grid-column:3;grid-row:1}.process-title{font-size:clamp(48px,9.8vw,75px);padding:60px 0 45px}.process-step{grid-template-columns:32px 1fr 25px;gap:10px;padding:17px 0}.process-step h3{font-size:20px}.process-step p{grid-column:2;font-size:11px;margin-top:4px}.process-step>b{grid-column:3;grid-row:1}.contact-layout{grid-template-columns:1fr;gap:35px;padding:65px 0 15px}.contact h2{font-size:clamp(48px,10vw,78px)}.contact-copy{font-size:13px;margin:22px 0}.contact-aside{display:none}.footer{padding:26px 5vw 12px}.footer-top{grid-template-columns:1fr 1fr;row-gap:42px;padding:20px 0 45px}.footer-logo{font-size:clamp(100px,27vw,190px)}.footer-statement{justify-self:end;font-size:clamp(26px,7vw,45px)}.footer-nav{grid-column:1/-1;justify-self:start;display:grid;grid-template-columns:1fr 1fr;width:100%;font-size:9px}.footer-bottom{flex-wrap:wrap;gap:10px;font-size:7px}.footer-bottom span:nth-child(2){display:none}.dialog-content{padding:0 6vw 8vw}.dialog-art{height:200px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{clip-path:none;transform:none;opacity:1}}

/* Image-led art direction: let real photographic material carry the visual weight. */
.hero-bottom{position:static;min-height:175px;width:59%;grid-template-columns:1fr 1fr;z-index:auto}
.hero-title-wrap{width:63%}
.hero h1{font-size:clamp(82px,11.6vw,174px);line-height:.79}
.hero-art{position:absolute;top:9%;right:3.2vw;bottom:10%;width:38%;height:auto;margin:0;transform:none;z-index:0}
.hero-art img{transform:scale(1.1);filter:grayscale(1) contrast(1.08)}
.hero-sub,.hero-cta{position:relative;z-index:2}
.art-index{background:var(--orange);color:var(--ink);padding:7px 9px;left:10px;bottom:10px;text-shadow:none}
.project-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.06);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.visual-obsidian img{filter:grayscale(1) contrast(1.15)}
.visual-rupture img{filter:grayscale(1) contrast(1.22)}
.project-open:hover .project-image img{transform:scale(1.045)}
.photo-label{position:absolute;z-index:1;top:12px;left:12px;max-width:calc(100% - 24px);padding:7px 9px;background:var(--orange);color:var(--ink);font:9px/1.25 var(--mono);letter-spacing:.05em}
@media(max-width:760px){
  .hero-title-wrap{width:100%}
  .hero h1{font-size:clamp(72px,17vw,130px)}
  .hero-bottom{position:relative;min-height:210px;width:100%;grid-template-columns:1fr 1fr;z-index:1}
  .hero-art{position:relative;inset:auto;grid-column:2;grid-row:1/3;width:100%;height:190px;margin-left:8px;transform:translateY(14px);z-index:0}
  .art-index{font-size:7px;max-width:calc(100% - 20px)}
  .photo-label{top:7px;left:7px;font-size:7px;padding:6px}
}
.image-credits{font-size:8px;line-height:1.9;letter-spacing:.055em;text-align:right;margin:10px 0 0;color:#56554f}
.image-credits a{text-decoration:underline;text-underline-offset:2px}
.image-credits a:hover{color:var(--orange)}
@media(max-width:760px){.image-credits{text-align:left;font-size:7px}}

/* Progressive enhancement: reveal content only when its observer is ready. */
.reveal,.principle.reveal,.service.reveal,.process-step.reveal{clip-path:none;transform:none;opacity:1;visibility:visible}
.motion-ready .reveal.is-visible{animation:section-reveal .65s cubic-bezier(.2,.8,.2,1) both}
@keyframes section-reveal{from{opacity:.72;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal,.motion-ready .reveal.is-visible{clip-path:none;transform:none}}

/* Keep every section readable even if the browser blocks JavaScript or motion styles. */

/* Studio image fills the empty side column and shares the site's monochrome image system. */
.studio-aside{display:flex;flex-direction:column;gap:22px;min-width:0;align-self:stretch}
.studio-aside .studio-copy{margin:0;max-width:100%;flex:none}
.studio-photo{position:relative;overflow:hidden;border:3px solid var(--black);margin:0;min-height:clamp(235px,25vw,370px);flex:1;background:#282825}
.studio-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08)}
.studio-photo figcaption{position:absolute;left:10px;bottom:10px;padding:7px 9px;background:var(--orange);font:8px var(--mono);letter-spacing:.08em}
.work-heading .display i,.services-title i{color:var(--orange)}
.process-title{letter-spacing:-.035em;word-spacing:.1em}
.contact h2{letter-spacing:-.035em}
.contact h2 em{letter-spacing:-.015em}
.project-vanta .project-image{background:#191919}
.project-obsidian .project-image{background:#d5d3cc}
.project-rupture .project-image{background:#181818}
.project-form .project-image{background:#eceae4}
.project-obsidian .project-image img{filter:grayscale(1) contrast(1.2) brightness(.83)}
.project-vanta .project-image img{filter:grayscale(1) contrast(1.14)}
.project-rupture .project-image img{filter:grayscale(1) contrast(1.22)}
.project-form .project-image img{filter:grayscale(1) contrast(1.12)}
.project-obsidian{margin-top:10vw}
.project-rupture{margin-top:0}
.project-form{margin-top:8vw}
@media(max-width:760px){
  .studio-aside{gap:18px}
  .studio-photo{min-height:240px;flex:none}
  .project-obsidian,.project-form{margin-top:0;transform:none}
  .process-title{letter-spacing:-.025em;word-spacing:.03em}
  .contact h2{letter-spacing:-.025em}
  .contact h2 em{letter-spacing:-.01em}
}

/* Unified uppercase display type and a balanced, square project grid. */
.work-heading .display i,
.services-title i,
.philosophy .display em,
.process-title em,
.contact h2 em {
  font-family:var(--sans);
  font-style:normal;
  font-weight:900;
  letter-spacing:inherit;
}
.work-heading .display i,
.services-title i { color:var(--orange); }
.project-grid {
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:clamp(20px,5vw,80px);
  row-gap:clamp(30px,6vw,90px);
  align-items:start;
}
.project-obsidian,
.project-form { margin-top:0; transform:none; }
.project-image { aspect-ratio:1/1; }
@media(max-width:760px) {
  .project-grid { column-gap:14px; row-gap:34px; }
  .project-obsidian,
  .project-form { margin-top:0; transform:none; }
  .project-image { aspect-ratio:1/1; }
}

/* Social identity marks: decorative until profile URLs are configured. */
.social-icons{display:inline-flex;align-items:center;gap:11px;color:var(--ink);flex:none}
.social-icons svg{display:block;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.social-icons .social-dot{fill:currentColor;stroke:none}
.social-icons .behance-icon,.social-icons .linkedin-icon{fill:currentColor;stroke:none}
.social-icons.footer-social{margin-top:10px;gap:14px}
.social-icons.footer-social svg{width:17px;height:17px}
@media(max-width:760px){
  .site-nav .social-icons{padding:16px 0 3px;gap:16px}
  .site-nav .social-icons svg{width:18px;height:18px}
}
.footer-statement span{color:var(--orange)}

@media(max-width:1200px){
  .topbar{grid-template-columns:1fr auto}
  .topbar-note{display:none}
  .menu-toggle{display:flex;gap:9px;align-items:center;border:0;background:none;font:10px var(--mono);letter-spacing:.1em;cursor:pointer;padding:12px 0}
  .menu-toggle i{display:block;width:20px;height:2px;background:var(--ink);position:relative}
  .menu-toggle i:after{content:"";position:absolute;left:0;top:6px;width:14px;height:2px;background:var(--ink)}
  .site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bone);padding:22px 5vw 25px;border-bottom:8px solid var(--black);flex-direction:column;gap:0}
  .site-nav.open{display:flex}
  .site-nav a{padding:13px 0;border-bottom:1px solid var(--ink);font-size:12px}
  .site-nav .social-icons{padding:16px 0 3px;gap:16px}
  .site-nav .social-icons svg{width:18px;height:18px}
}

/* Keep portfolio photos visible while they use the same reveal motion as copy. */
.project.reveal{opacity:1;visibility:visible}

/* Match all running copy to the monospaced navigation; preserve display headings. */
body{font-family:var(--mono)}
h1,h2,h3,.display,.footer-logo,.footer-statement,.wordmark,.dialog-content h2{font-family:var(--sans)}
.studio .display .studio-title-apostrophe{display:inline-block;margin-inline:.035em;font-style:normal;color:inherit}

.process-step{transition:color .2s}
.process-step:hover{color:var(--orange)}
.service{transition:color .2s}
.service:hover{padding-left:0}

/* Keep row and heading positions stable while retaining hover feedback. */
.principle{transition:color .2s}
.principle:hover{color:var(--orange)}
.principle .plus{display:inline-block;transform:none;transition:color .2s}
.principle:hover .plus{transform:none;color:var(--orange)}

/* Trim excess space below the contact form in the orange closing section. */
.contact.section-pad{padding-bottom:clamp(28px,4vw,56px)}
.contact-layout{padding-bottom:0}

/* Match letter spacing across the large display headlines without changing size or leading. */
.hero h1,
.display,
.footer-statement,
.dialog-content h2 { letter-spacing:-.095em; }
.display em,
.display i,
.display span,
.hero h1 em,
.footer-statement span { letter-spacing:inherit; }

