/* Style refresh after custom-domain cutover. */

:root { --ink: #151515; --cream: #f2f2f1; --blue: #2b2b2b; --orange: #b9b9b6; --line: #151515; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--cream); font-family: Arial, Helvetica, sans-serif; }
a { color: inherit; text-decoration: none; } button { font: inherit; color: inherit; } a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.access-gate { min-height: 100svh; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 32px; background: #161616; color: #f2f2f0; text-align: center; }.gate-kicker, .access-gate small { margin: 0; font-size: 10px; letter-spacing: .16em; }.access-gate h1 { margin: 28px 0 23px; font: 400 clamp(72px, 14vw, 190px)/.72 Georgia, serif; letter-spacing: -.1em; }.access-gate > p:not(.gate-kicker) { margin: 0; color: #aaa; font-size: 11px; letter-spacing: .1em; line-height: 1.6; }.access-gate form { width: min(360px, 100%); margin: 60px 0 auto; text-align: left; }.access-gate label { display: block; margin-bottom: 9px; color: #b7b7b7; font-size: 9px; letter-spacing: .14em; }.access-gate form > div { display: flex; border-bottom: 1px solid #f2f2f0; }.access-gate input { width: 100%; min-width: 0; border: 0; background: transparent; color: #f2f2f0; padding: 11px 0; font-size: 15px; }.access-gate input:focus-visible { outline: 2px solid #f2f2f0; outline-offset: 4px; }.access-gate button { flex: 0 0 auto; border: 0; background: transparent; color: #f2f2f0; cursor: pointer; font-size: 10px; letter-spacing: .11em; }.gate-error { display: block; margin-top: 11px; color: #ccc; font-size: 11px; }.gate-error:empty { display: none; }.access-gate small { color: #777; }
.ticker { background: var(--ink); color: var(--cream); padding: 8px 15px; text-align: center; font-size: 9px; letter-spacing: .14em; }
.header { height: 88px; display: grid; grid-template-columns: auto 1fr; align-items: center; border-bottom: 1px solid var(--line); padding: 0 18px; gap: 22px; }
.logo { font: 500 20px/.72 Georgia, serif; text-align: center; letter-spacing: -.08em; }.logo i { color: var(--orange); font-weight: 400; }.header nav { justify-self: center; display: flex; align-items: center; gap: 18px; font-size: 10px; letter-spacing: .12em; }.header nav > a { border-bottom: 1px solid transparent; padding-bottom: 3px; }.header nav > a:hover { border-color: currentColor; }
.nav-group { position: relative; }.nav-group summary { display: flex; align-items: center; gap: 8px; border-bottom: 1px solid transparent; padding-bottom: 3px; list-style: none; cursor: pointer; }.nav-group summary:after { content: ''; width: 7px; height: 7px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .15s; }.nav-group:hover summary, .nav-group:focus-within summary, .nav-group[open] summary { border-color: currentColor; }.nav-group[open] summary:after { transform: rotate(225deg) translate(-2px, -2px); }.nav-group summary::-webkit-details-marker { display: none; }.nav-menu { position: absolute; z-index: 10; top: 100%; left: -16px; width: 250px; padding-top: 34px; visibility: hidden; opacity: 0; transform: translateY(-6px); transition: opacity .15s, transform .15s; }.nav-menu:before { content: ''; position: absolute; inset: 24px 0 0; background: var(--cream); border: 1px solid var(--line); }.nav-menu a { position: relative; display: flex; justify-content: space-between; gap: 18px; padding: 11px 13px; border-bottom: 1px solid var(--line); white-space: nowrap; }.nav-menu a:last-child { border-bottom: 0; }.nav-menu span { color: #777; font-size: 9px; letter-spacing: .04em; }.projects-menu { left: auto; right: -16px; width: 170px; }.nav-group:hover .nav-menu, .nav-group[open] .nav-menu, .nav-group:focus-within .nav-menu { visibility: visible; opacity: 1; transform: none; }
.split-intro { min-height: calc(100svh - 120px); display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line); }
.channel { min-height: 640px; padding: 20px; position: relative; display: block; overflow: hidden; }.channel + .channel { border-left: 1px solid var(--line); }.objects { background: var(--blue); color: var(--cream); }.garments { background: #c9c7bd; color: var(--ink); }
.objects:after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.76), transparent 62%), url('/archive-hero.png') 70% center / cover no-repeat; mix-blend-mode: multiply; opacity: .88; }.garments:before { content: ''; position: absolute; inset: 12% 13%; border: 1px solid rgba(22,22,22,.75); transform: rotate(11deg); }.garments:after { content: 'SOLD\A ONCE'; white-space: pre; position: absolute; right: 12%; top: 20%; color: var(--orange); font: 400 clamp(46px, 8vw, 120px)/.79 Georgia, serif; letter-spacing: -.09em; transform: rotate(-9deg); }
.channel > span { position: relative; z-index: 1; }.channel-index, .channel-note { font-size: 10px; line-height: 1.4; letter-spacing: .1em; }.channel-note { position: absolute; bottom: 20px; left: 20px; }.channel-action { position: absolute; right: 20px; bottom: 19px; font-size: 11px; letter-spacing: .11em; }.channel-label { display: block; margin-top: 16vh; font: 500 clamp(64px, 11vw, 172px)/.77 Arial, sans-serif; letter-spacing: -.11em; }.objects .channel-label { max-width: 90%; }.garments .channel-label { position: absolute; left: 17%; bottom: 19%; transform: rotate(-90deg); transform-origin: left bottom; }
.manifesto { display: grid; grid-template-columns: 1fr 1.25fr; gap: 10vw; padding: 12vw 8vw; border-bottom: 1px solid var(--line); font: 400 clamp(26px, 3.5vw, 58px)/.98 Georgia, serif; letter-spacing: -.06em; }.manifesto p { margin: 0; }.manifesto p:last-child { color: var(--blue); }
.shop { padding: 18px; }.shop-head { display: grid; grid-template-columns: 1fr 2fr 1fr; align-items: end; padding: 14px 0 44px; }.shop-head p, .shop-head span { margin: 0; font-size: 10px; line-height: 1.45; letter-spacing: .11em; }.shop-head span { text-align: right; color: #696969; }.shop h1 { margin: 0; font: 400 clamp(62px, 12vw, 176px)/.68 Georgia, serif; letter-spacing: -.09em; }
.products { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }.product-image { height: min(42vw, 610px); position: relative; display: grid; place-items: center; overflow: hidden; }.product-image > span { position: absolute; top: 13px; left: 14px; font-size: 10px; letter-spacing: .12em; }.product-1 .product-image { background: #d2d2cf; }.product-2 .product-image { background: #9d9d9a; }.product-3 .product-image { background: #252525; color: var(--cream); }.photo-placeholder { text-align: center; }.photo-placeholder strong { display: block; font: 400 clamp(34px, 5vw, 72px)/.85 Georgia, serif; letter-spacing: -.07em; }.photo-placeholder small { display: block; margin-top: 16px; font-size: 8px; letter-spacing: .18em; opacity: .55; }
.product-info { display: flex; justify-content: space-between; gap: 15px; padding: 13px 2px 40px; }.product-info p, .product-info h2 { margin: 0; }.product-info p { margin-bottom: 7px; font-size: 10px; letter-spacing: .12em; }.product-info h2 { font: 400 21px/1 Georgia, serif; letter-spacing: -.04em; }.product-info > div:last-child { text-align: right; font-size: 11px; }.product-info strong { display: block; margin-bottom: 9px; font-weight: 400; }.product-status { color: #666; font-size: 10px; letter-spacing: .04em; }
.feature { display: grid; grid-template-columns: 1.25fr 1fr; background: var(--ink); color: var(--cream); }.feature-image { min-height: 720px; background: url('/archive-hero.png') center / cover no-repeat; filter: grayscale(1) contrast(1.15); }.feature-copy { padding: 10vw 8vw 7vw 6vw; display: flex; flex-direction: column; align-items: flex-start; }.feature-copy > p:first-child { margin: 0; color: #a29f98; font-size: 10px; letter-spacing: .13em; }.feature h2 { margin: 26px 0; font: 400 clamp(46px, 6vw, 90px)/.88 Georgia, serif; letter-spacing: -.07em; }.feature-text { max-width: 330px; color: #c0bdb6; font-size: 13px; line-height: 1.75; }.feature-copy .contact-status { margin-top: auto; color: #aaa; font-size: 11px; letter-spacing: .12em; }
.projects { padding: 18px; border-bottom: 1px solid var(--line); }.projects-head { display: flex; justify-content: space-between; padding: 12px 0 34px; font-size: 10px; letter-spacing: .12em; }.projects-head p { margin: 0; }.projects-head span { color: #6c6c69; }.project-grid { min-height: 650px; display: grid; grid-template-columns: 1.35fr 1fr; }.project-mark { position: relative; display: grid; place-items: center; overflow: hidden; background: #d0d0cd; }.project-mark:before { content: ''; position: absolute; width: 62%; aspect-ratio: 1; border: 1px solid #1b1b1b; border-radius: 50%; }.project-mark strong { font: 500 clamp(130px, 23vw, 340px)/.7 Arial, sans-serif; letter-spacing: -.13em; z-index: 1; }.project-mark span { position: absolute; top: 18px; left: 18px; font-size: 10px; letter-spacing: .12em; }.project-copy { padding: 8vw 6vw; display: flex; flex-direction: column; align-items: flex-start; background: #e5e5e2; }.project-copy > p:first-child { margin: 0; font-size: 10px; letter-spacing: .14em; }.project-copy h2 { margin: 30px 0; font: 400 clamp(46px, 6vw, 88px)/.88 Georgia, serif; letter-spacing: -.07em; }.project-copy h2 + p { max-width: 360px; color: #5f5f5c; font-size: 13px; line-height: 1.75; }.project-copy > span { margin-top: auto; border-bottom: 1px solid var(--ink); padding-bottom: 7px; font-size: 10px; letter-spacing: .12em; }
.service { padding: 11vw 5vw; background: var(--orange); text-align: center; }.service p { margin: 0; font-size: 10px; letter-spacing: .15em; }.service h2 { margin: 25px 0 45px; font: 400 clamp(38px, 6vw, 91px)/.91 Georgia, serif; letter-spacing: -.07em; }.service .contact-status { color: #555; font-size: 11px; letter-spacing: .1em; }
footer { display: flex; justify-content: space-between; padding: 21px 18px; background: var(--cream); font-size: 9px; letter-spacing: .1em; }
@media (max-width: 720px) { .header { height: auto; grid-template-columns: 1fr; gap: 14px; padding: 16px 14px; }.logo { text-align: left; }.header nav { grid-column: 1; grid-row: 2; display: flex; }.nav-menu { left: -14px; padding-top: 18px; }.nav-menu:before { inset: 8px 0 0; }.projects-menu { left: auto; right: -14px; }.split-intro { min-height: 0; }.channel { min-height: 68svh; padding: 14px; }.channel-label { margin-top: 17vh; font-size: clamp(48px, 13vw, 96px); }.channel-note { left: 14px; bottom: 14px; }.channel-action { right: 14px; bottom: 14px; }.garments:after { right: 5%; font-size: 64px; }.manifesto { grid-template-columns: 1fr; gap: 32px; padding: 22vw 7vw; }.shop { padding: 13px; }.shop-head { display: block; padding: 22px 0 28px; }.shop h1 { margin: 24px 0; font-size: 26vw; }.shop-head span { display: block; text-align: left; }.products { grid-template-columns: 1fr; gap: 0; }.product-image { height: 105vw; }.feature { grid-template-columns: 1fr; }.feature-image { min-height: 105vw; }.feature-copy { min-height: 580px; padding: 22vw 8vw 12vw; }.projects { padding: 13px; }.projects-head { gap: 20px; }.projects-head span { text-align: right; }.project-grid { min-height: 0; grid-template-columns: 1fr; }.project-mark { min-height: 105vw; }.project-copy { min-height: 560px; padding: 20vw 8vw 12vw; }.service { padding: 22vw 7vw; } footer { display: grid; gap: 9px; padding: 18px 14px; } }
