@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--black:#101010;--gold:#c4a36a;--white:#f4f3ef;--muted:#a5a5a2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--black);color:var(--white);font-family:'DM Sans',Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:7px}::selection{background:var(--gold);color:var(--black)}.progress{height:2px;background:var(--gold);position:fixed;top:0;left:0;width:0;z-index:100}header{height:100px;position:absolute;z-index:20;top:0;left:0;width:100%;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff26}.wordmark{font-family:'Manrope',sans-serif;font-size:36px;font-weight:800;letter-spacing:-3px}.wordmark span{font-size:12px;letter-spacing:0;vertical-align:top;position:relative;top:9px;margin-left:6px}nav{display:flex;align-items:center;gap:40px;font-size:14px}nav a{transition:color .2s}nav a:hover{color:var(--gold)}.nav-cta{border:1px solid #ffffff50;padding:13px 20px}.nav-cta span{padding-left:24px}.menu-toggle{display:none}.hero{min-height:780px;height:100svh;max-height:1200px;position:relative;overflow:hidden;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:url('/assets/architecture.webp') center center/cover;transform:scale(1.05);will-change:transform;animation:arrive 2s ease-out both}.hero-shade{background:linear-gradient(90deg,#080909ce,transparent 88%),linear-gradient(0deg,#080909 0%,transparent 30%,#08090935)}.hero-content{position:relative;z-index:2;padding:105px 7% 120px;width:100%}.eyebrow{font-size:12px;letter-spacing:2px;line-height:1.7;font-weight:500}.hero .eyebrow{display:flex;align-items:center;gap:12px;color:#e4d4b9;margin-bottom:38px}.hero .eyebrow span{width:24px;height:1px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;font-weight:400}h1{font-size:clamp(48px,6.3vw,104px);line-height:1.1;letter-spacing:-.065em;margin-bottom:30px}em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}h1 em{letter-spacing:-.055em}.hero-copy{line-height:1.8;color:#cbcbc6;margin-bottom:37px}.text-link{font-size:14px;display:inline-flex;align-items:center;gap:46px;border-bottom:1px solid #c4a36a99;padding-bottom:13px}.text-link span{font-size:22px;color:var(--gold)}.hero-foot{position:absolute;bottom:35px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;letter-spacing:1.8px;color:#babbb6}.hero-foot a span{margin-left:20px;font-size:20px;color:var(--gold)}.hero-coordinate{position:absolute;right:5%;top:45%;font-size:12px;letter-spacing:2px;line-height:1.8;color:#aaa}.section-pad{padding:95px 7% 115px}.section-label{display:flex;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:1.6px;line-height:1.6;padding-bottom:28px;border-bottom:1px solid #ffffff26;color:var(--muted)}.section-label span:first-child{color:var(--gold)}.vision{background:var(--white);color:#171817}.vision .section-label{border-color:#0002;color:#777}.vision .section-label span:first-child{color:#7d663f}.vision-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:13%;padding-top:85px}h2{font-size:clamp(38px,4.6vw,72px);line-height:1.12;letter-spacing:-.055em}.vision h2 span{color:#a48753}.vision-copy{padding-top:7px;color:#555;line-height:1.8}.vision-copy>p{margin-bottom:22px}.principle{border-top:1px solid #0002;margin-top:36px;padding-top:27px}.principle>span,.stage-output>span{font-size:12px;letter-spacing:1.5px}.principle strong{display:block;font-size:24px;font-weight:450;color:#191919;margin:9px 0}.principle p{margin:0;max-width:355px;font-size:14px}.system{background:#141514}.system-heading{display:flex;justify-content:space-between;align-items:end;margin-top:60px;margin-bottom:50px}.system-heading h2{margin:0}.system-heading>p{color:var(--muted);line-height:1.8;font-size:15px;max-width:310px;margin-bottom:5px}.stages{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid #ffffff30;margin-bottom:42px}.stages button{background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;text-align:left;padding:20px 8px 21px 0;font-size:16px;color:#aaa;transition:color .3s,border-color .3s}.stages button span{font-size:12px;color:#777;display:block;margin-bottom:12px}.stages button[aria-selected=true]{color:var(--gold);border-color:var(--gold)}.stages button:hover{color:var(--white)}.stage-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;min-height:430px}.stage-art{position:relative;min-height:430px;overflow:hidden}.stage-art img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:65% center;filter:brightness(.85);transition:transform 1.5s,object-position 1.5s}.stage-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 50%)}.art-caption{position:absolute;top:25px;left:24px;font-size:12px;letter-spacing:2px;z-index:1;color:#d6c5a7}.big-number{position:absolute;bottom:18px;right:25px;font-size:96px;font-family:Georgia,serif;color:#ddc59a90;z-index:1}.stage-copy{padding:25px 0 0;display:flex;flex-direction:column}.stage-kicker{color:var(--gold);font-size:12px;margin-bottom:24px}.stage-copy h3{font-size:38px;line-height:1.2;letter-spacing:-1.5px;margin-bottom:22px}.stage-description{color:var(--muted);line-height:1.85;font-size:15px;max-width:420px}.stage-output{padding-top:20px;margin-top:auto;border-top:1px solid #ffffff26}.stage-output>span{color:var(--gold);font-size:12px}.stage-output p{font-size:13px;line-height:1.8;color:#bcbcb6;margin-top:8px}.stage-controls{display:flex;justify-content:space-between;align-items:center;margin-top:20px;font-size:12px}.stage-count{color:#777;letter-spacing:2px}.next-stage{background:none;border:0;font-size:13px;padding:10px 0}.next-stage span{margin-left:20px;color:var(--gold);font-size:20px}.manifesto{height:640px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center}.manifesto-image{position:absolute;inset:-10%;background:linear-gradient(#0009,#000a),url('/assets/architecture.webp') center 72%/cover}.manifesto-content{position:relative;padding:60px 20px}.manifesto .eyebrow{color:#c6b79c;margin-bottom:35px}.manifesto h2{font-size:clamp(42px,6.4vw,96px);margin-bottom:27px}.manifesto p:last-child{color:#c0c0b9;line-height:1.8}.practice{background:#101110}.practice-intro{display:flex;justify-content:space-between;align-items:end;margin:65px 0 60px;gap:35px}.practice-intro h2{font-size:clamp(38px,4vw,60px);margin:0}.practice-intro p{max-width:305px;color:var(--muted);line-height:1.8;font-size:15px;margin-bottom:0}.service-list{border-top:1px solid #ffffff26}details{border-bottom:1px solid #ffffff26}summary{list-style:none;display:flex;align-items:center;gap:36px;padding:32px 0;cursor:pointer}summary::-webkit-details-marker{display:none}.service-num{font-size:12px;color:var(--gold)}summary h3{font-size:29px;letter-spacing:-1px;margin:0}.service-tag{font-size:12px;letter-spacing:1.5px;color:#777;margin-left:auto}.plus{font-size:28px;color:var(--gold);font-weight:400;margin-left:20px;transition:transform .3s}details[open] .plus{transform:rotate(45deg)}details>p{padding:0 60px 28px;max-width:780px;color:var(--muted);font-size:16px;line-height:1.8}summary:hover h3{color:var(--gold)}footer{padding:55px 5% 28px;overflow:hidden}.footer-logo{display:block;font-family:'Manrope',sans-serif;font-weight:800;letter-spacing:-.085em;font-size:clamp(140px,27vw,430px);line-height:1.1;width:max-content}.footer-logo span{font-size:.09em;letter-spacing:0;vertical-align:top;position:relative;top:.8em;margin-left:.7em}.footer-bottom{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.5px;gap:20px;color:var(--muted);margin-top:40px}@keyframes arrive{from{opacity:.4;transform:scale(1.12)}to{opacity:1;transform:scale(1.05)}}@media(min-width:1600px){.section-pad{padding-left:max(7%,calc((100% - 1440px)/2));padding-right:max(7%,calc((100% - 1440px)/2))}}@media(max-width:800px){header{height:82px;padding:0 6%}.wordmark{font-size:31px}.menu-toggle{display:block;background:none;border:0;font-size:14px;padding:12px 0}.menu-toggle span{margin-left:14px}nav{display:none;position:absolute;top:82px;left:0;right:0;background:#111;padding:25px 6%;border-bottom:1px solid #444;gap:25px;flex-direction:column;align-items:stretch}nav.open{display:flex}.nav-cta{align-self:start}.hero{height:92svh;min-height:680px;max-height:950px}.hero-content{padding:90px 7% 70px}.hero-image{background-position:61% center}.hero-shade{background:linear-gradient(90deg,#080909c9,#08090930),linear-gradient(0deg,#080909,transparent 50%)}.hero .eyebrow{font-size:12px;letter-spacing:1.6px;margin-bottom:28px}h1{font-size:clamp(41px,8.5vw,66px);letter-spacing:-.06em;line-height:1.13}.hero-copy{font-size:14px;line-height:1.9}.hero-coordinate{display:none}.hero-foot{left:7%;right:7%;bottom:27px}.hero-foot>span{display:none}.hero-foot a{font-size:12px}.section-pad{padding:62px 7% 72px}.section-label{font-size:12px}.section-label span:last-child{display:none}.vision-grid{grid-template-columns:1fr;gap:28px;padding-top:43px}.vision h2{margin-bottom:0}.vision-copy{font-size:16px}.system-heading{display:block;margin-top:42px;margin-bottom:28px}.system-heading p{margin-top:23px;font-size:14px}.stages{display:flex;overflow-x:auto;gap:23px;scrollbar-width:thin;margin-bottom:25px}.stages button{flex:0 0 auto;font-size:14px;padding-right:9px}.stage-panel{grid-template-columns:1fr;gap:13px}.stage-art{min-height:300px}.stage-copy h3{font-size:34px}.stage-description{max-width:none}.stage-output{margin-top:15px}.manifesto{height:510px}.practice-intro{display:block;margin:40px 0}.practice-intro p{margin-top:25px;max-width:none}.service-tag{display:none}summary{gap:16px;padding:25px 0}summary h3{font-size:21px;letter-spacing:-.7px}.plus{margin-left:auto}details>p{padding:0 28px 24px;font-size:15px}footer{padding-top:35px}.footer-logo{font-size:26vw}.footer-bottom{flex-wrap:wrap;font-size:12px;line-height:1.8;margin-top:25px}.footer-bottom>span:first-child{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-image{transform:none!important}}

