@font-face{font-family:"Bodoni Moda";font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/bodoni-moda-latin-opsz.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Bodoni Moda";font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/bodoni-moda-latin-ext-opsz.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jost-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jost-latin-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);--bg:#ffffff;--ink:#111}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#ffffff;--ink:#111}}
:root[data-theme="dark"]{--bg:#ffffff;--ink:#111}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
*{box-sizing:border-box;margin:0}
body{background:var(--bg);color:var(--ink);font-family:Jost,Helvetica,Arial,sans-serif}
a{color:inherit;text-decoration:none}
.hd{position:relative;line-height:0}
.hd img{width:100%;height:auto;display:block}
.h{position:absolute;top:0;height:100%}
.g{display:grid;grid-template-columns:1fr 1fr}
.q{display:block;line-height:0;overflow:hidden}
.q img{width:100%;height:auto;display:block;transition:transform .5s}
.q:hover img{transform:scale(1.03)}
.v{display:none} .v.on{display:block} .v.on.g{display:grid;align-content:center;min-height:calc(100dvh - 76px - env(safe-area-inset-top,0px))}
.pg{padding:40px 48px 72px}
.bc{padding:8px 0;position:relative;z-index:2;cursor:pointer;font-size:12px;letter-spacing:.16em;text-transform:uppercase;display:inline-block;margin-bottom:18px}
.ttl{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(64px,10vw,150px);letter-spacing:-.02em;line-height:.95;margin-bottom:10px}
.sub{font-size:15px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:36px}
.tg{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.t{position:relative;aspect-ratio:4/3;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:22px}
.t img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.t:hover img{transform:scale(1.05)}
.t>span{position:relative;z-index:1}
.t img+.tn{text-shadow:0 0 12px rgba(255,255,255,.6)}
.tn{position:absolute!important;top:20px;left:22px;font-family:"Bodoni Moda",serif;font-size:14px}
.tt{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(40px,5vw,72px);letter-spacing:-.02em;line-height:1}
.ts{font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-top:6px}
.gl{background:linear-gradient(135deg,color-mix(in srgb,var(--c) 70%,#fff) 0%,var(--c) 42%,color-mix(in srgb,var(--c) 72%,#000) 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),inset 0 -40px 60px rgba(0,0,0,.12)}
.gl::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.6) 0%,rgba(255,255,255,0) 30%,rgba(255,255,255,.22) 46%,rgba(255,255,255,0) 58%);pointer-events:none}
.gl::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);transition:left .8s;pointer-events:none}
.gl:hover::after{left:130%}
.gl .tt{font-size:clamp(30px,3.8vw,56px)}
[data-v="sets"] .t{justify-content:flex-end}
[data-v="sets"] a[href$="white"]{box-shadow:inset 0 0 0 1px #d9d2c4}
.sub{max-width:900px;line-height:1.7}
.rg{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-top:28px}
.rc{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;color:#fff;background:#222}
.rc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s}
.rc:hover img{transform:scale(1.05)}
.rc::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.2) 45%,rgba(0,0,0,0) 75%)}
.rc::after{content:"";position:absolute;top:0;bottom:0;left:-70%;width:45%;z-index:3;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-18deg);transition:left .9s}
.rc:hover::after{left:140%}
.rc .in{position:absolute;z-index:2;left:clamp(20px,4vw,56px);top:clamp(20px,3.5vw,44px)}
.rc .n{display:block;font-family:"Bodoni Moda",serif;font-size:14px;margin-bottom:6px}
.rc .nm{display:block;font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(48px,7.4vw,112px);letter-spacing:-.03em;line-height:.95;text-transform:uppercase}
.rc .ds{display:block;margin-top:14px;font-size:15px;letter-spacing:.16em;text-transform:uppercase;line-height:1.6}
.rc .ar{display:block;margin-top:14px;font-size:34px;line-height:1;transition:transform .25s}
.rc:hover .ar{transform:translateX(8px)}
@media (max-width:800px){.rg{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.rc img,.rc::after,.rc .ar{transition:none}}
.ct{line-height:0;background:#f0e6da;text-align:center}.ct img{width:100%;max-width:1000px;height:auto;display:inline-block}
.nv{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px;padding:0 48px;background:#ffffff}
.logo{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:62px;letter-spacing:-.01em;line-height:1;background:linear-gradient(90deg,#d6001f 0%,#e0102f 30%,#ff6fae 40%,#f7a1cc 50%,#e8103f 58%,#d6004a 67%,#ff72b0 76%,#f79fca 85%,#e5007a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.nv nav{display:flex;align-items:center;gap:44px;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.nv nav>a,.dd>button{font:inherit;letter-spacing:inherit;text-transform:inherit;color:#111;background:none;border:0;cursor:pointer;padding:18px 0;display:block}
.dd{position:relative}
.dd ul{list-style:none;padding:14px 22px;position:absolute;top:100%;left:-22px;min-width:230px;white-space:nowrap;background:#ffffff;box-shadow:0 14px 26px rgba(0,0,0,.14);display:none;line-height:2.1}
.dd:hover ul,.dd:focus-within ul,.dd.open ul{display:block}
.nv .lang{display:flex;gap:16px;font-size:12px;letter-spacing:.1em}
.nv .lang button{background:none;border:0;font:inherit;color:#111;cursor:pointer;opacity:.5;padding:4px}
.nv .lang button[aria-pressed="true"]{opacity:1}
@media (max-width:860px){.nv{padding:0 12px;gap:8px}.logo{font-size:27px;white-space:nowrap}.nv nav{gap:10px;font-size:9px;letter-spacing:.04em}.nv nav>a,.dd>button{padding:18px 0}.nv .lang{display:none}.dd ul{left:auto;right:-10px;min-width:200px}}
@media (max-width:700px){.v.on.g{grid-template-columns:1fr}}
.v.on.hero{display:grid;grid-template-columns:1fr 1fr;height:calc(100dvh - 76px - env(safe-area-inset-top,0px));min-height:520px}
.hb{position:relative;display:block;overflow:hidden;background:#222}
.hb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s}
.hs img{object-position:14% 70%}
.hp img{object-position:88% 70%}
.hb:hover img{transform:scale(1.04)}
.hb::after{content:"";position:absolute;top:0;bottom:0;left:-70%;width:45%;z-index:3;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-18deg);transition:left 1s}
.hb:hover::after{left:140%}
.hb .in{position:absolute;z-index:2;left:clamp(24px,4.5vw,88px);top:clamp(28px,4.5vh,72px);right:16px}
.hs .in{color:#111}.hp .in{color:#fbf4ea}
.hb .n{display:block;font-family:"Bodoni Moda",serif;font-size:clamp(14px,1vw,18px);margin-bottom:clamp(6px,1vh,14px)}
.hb .hh{display:block;font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(68px,8.6vw,190px);letter-spacing:-.035em;line-height:.92}
.hb .ls{display:block;margin-top:clamp(16px,3vh,40px);font-size:clamp(13px,1.3vw,22px);letter-spacing:.18em;text-transform:uppercase;line-height:1.85}
.hb .ar{display:block;margin-top:clamp(14px,3vh,36px);font-size:clamp(34px,3vw,54px);line-height:1;transition:transform .3s}
.hb:hover .ar{transform:translateX(10px)}
@media (max-width:700px){.v.on.hero{grid-template-columns:1fr;grid-template-rows:1fr 1fr;height:auto;min-height:calc(100dvh - 76px)}.hb{min-height:70vw}.hb .hh{font-size:clamp(56px,17vw,100px)}.hb .ls{font-size:12px}}
@media (prefers-reduced-motion:reduce){.hb img,.hb::after,.hb .ar{transition:none}}
.rc{background:var(--c);color:var(--f)}
.rc .ds{display:none}
.rc::before{background:linear-gradient(125deg,rgba(255,255,255,.3) 0%,rgba(255,255,255,0) 38%,rgba(255,255,255,.12) 52%,rgba(0,0,0,.14) 100%)}
.rc[style*="#f3eee4"]{box-shadow:inset 0 0 0 1px #d9d2c4}
.rc .nm{font-size:clamp(56px,9vw,150px)}
.rg{gap:0}
.hb img{transform:scale(var(--z,1.32));transform-origin:var(--o,50% 100%)}
.hb:hover img{transform:scale(calc(var(--z,1.32)*1.04))}
.hs img{--o:22% 100%;object-position:14% 100%}
.hp img{--z:1.2;--o:92% 100%;object-position:92% 100%}
.hb img{inset:auto;left:var(--l,0%);bottom:0;top:auto;width:118%;height:auto;max-width:none;object-fit:fill;transform:none;transform-origin:50% 100%;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 18%);mask-image:linear-gradient(to bottom,transparent 0,#000 18%)}
.hb:hover img{transform:scale(1.04)}
.hs img{--l:-6%}
.hp img{--l:-18%}
.rg{grid-template-columns:repeat(3,1fr);gap:clamp(24px,3.5vw,64px);padding:44px clamp(0px,2vw,40px) 40px}
.rc{aspect-ratio:1;border-radius:50%;box-shadow:inset -22px -32px 70px rgba(0,0,0,.28),inset 14px 18px 46px rgba(255,255,255,.28),0 18px 36px rgba(0,0,0,.18);transition:transform .35s}
.rc:hover{transform:translateY(-6px)}
.rc[style*="#f3eee4"]{box-shadow:inset -22px -32px 70px rgba(0,0,0,.12),inset 0 0 0 1px #d9d2c4,0 18px 36px rgba(0,0,0,.14)}
.rc::before{background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.6) 0%,rgba(255,255,255,.18) 22%,rgba(255,255,255,0) 46%),linear-gradient(125deg,rgba(255,255,255,.12),rgba(0,0,0,.1))}
.rc .in{left:0;right:0;top:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.rc .n{margin-bottom:4px}
.rc .nm{font-size:clamp(34px,4.6vw,88px);letter-spacing:-.02em}
.rc .ar{margin-top:10px}
@media (max-width:800px){.rg{grid-template-columns:1fr 1fr;gap:20px}.rc .nm{font-size:clamp(26px,8vw,48px)}}
@media (prefers-reduced-motion:reduce){.rc{transition:none}}
.tvw{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:22px;max-width:1340px;margin:56px auto 20px;padding:26px;background:linear-gradient(160deg,#8a0510,#730406 55%,#5c0305);border-radius:38px;box-shadow:inset 0 2px 0 rgba(255,255,255,.25),inset 0 -10px 18px rgba(0,0,0,.35),0 26px 50px rgba(0,0,0,.25)}
.ant2{position:absolute;left:50%;top:-44px;width:3px;height:50px;background:#444;transform:translateX(-34px) rotate(-26deg);transform-origin:bottom}
.ant2::after{content:"";position:absolute;left:0;top:0;width:3px;height:50px;background:#444;transform:translateX(68px) rotate(52deg);transform-origin:bottom}
.tvb{background:#0b0b0b;border-radius:30px/36px;padding:16px;box-shadow:inset 0 0 0 3px #222,inset 0 0 30px #000}
.scr2{position:relative;overflow:hidden;aspect-ratio:3/2;background:#000;border-radius:22px/28px;cursor:pointer;outline-offset:4px}
.scr2 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.08) contrast(1.05)}
.scr2 img.gl{animation:tvg .35s steps(6) 1}
@keyframes tvg{0%{transform:translateX(-3%) scaleY(1.04);filter:hue-rotate(40deg) saturate(2) brightness(1.4)}40%{transform:translateX(2%);filter:hue-rotate(-30deg) saturate(1.6)}100%{transform:none;filter:saturate(1.08) contrast(1.05)}}
.scr2 canvas{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;opacity:0;pointer-events:none;z-index:2;transition:opacity .15s}
.scr2::before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px)}
.scr2::after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;background:radial-gradient(ellipse at 25% 15%,rgba(255,255,255,.22),transparent 40%),radial-gradient(ellipse at center,transparent 58%,rgba(0,0,0,.5))}
.osd{position:absolute;z-index:5;top:16px;left:20px;font:700 clamp(18px,2.4vw,34px)/1 "Courier New",monospace;letter-spacing:.08em;color:#7dff8f;text-shadow:0 0 8px #2f9,2px 2px 0 #031;opacity:0;transition:opacity .4s}
.osd.on{opacity:1}
.cap{position:absolute;z-index:5;left:20px;bottom:14px;font:700 clamp(12px,1.3vw,18px)/1 "Courier New",monospace;letter-spacing:.14em;color:#fff;text-shadow:0 1px 6px #000;text-transform:uppercase}
.ctl{display:flex;flex-direction:column;gap:16px;background:#5c0305;border-radius:24px;padding:20px 18px;box-shadow:inset 0 0 0 2px rgba(0,0,0,.35),inset 0 6px 14px rgba(0,0,0,.35)}
.ctl .brand{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:26px;letter-spacing:-.01em;text-align:center;background:linear-gradient(90deg,#ff6fae,#f7a1cc 45%,#ff9aa8);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.chl{display:grid;gap:9px}
.chb{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:0;border-radius:14px;background:#f2f2f2;color:#111;font:inherit;cursor:pointer;text-align:left;box-shadow:0 4px 0 #b9ab98,0 6px 10px rgba(0,0,0,.3);transition:transform .12s,box-shadow .12s,background .2s}
.chb i{width:12px;height:12px;border-radius:50%;background:var(--l);box-shadow:inset 0 0 0 2px rgba(0,0,0,.25)}
.chb b{font-family:"Courier New",monospace;font-size:14px;opacity:.7}
.chb span{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-size:22px;letter-spacing:-.01em}
.chb:hover{background:#fff}
.chb.on{transform:translateY(3px);box-shadow:0 1px 0 #b9ab98,inset 0 2px 6px rgba(0,0,0,.25);background:var(--l)}
.chb.on i{background:#7dff8f;box-shadow:0 0 10px #2f9}
.nx{display:flex;gap:10px}
.nx button{flex:1;padding:10px 0;border:0;border-radius:12px;background:#2a2321;color:#f3e9dc;font-size:20px;cursor:pointer;box-shadow:0 3px 0 #000}
.nx button:active{transform:translateY(2px);box-shadow:0 1px 0 #000}
.grille{height:46px;border-radius:10px;background:repeating-linear-gradient(90deg,rgba(0,0,0,.45) 0 3px,transparent 3px 9px)}
.chb:focus-visible,.nx button:focus-visible{outline:3px solid #7dff8f;outline-offset:2px}
@media (max-width:900px){.tvw{grid-template-columns:1fr;padding:16px;border-radius:28px;margin-top:48px}.ctl{padding:14px}.chl{grid-template-columns:1fr 1fr}.chb span{font-size:18px}.grille{display:none}}
@media (prefers-reduced-motion:reduce){.scr2 img.gl{animation:none}.chb,.osd{transition:none}}
.v[data-v^="proj-"]{display:none!important}
[data-v="projects"].pg{padding:0}
[data-v="projects"]>.bc,[data-v="projects"]>.sub{display:none}
[data-v="projects"]>.ttl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tvw{height:calc(100dvh - 76px - env(safe-area-inset-top,0px));min-height:560px;max-width:none;margin:0;padding:18px;border-radius:0;gap:18px;background:linear-gradient(160deg,#f6b6bb,#ef9c9f 55%,#e58b92);box-shadow:inset 0 2px 0 rgba(255,255,255,.5),inset 0 -8px 16px rgba(160,50,60,.25)}
.ant2{display:none}
.tvb{height:100%;padding:12px;box-shadow:inset 0 0 0 3px #222,inset 0 0 30px #000,0 6px 16px rgba(120,30,40,.35)}
.scr2{height:100%;aspect-ratio:auto}
.ctl{background:#e0838c;box-shadow:inset 0 0 0 2px rgba(150,40,55,.35),inset 0 6px 14px rgba(150,40,55,.3);overflow:auto}
.ctl .brand{background:none;color:#d6001f;-webkit-text-fill-color:#d6001f;font-size:30px}
.grille{background:repeating-linear-gradient(90deg,rgba(150,40,55,.45) 0 3px,transparent 3px 9px);margin-top:auto}
@media (max-width:900px){.tvw{height:auto;min-height:0;padding:12px}.tvb{height:auto}.scr2{height:62dvh;min-height:320px}}
.dim{transition:opacity .2s} .dim:hover{opacity:.85}
.pp{display:grid;grid-template-columns:1fr;gap:28px;max-width:1200px}
.pp figure{line-height:0} .pp img{width:100%;height:auto;display:block}
.pp figcaption{line-height:1.4;font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-top:10px}
.soon{font-size:15px;letter-spacing:.16em;text-transform:uppercase}
:focus-visible{outline:3px solid #d6113f;outline-offset:-3px}
@media (max-width:800px){.tg{grid-template-columns:1fr 1fr}.pg{padding:28px 20px 56px}}
@media (prefers-reduced-motion:reduce){.q img,.t img,.gl::after{transition:none}}
@font-face{font-family:"Caveat";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/caveat-latin-600.woff2) format("woff2")}@font-face{font-family:"Caveat";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/caveat-latin-700.woff2) format("woff2")}/* ===== SETS landing: vertical colour bands ===== */
.sh{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 28px;padding:20px 48px 16px}
.sh .bc{margin:0}
.sh .ttl{font-size:clamp(24px,2.4vw,34px);margin:0;line-height:1}
.sh .sub{margin:0;font-size:12px}
.bands{display:flex;height:calc(100dvh - 76px - 92px);min-height:460px}
.bn{position:relative;flex:1 1 0;min-width:0;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:22px 20px 26px;color:var(--k);transition:flex-grow .7s cubic-bezier(.2,.7,.2,1);border-left:1px solid rgba(255,255,255,.22)}
.bn:first-child{border-left:0}
.bn:hover,.bn:focus-visible{flex-grow:3.4}
.bn:focus-visible{outline:3px solid #8a0510;outline-offset:-3px}
.bn.off{filter:saturate(.8)}
.bn.white,.bn.mirror{border-left-color:rgba(0,0,0,.12)}
.bno{position:relative;z-index:1;font-family:"Bodoni Moda",serif;font-size:14px;letter-spacing:.08em}
.vn{position:relative;z-index:1;writing-mode:vertical-rl;transform:rotate(180deg);align-self:flex-start;font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(40px,5.4vw,84px);letter-spacing:-.01em;line-height:1;white-space:nowrap;text-transform:uppercase;transition:transform .5s}
.bi{position:absolute;z-index:1;left:20px;right:20px;top:54px;display:flex;flex-direction:column;gap:6px;opacity:0;transform:translateY(8px);transition:opacity .4s .12s,transform .4s .12s;pointer-events:none}
.bi b{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(24px,2.6vw,40px);letter-spacing:-.01em;line-height:1;white-space:nowrap}
.bi i{font-style:normal;font-size:12px;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.bi u{text-decoration:none;font-size:30px;line-height:1;margin-top:8px}
.bn:hover .bi,.bn:focus-visible .bi{opacity:1;transform:none}
@media (max-width:760px){
 .sh{padding:16px 20px 12px}
 .bands{flex-direction:column;height:auto;min-height:0}
 .bn{flex:none;height:calc((100dvh - 76px - 90px)/6);min-height:84px;flex-direction:row;align-items:center;padding:0 20px;border-left:0;border-top:1px solid rgba(255,255,255,.22)}
 .bn:first-child{border-top:0}
 .bn:hover,.bn:focus-visible{flex-grow:0}
 .vn{writing-mode:horizontal-tb;transform:none;align-self:center;font-size:clamp(34px,10vw,52px);margin-left:14px;flex:1}
 .bi{position:static;opacity:1;transform:none;flex-direction:row;align-items:center;gap:12px;order:3}
 .bi b{display:none}.bi u{margin:0;font-size:26px}.bi i{font-size:10px}
}
@media (prefers-reduced-motion:reduce){.bn,.vn,.bi{transition:none}}

/* ===== Collection sheet (Pink Set) – compact so the whole sheet fits on one screen ===== */
.rs{max-width:1000px;margin:0 auto;background:#ffffff;box-shadow:0 0 0 1px rgba(0,0,0,.05),0 28px 50px -38px rgba(138,5,16,.55)}
.rh{display:flex;align-items:center;flex-wrap:wrap;gap:10px clamp(12px,1.6vw,22px);padding:clamp(10px,1.4vw,16px) clamp(12px,1.8vw,22px)}
.rt{display:flex;align-items:baseline;gap:10px;padding-right:clamp(12px,1.6vw,22px);border-right:1px solid rgba(0,0,0,.3);line-height:1}
.rt b{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(26px,3.4vw,40px);letter-spacing:-.01em}
.rt span.w{font-family:"Bodoni Moda",Didot,serif;font-weight:500;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(18px,2.3vw,28px);letter-spacing:.01em;margin-left:-4px}
.rn{font-family:"Bodoni Moda",Didot,serif;font-weight:500;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(26px,3.4vw,40px);color:#ef9c9f;padding-left:4px}
.rcat{font-size:clamp(10px,1.1vw,13px);letter-spacing:.3em;text-transform:uppercase;border-bottom:1px solid #111;padding-bottom:6px;flex:0 1 200px}
.rsw{display:flex;gap:7px;margin-left:auto}
.rsw img{width:clamp(28px,3.4vw,42px);aspect-ratio:1;border-radius:50%;object-fit:cover;display:block}
.rgd{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(0,0,0,.13);border-top:1px solid rgba(0,0,0,.13)}
.rc2{position:relative;display:flex;flex-direction:column;background:#ffffff}
.rc2.hl{animation:hlp 2.4s ease-out}
@keyframes hlp{0%,40%{box-shadow:inset 0 0 0 3px #ef9c9f}100%{box-shadow:inset 0 0 0 3px rgba(239,156,159,0)}}
.rb{position:absolute;z-index:2;top:7px;left:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:clamp(36px,4vw,46px);aspect-ratio:1;border-radius:50%;background:#ef9c9f;color:#fff8ef;font-family:"Bodoni Moda",serif;font-weight:500;font-size:clamp(7px,.75vw,9px);line-height:1}
.rb b{font-weight:500;font-size:2.15em;letter-spacing:.02em;margin-top:1px}
.rph{position:relative;aspect-ratio:1/.62}
.rph img{position:absolute;inset:4px 8px 0;width:calc(100% - 16px);height:calc(100% - 4px);object-fit:contain;mix-blend-mode:multiply;display:block}
.rtx{padding:2px 10px 0;font-size:clamp(10.5px,1vw,11.5px);line-height:1.4}
.rtx h2{font-weight:500;font-size:inherit;margin:0}
.rdm{padding:2px 8px 4px;margin-top:auto}
.rdm img{width:100%;height:auto;display:block;mix-blend-mode:multiply}
.rpr{display:flex;margin:0 8px 8px;text-align:center}
.rpr span{flex:1;background:#f9d9dc;font-size:clamp(7.5px,.75vw,9px);letter-spacing:.22em;text-transform:uppercase;padding:8px 4px}
.rpr b{flex:0 0 36%;background:#fbe9e7;font-weight:500;font-size:clamp(12px,1.1vw,14px);padding:6px 4px}
.rf{margin-top:18px;display:flex;justify-content:center}
@media (max-width:700px){.rgd{grid-template-columns:1fr 1fr}.rsw{margin-left:0}.rtx{font-size:11.5px}.rdm img{min-height:0}}
@media (max-width:419px){.rgd{grid-template-columns:1fr}.rt{border-right:0;padding-right:0}.rcat{flex-basis:100%}}
@media (prefers-reduced-motion:reduce){.rc2.hl{animation:none}}
.btn{position:relative;display:inline-block;overflow:hidden;padding:16px 28px;background:#7a0308;color:#f6d9dc;font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.btn::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-18deg);transition:left .8s}
.btn:hover::after{left:130%}
@media (prefers-reduced-motion:reduce){.btn::after{transition:none}}



/* ===== photo bands ===== */
.bn .bph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--px,50%) 55%;z-index:0;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.bn:hover .bph,.bn:focus-visible .bph{transform:scale(1.06)}
.bn .bt{position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(to bottom,color-mix(in srgb,var(--c) 38%,transparent) 0,color-mix(in srgb,var(--c) 8%,transparent) 30%,color-mix(in srgb,var(--c) 10%,transparent) 55%,color-mix(in srgb,var(--c) 85%,transparent) 100%)}
.bn.ph .vn{color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.bn.ph.white .vn,.bn.ph.mirror .vn{color:#fff}
.bn.ph .bno,.bn.ph .bi{color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.4)}
.bn.ph .vn,.bn.ph .bno,.bn.ph .bi{z-index:2}
@media (max-width:760px){.bn .bph{object-position:var(--px,50%) 45%}.bn .bt{background:linear-gradient(90deg,color-mix(in srgb,var(--c) 75%,transparent),color-mix(in srgb,var(--c) 15%,transparent) 70%)}}
/* colour page */
.cw{padding:0 clamp(16px,4vw,48px) 72px}
[data-v="setcol"] .sh{padding-top:20px}
.gx{margin-top:56px}
.gh{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(26px,3vw,40px);letter-spacing:-.01em;margin:0 0 18px}
.gg{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:14px}
.gg figure{margin:0}
.gb{display:block;width:100%;padding:0;border:0;background:#f1f1f1;aspect-ratio:3/2;overflow:hidden;cursor:zoom-in;position:relative}
.gb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}
.gb:hover img,.gb:focus-visible img{transform:scale(1.05)}
.gb:focus-visible{outline:3px solid #8a0510;outline-offset:2px}
.rf{margin-top:28px}
.lb{position:fixed;inset:0;z-index:200;background:rgba(10,8,8,.92);display:flex;align-items:center;justify-content:center;padding:56px 70px}
.lb[hidden]{display:none}
.lb img{max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 10px 60px rgba(0,0,0,.5)}
.lb button{position:absolute;background:none;border:0;color:#fff;font-size:44px;line-height:1;cursor:pointer;width:56px;height:56px;opacity:.85}
.lb button:hover{opacity:1}
.lbx{top:8px;right:12px}.lbp{left:6px;top:50%;margin-top:-28px}.lbn{right:6px;top:50%;margin-top:-28px}
.lbc{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#fff;font-size:12px;letter-spacing:.2em;opacity:.8}
@media (max-width:700px){.lb{padding:56px 8px}.lbp,.lbn{top:auto;bottom:6px;margin:0}.lbc{bottom:24px}}

/* projects page */
.pjl{font-family:"Bodoni Moda",Didot,serif;font-weight:500;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(20px,2.2vw,32px);line-height:1.2;letter-spacing:-.01em;margin:4px clamp(16px,4vw,48px) 22px;max-width:28em}
.prs{display:flex;flex-direction:row;height:calc(100dvh - 76px);min-height:580px}
.pr{position:relative;flex:1 1 0;min-width:0;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;padding:24px clamp(18px,2.2vw,34px) 28px;transition:flex-grow .7s cubic-bezier(.2,.7,.2,1);border-left:1px solid rgba(255,255,255,.25)}
.pr:first-child{border-left:0}
.prs:hover .pr{flex-grow:.85}.prs .pr:hover,.prs .pr:focus-visible{flex-grow:1.7}
.pr{box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);color:#0d0808}
.pr1{--c:#ef9c9f;background:linear-gradient(90deg,#ea8388 0%,#f09ca0 45%,#f8c4c7 100%)}
.pr2{--c:#de4a80;background:linear-gradient(90deg,#f8c4c7 0%,#f6b6c6 18%,#f09ab8 38%,#e87aa1 56%,#e05a8a 72%,#d93d70 86%,#cf2b4e 94%,#c8222e 100%)}
.pr3{--c:#b0101c;background:linear-gradient(90deg,#c8222e 0%,#bd1522 40%,#a80c18 100%)}
.pr::before{display:none}
.pr::after{animation:prs 7s ease-in-out var(--d,0s) infinite}
@keyframes prs{0%,55%{left:-60%}100%{left:140%}}
.pr .bno{order:0;position:relative;z-index:1;font-size:14px;color:inherit}
.prx{order:1;position:relative;z-index:1;font-size:clamp(13px,1vw,15px);line-height:1.5;max-width:18em;margin-top:14px}
.prt{order:2;margin-top:auto;position:relative;z-index:1;writing-mode:vertical-rl;transform:rotate(180deg);align-self:flex-start;font-family:"Bodoni Moda",Didot,serif;font-weight:500;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(26px,2.9vw,44px);letter-spacing:.05em;line-height:1;text-transform:uppercase;white-space:nowrap}
.pra{position:absolute;z-index:1;right:clamp(18px,2.2vw,34px);bottom:26px;font-size:clamp(22px,1.9vw,30px);font-weight:300;line-height:1;transition:transform .3s}
.pr:hover .pra{transform:translateX(8px)}
.pjh{font-size:clamp(30px,3.6vw,52px);margin:56px 0 0}
.pjc{margin-top:28px}
.pjc .gh{font-size:clamp(20px,2vw,28px)}
@media (max-width:860px){.prs{flex-direction:column;height:auto;min-height:0}.pr{flex:none;display:grid;grid-template-columns:1fr 40px;grid-template-rows:auto auto;padding:26px 20px;gap:6px 10px;border-left:0;border-top:1px solid rgba(255,255,255,.25)}.pr:first-child{border-top:0}.pr .bno{grid-row:1}.prt{writing-mode:horizontal-tb;transform:none;grid-column:1;font-size:clamp(26px,7.5vw,36px);white-space:normal}.prx{grid-column:1;grid-row:2;margin:0}.pra{position:static;grid-column:2;grid-row:1}.prs:hover .pr,.prs .pr:hover{flex-grow:0}}
@media (prefers-reduced-motion:reduce){.pr::after{animation:none}.pr{transition:none}}

.dd li.lw{border-top:1px solid rgba(0,0,0,.14);margin-top:6px;padding-top:6px}.dd li.lw a{color:#8a0510;text-decoration:none;font-style:italic}.dd li.lw a:hover{text-decoration:underline}

/* purple + transparent bands */
.bn.transparent{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.38) 22px 27px),linear-gradient(135deg,#f6fbfd 0%,#d5e6ee 34%,#fbfeff 54%,#bfd6e2 100%);color:#14212a;border-left-color:rgba(0,0,0,.12)}
.bn.transparent::before{background:linear-gradient(115deg,rgba(255,255,255,.9) 0%,rgba(255,255,255,0) 30%,rgba(255,255,255,.45) 46%,rgba(255,255,255,0) 58%)}
.vn{font-size:clamp(30px,min(4.7vw,calc((100dvh - 212px)/8.2)),84px)}
@media (max-width:760px){.vn{font-size:clamp(34px,10vw,52px)}}

.prs.hub{height:calc(100dvh - 76px - 100px)}
.prs.hub .prt{font-size:clamp(34px,calc((100dvh - 360px)/7.4),104px);line-height:1.02}
@media (max-width:860px){.prs.hub{height:auto}.prs.hub .prt{font-size:clamp(28px,8.6vw,48px)}}

/* sets chooser: standalone boxes */
.tabs{display:flex;flex-wrap:wrap;gap:10px;padding:22px 48px 16px}
.tab{padding:13px 26px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;border:0;border-radius:3px;color:#fff;text-shadow:0 1px 3px rgba(120,10,30,.45);text-decoration:none;line-height:1;transition:transform .2s,box-shadow .2s}
.tab:hover{transform:translateY(-2px)}
.tab.on{box-shadow:0 0 0 2px #ffffff,0 0 0 4px #161414}
[data-v="sets"] .bands{height:calc(100dvh - 152px)}
.bsp{padding:8px 48px 80px;background:transparent;color:#161212}
.bsp-p{font-family:"Caveat","Bradley Hand",cursive;font-weight:600;font-size:clamp(28px,2.5vw,36px);line-height:1.25;margin:0 0 16px;max-width:30em;color:#161212}
.bsp-p strong{font-weight:700}
.bsp-a{display:inline-block;margin-top:8px;font-family:"Caveat","Bradley Hand",cursive;font-weight:700;font-size:clamp(32px,3vw,42px);line-height:1.1;color:#c8222e;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;text-decoration-color:rgba(200,34,46,.55);transition:color .2s}
.bsp-a:hover{color:#161212}
.bsig{margin-top:46px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.bsig-n{font-family:"Caveat","Bradley Hand",cursive;font-weight:700;font-size:clamp(34px,3.2vw,46px);line-height:1;color:#161212;transform:rotate(-3deg);transform-origin:left bottom}
.bsig-l{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(40px,4.6vw,60px);letter-spacing:-.01em;line-height:1;background:linear-gradient(90deg,#d6001f 0%,#e0102f 30%,#ff6fae 40%,#f7a1cc 50%,#e8103f 58%,#d6004a 67%,#ff72b0 76%,#f79fca 85%,#e5007a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
@media (max-width:760px){[data-v="sets"] .bands{height:auto}.tabs{gap:8px}.tab{padding:11px 14px;font-size:10px;letter-spacing:.1em}.bsp{min-height:50vh}}

.bn.seq::before{display:none}.bn.seq{box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}

/* set designer text block (Sets + Projects) */
.dsg{padding:26px 48px 30px;max-width:52em}
.dsg-t{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(24px,2.4vw,34px);line-height:1;letter-spacing:-.01em;margin:0 0 12px;color:#161212}
.dsg-s{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(16px,1.5vw,20px);line-height:1.15;margin:0 0 8px}
.dsg-p{font-size:clamp(13px,1vw,15px);line-height:1.5;margin:0 0 10px;max-width:42em}
.dsg-c{font-family:"Bodoni Moda",Didot,serif;font-style:italic;font-weight:600;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(14px,1.2vw,17px);line-height:1.2;margin:0}
@media (max-width:860px){.dsg,.tabs,.bsp{padding-left:16px;padding-right:16px}}
@media (max-width:760px){.dsg{padding-top:12px;padding-bottom:22px}.dsg-t{font-size:clamp(16px,4.4vw,19px)}.dsg-s{font-size:15px}.dsg-p{font-size:13px}.dsg-c{font-size:14px}}

.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}


/* no index numbers anywhere */
.bno,.hb .n{display:none!important}

/* names stay at the bottom of the bands */
@media (min-width:761px){.bn .vn{margin-top:auto}}
/* small Set Designer text under "Explore all sets" */
.hb .hd{display:block;margin-top:clamp(8px,1.6vh,20px);max-width:28em;text-shadow:0 0 8px rgba(240,152,154,.95),0 0 3px rgba(240,152,154,.9);font-family:Arial,Helvetica,sans-serif;font-size:clamp(13px,1.05vw,16px);line-height:1.5;color:#1a1010}
.hb .hd b{display:block;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.hb .hd i{display:block;font-style:normal;font-weight:700;margin-bottom:4px}
.hb .hd span{display:block;margin-bottom:6px}
.hb .hd em{display:block;font-style:italic;font-weight:600}
@media (max-width:700px){.hb.hs{min-height:max(70vw,640px)}.hb .hd{font-size:13.5px;max-width:none;padding-right:8px}}

.hb.hs .ar{margin-top:clamp(8px,1.8vh,22px)}

/* Home titles: same size as the header logo */
.hb .hh{font-size:42px}
@media (max-width:700px){.hb .hh{font-size:30px}}

/* align the S of SETS under the stem of the T in the logo */
@media (min-width:861px){.hb.hs .in{left:56px}}
@media (min-width:701px) and (max-width:860px){.hb.hs .in{left:11.5px}}
@media (max-width:700px){.hb.hs .in{left:13.5px}}

/* logo: extra paint room so gradient-text glyphs are never clipped (layout position unchanged) */
.nv .logo{padding:.14em .06em .14em .06em;margin:-.14em -.06em -.14em -.06em}
@media (max-width:860px){.nv .logo{padding-left:0;padding-right:0;margin-left:0;margin-right:0}}
@media (max-width:380px){.nv nav{gap:4px!important;font-size:7.7px!important}.nv{padding-right:4px!important}}
.bn.ph.transparent .vn{text-shadow:0 1px 3px rgba(0,0,0,.45),0 2px 24px rgba(0,0,0,.55)}

/* ---- estela de muebles (A medida) ---- */
.trl{position:relative;margin:clamp(40px,6vw,80px) -48px 0;height:clamp(380px,64vh,660px);overflow:hidden;cursor:crosshair;touch-action:pan-y;user-select:none;-webkit-user-select:none;--u:clamp(140px,15vw,240px)}
.trl-sub{display:table;position:relative;margin:.3em auto 0;font-size:clamp(24px,3.4vw,52px);font-weight:400;letter-spacing:.01em;color:#d6001f;opacity:1}
.trl-ul{position:absolute;left:-2%;bottom:-.34em;width:104%;height:.4em;overflow:visible}
.trl-m{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-3deg);z-index:2;font-family:"Caveat","Bradley Hand",cursive;font-weight:700;font-size:clamp(48px,6.6vw,106px);line-height:1.02;color:#161212;text-align:center;width:min(92%,7.4em);text-wrap:wrap;pointer-events:none;letter-spacing:.005em}
.trl-s{position:absolute;inset:0;pointer-events:none}
.tp{position:absolute;display:block;height:calc(var(--u)*var(--k)*var(--h)/760);width:auto;max-width:none;transform:translate(-50%,-50%) rotate(var(--r));animation:tpIn .42s cubic-bezier(.16,1,.3,1) both;transition:opacity .5s ease,transform .5s ease;pointer-events:none}
.trl.fr{height:clamp(470px,80vh,800px);cursor:default;--u:clamp(115px,12vw,200px)}
.trl.fr .tp{z-index:1}
.trl-sw{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:40;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;font-family:"Jost",sans-serif;cursor:default}
.trl-sw .sg{display:flex;border:1px solid #d9d4d0;border-radius:20px;overflow:hidden;background:#fff}
.trl-sw button{all:unset;box-sizing:border-box;white-space:nowrap;padding:6px 12px;font-size:11px;letter-spacing:.06em;color:#8a8280;cursor:pointer}
.trl-sw button.on{background:#161212;color:#fff}
.tp.o{opacity:0;transform:translate(-50%,-50%) rotate(var(--r)) scale(.92)}
@keyframes tpIn{from{opacity:0;transform:translate(-50%,-50%) rotate(calc(var(--r) - 10deg)) scale(.55)}to{opacity:1;transform:translate(-50%,-50%) rotate(var(--r)) scale(1)}}
@media (max-width:860px){.trl.fr{height:clamp(440px,70vh,640px);--u:clamp(80px,24vw,130px)}.trl{margin-left:-16px;margin-right:-16px;height:clamp(340px,58vh,520px);--u:clamp(110px,32vw,190px)}}
@media (prefers-reduced-motion:reduce){.tp{animation:none}}

/* projects page v3: editorial */
.pj3{padding:44px 48px 80px}
.pj3-k{font-size:11px;letter-spacing:.24em;text-transform:uppercase;margin:0 0 20px;color:#8a8280;font-weight:400}
.pj3-t{font-family:"Bodoni Moda",Didot,serif;font-weight:400;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(32px,4.4vw,64px);line-height:1.06;letter-spacing:-.015em;margin:0 0 20px;color:#161212;max-width:16em}
.pj3-t em{font-style:italic;color:#8a0510}
.pj3-l{font-size:clamp(15px,1.2vw,17px);font-weight:300;line-height:1.7;max-width:34em;margin:0;color:#4a4240}
.pj3-b{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,80px);align-items:center;margin-top:clamp(40px,6vw,72px)}
.pj3-li{list-style:none;margin:0;padding:0;border-top:1px solid #e6e0da}
.pj3-li li{border-bottom:1px solid #e6e0da}
.pj3-it{all:unset;box-sizing:border-box;display:flex;align-items:baseline;gap:18px;width:100%;padding:clamp(14px,1.8vw,22px) 0;cursor:pointer;color:#b3aba5;transition:color .5s,padding-left .5s cubic-bezier(.16,1,.3,1)}
.pj3-it:focus-visible{outline:2px solid #8a0510;outline-offset:2px}
.pj3-n{font-family:"Jost",sans-serif;font-weight:300;font-size:11px;letter-spacing:.18em;min-width:2em}
.pj3-tx{font-family:"Bodoni Moda",Didot,serif;font-weight:400;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(20px,2.1vw,30px);line-height:1.15;letter-spacing:-.005em}
.pj3-it.on{color:#161212;padding-left:14px}
.pj3-it.on .pj3-n{color:#8a0510}
.pj3-fr{position:relative;margin:0;aspect-ratio:4/3;background:#f3efe9;overflow:hidden}
.pj3-fr img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.03);transition:opacity 1.1s ease,transform 5s ease-out}
.pj3-fr img.on{opacity:1;transform:scale(1)}
.pj3-cp{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:baseline;padding:34px 18px 14px;color:#fff;font-size:11px;letter-spacing:.18em;text-transform:uppercase;background:linear-gradient(0deg,rgba(0,0,0,.42),rgba(0,0,0,0));font-weight:400}
.pj3-cp i{font-style:normal;opacity:.8}
.pj3-f{margin-top:clamp(40px,5vw,64px)}
.pj3-a{display:inline-block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:400;color:#161212;padding-bottom:8px;border-bottom:1px solid #161212;transition:color .3s,border-color .3s}
.pj3-a:hover{color:#8a0510;border-color:#8a0510}
@media (max-width:860px){.pj3{padding:28px 20px 56px}.pj3-b{grid-template-columns:1fr;gap:26px}.pj3-fr{order:-1}.pj3-it{padding:13px 0}}
@media (prefers-reduced-motion:reduce){.pj3-fr img{transition:opacity .2s}}
.ct{background:#fff}
.ctw{position:relative;max-width:1000px;margin:0 auto;container-type:inline-size;line-height:0}
.ctw img{display:block;width:100%;height:auto}
.ctx{position:absolute;left:73.9%;top:33.8%;width:25.4%;line-height:1.3;text-align:left;font-family:Jost,sans-serif;color:#111}
.ctx .ctt{font-size:1.36cqw;line-height:1.3;margin:0 0 1.5cqw}
.ctx .ctg{margin:0 0 1.35cqw}
.ctx .ctg b{display:block;font-weight:500;font-size:1.36cqw;letter-spacing:.02em;text-transform:uppercase;margin-bottom:.25cqw}
.ctx .ctg span{display:block;font-size:1.4cqw;line-height:1.35}
.ctx .ctc{font-size:1.15cqw;margin:0;letter-spacing:.02em}
.ctx a,.ctm a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}
.ctx a:hover,.ctm a:hover{border-bottom-color:currentColor}
.ctx em,.ctm em{font-style:normal}
.ctm{display:none}
@media(max-width:760px){
 .ctx{display:none}
 .ctm{display:block;line-height:1.35;font-family:Jost,sans-serif;color:#111;padding:26px 24px 44px;max-width:520px;margin:0 auto;text-align:left}
 .ctm .ctt{font-size:16px;margin:0 0 22px}
 .ctm .ctg{margin:0 0 18px}
 .ctm .ctg b{display:block;font-weight:500;font-size:14px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}
 .ctm .ctg span{display:block;font-size:17px;line-height:1.5}
 .ctm .ctc{font-size:13px;margin:6px 0 0;letter-spacing:.03em;color:#555}
}


.ctn{display:grid;grid-template-columns:auto auto;column-gap:1.6cqw;justify-content:start;line-height:1.35}
.ctx .ctn .ctl2{font-size:1.15cqw;color:#666;letter-spacing:.03em;display:block}
.ctx .ctn a{font-size:1.3cqw;white-space:nowrap;display:block;width:max-content}
@media(max-width:760px){
 .ctn{column-gap:28px}
 .ctm .ctn .ctl2{font-size:13px;color:#666;letter-spacing:.03em;display:block;margin-bottom:2px}
 .ctm .ctn a{font-size:17px;white-space:nowrap;display:block}
}

.ctx .ctl2,.ctm .ctl2{display:block}
.ctx .ctp{display:block;font-size:1.4cqw;line-height:1.4}
.ctm .ctp{display:block;font-size:17px;line-height:1.5}
.ctx{top:33.4%}
.ctx .ctt{font-size:1.28cqw;line-height:1.28;margin-bottom:1.1cqw}
.ctx .ctg{margin-bottom:.95cqw}
.ctx .ctg b{font-size:1.28cqw;margin-bottom:.1cqw}
.ctx .ctg span,.ctx .ctp{font-size:1.32cqw;line-height:1.32}
.ctx .ctl2{font-size:1.32cqw!important;color:#111!important;letter-spacing:0!important}
.ctx .ctc{font-size:1.05cqw}

.bn.seq .vn{font-size:clamp(20px,min(2.9vw,calc((100dvh - 212px)/16)),46px);line-height:1.08;letter-spacing:0;white-space:nowrap}
.bn.seq .bi b{white-space:normal;font-size:clamp(20px,2vw,30px);line-height:1.1}
@media (max-width:760px){.bn.seq .vn{font-size:clamp(22px,6.4vw,30px);line-height:1.05;white-space:nowrap}.bn.seq{min-height:78px}}
@media (max-width:760px){.bn.seq .bi i{display:none}}

.bn.cpt{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.3) 22px 27px),linear-gradient(135deg,#c2d6e0 0%,#8eaebe 34%,#c8dce5 54%,#7799ab 100%);color:#fff;box-shadow:none;border-left:1px solid rgba(255,255,255,.4)}
.bn.cpt:first-child{border-left:0}
.bn.cpt::before{display:block}
.bn.cpt .vn,.bn.cpt .bi,.bn.cpt .bi b,.bn.cpt .bi i,.bn.cpt .bi u{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.45),0 2px 24px rgba(0,0,0,.45)}

.dd li.sd>span{display:block}
.dd ul ul{position:static;display:block;left:auto;right:auto;top:auto;min-width:0;box-shadow:none;padding:0 0 0 14px;margin:0 0 4px 1px;border-left:1px solid rgba(0,0,0,.16);line-height:1.9;font-size:.94em;color:#444}
.dd ul a{color:inherit;text-decoration:none}
.dd ul a:hover{text-decoration:underline}

.cth{position:absolute;left:71.8%;top:19.6%;font-family:Caveat,"Segoe Script",cursive;font-weight:700;font-size:6.2cqw;line-height:.86;color:#0d0d0d;text-transform:uppercase;transform:rotate(-12deg);transform-origin:0 100%;pointer-events:none;white-space:nowrap}
.cth span{display:block;letter-spacing:.01em}
.cth span:nth-child(2){margin-left:1.2cqw}
.cth span:nth-child(3){margin-left:2.6cqw}
.cth svg{display:inline-block;width:.85em;height:.8em;margin-left:.5em;vertical-align:-.05em;color:#0d0d0d}
.cth{top:20.8%;font-size:5.7cqw}

.bsp{padding-top:28px}
.bsp-p{font-size:clamp(27px,2.35vw,35px);line-height:1.28;margin:0 0 22px;max-width:34em;font-weight:600;color:#111}
.bsp-a{margin-top:12px}
@media (max-width:760px){.bsp-p{font-size:26px;line-height:1.28;margin-bottom:18px}}
.ctx{top:34.8%}

.cto{display:flex;gap:8px;justify-content:center;padding:14px 16px 28px;line-height:1}
.cto button{font:500 11px/1 Jost,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:9px 14px;border-radius:999px;border:1px solid #bbb;background:#fff;color:#555;cursor:pointer;white-space:nowrap}
.cto button.on{background:#111;border-color:#111;color:#fff}

.gg .gc{margin-top:8px;font:500 11px/1.2 Jost,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#6b6b6b}
.bn.cpt.studio-54{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(160deg,#ff3d9a 0%,#ffb12b 28%,#33d6ff 52%,#9a5bff 76%,#ff3d9a 100%)}
.bn.cpt.rainbow{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(180deg,#ff3b3b 0%,#ff9a1f 18%,#ffe03a 34%,#3ccf5a 50%,#2aa8ff 68%,#5a4bff 84%,#b94bff 100%)}
.bn.cpt.flower-power{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(135deg,#ffe35c 0%,#ffc61a 40%,#fff08a 60%,#f2b300 100%)}
.bn.cpt.infantil{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(135deg,#19c1d6 0%,#0a8fc4 40%,#38d3e6 62%,#0773b0 100%)}
.bn.cpt.alice-in-wonderland{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(135deg,#ffc2d9 0%,#f58ab4 38%,#ffd0e2 60%,#e8689c 100%)}
.bn.cpt.great-gatsby{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(135deg,#f3dc9a 0%,#d4a843 36%,#f5e2a6 56%,#b98a2c 100%)}
.bn.cpt.barbie{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(135deg,#ff7ac0 0%,#e0218a 38%,#ff9fd2 58%,#b8106b 100%)}
.bn.cpt.casino-las-vegas{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(135deg,#3cc489 0%,#0b7a4b 38%,#4fd39c 58%,#085c38 100%)}
.bn.cpt.pop-art{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(135deg,#4aa3ff 0%,#1e6fd9 38%,#6bb4ff 58%,#1558b0 100%)}
.bn.cpt.christmas{background:repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 22px,rgba(255,255,255,.28) 22px 27px),linear-gradient(135deg,#e8404f 0%,#c0182d 38%,#ef5a68 58%,#9a0f20 100%)}
.bn.cpt.flower-power .vn,.bn.cpt.flower-power .bi,.bn.cpt.flower-power .bi b,.bn.cpt.flower-power .bi i,.bn.cpt.flower-power .bi u{text-shadow:0 1px 3px rgba(0,0,0,.6),0 2px 24px rgba(0,0,0,.6)}
.bn.cpt.rainbow .bt{background:linear-gradient(180deg,#ff3b3b 0%,#ff9a1f 18%,#ffe03a 34%,#3ccf5a 50%,#2aa8ff 68%,#5a4bff 84%,#b94bff 100%);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),rgba(0,0,0,.4) 50%,rgba(0,0,0,.95));mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),rgba(0,0,0,.4) 50%,rgba(0,0,0,.95))}
.bn.cpt.studio-54 .bt{background:linear-gradient(180deg,#ff3d9a 0%,#ffb12b 28%,#33d6ff 55%,#9a5bff 80%,#ff3d9a 100%);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.3),rgba(0,0,0,.3) 50%,rgba(0,0,0,.9));mask-image:linear-gradient(to bottom,rgba(0,0,0,.3),rgba(0,0,0,.3) 50%,rgba(0,0,0,.9))}
@media (max-width:700px){.hb.hp .in{left:13.5px}}
.hb.hs .hd{margin-top:calc(clamp(16px,3vh,40px) + .925*clamp(13px,1.3vw,22px) - 12px)}
.hb.hs .ls{margin-top:clamp(18px,3.2vh,34px)}
.hb.hp .lbl{margin-top:clamp(18px,3.2vh,34px)}
.hb.hp .ls:not(.lbl){font-size:clamp(13px,1.05vw,16px)}
@media (max-width:700px){.hb.hp .ls:not(.lbl){font-size:13.5px}}
@media (max-width:860px){.nv .lang{display:flex;position:fixed;right:12px;bottom:12px;z-index:70;gap:2px;padding:3px 6px;background:#fff;border:1px solid rgba(0,0,0,.15);border-radius:20px;box-shadow:0 4px 14px rgba(0,0,0,.18);font-size:11px;letter-spacing:.08em}.nv .lang button{padding:6px 7px}}

/* ===== header search ===== */
.nr{display:flex;align-items:center;gap:18px}
.srch{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;background:none;color:#111;cursor:pointer;border-radius:50%;transition:background .2s}
.srch:hover,.srch[aria-expanded="true"]{background:rgba(138,5,16,.1)}
.srch:focus-visible,.spx:focus-visible,.spg:focus-visible,.spc button:focus-visible,.sr:focus-visible{outline:3px solid #8a0510;outline-offset:2px}
.srch svg{width:19px;height:19px;display:block}
[hidden]{display:none!important}
.sps{position:fixed;inset:0;z-index:18;background:rgba(17,17,17,.38)}
.sp{position:fixed;left:0;right:0;top:calc(76px + env(safe-area-inset-top,0px));z-index:19;max-height:calc(100dvh - 76px - env(safe-area-inset-top,0px));overflow:auto;background:#ffffff;box-shadow:0 30px 60px -20px rgba(0,0,0,.4);border-top:1px solid rgba(0,0,0,.1)}
.spi{max-width:1180px;margin:0 auto;padding:clamp(16px,2.6vw,32px) clamp(16px,4vw,48px) 36px}
.spf{display:flex;align-items:center;gap:14px;border-bottom:2px solid #111;padding-bottom:10px}
.spq{flex:1;min-width:0;border:0;background:none;outline:0;-webkit-appearance:none;appearance:none;border-radius:0;font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:clamp(24px,4.2vw,50px);letter-spacing:-.01em;color:#111;padding:0}
.spq::placeholder{color:rgba(17,17,17,.34)}
.spq::-webkit-search-cancel-button{display:none}
.spg{flex:none;border:0;cursor:pointer;background:#7a0308;color:#f6d9dc;font:inherit;font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:14px 22px}
.spx{flex:none;border:0;background:none;cursor:pointer;font-size:34px;line-height:1;color:#111;padding:0 4px}
.spc{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.spc button{border:1px solid rgba(138,5,16,.4);background:none;color:#8a0510;font:inherit;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:8px 14px;cursor:pointer}
.spc button:hover{background:#ef9c9f;border-color:#ef9c9f}
.spn{min-height:24px;margin:16px 0 4px;font-size:14px;line-height:1.6;color:#3a332d}
.aib{display:inline-block;margin-right:8px;padding:2px 8px;background:#ef9c9f;color:#8a0510;font-size:10px;letter-spacing:.18em;text-transform:uppercase;vertical-align:1px}
.gapb{margin:10px 0 6px;padding:14px 18px;background:#f9e5e1;border-left:3px solid #ef9c9f;font-size:14px;line-height:1.6;display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;justify-content:space-between}
.gapb a{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#8a0510;border-bottom:1px solid #8a0510;padding-bottom:2px}
.spr h3{margin:22px 0 12px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500}
.srg{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.sr{position:relative;display:flex;flex-direction:column;background:#ffffff;overflow:hidden;box-shadow:0 1px 0 rgba(0,0,0,.06),0 14px 30px -22px rgba(138,5,16,.5);transition:transform .3s}
.sr:hover{transform:translateY(-3px)}
.sri{position:relative;aspect-ratio:5/4;overflow:hidden;background:radial-gradient(ellipse at 50% 38%,#fbdede 0%,#f3b9bb 62%,#ec9fa3 100%)}
.sri img{position:absolute;inset:5%;width:90%;height:90%;object-fit:contain;mix-blend-mode:multiply}
.srt{display:flex;flex-direction:column;gap:5px;padding:14px 16px 16px}
.srt b{font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:22px;line-height:1.1}
.srt i{font-style:normal;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#8a0510}
.srt em{font-style:normal;font-size:13px;line-height:1.5;color:#3a332d}
.sr.srs{background:linear-gradient(135deg,color-mix(in srgb,var(--c) 70%,#fff) 0%,var(--c) 42%,color-mix(in srgb,var(--c) 72%,#000) 100%);min-height:120px;justify-content:flex-end;padding:16px;color:var(--k)}
.sr.srs .vn2{position:relative;z-index:1;font-family:"Bodoni Moda",Didot,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:"opsz" 30;font-size:30px;line-height:1}
.sr.srs i{position:relative;z-index:1;margin-top:6px;font-style:normal;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:inherit}
.sr.srs em{position:relative;z-index:1;color:inherit;opacity:.9}
@media (max-width:860px){.nr{gap:0;flex:none}.srch{width:28px;height:28px}.srch svg{width:16px;height:16px}.nv{padding:0 8px 0 16px!important;gap:4px!important}.logo{font-size:clamp(19px,5.5vw,24px)!important}.nv nav{gap:5px!important;font-size:8.5px!important;letter-spacing:0!important}}
@media (max-width:640px){.spg{display:none}.srg{grid-template-columns:1fr 1fr;gap:10px}.srt b{font-size:18px}.spx{font-size:30px}}
@media (prefers-reduced-motion:reduce){.sr{transition:none}.sr:hover{transform:none}}
@media (max-width:380px){.nv{padding:0 2px 0 16px!important}.nv nav{gap:3px!important;font-size:7.4px!important}.logo{font-size:clamp(19px,5.5vw,24px)!important}.srch{width:24px;height:24px}}
@media (max-width:335px){.nv nav{gap:2px!important;font-size:6.8px!important}.srch{width:20px;height:20px}}
.nv .logo{white-space:nowrap;flex:none}
@media (min-width:861px) and (max-width:1240px){.nv{gap:12px}.nr{gap:10px}.nv nav{gap:clamp(10px,1.9vw,26px)!important;font-size:11px!important;letter-spacing:.08em!important}.nv .lang{gap:8px}}


.skip{position:absolute;left:-9999px;top:0;z-index:300;background:#fff;color:#111;padding:10px 14px;font:500 14px Jost,Helvetica,Arial,sans-serif;text-decoration:none}.skip:focus{left:12px;top:12px;outline:2px solid #111}

.trl-m{--fs0:clamp(48px,6.6vw,106px);--em:10.9;width:min(92%,calc(var(--fs0)*7.4));font-size:min(var(--fs0),calc((100vw - 36px)/var(--em)));display:flex;flex-direction:column;align-items:center;white-space:nowrap}
html[lang=es] .trl-m{--em:8.8}html[lang=en] .trl-m{--em:8.4}html[lang=it] .trl-m{--em:10.9}
.trl-m .trl-sub{white-space:normal}

.lbc{pointer-events:none}

.bbuy{margin:clamp(60px,6.5vw,92px) auto 0;max-width:min(36em,100%);text-align:center}
.bbuy-t{font-family:"Caveat","Bradley Hand",cursive;font-weight:700;font-size:clamp(28px,2.4vw,36px);line-height:1.1;letter-spacing:.01em;margin:0 0 12px;color:#161212;text-transform:none;text-wrap:balance}
.bbuy-p{font-family:"Caveat","Bradley Hand",cursive;font-weight:600;font-size:clamp(24px,1.9vw,28px);line-height:1.25;margin:0 auto 8px;max-width:30em;color:#161212;text-wrap:pretty}
.bbuy-a{font-size:clamp(26px,2.1vw,31px);margin-top:8px;text-wrap:balance}
@media (max-width:760px){.bbuy-t{font-size:29px}.bbuy-p{font-size:24px}.bbuy-a{font-size:27px}}
html[lang=eu] .trl-m{--em:8}
/* 4th language button (EU) makes the right-hand group wider; this keeps the centred menu exactly where it was (desktop only; phones use the floating pill) */
@media (min-width:861px){.nv nav{margin-right:-39px}}
@media (min-width:861px) and (max-width:1240px){.nv nav{margin-right:-31px}}
