:root{--c-paper:#efe9df;--c-surface:#e2d6c4;--c-white:#fffdf8;--c-ink:#221c18;--c-muted:#6b5f55;--c-dark:#2b2420;--c-on-dark:#f3ece1;--c-on-dark-muted:#f3ece1b8;--c-accent:#b4532a;--c-on-accent:#fff3e6;--c-accent-on-dark:#e39a6f;--c-accent-text:#9c4622;--c-line:#221c182e;--c-line-dark:#f3ece133;--font-sans:var(--font-sans-src,"Helvetica Neue"), Helvetica, Arial, sans-serif;--page:min(1180px, calc(100% - 64px));--gutter:max(32px, calc((100vw - 1180px) / 2));--header-h:84px;--ease:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-soft:cubic-bezier(.16, 1, .3, 1);--reveal-distance:28px;--photo-reveal-distance:36px;--reveal-duration:.62s}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--c-paper);color:var(--c-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}body.menu-open{overflow:hidden}img{width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin:0}main:focus{outline:none}:focus-visible{outline-offset:4px;outline:2px solid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:400;background:var(--c-white);color:var(--c-ink);padding:12px 16px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:16px}.container{width:var(--page);margin-inline:auto}.kicker{letter-spacing:.16em;text-transform:uppercase;margin-bottom:24px;font-size:12px;font-weight:700}.accent{color:var(--c-accent)}.band-dark .accent,.hero .accent,.page-hero .accent{color:var(--c-accent-on-dark)}.lines-statement .accent{color:var(--c-on-accent)}.section-description{max-width:580px;color:var(--c-muted);margin-top:24px;font-size:18px;line-height:1.6}.mask-title{letter-spacing:-.045em;font-weight:500;line-height:.98}h2.mask-title{font-size:clamp(40px,5.2vw,76px)}.line-mask{margin-bottom:-.14em;padding-bottom:.14em;display:block;overflow:hidden}.line-mask>[data-mask-line]{will-change:transform;transition:transform .16s ease-out;display:block}.button{letter-spacing:.09em;text-transform:uppercase;min-height:50px;transition:background .2s ease, color .2s ease, border-color .2s ease, transform .2s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:14px 22px;font-size:12px;font-weight:700;display:inline-flex}.button:active{transform:scale(.98)}.button--light{background:var(--c-on-dark);color:var(--c-dark)}.button--light:hover{background:var(--c-white)}.button--outline{border-color:currentColor}.button--dark{background:var(--c-dark);color:var(--c-on-dark)}.button--dark:hover{background:var(--c-ink)}.button--outline:hover{background:var(--c-on-dark);color:var(--c-dark);border-color:var(--c-on-dark)}.text-link{letter-spacing:.09em;text-transform:uppercase;transition:background-size .45s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:4px;font-size:12px;font-weight:700;display:inline-flex;position:relative}.text-link:hover{background-position:100% 100%;background-size:0 1px}.scroll-progress{z-index:200;pointer-events:none;height:3px;position:fixed;inset:0 0 auto;overflow:hidden}.scroll-progress__bar{background:var(--c-accent);height:100%;transform:scaleX(var(--scroll-progress,0));transform-origin:0;will-change:transform;display:block}.page-transition{z-index:280;visibility:hidden;pointer-events:none;position:fixed;inset:0}html.page-transitioning .page-transition{visibility:visible;pointer-events:auto}.page-transition__panel{background:var(--c-accent);color:var(--c-on-accent);clip-path:circle(0%);will-change:clip-path;place-items:center;display:grid;position:absolute;inset:0}.page-transition__brand{opacity:0;text-align:center;will-change:transform, opacity;width:clamp(140px,22vmin,220px)}.page-transition__brand .wordmark{white-space:normal;font-size:clamp(22px,4vmin,34px)}.intro{display:none}html.intro-on,html.intro-on body{overflow:hidden}html.intro-on .intro{z-index:300;background:var(--c-dark);color:var(--c-on-dark);will-change:transform;place-items:center;padding:24px;display:grid;position:fixed;inset:0}html.intro-on .reveal-ready{transition:none}.intro__inner{place-items:center;display:grid}.intro__inner>*{grid-area:1/1}.intro__name{justify-items:center;display:grid}.intro__words{letter-spacing:-.05em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;gap:0 .3em;font-size:clamp(32px,7vw,86px);font-weight:500;line-height:1;display:flex}.intro__word{padding-bottom:.1em;display:block;overflow:hidden}.intro__word>span{display:block}.intro__rule{background:var(--c-line-dark);transform-origin:0;width:min(420px,60vw);height:1px;margin-top:30px}.intro__logo{width:clamp(150px,22vw,230px)}html.intro-on .intro__word>span{transform:translateY(1.15em)}html.intro-on .intro__rule{transform:scaleX(0)}html.intro-on .intro__logo{opacity:0;transform:translateY(18px)scale(.92)}.site-header{z-index:60;color:var(--c-on-dark);position:absolute;inset:0 0 auto}.site-header__inner{width:var(--page);border-bottom:1px solid var(--c-line-dark);height:120px;transition:height .28s var(--ease);justify-content:space-between;align-items:center;margin:auto;display:flex}.site-header.is-floating{background:var(--c-dark);animation:.32s header-in;position:fixed;box-shadow:0 8px 24px #140e0a24}.site-header.is-floating .site-header__inner{height:var(--header-h);border-bottom-color:#0000}@keyframes header-in{0%{opacity:0;transform:translateY(-12px)}}.brand{width:88px;transition:width .28s var(--ease);display:block}.is-floating .brand{width:60px}.nav{letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:32px;font-size:12px;font-weight:600;display:flex}.nav a{min-height:44px;transition:background-size .35s var(--ease);background:linear-gradient(currentColor,currentColor) 0 calc(100% - 8px)/0 1px no-repeat;align-items:center;display:inline-flex}.nav a:hover,.nav a[aria-current=page]{background-size:100% 1px}.nav-toggle{background:0 0;border:0;width:44px;height:44px;padding:6px;display:none}.menu-icon__lines,.menu-icon__symbol{transform-origin:16px 16px;transition:opacity .18s ease, transform .24s var(--ease)}.menu-icon__symbol{opacity:0;transform:rotate(-45deg)scale(.7)}.nav-toggle[aria-expanded=true] .menu-icon__lines{opacity:0;transform:scale(.8)}.nav-toggle[aria-expanded=true] .menu-icon__symbol{opacity:1;transform:none}.hero{background:var(--c-dark);min-height:max(680px,100svh);color:var(--c-on-dark);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid;position:relative;overflow:hidden}.hero__copy{padding:160px var(--gutter) 80px;flex-direction:column;justify-content:center;padding-right:clamp(32px,5vw,72px);display:flex;container-type:inline-size}.hero h1{letter-spacing:-.055em;text-transform:uppercase;font-size:clamp(56px,7vw,108px);line-height:.92}.hero__rotating{letter-spacing:-.03em;margin-top:28px;font-size:clamp(20px,2.2vw,28px)}.hero__intro{max-width:500px;color:var(--c-on-dark-muted);margin-top:18px;font-size:17px;line-height:1.65}.hero__actions{flex-wrap:wrap;align-items:center;gap:28px;margin-top:38px;display:flex}.hero__visual{margin:0;position:relative;overflow:hidden}.hero__visual img{object-fit:cover;height:100%;transform:scale(calc(1 + var(--hero-depth,0) * .05));transition:transform .18s ease-out}.hero__visual figcaption{background:var(--c-dark);letter-spacing:.12em;text-transform:uppercase;padding:9px 12px;font-size:10px;font-weight:700;position:absolute;bottom:24px;right:24px}.rotating-stack{vertical-align:bottom;margin-bottom:-.12em;padding-bottom:.12em;display:inline-grid;overflow:hidden}.rotating-stack>span{color:var(--c-accent-on-dark);opacity:0;transition:opacity .28s var(--ease), transform .28s var(--ease);grid-area:1/1;transform:translateY(.7em)}.rotating-stack>.is-active{opacity:1;transition-delay:.12s;transform:none}.rotating-stack>.is-leaving{transform:translateY(-.7em)}.stagger>[aria-hidden]>span{white-space:pre;animation:word-in .38s var(--ease) backwards;animation-delay:calc(var(--d,0s) + var(--i) * 35ms);display:inline-block}@keyframes word-in{0%{opacity:0;transform:translateY(14px)}}.hero-overlap{isolation:isolate;background:var(--c-dark);position:relative}.overlap-panel{z-index:1;background:var(--c-paper);position:relative}@media (min-height:700px) and (prefers-reduced-motion:no-preference){.hero-overlap[data-overlap-active]>.hero{z-index:0;position:sticky;top:0}.hero-overlap[data-overlap-active]>.overlap-panel{min-height:100svh;margin-top:18svh}}.statement{padding:140px 0}.statement h2{letter-spacing:-.035em;max-width:900px;font-size:clamp(34px,5vw,64px);font-weight:400;line-height:1.08}.statement__line{background:var(--c-line);height:1px;margin-top:72px}@keyframes rule-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.rule-draw{transform-origin:0;animation:linear both rule-draw;animation-timeline:view();animation-range:entry 10% cover 45%}}}.band-dark{background:var(--c-dark);color:var(--c-on-dark)}.split{grid-template-columns:58% 42%;min-height:720px;display:grid}.split__photo{min-height:620px;margin:0}.split__copy{align-self:center;gap:28px;padding:80px clamp(32px,6vw,90px);display:grid}.split__copy>p:not(.kicker){max-width:500px;color:var(--c-on-dark-muted);line-height:1.7}.photo-frame{position:relative;overflow:hidden}.photo-frame img{object-fit:cover;height:100%;transition:transform 1s var(--ease)}[data-photo-motion]{clip-path:inset(calc((1 - var(--photo-progress,1)) * 36%) 0);transition:clip-path .18s var(--ease)}.photo-frame[data-photo-motion] img{transform:translateY(calc((1 - var(--photo-progress,1)) * 24px)) scale(calc(1.12 - var(--photo-progress,1) * .12));transition:transform .18s var(--ease)}[data-image-motion] img{transform:translateY(var(--image-shift,0px)) scale(1.08);transition:transform .2s var(--ease)}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.photo-frame:not([data-photo-motion]):hover img{transform:scale(1.035)}}.services{padding:140px 0}.section-heading{gap:0;margin-bottom:64px;display:grid}.service-list{border-top:1px solid var(--c-line);margin:0;padding:0;list-style:none}.service-row{border-bottom:1px solid var(--c-line);grid-template-columns:4rem 1fr;gap:20px;padding:36px 0;display:grid;position:relative}.service-row:after{content:"";background:var(--c-accent);transform-origin:0;width:100%;height:1px;transition:transform .5s var(--ease);position:absolute;bottom:-1px;left:0;transform:scaleX(0)}.service-row:hover:after{transform:scaleX(1)}.service-row>div{transition:transform .5s var(--ease)}.service-row__number{color:var(--c-muted);letter-spacing:.14em;padding-top:6px;font-size:11px;font-weight:700;transition:color .3s}.service-row:hover .service-row__number{color:var(--c-accent-text)}.service-row h3{letter-spacing:-.04em;font-size:clamp(26px,3vw,44px);font-weight:500;line-height:1.1}.service-row p{max-width:560px;color:var(--c-muted);margin-top:10px}@media (hover:hover) and (min-width:761px){.service-row:hover>div{transform:translate(12px)}}.lines-statement{background:var(--c-accent);min-height:100svh;color:var(--c-on-accent);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:100px 20px;display:flex;overflow-x:clip}.lines-statement__link{width:100%;max-width:1440px;margin-top:32px;display:block}.lines-statement__lines{letter-spacing:-.065em;text-transform:uppercase;font-size:min(18vw,22svh);font-weight:600;line-height:.88;transition:color .5s;display:block}.lines-statement[data-moving] .lines-statement__lines{opacity:var(--lines-opacity,1)}.lines-statement__lines>span{white-space:nowrap;will-change:transform;display:block}.lines-statement[data-moving] .lines-statement__lines>span{transform:translateX(var(--line-x,0))}.lines-statement__link:hover .lines-statement__lines{color:var(--c-white)}.contact{padding:130px 0}.contact__grid{grid-template-columns:1.35fr 1fr;gap:90px;display:grid}.contact__actions{flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:40px;display:flex}.contact__info{gap:32px;margin:0;display:grid}.contact__info dt{color:var(--c-accent-on-dark);letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700}.contact__info dd{color:var(--c-on-dark-muted);margin:0}.contact__info dd span{color:var(--c-on-dark)}.page-hero{min-height:60svh;padding:200px var(--gutter) 80px;background:var(--c-dark);color:var(--c-on-dark);flex-direction:column;justify-content:flex-end;display:flex}.page-hero h1{letter-spacing:-.055em;font-size:clamp(52px,7vw,104px);line-height:.95}.page-hero .section-description{color:var(--c-on-dark-muted)}.cards{grid-template-columns:repeat(3,1fr);gap:18px;padding:120px 0;display:grid}.card{border:1px solid var(--c-line);background:var(--c-white);min-height:320px;transition:transform .4s var(--ease), border-color .25s;flex-direction:column;align-items:flex-start;padding:clamp(28px,4vw,48px);display:flex}a.card:hover{border-color:var(--c-ink);transform:translateY(-4px)}.card h2{letter-spacing:-.035em;font-size:clamp(24px,2.4vw,34px);font-weight:500;line-height:1.1}.card__action{border-top:1px solid var(--c-line);letter-spacing:.1em;text-transform:uppercase;width:100%;margin-top:auto;padding-top:18px;font-size:12px;font-weight:700}.site-footer{background:var(--c-dark);color:var(--c-on-dark-muted);padding:72px 0 32px;font-size:14px}.site-footer__grid{border-bottom:1px solid var(--c-line-dark);grid-template-columns:1fr 1fr 1fr;gap:40px;padding-bottom:48px;display:grid}.site-footer__grid>div,.site-footer nav{align-content:start;gap:8px;display:grid}.site-footer a:hover{color:var(--c-on-dark)}.site-footer__brand{width:96px}.site-footer__bottom{letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;gap:24px;padding-top:24px;font-size:11px;font-weight:700;display:flex}.whatsapp{z-index:90;position:fixed;bottom:20px;right:20px}.whatsapp__trigger{background:var(--c-accent);width:58px;height:58px;color:var(--c-on-accent);animation:trigger-in .5s 1s var(--ease) backwards;border:1px solid #ffffff59;border-radius:50%;place-items:center;padding:0;font-size:26px;transition:transform .18s;display:grid;box-shadow:0 12px 30px #140a044d}.whatsapp__trigger:hover{transform:translateY(-2px)}@keyframes trigger-in{0%{opacity:0;transform:scale(.6)}}.whatsapp__panel{border:1px solid var(--c-line-dark);background:var(--c-dark);width:min(350px,100vw - 32px);color:var(--c-on-dark);transform-origin:100% 100%;animation:panel-in .22s var(--ease);position:absolute;bottom:70px;right:0;overflow:hidden;box-shadow:0 24px 70px #140a0461}@keyframes panel-in{0%{opacity:0;transform:translateY(10px)scale(.96)}}.whatsapp__head{border-bottom:1px solid var(--c-line-dark);grid-template-columns:42px 1fr 36px;align-items:center;gap:12px;padding:18px;display:grid}.whatsapp__head p{letter-spacing:.12em;text-transform:uppercase;opacity:.7;font-size:10px;font-weight:700}.whatsapp__head h2{font-size:16px}.whatsapp__mark{background:var(--c-accent);width:42px;height:42px;color:var(--c-on-accent);border-radius:50%;place-items:center;display:grid}.whatsapp__close{border:1px solid var(--c-line-dark);background:0 0;border-radius:50%;width:36px;height:36px;padding:0;font-size:22px;line-height:1}.whatsapp__body{gap:12px;padding:20px 18px;font-size:14px;display:grid}.whatsapp__title{font-size:18px;font-weight:600}.whatsapp__topics{flex-wrap:wrap;gap:6px;display:flex}.whatsapp__topics span{border:1px solid var(--c-line-dark);letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;font-size:10px;font-weight:700}.whatsapp__action{background:var(--c-on-dark);min-height:48px;color:var(--c-dark);justify-content:center;align-items:center;gap:8px;font-weight:700;display:flex}.whatsapp__note{opacity:.7;font-size:12px}.whatsapp__phone{text-align:center;text-underline-offset:4px;font-size:12px;font-weight:700;text-decoration:underline}.wordmark{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:15px;font-weight:700;line-height:1.1;display:block}.brand:has(.wordmark){width:auto}.is-floating .brand:has(.wordmark){width:auto}.site-footer__brand:has(.wordmark){width:auto;color:var(--c-on-dark)}.photo-placeholder{width:100%;height:100%;min-height:inherit;aspect-ratio:4/5;background:repeating-linear-gradient(135deg, transparent 0 22px, var(--c-line) 22px 23px), var(--c-surface);color:var(--c-muted);place-items:center;display:grid}.photo-placeholder>span{background:var(--c-paper);letter-spacing:.12em;text-transform:uppercase;padding:9px 12px;font-size:11px;font-weight:700}.hero__visual .photo-placeholder,.split__photo .photo-placeholder{aspect-ratio:auto;background:repeating-linear-gradient(135deg, transparent 0 22px, var(--c-line-dark) 22px 23px), color-mix(in srgb, var(--c-dark) 82%, var(--c-on-dark));color:var(--c-on-dark-muted)}.hero__visual .photo-placeholder>span,.split__photo .photo-placeholder>span{background:var(--c-dark)}.gallery{padding:130px 0}.gallery__grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(260px,auto);gap:18px;margin:0;padding:0;list-style:none;display:grid}.gallery__grid:has(>li:nth-child(4))>li:nth-child(6n+1){grid-row:span 2}.gallery__item{background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.gallery__item .photo-placeholder{aspect-ratio:auto}.gallery__item img{object-fit:cover;height:100%}.gallery__dialog{background:var(--c-dark);width:min(1100px,100vw - 32px);max-height:calc(100svh - 32px);color:var(--c-on-dark);border:0;padding:0}.gallery__dialog::backdrop{background:#0a0806d1}.gallery__dialog img{object-fit:contain;max-height:calc(100svh - 110px)}.gallery__controls{letter-spacing:.1em;justify-content:flex-end;align-items:center;gap:12px;padding:12px 16px;font-size:12px;font-weight:700;display:flex}.gallery__controls span{margin-right:auto}.gallery__controls button{border:1px solid var(--c-line-dark);background:0 0;width:40px;height:40px;padding:0;font-size:18px}.hero .hero-title{font-size:min(clamp(56px, 7vw, 108px), 100cqi / (var(--longest,8) * .72));letter-spacing:-.06em;font-weight:600;line-height:.96}.hero-line{margin-bottom:-.1em;padding-bottom:.1em;display:block;overflow:hidden}.hero-line>span{display:block}.hero-line--1{color:var(--c-on-dark-muted);padding-left:.6em}.hero-line.accent{color:var(--c-accent-on-dark)}.hero-word{white-space:nowrap}.hero-char{transform-origin:0 100%;animation:1s cubic-bezier(.2,.9,.25,1) both hero-char-rise;animation-delay:calc(var(--char,0) * 26ms + .16s);display:inline-block}@keyframes hero-char-rise{0%{opacity:0;transform:translateY(115%)rotate(14deg)}60%{opacity:1}to{opacity:1;transform:none}}html.intro-on .hero-char{animation-play-state:paused}.hero__visual figcaption{letter-spacing:.02em;text-transform:none;gap:4px;padding:14px 18px;font-size:12px;font-weight:500;display:grid;left:24px;right:auto}.hero__visual figcaption>span{color:var(--c-on-dark-muted)}.open-status{letter-spacing:.02em;align-items:center;gap:10px;margin:0;font-size:13px;font-weight:700;display:inline-flex}.open-status i{opacity:.55;background:currentColor;border-radius:50%;width:9px;height:9px}.open-status.is-open i{background:var(--c-accent);opacity:1;animation:2.4s ease-out infinite open-pulse}.band-dark .open-status.is-open i,.hero .open-status.is-open i{background:var(--c-accent-on-dark)}@keyframes open-pulse{0%{box-shadow:0 0}70%,to{box-shadow:0 0 0 9px #0000}}.contact__status{margin-top:28px}.hours dl{margin:0}.hours dl>div{border-bottom:1px solid var(--c-line);font-variant-numeric:tabular-nums;justify-content:space-between;gap:16px;padding:10px 0;display:flex}.band-dark .hours dl>div{border-color:var(--c-line-dark)}.hours dt{font-weight:600}.hours dd{text-align:right;margin:0}.hours .is-today dt:after{content:" · oggi";font-weight:500}.hours .is-today{color:var(--c-accent-text)}.band-dark .hours .is-today{color:var(--c-accent-on-dark)}.hours__note{color:var(--c-muted);font-size:14px}.band-dark .hours__note{color:var(--c-on-dark-muted)}.showcase{background:var(--c-surface);padding:130px 0 110px;overflow:clip}.showcase__head{grid-template-columns:1fr minmax(240px,360px);align-items:end;gap:40px;margin-bottom:48px;display:grid}.showcase__head .section-heading{margin-bottom:0}.showcase__description{color:var(--c-muted);font-size:17px}.showcase__track{padding:24px var(--gutter) 48px;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:none;align-items:center;gap:clamp(20px,2.6vw,36px);margin:0;list-style:none;display:flex;overflow-x:auto}.showcase__track::-webkit-scrollbar{display:none}.showcase[data-pinned]{min-height:100svh;padding:calc(var(--header-h) + 24px) 0 32px;flex-direction:column;justify-content:center;display:flex}.showcase[data-pinned] .showcase__track{will-change:transform;padding-bottom:24px;position:relative;overflow:visible}.shelf-photo{aspect-ratio:4/5;scroll-snap-align:start;flex:0 0 clamp(250px,27vw,400px);overflow:hidden}.shelf-photo img{object-fit:cover;height:100%}.shelf-photo .photo-placeholder{aspect-ratio:auto}.flavor-tag{background:var(--c-white);border:1px solid var(--c-line);min-width:200px;max-width:320px;color:var(--c-ink);transform:rotate(var(--tilt,-1.5deg));scroll-snap-align:start;flex:none;gap:6px;padding:30px 28px 22px;display:grid;position:relative}.flavor-tag:before{content:"";background:var(--c-accent);width:38px;height:13px;position:absolute;top:-7px;left:26px}.flavor-tag:nth-child(3n+2){--tilt:2deg}.flavor-tag--low{align-self:flex-end}.flavor-tag__name{letter-spacing:-.03em;font-size:clamp(28px,3vw,44px);font-weight:500;line-height:1}.flavor-tag__note{color:var(--c-muted);font-size:13px}.shelf-end{flex:0 0 300px;gap:18px;padding:0 24px;display:grid}.shelf-end p{letter-spacing:-.03em;font-size:30px;line-height:1.1}.deck{padding:120px 0}.deck__list{gap:32px;margin:0 auto;padding:0;list-style:none;display:grid}.deck-card{top:calc(var(--header-h) + 24px + var(--stack-index,0) * 14px);min-height:min(560px, calc(100svh - var(--header-h) - 110px));background:var(--c-paper);color:var(--c-ink);border-top:6px solid var(--c-accent);transform:scale(calc(1 - var(--covered,0) * .05));filter:brightness(calc(1 - var(--covered,0) * .18));transform-origin:top;transition:box-shadow .6s var(--ease-soft);grid-template-columns:1.1fr .9fr;display:grid;position:sticky;box-shadow:0 -18px 40px #140c0838}.deck-card:nth-child(2n){background:var(--c-white);grid-template-columns:.9fr 1.1fr}.deck-card:nth-child(2n) .deck-card__photo{order:2}.deck-card:nth-child(3n+2){width:90%;margin-left:auto}.deck-card:nth-child(3n){width:94%}.deck-card__photo{min-height:340px;margin:0}.deck-card__photo .photo-placeholder{aspect-ratio:auto}.deck-card__copy{flex-direction:column;justify-content:flex-end;gap:14px;padding:clamp(28px,4vw,56px);display:flex}.deck-card__count{color:var(--c-muted);letter-spacing:.16em;font-size:11px;font-weight:700}.deck-card h2{letter-spacing:-.04em;overflow-wrap:anywhere;font-size:clamp(36px,4.4vw,64px);font-weight:500;line-height:.98}.deck-card p{max-width:380px;color:var(--c-muted);font-size:17px}.page-hero__copy{flex-direction:column;justify-content:flex-end;display:flex}.page-hero--photo{grid-template-columns:1.1fr .9fr;min-height:78svh;padding:0;display:grid}.page-hero--photo .page-hero__copy{padding:190px clamp(32px, 5vw, 72px) 80px var(--gutter)}.page-hero__photo{margin:0;overflow:hidden}.page-hero__photo img,.page-hero__photo .photo-placeholder{height:100%}.page-hero__photo .photo-placeholder{aspect-ratio:auto;background:repeating-linear-gradient(135deg, transparent 0 22px, var(--c-line-dark) 22px 23px), color-mix(in srgb, var(--c-dark) 82%, var(--c-on-dark));min-height:360px;color:var(--c-on-dark-muted)}.page-hero__photo .photo-placeholder>span{background:var(--c-dark)}.split--reverse{grid-template-columns:42% 58%}.split--reverse .split__photo{order:2}.split__copy--light>p:not(.kicker){color:var(--c-muted)}.split__photo .photo-placeholder{min-height:620px}.split:not(.band-dark) .split__photo .photo-placeholder{background:repeating-linear-gradient(135deg, transparent 0 22px, var(--c-line) 22px 23px), var(--c-surface);color:var(--c-muted)}.split:not(.band-dark) .split__photo .photo-placeholder>span{background:var(--c-paper)}.page-cta{justify-items:start;gap:28px;padding:130px 0;display:grid}.page-cta h2{letter-spacing:-.03em;max-width:920px;font-size:clamp(34px,4.6vw,64px);font-weight:500;line-height:1.04}.page-cta .contact__actions{margin-top:0}.visit{grid-template-columns:1fr 1fr;gap:90px;padding:130px 0;display:grid}.visit>*{min-width:0}.visit__status{margin:-24px 0 32px}.visit__facts{margin:0 0 40px;display:grid}.visit__facts>div{border-bottom:1px solid var(--c-line);grid-template-columns:130px 1fr;gap:16px;padding:14px 0;display:grid}.visit__facts dt{color:var(--c-muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:700}.visit__facts dd{overflow-wrap:anywhere;margin:0;font-size:17px}.visit__facts a{text-underline-offset:4px;text-decoration:underline}.map-box{background:var(--c-surface);border:1px solid var(--c-line);margin:0;position:relative}.map-canvas,.map-fallback{height:520px}.map-canvas{opacity:0;transition:opacity .8s var(--ease)}.map-box.is-ready .map-canvas{opacity:1}.map-fallback{text-align:center;color:var(--c-muted);background:linear-gradient(90deg, var(--c-line) 1px, transparent 1px) 0 0 / 48px 48px, linear-gradient(var(--c-line) 1px, transparent 1px) 0 0 / 48px 48px, var(--c-surface);place-content:center;justify-items:center;gap:16px;transition:opacity .6s;display:grid;position:absolute;inset:0 0 auto}.map-fallback strong{color:var(--c-ink)}.map-box.is-ready .map-fallback{opacity:0;pointer-events:none}.map-fallback-icon{color:var(--c-accent)}.map-fallback-icon svg{width:34px;height:46px}.map-marker[hidden]{display:none}.map-marker{cursor:pointer;background:0 0;border:0;padding:0;display:block;position:relative}.map-marker-pin{background:var(--c-accent);width:46px;height:46px;color:var(--c-on-accent);border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:0 10px 24px #140c0840}.map-marker-pin svg{width:18px;height:24px}.map-marker-pin:before{content:"";border:1.5px solid var(--c-accent);animation:marker-pulse 2.4s var(--ease) 3;border-radius:50%;position:absolute;inset:0}@keyframes marker-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}.map-marker-label{background:var(--c-ink);color:var(--c-paper);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;padding:5px 10px;font-size:11px;font-weight:500;position:absolute;top:23px;left:calc(100% + 8px);transform:translateY(-50%)}.map-controls{border:1px solid var(--c-line);background:var(--c-paper);display:grid;position:absolute;top:16px;right:16px;box-shadow:0 8px 24px #140c0814}.map-controls button{background:0 0;border:0;place-items:center;width:44px;height:44px;padding:0;font-size:22px;line-height:1;transition:background .2s,color .2s;display:grid}.map-controls button+button{border-top:1px solid var(--c-line)}.map-controls button:hover{background:var(--c-ink);color:var(--c-paper)}.map-recentre{width:14px;height:14px;box-shadow:inset 0 0 0 3px var(--c-paper);background:currentColor;border:1.5px solid;border-radius:50%;display:block}.map-controls button:hover .map-recentre{box-shadow:inset 0 0 0 3px var(--c-ink)}.map-box .maplibregl-ctrl-attrib{font-family:var(--font-sans);font-size:11px}.map-box .maplibregl-cooperative-gesture-screen{font-family:var(--font-sans);font-size:15px}.map-box figcaption{border-top:1px solid var(--c-line);background:var(--c-paper);flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding:16px 20px;font-size:14px;display:flex}.map-links{gap:24px;display:flex}.map-links a{border-bottom:1px solid}.channels{border-top:1px solid var(--c-line);grid-template-columns:repeat(3,minmax(0,1fr));margin-block:120px;display:grid}.channel{flex-direction:column;gap:14px;min-height:300px;padding:40px 32px 0 0;display:flex}.channel+.channel{border-left:1px solid var(--c-line);padding-left:32px}.channel h2{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:clamp(26px,2.6vw,38px);font-weight:500;line-height:1.05}.channel>p:not(.kicker){color:var(--c-muted)}.channel .kicker{margin-bottom:0}.channel__action{border-top:1px solid var(--c-line);letter-spacing:.1em;text-transform:uppercase;padding:14px 0;font-size:12px;font-weight:700}.channel__action:first-of-type{margin-top:auto}.channel__action:hover{color:var(--c-accent-text)}.channel__social{flex-direction:column;padding-bottom:8px}.social{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.social--icons a{border:1px solid;border-radius:50%;place-items:center;width:44px;height:44px;transition:background .2s,color .2s,border-color .2s;display:grid}.social--cards a{background:var(--c-ink);min-width:250px;color:var(--c-paper);transition:background .3s, transform .4s var(--ease-soft);align-items:center;gap:14px;padding:16px 20px;display:flex}.social--cards a:hover{background:var(--c-accent);color:var(--c-on-accent);transform:translateY(-2px)}.social--cards svg{flex:none;width:28px;height:28px}.social--cards span{line-height:1.2;display:grid}.social--cards strong{letter-spacing:-.04em;font-size:22px;font-weight:600}.social--cards small{opacity:.8;overflow-wrap:anywhere;font-size:12px}.social-band{border-top:1px solid var(--c-line);grid-template-columns:1fr auto;align-items:end;gap:32px 64px;padding:110px 0;display:grid}.social-band h2{letter-spacing:-.055em;font-size:clamp(34px,4vw,58px);font-weight:600;line-height:1}.social-band p:not(.kicker){max-width:520px;color:var(--c-muted);margin-top:16px}.social-band .social{flex-direction:column}body:has(.channel__social) .social-band{display:none}.site-footer__social{margin-top:16px}.site-footer .social--icons a:hover{background:var(--c-on-dark);border-color:var(--c-on-dark);color:var(--c-dark)}html.lenis,html.lenis body{height:auto}html.lenis{scroll-behavior:auto}.lenis.lenis-stopped{overflow:hidden}.line-mask>[data-mask-line]{transition:transform .75s var(--ease-soft)}[data-photo-motion]{transition:clip-path .7s var(--ease-soft)}.photo-frame[data-photo-motion] img{transition:transform .9s var(--ease-soft)}@media (max-width:960px){.showcase__head,.visit,.page-hero--photo,.split--reverse{grid-template-columns:1fr}.split--reverse .split__photo{order:0}.page-hero__photo{min-height:50svh}.deck-card,.deck-card:nth-child(2n){grid-template-columns:1fr}.deck-card:nth-child(2n) .deck-card__photo{order:0}.deck-card__photo{min-height:240px}.channels{grid-template-columns:1fr}.channel+.channel{border-left:0;border-top:1px solid var(--c-line);padding-left:0}.channel{min-height:0;padding-bottom:8px}.social-band{grid-template-columns:1fr}}@media (max-width:760px){.hero .hero-title{font-size:min(clamp(40px, 12.5vw, 72px), 100cqi / (var(--longest,8) * .72))}.hero-line--1{padding-left:.4em}.showcase{padding:90px 0 70px}.shelf-photo,.shelf-end{flex-basis:72vw}.deck{padding:80px 0}.deck-card,.deck-card:nth-child(3n+2),.deck-card:nth-child(3n){width:100%}.deck-card{min-height:0}.deck-card__photo{min-height:200px}.page-hero--photo .page-hero__copy{padding:130px 20px 56px}.split__photo .photo-placeholder{min-height:440px}.visit,.page-cta{padding:90px 0}.visit__facts>div{grid-template-columns:1fr;gap:4px}.map-canvas,.map-fallback{height:400px}.channels{margin-block:72px}.social-band{padding:80px 0}.social--cards a{width:100%;min-width:0}}@media (prefers-reduced-motion:reduce){.hero-char,.open-status.is-open i,.map-marker-pin:before{animation:none}.deck-card{filter:none;transform:none}.map-canvas,.map-fallback,.line-mask>[data-mask-line],[data-photo-motion],.photo-frame[data-photo-motion] img{transition:none}}.palette-switcher{--tab-w:50px;--tab-h:132px;--dot:42px;--radius:150px;--fan-x:14px;z-index:95;right:0;top:calc(50% - var(--tab-h) / 2);width:var(--tab-w);height:var(--tab-h);position:fixed}.palette-switcher__trigger{z-index:2;background:var(--c-white);width:100%;height:100%;color:var(--c-ink);transition:transform .4s var(--ease-soft), box-shadow .4s var(--ease-soft);border:0;border-radius:26px 0 0 26px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:14px 0 12px;display:flex;position:relative;box-shadow:-10px 10px 28px #140c0838}.palette-switcher__trigger:hover,.palette-switcher.is-open .palette-switcher__trigger{transform:translate(-4px)}.palette-switcher__trigger:focus-visible{outline:2px solid var(--c-accent);outline-offset:3px}.palette-switcher__dots{justify-items:center;display:grid}.palette-switcher__dots>span{z-index:calc(3 - var(--n));width:16px;height:16px;transition:transform .45s var(--ease-soft);transition-delay:calc(var(--n) * 40ms);border:1.5px solid;border-radius:50%;margin-top:-5px;position:relative}.palette-switcher__dots>span:first-child{margin-top:0}.palette-switcher.is-open .palette-switcher__dots>span{transform:translateY(calc((var(--n) - 1) * 3px))}.palette-switcher__text{writing-mode:vertical-rl;letter-spacing:.24em;text-transform:uppercase;font-size:10px;font-weight:600;transform:rotate(180deg)}.palette-switcher__fan{pointer-events:none;margin:0;padding:0;list-style:none;position:absolute;inset:0}.palette-switcher__fan li{top:50%;left:calc(50% - var(--fan-x));width:var(--dot);height:var(--dot);margin:calc(var(--dot) / -2) 0 0 calc(var(--dot) / -2);opacity:0;transform:rotate(var(--angle)) translateX(0) rotate(calc(var(--angle) * -1)) scale(.4);transition:transform .5s var(--ease-soft), opacity .3s;transition-delay:calc((8 - var(--i)) * 25ms);position:absolute}.palette-switcher.is-open .palette-switcher__fan{pointer-events:auto}.palette-switcher.is-open .palette-switcher__fan li{opacity:1;transform:rotate(var(--angle)) translateX(var(--radius)) rotate(calc(var(--angle) * -1)) scale(1);transition-delay:calc(var(--i) * 45ms)}.palette-switcher__fan li:has(:hover,:focus-visible){z-index:3}.palette-switcher__option{border:3px solid var(--c-white);width:100%;height:100%;transition:transform .3s var(--ease-soft), border-color .2s;border-radius:50%;place-items:center;padding:0;display:grid;position:relative;box-shadow:0 8px 20px #140c0840}.palette-switcher__option:hover{transform:scale(1.08)}.palette-switcher__option.is-current{border-color:var(--c-accent)}.palette-switcher__option.is-current:after{content:"";border:1px solid var(--c-accent);border-radius:50%;position:absolute;inset:-8px}.palette-switcher__option--new{background:var(--c-ink);color:var(--c-paper);font-size:22px;line-height:1}.palette-switcher__caption{top:50%;right:calc(100% + var(--radius) + var(--dot) + 12px);background:var(--c-ink);color:var(--c-paper);letter-spacing:-.02em;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .25s, transform .35s var(--ease-soft);margin:0;padding:8px 12px;font-size:15px;font-weight:600;position:absolute;transform:translate(10px,-50%)}.palette-switcher.is-open .palette-switcher__caption{opacity:1;transform:translateY(-50%)}.palette-switcher.is-creating .palette-switcher__caption{opacity:0}.palette-editor{z-index:3;top:50%;right:calc(100% + var(--radius) + var(--dot));background:var(--c-white);width:min(320px,100vw - 32px);color:var(--c-ink);animation:panel-in .22s var(--ease);gap:14px;padding:22px;display:grid;position:absolute;transform:translateY(-50%);box-shadow:0 24px 60px #140c084d}.palette-editor h2{letter-spacing:-.03em;font-size:20px;font-weight:600}.palette-editor>p{color:var(--c-muted);font-size:13px;line-height:1.5}.palette-editor__field{cursor:pointer;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;font-size:14px;font-weight:600;display:grid}.palette-editor__field input{border:1px solid var(--c-line);cursor:pointer;background:0 0;border-radius:50%;width:44px;height:44px;padding:0}.palette-editor__field input::-webkit-color-swatch-wrapper{padding:3px}.palette-editor__field input::-webkit-color-swatch{border:0;border-radius:50%}.palette-editor__field input::-moz-color-swatch{border:0;border-radius:50%}.palette-editor__field code{color:var(--c-muted);font-size:12px}.palette-editor__warnings{border-left:3px solid var(--c-accent);background:var(--c-surface);gap:6px;margin:0;padding:10px 12px;font-size:12px;line-height:1.45;list-style:none;display:grid}.palette-editor__saved{border-top:1px solid var(--c-line);gap:6px;margin:0;padding:12px 0 0;font-size:13px;list-style:none;display:grid}.palette-editor__saved li{align-items:center;gap:10px;display:flex}.palette-editor__saved button{border:1px solid var(--c-line);background:0 0;border-radius:50%;width:28px;height:28px;margin-left:auto;padding:0}.palette-editor__dot{border-radius:50%;width:20px;height:20px}.palette-editor__actions{align-items:center;gap:16px;display:flex}.palette-editor__actions button{letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;min-height:44px;padding:0 4px;font-size:12px;font-weight:700}.palette-editor__actions .palette-editor__save{background:var(--c-ink);color:var(--c-paper);padding:0 18px}@media (max-width:760px){.palette-switcher{--tab-w:42px;--tab-h:112px;--dot:36px;--radius:118px;--fan-x:20px}.palette-switcher__trigger{border-radius:22px 0 0 22px;gap:9px;padding:12px 0 10px}.palette-switcher__dots>span{width:13px;height:13px}.palette-switcher__text{font-size:9px}.palette-switcher__caption{font-size:13px}.palette-editor{width:auto;position:fixed;inset:auto 16px 16px;transform:none}.palette-switcher.is-creating .palette-switcher__fan{opacity:0;pointer-events:none}}@media (prefers-reduced-motion:reduce){.palette-switcher__trigger,.palette-switcher__fan li,.palette-switcher__dots>span,.palette-switcher__caption{transition:none}.palette-editor{animation:none}}.reveal-ready{transition:opacity .38s var(--ease), transform var(--reveal-duration) var(--ease), clip-path var(--reveal-duration) var(--ease);transition-delay:min(var(--reveal-delay,0s), .14s)}.reveal-pending{opacity:0;transform:translateY(var(--reveal-distance))}.photo-frame.reveal-pending{clip-path:inset(0 0 6%);transform:translateY(var(--photo-reveal-distance))}.reveal-ready:focus-within{opacity:1;clip-path:none;transition:none;transform:none}@media (prefers-reduced-motion:no-preference){.statement[data-reading] .kicker{opacity:var(--kicker-opacity,1)}.statement[data-reading] .statement__word{opacity:var(--word-opacity,1)}}@media (max-width:960px){.hero,.split,.contact__grid{grid-template-columns:minmax(0,1fr)}.hero__visual{min-height:60svh}.split__photo{min-height:440px}.cards{grid-template-columns:1fr}.gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__grid{grid-template-columns:1fr 1fr}}@media (max-width:760px){:root{--page:calc(100% - 40px);--gutter:20px;--header-h:68px;--reveal-distance:18px;--photo-reveal-distance:24px;--reveal-duration:.5s}.site-header__inner{height:88px}.nav-toggle{z-index:2;place-items:center;display:grid;position:relative}.nav{z-index:1;background:var(--c-dark);letter-spacing:-.02em;text-transform:none;visibility:hidden;opacity:0;flex-direction:column;justify-content:center;gap:12px;font-size:28px;transition:opacity .24s,visibility 0s .24s;position:fixed;inset:0}.nav.is-open{visibility:visible;opacity:1;transition:opacity .24s}.nav a{opacity:0;transition:opacity .3s, transform .4s var(--ease);transform:translateY(14px)}.nav.is-open a{opacity:1;transform:none}.nav.is-open a:nth-child(2){transition-delay:40ms}.nav.is-open a:nth-child(3){transition-delay:80ms}.nav.is-open a:nth-child(4){transition-delay:.12s}.nav.is-open a:nth-child(5){transition-delay:.16s}.hero__copy{padding:130px 20px 56px}.statement,.services,.gallery{padding:90px 0}.gallery__grid{grid-auto-rows:minmax(180px,auto);gap:10px}.contact{padding:90px 0}.service-row{grid-template-columns:1fr;gap:8px}.site-footer__grid{grid-template-columns:1fr}.site-footer__bottom{flex-direction:column}.hero-overlap[data-overlap-active]>.overlap-panel{margin-top:10svh}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.intro{display:none!important}.stagger>[aria-hidden]>span,.whatsapp__trigger,.whatsapp__panel,.site-header.is-floating{animation:none}.reveal-pending{opacity:1;clip-path:none;transform:none}.rotating-stack>span,.nav,.nav a{transition:none}}.demo-pending{align-content:center;gap:20px;max-width:640px;min-height:100svh;margin:auto;padding:40px 20px;display:grid}.demo-pending h1{letter-spacing:-.04em;font-size:clamp(32px,5vw,52px);font-weight:600;line-height:1.05}.demo-pending p:not(.kicker){color:var(--c-muted);font-size:17px}.preview-loading{min-height:100svh;color:var(--c-muted);place-items:center;font-size:14px;display:grid}