/* Depth follows the scroll position; content remains on the native page. */
.progress{width:100%;transform:scaleX(0);transform-origin:left;will-change:transform}
.js-motion .hero-image{animation:hero-light 1.8s ease-out both;transform:translate3d(0,var(--image-y,0px),0) scale(var(--image-scale,1.05))}
.js-motion .hero-content{transform:translate3d(0,var(--copy-y,0px),0);opacity:var(--copy-opacity,1);will-change:transform,opacity}
.js-motion .vision-grid h2.visible{transform:translate3d(0,var(--heading-y,0px),0);transition:opacity 1s ease}
.stage-panel{perspective:1200px}
.js-motion .stage-art{transform:translate3d(0,var(--art-y,0px),0) rotateY(var(--art-rotate,0deg));transform-origin:left center;box-shadow:0 24px 60px -35px #000b}
.manifesto{display:block;height:auto;overflow:visible}
.manifesto-scene{height:640px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.js-motion .manifesto{height:155svh;min-height:900px}
.js-motion .manifesto-scene{position:sticky;top:0;height:100svh;min-height:580px}
.js-motion .manifesto-image{transform:translate3d(0,var(--scene-y,0px),0) scale(var(--scene-scale,1.15));will-change:transform}
.js-motion .manifesto-content.visible{transform:translate3d(0,var(--scene-copy-y,0px),0);transition:opacity 1s ease}
.js-motion .footer-logo{transform:translate3d(0,var(--logo-y,0px),0)}
@keyframes hero-light{from{opacity:.4}to{opacity:1}}
@media(max-width:800px){.manifesto-scene{height:510px}.js-motion .manifesto{height:125svh;min-height:740px}.js-motion .manifesto-scene{min-height:510px}.js-motion .stage-art{transform:translate3d(0,var(--art-y,0px),0)}}
@media(prefers-reduced-motion:reduce){.hero-content,.stage-art,.footer-logo,.manifesto-image,.manifesto-content,.vision-grid h2{transform:none!important;opacity:1!important}.manifesto{height:auto!important;min-height:0!important}.manifesto-scene{position:relative!important;height:640px!important;min-height:0!important}}
@media(max-width:800px) and (prefers-reduced-motion:reduce){.manifesto-scene{height:510px!important}}

/* Architecture is assembled by scroll: ground, base, uprights, enclosure, finish. */
.system{position:relative}
.build-slices,.build-frame{display:none}
.js-motion .system{padding-bottom:80px;height:440svh;min-height:2400px}
.js-motion .construction-sticky{position:sticky;top:24px}
.js-motion .construction-sticky .stages{margin-bottom:24px;background:#141514}
.js-motion .stage-panel{min-height:0;gap:6%;perspective:none}
.js-motion .stage-art{height:clamp(330px,56svh,570px);min-height:0;transform:none;box-shadow:none;background:#101110}
.js-motion .stage-art>img{opacity:0;transition:none}
.js-motion .stage-art:after{pointer-events:none;background:linear-gradient(0deg,#0009,transparent 35%);z-index:2}
.js-motion .build-slices{display:block;position:absolute;inset:0}
.js-motion .build-slice{position:absolute;left:0;width:100%;height:20.1%;background-image:url('/assets/architecture.webp');background-size:auto 500%;background-repeat:no-repeat;will-change:transform,opacity,clip-path;opacity:0}
.slice-0{bottom:0;background-position:65% 100%}
.slice-1{bottom:20%;background-position:65% 75%}
.slice-2{bottom:40%;background-position:65% 50%}
.slice-3{bottom:60%;background-position:65% 25%}
.slice-4{bottom:80%;background-position:65% 0%}
.js-motion .build-frame{display:block;position:absolute;inset:24px;z-index:3;pointer-events:none;border-top:1px solid transparent}
.build-frame:before{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold);transform:scaleX(var(--ground,0));transform-origin:left;box-shadow:0 -14px 0 #c4a36a35}
.build-frame:after{content:'';position:absolute;inset:0;border-left:1px solid #c4a36a80;border-right:1px solid #c4a36a80;transform:scaleY(var(--uprights,0));transform-origin:bottom}
.js-motion .build-slices:after{content:'';position:absolute;left:24px;right:24px;top:24px;height:1px;background:var(--gold);transform:scaleX(var(--roof,0));transform-origin:left;z-index:4}
.js-motion .art-caption{top:39px;left:39px;font-size:12px;letter-spacing:1px;z-index:4}
.js-motion .big-number{right:38px;bottom:32px;color:#ddc59a;z-index:4}
.js-motion .stage-copy{padding-top:12px}
.js-motion .stage-copy h3{font-size:clamp(28px,3vw,42px)}
.js-motion .stage-description{font-size:16px;line-height:1.65}
.js-motion .stage-output p{font-size:14px}
.js-motion .stages{position:relative}
.js-motion .stages:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(var(--build-progress,0));transform-origin:left;pointer-events:none}
.js-motion .stages button[aria-selected=true]{border-color:transparent}
.js-motion .vision,.js-motion .practice,.js-motion .contact{position:relative}
.js-motion .vision:before,.js-motion .practice:before,.js-motion .contact:before{content:'';position:absolute;top:0;left:7%;right:7%;height:2px;background:var(--gold);transform:scaleX(var(--section-build,0));transform-origin:left}
.js-motion .contact:before{background:#9a7a43}
.js-motion .vision-grid h2.visible{transform:none}
.js-motion .section-label{position:relative;border-bottom-color:transparent}
.js-motion .section-label:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:currentColor;opacity:.3;transform:scaleX(0);transform-origin:left;transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
.js-motion .section-label.visible:after{transform:scaleX(1)}
.js-motion .manifesto{height:auto;min-height:0}
.js-motion .manifesto-scene{position:relative;height:80svh;min-height:510px}
.js-motion .manifesto-image{transform:none;will-change:auto}
@media(max-width:800px){
 .js-motion .system{height:420svh;min-height:2700px}
 .js-motion .construction-sticky{top:10px}
 .js-motion .construction-sticky .stages{gap:17px;margin-bottom:12px}
 .js-motion .stages button{padding:10px 6px 12px 0;font-size:14px}
 .js-motion .stages button span{margin-bottom:5px}
 .js-motion .stage-panel{gap:8px}
 .js-motion .stage-art{height:clamp(150px,25svh,260px)}
 .js-motion .stage-copy{padding-top:8px}
 .js-motion .stage-kicker{margin-bottom:9px;letter-spacing:1px}
 .js-motion .stage-copy h3{font-size:28px;line-height:1.1;margin-bottom:12px}
 .js-motion .stage-copy h3 br{display:none}
 .js-motion .stage-description{font-size:16px;line-height:1.5;margin-bottom:12px}
 .js-motion .stage-output{padding-top:10px;margin-top:0}
 .js-motion .stage-output p{line-height:1.45;margin-bottom:0}
 .js-motion .stage-controls{margin-top:5px}
 .js-motion .big-number{font-size:60px;bottom:16px;right:24px}
 .js-motion .art-caption{top:20px;left:24px;font-size:12px}
 .js-motion .build-frame{inset:14px}
 .js-motion .build-slices:after{left:14px;right:14px;top:14px}
}
/* Short viewports and enlarged text retain the complete usable tab panel. */
@media(max-height:640px){
 .js-motion .construction-sticky{position:relative;top:auto}
 .js-motion .system{height:auto;min-height:0}
 .js-motion .stage-art>img{opacity:1}
 .js-motion .build-slices,.js-motion .build-frame{display:none}
}
@media(prefers-reduced-motion:reduce){.build-slices,.build-frame{display:none!important}.stage-art>img{opacity:1!important}}

.js-motion .system.build-static{height:auto;min-height:0}
.js-motion .build-static .construction-sticky{position:relative;top:auto}
.js-motion .build-static .stage-art>img{opacity:1}
.js-motion .build-static .build-slices,.js-motion .build-static .build-frame{display:none}

/* The closing chapter: an open editorial page and a dark diagnostic panel. */
.contact{position:relative;background:var(--white);color:#171817;padding-top:42px;padding-bottom:30px}
.contact-heading{display:flex;justify-content:space-between;gap:24px;padding:0 0 26px;border-bottom:1px solid #17181730;font-size:12px;letter-spacing:1.5px;line-height:1.7}
.contact-heading>span:first-child{color:#795f34}
.contact-heading>span:last-child{color:#63635e}
.contact-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:9%;align-items:end;padding:64px 0 76px}
.contact-story{min-width:0}
.contact-origin{display:flex;align-items:center;gap:28px;margin-bottom:30px}
.contact-origin>span{font-family:'Manrope',sans-serif;font-size:clamp(76px,8vw,120px);font-weight:400;letter-spacing:-.09em;line-height:1;color:#b5a17d}
.contact-origin p{font-size:14px;line-height:1.8;color:#686860;margin:0;border-left:1px solid #a994704d;padding-left:24px}
.contact h2{font-size:clamp(54px,6.5vw,100px);line-height:1.09;letter-spacing:-.065em;margin:0 0 26px}
.contact em{color:#8b6b38}
.contact-description{max-width:365px;font-size:16px;line-height:1.85;color:#62625c;margin-bottom:0}
.contact-panel{min-width:0;background:#171817;color:var(--white);padding:28px 32px 0;box-shadow:16px 18px 0 #deddd5}
.contact-panel-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff26;padding-bottom:24px;font-size:12px;letter-spacing:1.7px;color:#c4a36a}
.contact-panel-top>span:last-child{font-size:25px;line-height:1}
.contact-panel-body{padding:36px 0 32px}
.contact-panel-body .eyebrow{font-size:12px;letter-spacing:1.2px;color:#c4a36a;margin-bottom:18px}
.contact-panel h3{font-size:clamp(28px,2.7vw,42px);line-height:1.18;letter-spacing:-.04em;margin-bottom:24px}
.contact-panel-body>p:last-child{font-size:16px;line-height:1.75;color:#b6b6ad;max-width:310px;margin-bottom:0}
.contact-start{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;border-top:1px solid #c4a36a75;font-size:16px;color:#e0c493;transition:color .25s}
.contact-start>span:last-child{font-size:26px;transition:transform .25s}
.contact-start:hover{color:#fff}.contact-start:hover>span:last-child{transform:translate(3px,-3px)}
.contact-start:focus-visible{outline-offset:3px}
.contact-signoff{border-top:1px solid #17181730;padding-top:24px;display:flex;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:1.2px;line-height:1.7;color:#63635e}
.contact-signoff>span:last-child{font-size:14px;letter-spacing:0;color:#171817}
@media(max-width:1000px){.contact-layout{gap:6%}.contact-panel{padding-left:25px;padding-right:25px}.contact h2{font-size:clamp(48px,6.2vw,75px)}}
@media(max-width:800px){.contact{padding-top:32px;padding-bottom:28px}.contact-heading>span:last-child{display:none}.contact-layout{grid-template-columns:1fr;padding:38px 0 48px;gap:38px}.contact-origin{margin-bottom:23px;gap:24px}.contact-origin>span{font-size:82px}.contact-origin p{font-size:14px;padding-left:20px}.contact h2{font-size:clamp(48px,10.7vw,76px);margin-bottom:22px}.contact-description{max-width:420px}.contact-panel{margin-right:9px;box-shadow:9px 10px 0 #deddd5;padding:23px 25px 0}.contact-panel-top{padding-bottom:20px}.contact-panel-body{padding:28px 0}.contact-panel h3{font-size:34px}.contact-panel-body>p:last-child{max-width:400px}.contact-signoff{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){}

/* Portfolio invitation bridges services and the initial diagnostic. */
.portfolio-note{display:grid;grid-template-columns:1.25fr 1fr;gap:9%;align-items:center;background:#171817;border-top:1px solid #c4a36a40;padding-top:65px;padding-bottom:70px}
.portfolio-intro .eyebrow{color:var(--gold);font-size:12px;letter-spacing:1.5px;margin-bottom:24px}
.portfolio-intro h2{font-size:clamp(38px,4.1vw,64px);margin:0;line-height:1.15}
.portfolio-copy{border-left:1px solid #c4a36a60;padding-left:32px}
.portfolio-copy>p:first-child{font-size:20px;line-height:1.65;max-width:370px;margin-bottom:22px;color:var(--white)}
.portfolio-availability{color:#b2b2a9;font-size:16px;line-height:1.8;max-width:370px;margin:0}
@media(max-width:800px){.portfolio-note{grid-template-columns:1fr;gap:30px;padding-top:48px;padding-bottom:54px}.portfolio-intro .eyebrow{margin-bottom:20px}.portfolio-copy{padding-left:23px}.portfolio-copy>p:first-child{font-size:18px;margin-bottom:16px}.portfolio-availability{font-size:16px}}

/* Text stays readable even if an observer is delayed or unavailable.
   Never clip observed targets: an empty intersection can prevent revealing them. */
.reveal,.js-motion .reveal{opacity:1;clip-path:none;transform:none}
@media(prefers-reduced-motion:no-preference){
 .js-motion .reveal.visible{animation:text-enter .85s cubic-bezier(.16,1,.3,1) both}
 .js-motion .reveal:focus-within{animation:none}
}
@keyframes text-enter{from{opacity:.65;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.reveal{animation:none!important;transform:none!important}}

/* Original BAUH artwork retains its proportions and transparent background. */
.wordmark{display:flex;align-items:center;width:240px;max-width:45%;line-height:1;letter-spacing:normal}
.wordmark img{display:block;width:100%;height:auto}
.footer-logo{display:block;width:min(100%,900px);font-size:inherit;line-height:1;letter-spacing:normal;margin:0 auto}
.footer-logo img{display:block;width:100%;height:auto}
@media(max-width:800px){.wordmark{width:205px;max-width:65%}.footer-logo{width:100%}}
