/* Responsive extension. Phone styles and their 22px gutters remain authoritative. */
.desktop-nav,.desktop-footer,.desktop-only{display:none}
.object-band.desktop-only{display:none}
@media(min-width:600px){
 body{margin:0}.app{max-width:none}
 .body{max-width:560px}.chapter .copy{max-width:604px}
}
@media(min-width:900px){
 :root{--gutter-l:max(48px,env(safe-area-inset-left,0px));--gutter-r:max(48px,env(safe-area-inset-right,0px))}
 .view{animation:none;scroll-snap-type:none!important}
 .top{position:fixed;gap:24px;padding-top:calc(env(safe-area-inset-top,0px) + 14px);padding-bottom:14px;border-bottom:1px solid transparent;transition:background .35s,color .35s,border-color .35s}
 .top[data-mode=over]{background:transparent;border-bottom:0}
 .top[data-mode=ink]{color:var(--on-ink);background:var(--ink);border-color:var(--line-dark)}
 #menuBtn,#menu{display:none!important}
 .desktop-nav{display:flex;align-items:center;gap:clamp(16px,2.4vw,36px);min-width:0;overflow-x:auto}
 .desktop-nav a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap;font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;position:relative;opacity:.82}
 .desktop-nav a[aria-current=page]{opacity:1}.desktop-nav a[aria-current=page]::after{content:"";position:absolute;left:0;right:0;bottom:10px;height:1px;background:currentColor}
 .desktop-nav .pill{border:1px solid currentColor;border-radius:22px;padding:0 16px;opacity:1}
 .desktop-only{display:block}.desktop-footer{display:block;background:var(--ink);color:var(--on-ink);padding-block:clamp(64px,10vh,120px) calc(env(safe-area-inset-bottom,0px) + 40px)}
 .foot-grid,.foot-base{max-width:1440px;margin-inline:auto}.foot-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,3fr) minmax(0,3fr);gap:48px}
 .foot-grid nav{display:flex;flex-direction:column;gap:4px}.foot-grid nav a{font-size:24px;text-decoration:none;min-height:40px;display:inline-flex;align-items:center}
 .foot-grid figure{margin:0}.foot-photo{aspect-ratio:16/10;overflow:hidden}.foot-photo img{width:100%;height:100%;object-fit:cover}
 .foot-base{margin-top:56px;padding-top:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.foot-base a{margin-left:20px}
 .cta .ring{width:52px;height:52px;flex-basis:52px;transition:background .25s,color .25s,transform .25s}.cta:hover .ring{transform:translateX(3px)}
 .chapter .copy{max-width:none}
}
@media(min-width:1280px){:root{--gutter-l:max(72px,env(safe-area-inset-left,0px));--gutter-r:max(72px,env(safe-area-inset-right,0px))}}
@media(min-width:900px) and (prefers-reduced-motion:reduce){.cta:hover .ring{transform:none}}
@media(min-width:900px){.top[data-mode=solid]{background:transparent;border-bottom:0}.foot-grid .h-m{font-size:clamp(34px,3.4vw,56px);line-height:1.04}.foot-photo picture{display:block;height:100%}}
@media(min-width:900px){html:not(.js) body:has(#studio) .top{color:var(--on-ink);background:transparent;border-bottom:0}}
.story-held,.story-text,.chapter-heading,.chapter-side{display:contents}
@media(min-width:900px){
 #story{scroll-snap-type:none}.chapter{scroll-snap-align:none;scroll-snap-stop:normal}
 #story>.chapter{height:auto;min-height:max(640px,100vh)}
 #story>.chapter::before{background:linear-gradient(180deg,rgba(20,18,16,.35),transparent 30%,rgba(20,18,16,.25) 55%,rgba(20,18,16,.92))}
 #story>.chapter .copy{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:32px;align-items:end;width:100%;padding-bottom:clamp(40px,8vh,96px);animation:desktop-lift 1.4s cubic-bezier(.2,.7,.2,1) both}
 .chapter-heading,.chapter-side{display:flex;flex-direction:column;gap:22px}.chapter-side{gap:24px;padding-bottom:12px}
 #story>.chapter .h-xl{font-size:clamp(48px,5.5vw,96px);line-height:1.08;letter-spacing:-.02em;max-width:12ch}
 .chapter .sub{font-size:11px;line-height:1.8}.chapter .progress,.chapter-num{display:none}
 .js #story .chapter .copy{transform:none;opacity:1}
 .story-held{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);background:var(--ink)}
 .story-text{display:block;min-width:0}
 .story-text .chapter{height:auto;min-height:100vh;justify-content:center;overflow:visible;background:none;transition:opacity .8s}
 .story-text .chapter::before,.story-text .chapter>picture{display:none}
 .story-text .chapter .copy{gap:26px;padding:14vh clamp(32px,4vw,72px) 14vh var(--gutter-l)}
 .story-text .chapter-heading,.story-text .chapter-side{display:contents}
 .story-text .chapter .h-xl{font-size:clamp(44px,5.4vw,96px);line-height:.96;letter-spacing:-.015em}
 .story-text .chapter-num{display:block;color:var(--leather);font-size:22px;font-style:italic}
 .story-media{display:block;position:sticky;top:0;height:100vh;overflow:hidden;align-self:start}
 .held-layer{position:absolute;inset:0;opacity:0;transform:scale(1.06);transition:opacity 1s ease,transform 2.2s cubic-bezier(.2,.7,.2,1)}
 .held-layer.on{opacity:1;transform:scale(1)}.held-layer picture,.held-layer img{display:block;width:100%;height:100%;object-fit:cover}
 .held-layer::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,18,16,.45),transparent 30%),linear-gradient(0deg,rgba(20,18,16,.55),transparent 30%)}
 .media-cap{position:absolute;z-index:3;left:32px;bottom:28px;display:flex;gap:14px;align-items:baseline}.media-cap b{font-weight:400;font-style:italic;font-size:20px}
 .chapter-rail{display:none;position:fixed;z-index:10;right:28px;top:50%;transform:translateY(-50%);flex-direction:column;gap:6px}
 .chapter-rail button{display:flex;align-items:center;gap:12px;justify-content:flex-end;min-height:44px;background:none;border:0;padding:0;cursor:pointer;color:var(--on-ink-muted);font-family:var(--label);font-size:11px;letter-spacing:.14em}
 .chapter-rail i{width:18px;height:1px;background:currentColor;transition:width .4s}.chapter-rail button[aria-current=true]{color:var(--on-ink)}.chapter-rail button[aria-current=true] i{width:44px}
 .desktop-motion .chapter-rail{display:flex}.desktop-motion .story-text .chapter:not(.is-active){opacity:.28}
 .scroll-cue{display:flex;align-items:center;gap:14px}.scroll-cue i{display:block;width:64px;height:1px;background:var(--on-ink-muted);position:relative;overflow:hidden}.scroll-cue i::after{content:"";position:absolute;inset:0;background:var(--on-ink);transform:translateX(-100%);animation:desktop-cue 2.4s ease-in-out infinite}
 .object-band{background:var(--paper);color:var(--on-paper);padding-block:clamp(64px,12vh,140px)}
 .band-grid{max-width:1440px;margin:auto;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(40px,6vw,110px);align-items:center}
 .band-photo{aspect-ratio:5/4;overflow:hidden}.band-photo img,.band-photo picture{display:block;width:100%;height:100%;object-fit:cover}
 .band-copy{display:flex;flex-direction:column;gap:22px}.band-copy .h-l{font-size:clamp(44px,5.4vw,96px);line-height:.96}.row{display:flex;gap:12px;flex-wrap:wrap}.row .btn{width:auto;flex:1}
 html:not(.js) #story>.chapter .copy{animation:none}
}
@keyframes desktop-lift{from{opacity:0;transform:translateY(18px)}}
@keyframes desktop-cue{60%,100%{transform:translateX(100%)}}
@media(min-width:900px) and (prefers-reduced-motion:reduce){#story .chapter .copy{animation:none}.held-layer{transform:none!important;transition:opacity 1s ease!important}.story-text .chapter{opacity:1!important}}
.obj-grid,.obj-main{display:contents}
@media(min-width:900px){
 .obj-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);min-height:86vh;padding:0;gap:0}
 .obj-hero-copy{justify-content:flex-end;gap:20px!important;padding-block:120px 64px}
 .obj-hero .h-l{font-size:clamp(52px,8.2vw,150px);line-height:.92;letter-spacing:-.02em;overflow-wrap:anywhere}
 .obj-hero .photo{margin:0;aspect-ratio:auto;min-height:60vh}.obj-hero .photo picture{height:100%}.obj-hero .photo img{height:100%;object-fit:cover}
 .hero-summary .facts{margin-top:24px;border-color:var(--line-dark)}.hero-summary .facts div{color:var(--on-ink-muted);border-color:var(--line-dark)}
 .obj-grid{display:grid;max-width:1440px;margin:auto;grid-template-columns:minmax(0,1fr);gap:56px;padding-block:clamp(56px,10vh,120px)}
 .obj-main{display:flex;flex-direction:column;gap:clamp(64px,10vh,120px);min-width:0}.obj-main>.section{padding:0;border:0}.obj-main .inner{padding-inline:0}.obj-main .section{gap:48px}
 .obj-main .first-summary{display:none}.obj-main>.text-block{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:24px 48px}.obj-main>.text-block>.eyebrow{grid-column:1}.obj-main>.text-block>.h-m,.obj-main>.text-block>.body{grid-column:2}
 .making-detail{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:12px 40px;align-items:end}.making-detail>.photo{grid-column:1;grid-row:1/3;aspect-ratio:16/10}.making-detail>.eyebrow{grid-column:2;align-self:end}.making-detail>.small{grid-column:2;align-self:start;font-size:19px;line-height:1.55}
 .making-detail.flip{grid-template-columns:minmax(0,4fr) minmax(0,7fr)}.making-detail.flip>.photo{grid-column:2}.making-detail.flip>.eyebrow,.making-detail.flip>.small{grid-column:1}
 .dimensions-block{display:flex;gap:20px}.dims{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:24px;align-items:center;padding:clamp(24px,4vw,56px)}
 .own{align-self:start;background:#F7F2EA;border:1px solid var(--line-paper);padding:28px!important;gap:22px}.own .spec dd:first-of-type{font-size:44px;line-height:1.2}.own .spec{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .own .swatches .colour-name{display:none}.own .swatches{padding-bottom:0}
 .gallery-block .gallery{display:flex;flex-direction:column;overflow:visible;scroll-snap-type:none;gap:12px}.gallery-block .gallery figure{flex:none;width:100%;aspect-ratio:4/3}
 .gallery-block.desktop-gallery{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px}.desktop-gallery .gallery{grid-column:2;grid-row:1;position:relative;aspect-ratio:4/3;overflow:hidden;display:block}
 .desktop-gallery .gallery figure{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .6s}.desktop-gallery .gallery figure.on{opacity:1}
 .desktop-gallery>.inner{display:contents}.desktop-gallery .thumbs{display:flex;flex-direction:column;grid-column:1;grid-row:1;gap:10px}.desktop-gallery .thumbs button{width:92px;height:92px;flex:none}.desktop-gallery .counter{display:none}.desktop-gallery .stage-caption{grid-column:2;margin:0;font:12px var(--label);letter-spacing:.06em;color:var(--on-paper-muted)}
}
@media(min-width:1100px){.obj-grid{grid-template-columns:minmax(0,1fr) 380px;gap:clamp(48px,5vw,96px)}.own{position:sticky;top:96px}}
@media(min-width:900px){.desktop-gallery>.inner{display:contents!important}.obj-main .section{gap:64px}.obj-main .detail+.detail{margin-top:0}}
.studio-heading,.studio-intro-body{display:contents}
@media(min-width:900px){
 .studio-hero{height:78vh;min-height:520px}.studio-hero::after{background:linear-gradient(180deg,rgba(20,18,16,.5),transparent 30%,rgba(239,232,220,0) 55%,var(--paper))}
 .studio-copy{display:grid!important;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:32px 64px!important;max-width:1440px;margin:-18vh auto 0!important;align-items:end;padding-bottom:clamp(56px,10vh,120px)!important;z-index:3}
 .studio-heading{display:flex;flex-direction:column;gap:22px}.studio-heading .h-l{font-size:clamp(48px,6.6vw,112px);line-height:.96;letter-spacing:-.015em}
 .studio-intro-body{display:flex;flex-wrap:wrap;gap:22px 12px}.studio-intro-body>.body,.studio-intro-body>.eyebrow,.studio-intro-body>.h-m{flex-basis:100%}.studio-intro-body>.body:first-of-type{font-size:clamp(21px,1.7vw,27px);line-height:1.45;max-width:34ch}.studio-intro-body>.btn{width:auto;flex:1;min-width:150px;margin:0}
 .studio-strip{display:grid;max-width:1440px;margin:auto;grid-template-columns:minmax(0,5fr) minmax(0,4fr) minmax(0,3fr);gap:32px 16px;align-items:end;padding-bottom:clamp(64px,12vh,140px)}
 .studio-strip figure{margin:0;display:flex;flex-direction:column;gap:10px;min-width:0}.studio-strip figure:nth-child(3n+1) .strip-photo{aspect-ratio:4/5}.studio-strip figure:nth-child(3n+2) .strip-photo{aspect-ratio:1}.studio-strip figure:nth-child(3n) .strip-photo{aspect-ratio:3/4}
 .strip-photo picture,.strip-photo img{display:block;width:100%;height:100%;object-fit:cover}.studio-strip figcaption{font:12px var(--label);letter-spacing:.06em;color:var(--on-paper-muted)}
 #studio>.section{max-width:1440px;margin-inline:auto}
}
.studio-copy>.studio-intro-body>.btn:not(.ghost){margin-top:8px}
@media(min-width:900px){.studio-copy>.studio-intro-body>.btn:not(.ghost){margin-top:0}}
.inquiry-left,.inquiry-right{display:contents}
@media(min-width:900px){
 .inquiry-grid{display:grid!important;max-width:1440px;margin:auto;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px clamp(48px,6vw,120px)!important;padding-block:calc(env(safe-area-inset-top,0px) + 140px) clamp(64px,10vh,120px)!important;align-items:start}
 .inquiry-left{display:flex;flex-direction:column;gap:24px}.inquiry-left .h-l{font-size:clamp(52px,7vw,120px);line-height:.96;letter-spacing:-.015em}.inquiry-right{display:block;min-width:0}
 .inquiry-photo{aspect-ratio:16/10;margin-top:12px}.inquiry-photo picture,.inquiry-photo img{display:block;width:100%;height:100%;object-fit:cover}
 #inquiry-form{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px!important;background:#F7F2EA;border:1px solid var(--line-paper);padding:clamp(24px,3vw,44px);margin:0!important}
 #inquiry-form>*{grid-column:1/-1}.field-name{grid-column:1!important}.field-email{grid-column:2!important}.field{min-width:0;gap:8px}
 .field input,.field select,.field textarea{min-height:50px;padding:12px 0;background:transparent;border:0;border-bottom:1px solid var(--on-paper-muted);font-size:21px;color-scheme:light}.field textarea{min-height:150px}.field input:focus,.field select:focus,.field textarea:focus{border-bottom:2px solid var(--on-paper)}
}
@media(min-width:900px){
 /* Grain belongs to photographs, below text and controls. */
 .chapter>picture::after,.held-layer::before,.obj-hero .photo::after,.band-photo::after,.studio-hero>picture::after,.strip-photo::after,.inquiry-photo::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.16;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}
 .obj-hero .photo,.band-photo,.strip-photo,.inquiry-photo{position:relative;isolation:isolate}
}
@media(min-width:900px){
 .body{max-width:40ch;line-height:1.6}
 .studio-heading .h-l{font-size:clamp(48px,6.4vw,112px);line-height:.92}
 .inquiry-left .h-l{font-size:clamp(52px,6.8vw,120px);line-height:.92}
 .inquiry-left>.body{font-size:clamp(21px,1.7vw,27px);line-height:1.45;max-width:34ch}
 .text-block .h-m{font-size:clamp(34px,3.4vw,56px);line-height:1.04}.own>.h-m{font-size:34px;line-height:1.04}
 .studio-intro-body>.btn{flex:0 1 auto;min-width:0;min-height:54px;padding-inline:22px}
}
