*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}:root{--black:#0a0a0a;--white:#fff;--grey:#666;--line:rgba(10,10,10,.1);--sans:"Helvetica Neue","Inter",-apple-system,"PingFang SC",system-ui,sans-serif;--serif:"Times New Roman","Noto Serif SC",Georgia,serif}body{font-family:var(--sans);background:var(--white);color:var(--black);overflow-x:hidden;font-size:14px;line-height:1.6;font-weight:400}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:22px 40px;background:var(--white);border-bottom:1px solid var(--line);font-size:13px;opacity:0;transform:translateY(-8px);transition:opacity .8s .2s,transform .8s .2s}.nav.in{opacity:1;transform:translateY(0)}.nav-logo{font-family:var(--serif);font-size:22px;font-weight:400;letter-spacing:.02em}.nav-links{display:flex;gap:28px;align-items:center}.nav-link{font-size:13px;font-weight:400;color:var(--black);position:relative;display:inline-block;overflow:hidden}.nav-link .char{display:inline-block;transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.nav-link:hover .char{transform:translateY(-4px)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:4px}.nav-toggle span{display:block;width:20px;height:1.5px;background:var(--black);margin:4px 0}@media(max-width:768px){.nav{padding:16px 20px}.nav-links{display:none}.nav-toggle{display:block}}.mobile-menu{display:none;position:fixed;inset:0;z-index:199;background:var(--white);flex-direction:column;justify-content:center;align-items:center;gap:32px;opacity:0;pointer-events:none;transition:opacity .3s}.mobile-menu.open{display:flex;opacity:1;pointer-events:auto}.mobile-menu a{font-family:var(--serif);font-size:28px}.hero{height:100vh;min-height:600px;overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative;margin-top:66px}.hero img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-text{position:relative;z-index:2;text-align:center;color:var(--white)}.hero-text h1{font-family:var(--serif);font-weight:400;font-size:clamp(60px,14vw,220px);letter-spacing:.04em;line-height:.9}.hero-text p{font-size:12px;letter-spacing:.3em;text-transform:uppercase;margin-top:1.6rem;opacity:.6}.section{padding:0 40px}.section-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--grey);padding:80px 0 24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline}.section-label:first-child{border-top:none;padding-top:0}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:40px;padding-bottom:80px}.gallery-item{position:relative;overflow:hidden}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1),filter .6s}.gallery-item:hover img{transform:scale(1.02)}.gallery-item .caption{display:flex;justify-content:space-between;padding-top:12px;font-size:12px;color:var(--grey)}.gallery-item .caption .title{color:var(--black);font-weight:500}.ar-3-4{aspect-ratio:3/4}.ar-4-5{aspect-ratio:4/5}.ar-16-9{aspect-ratio:16/9}.ar-1-1{aspect-ratio:1/1}.ar-2-3{aspect-ratio:2/3}.g-3{grid-column:span 3}.g-4{grid-column:span 4}.g-6{grid-column:span 6}.g-8{grid-column:span 8}.g-12{grid-column:span 12}.offset-down{margin-top:80px}.offset-up{margin-top:-40px}.text-block{max-width:560px;font-size:15px;line-height:1.75;color:var(--black)}.text-block p+p{margin-top:1.2rem}.text-large{font-family:var(--serif);font-weight:400;font-size:clamp(28px,4vw,56px);line-height:1.15;letter-spacing:-.01em}.text-medium{font-size:16px;line-height:1.7;font-weight:500}.text-small{font-size:13px;line-height:1.6;color:var(--grey)}.manifesto{padding:120px 40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.manifesto-text{font-family:var(--serif);font-weight:400;font-size:clamp(32px,5.5vw,80px);line-height:1.12;letter-spacing:-.015em;max-width:1200px}.manifesto-text em{font-style:italic;color:var(--grey)}.materials{padding:0 40px 80px}.materials-list{border-top:1px solid var(--black)}.material-row{display:grid;grid-template-columns:60px 1fr 1fr 1fr;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line);cursor:pointer;transition:padding .3s,background .2s}.material-row:hover{padding-left:16px}.material-row .num{font-size:12px;color:var(--grey);font-variant-numeric:tabular-nums}.material-row .name{font-size:18px;font-weight:500}.material-row .desc{font-size:13px;color:var(--grey);line-height:1.5}.material-row .origin{font-size:13px;color:var(--grey);text-align:right}.stockists{padding:0 40px 120px}.stockist-list{border-top:1px solid var(--black)}.stockist-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.stockist-row .city{font-size:16px;font-weight:500}.stockist-row .addr{font-size:13px;color:var(--grey)}.stockist-row .hours{font-size:13px;color:var(--grey);text-align:right}footer{background:var(--black);color:var(--white);padding:120px 40px 48px}.foot-brand{font-family:var(--serif);font-weight:400;font-size:clamp(48px,10vw,140px);letter-spacing:.02em;line-height:.9;margin-bottom:80px}.foot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-bottom:80px}.foot-col h4{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#fff6;margin-bottom:16px;font-weight:400}.foot-col p{font-size:14px;line-height:1.7;color:#fffc}.foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:24px;display:flex;justify-content:space-between;font-size:12px;color:#ffffff4d}@media(max-width:768px){.section,.manifesto,.materials,.stockists,footer{padding-left:20px;padding-right:20px}.gallery{gap:16px}.g-3,.g-4,.g-6,.g-8{grid-column:span 6}.g-12{grid-column:span 12}.offset-down,.offset-up{margin-top:0}.material-row{grid-template-columns:40px 1fr;gap:12px}.material-row .desc,.material-row .origin{display:none}.stockist-row{grid-template-columns:1fr;gap:4px}.stockist-row .hours{text-align:left}.foot-grid{grid-template-columns:1fr;gap:32px}.foot-bottom{flex-direction:column;gap:8px}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.gallery-item:hover img{transform:none}}
