:root{--ink:#545454;--muted:#8a8885;--paper:#f8f8f6;--line:#d9d8d4;--pad:clamp(1.25rem,4vw,4.5rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.48}a{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}.site-header{position:absolute;z-index:10;top:0;left:0;width:100%;display:grid;grid-template-columns:1.4fr auto auto;gap:3rem;align-items:start;padding:clamp(1.3rem,3.4vw,3.6rem) var(--pad)}.brand{text-decoration:none;display:flex;flex-direction:column;width:max-content}.brand strong{font-size:clamp(1.45rem,3vw,3.2rem);line-height:1}.brand span{font-size:clamp(.63rem,.95vw,.95rem);font-weight:700;margin-top:.5rem;letter-spacing:.015em}.site-header nav{display:flex;gap:2rem}.site-header nav a{text-decoration:none;font-size:.95rem}.site-header nav a:hover{text-decoration:underline}.languages{display:flex;gap:1.2rem;font-size:.85rem}.menu-button{display:none}.hero{height:100svh;min-height:620px;background:#eee}.hero img{object-position:center}.statement,.about{padding:clamp(5rem,10vw,10rem) var(--pad)}.eyebrow{margin:0 0 3rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.12em}.statement-grid,.about-grid{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(320px,1.3fr);gap:clamp(3rem,9vw,10rem)}h1,h2,p{margin-top:0}.statement h1,.about h2{font-size:clamp(2.7rem,6vw,6.5rem);font-weight:400;line-height:.94;letter-spacing:-.045em}.statement-copy,.about-grid>div{max-width:760px;font-size:clamp(1.05rem,1.35vw,1.3rem)}.statement-copy p,.about-grid>div p{margin-bottom:1.5em}.works{padding:0 var(--pad) clamp(7rem,12vw,12rem)}.works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.work-card{position:relative;min-height:34vw;background:var(--paper);text-decoration:none;overflow:hidden}.work-card.has-image img{transition:transform .5s ease}.work-card.has-image:hover img{transform:scale(1.025)}.work-card span{position:absolute;left:1.2rem;right:1.2rem;bottom:1rem;display:flex;justify-content:space-between;gap:1rem;color:white;text-shadow:0 1px 10px rgba(0,0,0,.45)}.work-card b{font-size:1rem}.work-card small{font-size:.8rem}.work-card.placeholder{display:flex;align-items:flex-end;padding:1.2rem;background:#efefec}.work-card.placeholder span{position:static;width:100%;color:var(--ink);text-shadow:none}.work-card.placeholder em{position:absolute;top:1.2rem;left:1.2rem;font-size:.75rem;color:var(--muted);font-style:normal}.piece{padding:clamp(5rem,9vw,9rem) var(--pad);border-top:1px solid var(--line);scroll-margin-top:2rem}.piece-heading{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:clamp(3rem,6vw,6rem)}.piece-heading h2{display:flex;align-items:baseline;flex-wrap:wrap;gap:.38em;font-size:clamp(3rem,6vw,6.5rem);font-weight:400;line-height:1}.piece-heading h2 span{font-size:.34em;letter-spacing:0}.piece-heading p{margin:1.15rem 0 0;font-size:1rem;line-height:1.55}.gallery{display:grid;gap:clamp(.6rem,1.4vw,1.4rem)}.gallery figure{margin:0;overflow:hidden;background:#eee}.sutura-gallery{grid-template-columns:.8fr .8fr 1.45fr .8fr}.sutura-gallery figure{aspect-ratio:3/4}.sutura-gallery .wide{aspect-ratio:auto}.about{border-top:1px solid var(--line)}footer{padding:clamp(5rem,9vw,8rem) var(--pad);background:#deddda}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.contact-grid>div{display:flex;flex-direction:column;align-items:flex-start;font-size:clamp(1.05rem,1.5vw,1.35rem)}.contact-grid strong{margin-bottom:.25rem}.contact-grid a{margin-top:.15rem}.contact-grid>div>span+span{margin-top:1rem}
@media(max-width:800px){.site-header{grid-template-columns:1fr auto;padding:1.3rem}.brand strong{font-size:1.55rem}.brand span{font-size:.58rem;max-width:270px}.languages{position:absolute;right:1.3rem;top:4.4rem;gap:.8rem}.menu-button{display:block;border:0;background:transparent;color:var(--ink);font:inherit;padding:0}.site-header nav{display:none;position:absolute;top:6.6rem;left:1.3rem;right:1.3rem;padding:1.2rem;background:rgba(248,248,246,.96);flex-direction:column;gap:.8rem}.site-header nav.open{display:flex}.hero{min-height:700px}.hero img{object-position:58% center}.statement,.about{padding-left:1.3rem;padding-right:1.3rem}.statement-grid,.about-grid{grid-template-columns:1fr;gap:2.5rem}.eyebrow{margin-bottom:2rem}.works{padding-left:1.3rem;padding-right:1.3rem}.works-grid{grid-template-columns:1fr 1fr}.work-card{min-height:62vw}.piece{padding-left:1.3rem;padding-right:1.3rem}.piece-heading{margin-bottom:3rem}.gallery,.sutura-gallery{grid-template-columns:1fr}.gallery figure,.sutura-gallery figure,.sutura-gallery .wide{aspect-ratio:auto}.gallery img{height:auto}.contact-grid{grid-template-columns:1fr;gap:3rem}footer{padding-left:1.3rem;padding-right:1.3rem}}
@media(max-width:480px){.works-grid{grid-template-columns:1fr}.work-card{min-height:112vw}.statement h1,.about h2{font-size:3.4rem}.piece-heading h2{font-size:3.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.work-card.has-image img{transition:none}}
.works-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.works-list li{display:grid;grid-template-columns:clamp(2.4rem,4vw,4.2rem) 1fr;align-items:baseline;border-bottom:1px solid var(--line);padding:clamp(.55rem,.8vw,.8rem) 0}
.works-list li>span:first-child{font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}
.works-list li>a,.works-list li>span:last-child{width:max-content;color:var(--ink);font-size:clamp(1.25rem,2vw,2.15rem);font-weight:500;line-height:1.12;letter-spacing:-.015em;text-decoration:none}
.works-list li>a{position:relative}
.works-list li>a::after{content:"";position:absolute;left:0;right:0;bottom:-.12em;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.works-list li>a:hover::after,.works-list li>a:focus-visible::after{transform:scaleX(1)}
.collections-title{margin:0 0 clamp(2rem,4vw,4rem);font-size:clamp(2rem,4.2vw,4.8rem);font-weight:400;line-height:1;letter-spacing:-.035em}
.series-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,1.4vw,1.4rem);align-items:start}
.series-gallery figure{margin:0;background:#eee;overflow:hidden}
.series-gallery img{width:100%;height:auto;object-fit:contain}
.series-gallery.single{grid-template-columns:minmax(0,min(100%,900px));justify-content:center}
.ajar-gallery figure:nth-child(-n+4){aspect-ratio:3/4}
.ajar-gallery figure:nth-child(5){grid-column:1/-1;aspect-ratio:4/3}
.ajar-gallery img,.volar-gallery img,.enquadrats-gallery img,.encercles-gallery img,.nus-gallery img{height:100%;object-fit:cover}
.volar-gallery figure,.enquadrats-gallery figure{aspect-ratio:4/5}
.encercles-gallery figure,.nus-gallery figure{aspect-ratio:1}
.sutura-gallery{grid-template-columns:3fr 3fr 5.333fr 3fr;align-items:stretch}
.sutura-gallery .wide{aspect-ratio:4/3}
.bio-grid h2{line-height:.94;letter-spacing:-.045em}
.brand-tagline{display:flex!important;justify-content:space-between;width:100%;font-size:clamp(.56rem,.78vw,.78rem)!important;letter-spacing:0!important}
.brand-tagline span{font-size:inherit!important;margin:0!important;letter-spacing:0!important}
.work-intro{padding:clamp(5rem,10vw,10rem) var(--pad) clamp(4rem,7vw,7rem)}
.work-intro h1{max-width:1150px;margin:0;font-size:clamp(2.7rem,6vw,6.5rem);font-weight:400;line-height:.98;letter-spacing:-.045em}
.about-statement,.bio-grid{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(320px,1.3fr);gap:clamp(3rem,9vw,10rem)}
.about-copy{max-width:760px;font-size:clamp(1.05rem,1.35vw,1.3rem)}
.about-copy p{margin-bottom:1.5em}
.about-image{margin:clamp(5rem,9vw,9rem) 0;aspect-ratio:16/9;overflow:hidden}
.about-image img{object-position:center 46%}
.workshop-image{margin:clamp(4rem,7vw,7rem) 0 0;aspect-ratio:4/3;overflow:hidden}
@media(max-width:800px){.brand-tagline{font-size:.53rem!important;max-width:none!important}.work-intro{padding-left:1.3rem;padding-right:1.3rem}.about-statement,.bio-grid{grid-template-columns:1fr;gap:2.5rem}.about-image{aspect-ratio:4/3}.workshop-image{aspect-ratio:4/3}}
@media(max-width:800px){.series-gallery{grid-template-columns:1fr}.series-gallery.single{grid-template-columns:1fr}.collections-title{margin-bottom:2rem}.ajar-gallery figure:nth-child(5){grid-column:auto}.sutura-gallery{grid-template-columns:1fr}.sutura-gallery figure,.sutura-gallery .wide{aspect-ratio:auto}.sutura-gallery img{height:auto}}
@media(max-width:480px){.work-intro h1{font-size:3.2rem}}

/* Índex tipogràfic senzill */
.collections-title{margin-bottom:2rem;font-size:clamp(1.8rem,3vw,3rem)}
.works-list{display:flex;flex-wrap:nowrap;align-items:baseline;gap:.6rem 1.65rem;max-width:none;border:0}
.works-list li{display:block;border:0;padding:0}
.works-list li>a,.works-list li>span,.works-list li>span:first-child{font-size:1rem;font-weight:500;line-height:1.35;letter-spacing:.01em;color:var(--ink)}

/* Una sola pauta de galeria per a totes les fitxes */
.ajar-gallery{grid-template-columns:3fr 3fr 5.333fr 3fr;align-items:stretch}
.ajar-gallery figure{aspect-ratio:3/4}
.ajar-gallery figure.wide{aspect-ratio:4/3}
.volar-gallery{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.enquadrats-gallery{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;align-items:stretch}
.encercles-gallery{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
#pincapedra .series-gallery,.nus-gallery{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;align-items:stretch}
.series-gallery.single{grid-template-columns:minmax(0,min(100%,900px));justify-content:end}
.single-piece .piece-heading{margin-bottom:clamp(2.25rem,3.5vw,3.75rem)}

@media(max-width:800px){
  .works-list{gap:.45rem 1rem}
  .works-list li{padding:.2rem 0}
  .series-gallery,.ajar-gallery,.volar-gallery,.enquadrats-gallery,.encercles-gallery,#pincapedra .series-gallery,.nus-gallery{grid-template-columns:1fr;max-width:none}
  .series-gallery.single{justify-content:stretch}
  .ajar-gallery figure,.ajar-gallery figure.wide{aspect-ratio:auto}
  .ajar-gallery figure:nth-child(5){grid-column:auto}
}

.work-intro h1,.work-intro-copy{max-width:none}
.work-intro-copy{width:100%;margin-top:clamp(3rem,5vw,5rem);font-size:clamp(1.05rem,1.35vw,1.3rem)}
.work-intro-copy p{margin-bottom:1.5em}

/* Imatges contextuals associades a cada bloc de Contacte */
.contact-image{width:min(100%,520px);margin:clamp(2.5rem,5vw,4.5rem) 0 0;overflow:hidden;background:#d2d1ce}
.contact-image-working,.contact-image-workshop{width:100%;aspect-ratio:4/3}
.contact-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(.96) brightness(.99)}
.contact-grid>.contact-card{display:grid;grid-template-rows:1fr auto;align-items:start}
.contact-info{display:flex;flex-direction:column;align-items:flex-start}
.contact-info>span+span{margin-top:1rem}
.contact-layout{display:grid;grid-template-columns:minmax(250px,.62fr) minmax(500px,1.38fr);gap:clamp(3rem,6vw,7rem);align-items:start;width:min(82%,1250px);margin:0 auto}
.contact-details{display:flex;flex-direction:column;gap:clamp(3rem,6vw,5rem);font-size:clamp(1.05rem,1.5vw,1.35rem)}
.contact-info a{margin-top:.15rem;color:inherit}
.contact-tagline-mark{display:inline-block}
.contact-tagline-mark>span{display:block}
.contact-tagline-mark .contact-logo{display:block;width:0;min-width:100%;height:auto;object-fit:contain;margin-top:.85rem}
.contact-feature-image{width:100%;margin:0;overflow:hidden;aspect-ratio:1562/1007;background:#d2d1ce}
.contact-feature-image img{width:100%;height:100%;object-fit:cover}
@media(max-width:800px){.contact-image{width:min(88%,520px)}.contact-layout{grid-template-columns:1fr;width:100%;gap:3rem}.contact-feature-image{width:100%;margin:0}.works-list{flex-wrap:wrap}}
@font-face{font-family:Montserrat;src:url("assets/fonts/montserrat-regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url("assets/fonts/montserrat-medium.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url("assets/fonts/montserrat-semibold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
body{font-family:Montserrat,Arial,sans-serif}
.site-header{padding-top:4.5rem;padding-bottom:4.5rem}
.brand{display:inline-flex;width:max-content}
.brand strong{font-size:4rem;font-weight:600;line-height:.96;letter-spacing:0}
.brand-tagline{display:block!important;width:auto;font-size:1.5625rem!important;font-weight:500!important;line-height:1.2;letter-spacing:0!important;margin-top:.72rem!important;white-space:nowrap}
.hero picture{display:block;width:100%;height:100%}
@media(max-width:800px){.site-header{padding:1.3rem}.brand strong{font-size:1.65rem;line-height:1}.brand-tagline{font-size:.65625rem!important;margin-top:.48rem!important}.hero img{object-position:center}.languages{top:4.65rem}}
.site-header{position:absolute;display:block;padding:0;height:0}
.brand{position:absolute;left:5.5vw;top:16.6vh}
.brand strong{font-size:3.375rem;line-height:.96;font-weight:600}
.brand-tagline{font-size:1.3125rem!important;line-height:1.15;margin-top:.45rem!important}
.site-header nav{position:absolute;left:63.1vw;top:11.1vh;display:flex;gap:3rem;white-space:nowrap}
.languages{position:absolute;right:4.4vw;top:11.1vh;display:flex;gap:1.2rem}
.languages a{text-decoration:none}
.languages a:hover,.languages a:focus-visible{text-decoration:underline}
.menu-button{display:none}
@media(max-width:800px){
  .site-header{display:block;padding:0}
  .brand{left:50%;top:14.2vh;transform:translateX(-50%);align-items:center}
  .brand strong{font-size:8.2vw;line-height:.98;font-weight:500;white-space:nowrap}
  .brand-tagline{font-size:3.2vw!important;line-height:1.15;margin-top:.4rem!important;white-space:nowrap;text-align:center}
  .site-header nav{display:flex;left:1rem;right:auto;top:5.4vh;padding:0;background:transparent;flex-direction:row;gap:2rem}
  .site-header nav a{font-size:.95rem}
  .languages{right:1rem;top:1.8vh;gap:1rem}
  .hero{height:100svh;min-height:0}
  .hero img{object-position:center}
}
