@font-face{font-family:Space;src:url('assets/fonts/SpaceGrotesk.ttf') format('truetype');font-weight:300 700;font-display:swap}
:root{--ink:#202321;--paper:#FAF9F6;--coral:#F25C43;--muted:#646963;--line:#DCDDD5;--font:Space,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:1rem;line-height:1.55}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--coral);outline-offset:5px}img{max-width:100%;display:block;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;line-height:1.04}h1{font-size:clamp(3.5rem,6.5vw,6.25rem);letter-spacing:-.065em}h2{font-size:clamp(2.4rem,4vw,3.8rem);letter-spacing:-.055em}h3{font-size:1.4rem;letter-spacing:-.03em}.wrap{width:min(1216px,calc(100% - 96px));margin-inline:auto}.header{display:flex;align-items:center;justify-content:space-between;padding-block:30px;border-bottom:1px solid var(--line)}.brand{width:205px}.header nav{display:flex;gap:32px;font-size:.94rem}.header nav a{border-bottom:1px solid transparent;padding-block:6px}.header nav a:hover{border-color:var(--ink)}.skip{position:absolute;top:-100px;left:1rem;z-index:9;background:var(--ink);color:white;padding:1rem}.skip:focus{top:1rem}.eyebrow{font-size:.88rem;letter-spacing:.02em;display:flex;align-items:center;gap:12px}.mini-rule{width:30px;height:2px;background:var(--coral)}.hero{padding-top:64px;display:grid;grid-template-columns:1.16fr 1fr;gap:44px 64px;align-items:stretch}.hero-copy{padding-top:12px}.hero-copy .eyebrow{margin-bottom:26px}.accent{color:var(--coral)}.intro{max-width:390px;color:var(--muted);font-size:1.1rem;line-height:1.65;margin:26px 0}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--paper);font-weight:500;font-size:1rem;padding:15px 27px;border-radius:5px;min-height:48px;transition:background .18s,transform .18s}.button:hover{background:#373D37;transform:translateY(-2px)}.hero-mark{background:var(--ink);min-height:520px;border-radius:10px;display:flex;flex-direction:column;justify-content:space-between;padding:29px 32px;position:relative;overflow:hidden}.mark-label{color:var(--paper);font-size:.75rem;letter-spacing:.17em;opacity:.65}.large-mark{width:min(90%,365px);height:auto;align-self:center;margin:5px 0 28px;transform:rotate(-5deg)}.hero-mark .wing{transform-origin:center;transition:transform .8s}.hero-mark:hover .wing{transform:translateX(3px)}.mark-footer{display:flex;justify-content:space-between;align-items:flex-end;color:var(--paper);font-size:.88rem;line-height:1.5}.edition{font-size:.75rem;letter-spacing:.08em;opacity:.55}.hero-base{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:29px;display:flex;justify-content:space-between;gap:20px;font-size:.88rem;color:var(--muted)}.hero-base a{color:var(--ink)}.work{padding-block:96px 80px;scroll-margin-top:40px}.section-head{display:grid;grid-template-columns:1fr 1.5fr;gap:25px 40px;align-items:end;margin-bottom:48px}.section-head .eyebrow{grid-column:1/-1}.section-head>p:last-child{color:var(--muted);max-width:410px;justify-self:end;line-height:1.7}.projects{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project{border:1px solid var(--line);border-radius:9px;min-width:0;padding:31px 32px 24px;background:#F1F1EA}.project.setkin{background:#F3EDE8}.project.nearstep{background:#EDEFF0}.details-content a{border-bottom:1px solid #A5AAA2}.project-top{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:.88rem}.project-category{color:var(--muted)}.status{border:1px solid #A5AAA2;border-radius:50px;padding:4px 12px;white-space:nowrap}.project-name{display:flex;align-items:center;gap:20px;padding-block:48px 22px}.project-number{font-size:.8rem;border:1px solid #C4C7BD;display:grid;place-items:center;width:34px;height:34px;border-radius:8px}.project-name h3{font-size:3.5rem;letter-spacing:-.055em}.project>p{max-width:410px;color:var(--muted);line-height:1.7;margin-bottom:32px}.project details{border-top:1px solid #CFD1C7;padding-top:18px}.project summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:.94rem;list-style:none;min-height:30px}.project summary::-webkit-details-marker{display:none}.project summary:after{content:'+';font-size:1.5rem;font-weight:400}.project details[open] summary:after{content:'−'}.details-content{padding-top:16px;color:var(--muted);font-size:.94rem}.details-content p+p{margin-top:12px}.portfolio-note{margin-top:22px;font-size:.88rem;color:var(--muted)}.studio{background:var(--ink);color:var(--paper);padding:82px 0 64px;scroll-margin-top:20px}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.studio .eyebrow{color:#B5B9B1;margin-bottom:29px}.studio-copy{padding-top:44px;max-width:475px}.studio-copy p{font-size:1.06rem;line-height:1.75;color:#C6C9C1}.studio-copy p+p{margin-top:20px}.text-link{display:inline-block;border-bottom:1px solid #8A8F87;margin-top:24px;padding-bottom:4px}.text-link:hover{color:#FF7B64}.principles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:42px;margin-top:64px;padding-top:32px;border-top:1px solid #444A42}.principle-number{color:#B5B9B1;font-size:.88rem;display:block;margin-bottom:20px}.principles h3{font-size:1.25rem;margin-bottom:13px}.principles p{color:#B5B9B1;font-size:.94rem;line-height:1.6}.contact{padding-block:85px}.contact .eyebrow{margin-bottom:30px}.contact-row{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:60px}.contact-row p{font-size:1.06rem;color:var(--muted);margin-bottom:24px}.footer{display:flex;justify-content:space-between;align-items:center;gap:22px;border-top:1px solid var(--line);padding-block:28px 36px;font-size:.88rem}.footer img{width:165px}.footer span{color:var(--muted)}.footer small{font-size:.88rem;color:var(--muted)}
@media(min-width:1600px){.hero{padding-top:84px}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero{gap:35px}.hero-mark{min-height:470px;padding:26px}.hero-copy h1{font-size:4.25rem}.hero-copy .intro{font-size:1rem}.edition{display:none}.project{padding:25px}.project-top{align-items:flex-start;flex-direction:column;gap:10px}.project-name h3{font-size:3rem}.studio-grid{gap:45px}.footer{flex-wrap:wrap}.section-head>p:last-child{max-width:350px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header{padding-block:22px;gap:20px}.brand{width:165px}.header nav{gap:18px;font-size:.88rem}.header nav a:nth-child(2),.header nav a:nth-child(3){display:none}.hero{padding-top:42px;grid-template-columns:1fr;gap:30px}.hero-copy{padding-top:0}.hero-copy h1{font-size:clamp(3.8rem,14vw,5rem)}.hero-copy .eyebrow{margin-bottom:24px}.intro{max-width:360px}.hero-mark{min-height:365px;max-height:440px;margin-top:6px;padding:25px}.large-mark{width:230px;margin:-10px 0 10px;transform:rotate(-5deg)}.mark-footer{font-size:.88rem}.edition{display:block}.hero-base{flex-direction:column;gap:7px;padding-bottom:22px}.work{padding-block:58px}.section-head{grid-template-columns:1fr;gap:22px;margin-bottom:30px}.section-head>p:last-child{justify-self:start;max-width:100%}.projects{grid-template-columns:1fr;gap:18px}.project{padding:25px}.project-top{flex-direction:row;align-items:center;gap:16px}.project-name{padding-top:36px}.project-name h3{font-size:3rem}.studio{padding-block:54px 44px}.studio-grid{grid-template-columns:1fr;gap:24px}.studio-copy{padding-top:0}.studio .eyebrow{margin-bottom:24px}.principles{grid-template-columns:1fr;gap:26px;margin-top:36px;padding-top:28px}.principles>div{display:grid;grid-template-columns:35px 1fr;gap:8px 10px}.principle-number{grid-row:1/3;margin:2px 0 0}.principles h3{margin:0}.principles p{grid-column:2}.contact{padding-block:54px}.contact-row{grid-template-columns:1fr;gap:26px}.footer{flex-direction:column;align-items:flex-start;gap:12px;padding-block:26px}.footer img{width:160px}.portfolio-note{font-size:.88rem}}
@media(max-width:360px){.project-top{align-items:flex-start;flex-direction:column}.header{gap:12px}.brand{width:150px}.hero-copy h1{font-size:3.4rem}.edition{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Keep enlarged text inside the layout instead of letting grid min-content
   sizing create horizontal scrolling. This also protects translated copy. */
h1,h2,h3,p{overflow-wrap:anywhere}
.hero>*,.section-head>*,.studio-grid>*,.contact-row>*,.principles>*{min-width:0}
.hero{grid-template-columns:minmax(0,1.16fr) minmax(0,1fr)}
.project-name h3{min-width:0}
.project-top,.mark-footer{flex-wrap:wrap}
.status{max-width:100%;white-space:normal}
@media(max-width:700px){.hero{grid-template-columns:minmax(0,1fr)}}
