:root{
  --ink:#484036; --canvas:#faf5eb; --linen:#ecece4; --sand:#cacab0; --pebble:#d5d5c4;
  --manilla:#f2e9cf; --slate:#666e72; --charcoal:#33302c; --obsidian:#212529;
  --f-surt:'Inter Tight', 'Söhne', ui-sans-serif, system-ui, sans-serif;
  --f-clash:'Archivo', 'Inter Tight', ui-sans-serif, system-ui, sans-serif;
  --f-note:'Instrument Serif', 'GT Sectra', Georgia, serif;
  --t-caption:17px; --t-body:22px; --t-sub:29px; --t-heading:45px; --t-heading-lg:56px;
  --t-display:clamp(58px, 8.4vw, 150px);
  --gutter:clamp(16px, 4.7vw, 68px);
  --max:1440px; --r:4px;
  --ease:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--canvas);color:var(--ink);font-family:var(--f-surt);font-weight:400;
  font-size:var(--t-body);line-height:1.35;letter-spacing:.011em;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.is-loading{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--ink);color:var(--canvas)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}

/* type */
.display{font-size:var(--t-display);line-height:.98;letter-spacing:-.05em}
.h-lg{font-size:clamp(36px,3.9vw,var(--t-heading-lg));line-height:.98;letter-spacing:-.04em}
.sub{font-size:clamp(22px,2vw,var(--t-sub));line-height:1.1;letter-spacing:-.01em}
.body{font-size:clamp(17px,1.5vw,var(--t-body));line-height:1.4;letter-spacing:.011em}
.caption{font-size:clamp(14px,1.18vw,var(--t-caption));line-height:1.13;letter-spacing:.02em;color:var(--slate)}
.label{font-family:var(--f-clash);font-size:clamp(12px,1.02vw,15px);line-height:1.13;letter-spacing:.06em;text-transform:uppercase}
.note{font-family:var(--f-note);font-style:italic;font-weight:400;letter-spacing:-.01em;line-height:1}

.ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.ln>span{display:block}

/* buttons & links */
.btn{position:relative;display:inline-flex;align-items:center;gap:14px;font-size:var(--t-caption);line-height:1;letter-spacing:.01em;
  padding:14px 29px;border:1px solid currentColor;border-radius:var(--r);overflow:hidden;isolation:isolate;transition:color .5s var(--ease)}
.btn::before{content:"";position:absolute;inset:0;background:var(--ink);z-index:-1;transform:translateY(101%);transition:transform .55s var(--ease)}
.btn:hover{color:var(--canvas)}
.btn:hover::before{transform:translateY(0)}
.btn .arr{display:inline-block;transition:transform .5s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.on-dark .btn::before{background:var(--canvas)}
.on-dark .btn:hover{color:var(--ink)}
.link{position:relative;display:inline-block;padding-bottom:2px}
.link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--sand)}
.link:hover::after{animation:line .8s var(--ease)}
@keyframes line{0%{transform:scaleX(1);transform-origin:right}50%{transform:scaleX(0);transform-origin:right}50.01%{transform-origin:left}100%{transform:scaleX(1);transform-origin:left}}
.tag{display:inline-block;font-size:clamp(14px,1.1vw,var(--t-caption));line-height:1;padding:10px 18px;border:1px solid var(--sand);border-radius:var(--r)}
.tag.fill{background:var(--manilla);border-color:var(--manilla)}
:focus-visible{outline:1px solid var(--ink);outline-offset:4px}

/* ============ LOADER ============ */
.loader{position:fixed;inset:0;z-index:100;background:var(--canvas);color:var(--ink)}
.loader__center{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.loader__logo{width:min(72vw,560px);color:var(--ink)}
.logo-svg{display:block;width:100%;height:auto;overflow:visible}

/* ============ NAV ============ */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;padding:20px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px;transition:transform .7s var(--ease), color .4s, background .4s}
.nav.is-hidden{transform:translateY(-110%)}
.nav.has-bg{background:color-mix(in srgb, var(--canvas) 88%, transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.nav.on-dark{color:var(--canvas)}
.nav.on-dark.has-bg{background:color-mix(in srgb, var(--ink) 88%, transparent)}
.nav__logo{display:block;width:clamp(86px,7.6vw,116px);margin:-8px 0}
.nav__logo .logo-svg{transition:transform .6s var(--ease)}
.nav__logo:hover .logo-svg{transform:rotate(-2deg)}
.nav__links{display:flex;gap:clamp(22px,2.6vw,43px);font-size:clamp(16px,1.3vw,19px)}
.nav__links a{position:relative;overflow:hidden;display:inline-block;height:1.2em;line-height:1.2}
.nav__links a span{display:block;transition:transform .55s var(--ease)}
.nav__links a span+span{position:absolute;left:0;top:100%}
.nav__links a:hover span{transform:translateY(-100%)}
.nav__right{display:flex;align-items:center;gap:20px}
.nav__burger{display:none;width:44px;height:44px;border:1px solid currentColor;border-radius:var(--r);position:relative}
.nav__burger i{position:absolute;left:12px;right:12px;height:1px;background:currentColor;transition:transform .5s var(--ease)}
.nav__burger i:first-child{top:17px}.nav__burger i:last-child{top:25px}
.menu-open .nav__burger i:first-child{transform:translateY(4px) rotate(45deg)}
.menu-open .nav__burger i:last-child{transform:translateY(-4px) rotate(-45deg)}
.menu-open .nav{color:var(--ink)!important;background:none!important}
.mobile-menu{position:fixed;inset:0;z-index:45;background:var(--canvas);padding:110px var(--gutter) var(--gutter);display:flex;flex-direction:column;justify-content:space-between;clip-path:inset(0 0 100% 0);visibility:hidden}
.mobile-menu a.big{display:flex;justify-content:space-between;align-items:baseline;font-size:clamp(40px,12vw,72px);line-height:1;letter-spacing:-.05em;padding:8px 0;border-bottom:1px solid var(--pebble)}

/* ============ ROOM INDICATOR ============ */
.room{position:fixed;left:var(--gutter);bottom:18px;z-index:40;display:flex;align-items:center;gap:14px;transition:color .4s,background .4s;opacity:0;background:var(--canvas);padding:9px 14px;border-radius:var(--r)}
.room__t{display:inline-block;overflow:hidden;height:1.15em;vertical-align:top}
.room__t span{display:block}
.room__bar{width:58px;height:1px;background:currentColor;opacity:.3;position:relative}
.room__bar i{position:absolute;inset:0;background:currentColor;transform-origin:left;transform:scaleX(0)}
.room.on-dark{color:var(--canvas);background:var(--ink)}

/* ============ HERO ============ */
.hero{position:relative;height:100vh;height:100svh;overflow:hidden}
.hero__bg{position:absolute;inset:-4%;z-index:0;background:#f0e9dc url('../assets/marbre-farine.jpg') center/cover no-repeat;will-change:transform}
.hero__flour{position:absolute;inset:0;z-index:3;width:100%;height:100%;pointer-events:none}
.hero__core{position:absolute;inset:0;z-index:1;clip-path:inset(50% 50% 50% 50%)}
/* the clip is laid out at its native 9:16 size, full height: never upscaled */
.hero__core .hero__media{position:absolute;top:0;left:50%;height:100%;width:calc(100svh * 9 / 16);margin-left:calc(100svh * 9 / -32);object-fit:cover;transform:scale(1.3)}
/* iOS: never show the big play button over the background clip */
.hero__media::-webkit-media-controls-start-playback-button{display:none!important;-webkit-appearance:none}
.hero__media::-webkit-media-controls{display:none!important}
.hero__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(51,48,44,0) 48%,rgba(51,48,44,.7) 100%);opacity:0}
.hf{position:absolute;z-index:2;will-change:transform}
.hf__m,.hf__in{width:100%;height:100%}
.hf__in{border-radius:var(--r);overflow:hidden;background:var(--linen)}
.hf img{width:100%;height:100%;object-fit:cover}
.hero__slot{position:absolute;left:50%;top:50%;width:clamp(220px,22vw,360px);height:clamp(280px,46vh,480px);transform:translate(-50%,-50%);pointer-events:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hero__meta{position:absolute;z-index:3;left:var(--gutter);right:var(--gutter);bottom:clamp(24px,4vh,43px);display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.hero__meta .col{display:flex;flex-direction:column;gap:6px}
.hero__scroll{display:flex;align-items:center;gap:14px}
.hero__scroll .rail{width:1px;height:46px;background:var(--pebble);position:relative;overflow:hidden}
.hero__scroll .rail::after{content:"";position:absolute;left:0;top:-50%;width:1px;height:50%;background:var(--ink);animation:rail 2s var(--ease) infinite}
@keyframes rail{to{top:110%}}
.hero__over{position:absolute;z-index:4;left:50%;width:min(100svh * 9 / 16, 100%);margin-left:calc(min(100svh * 9 / 16, 100%) / -2);bottom:clamp(28px,6vh,64px);padding:0 clamp(20px,2.4vw,32px);color:var(--canvas);display:flex;flex-direction:column;align-items:flex-start;gap:12px;opacity:0}
.hero__over .h-lg{font-size:clamp(30px,3vw,44px)}
.hero__over p.body{max-width:32ch;font-size:clamp(15px,1.15vw,17px)}

/* ============ MANIFESTO ============ */
.section{padding:clamp(100px,11vw,161px) 0}
.manifesto__grid{display:grid;grid-template-columns:1fr 3fr;gap:var(--gutter)}
.manifesto__text{font-size:clamp(30px,3.9vw,var(--t-heading-lg));line-height:1.06;letter-spacing:-.035em}
.manifesto__text .wd{color:var(--pebble)}
.inl{display:inline-block;width:1.9em;height:.8em;border-radius:var(--r);overflow:hidden;vertical-align:-.06em;margin:0 .06em;background:var(--linen)}
.inl img{width:100%;height:100%;object-fit:cover}
.manifesto__tags{display:flex;flex-wrap:wrap;gap:14px;margin-top:58px}

/* ============ ANATOMIE ============ */
.an{height:100vh;height:100svh;display:flex;align-items:center;overflow:hidden}
.an__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(29px,5vw,100px);align-items:center;width:100%}
.an__stage{position:relative;aspect-ratio:1/1;width:min(100%, calc(100vh - 150px));margin:0 auto;overflow:hidden;border-radius:var(--r);background:var(--canvas)}
.an__zoom{position:absolute;inset:0;will-change:transform;background:var(--canvas)}
.an__zoom img{width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.an__title{display:flex;align-items:baseline;gap:20px;flex-wrap:wrap;margin:22px 0 clamp(29px,3vw,43px)}
.an__title .note{font-size:clamp(22px,2.4vw,37px)}
.an__list{list-style:none;border-top:1px solid var(--slate)}
.an__list li{display:block;padding:14px 0;border-bottom:1px solid var(--pebble);color:var(--sand);transition:color .5s var(--ease)}
.an__list li.is-on{color:var(--ink)}
.an__list li .sub{transition:transform .6s var(--ease)}
.an__list li.is-on .sub{transform:translateX(10px)}
.an__desc{margin-top:29px;min-height:4.4em;max-width:36ch}
.an__mob{display:none}

/* ============ VITRINE (horizontal display) ============ */
.vt{position:relative;overflow:hidden}
.vt__head{display:flex;justify-content:space-between;align-items:flex-end;gap:29px;padding-top:clamp(90px,7vw,104px);padding-bottom:clamp(14px,1.6vw,24px);position:relative;z-index:2}
.vt__head p{max-width:30ch}
.vt__bg{position:absolute;left:0;top:58%;white-space:nowrap;font-size:clamp(140px,26vw,440px);line-height:.8;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px var(--sand);pointer-events:none;z-index:0}
.vt{--vc:clamp(210px,min(23vw,38vh),370px)}
.vt__track{display:flex;gap:clamp(18px,2vw,36px);padding:0 calc(50vw - var(--vc) / 2) clamp(70px,7vw,100px) var(--gutter);width:max-content;position:relative;z-index:1}
.vc{width:var(--vc);flex:none}
.vt__head .display{font-size:clamp(48px,min(8.4vw,11vh),150px)}
.vc__in{will-change:transform;position:relative;transform-origin:50% 60%}
.vc__img{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:var(--r);background:var(--linen);transition:transform .7s var(--ease)}
.vc__img img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.2s var(--ease)}
.vc:hover .vc__img{transform:translateY(-8px)}
.vc:hover .vc__img img{transform:scale(1.12)}
.vc__cap{position:absolute;left:10px;right:10px;bottom:10px;z-index:2;background:var(--canvas);border-radius:var(--r);padding:12px 14px;display:flex;justify-content:space-between;align-items:flex-end;gap:12px;transition:transform .6s var(--ease)}
.vc__cap .sub{font-size:clamp(17px,1.35vw,22px);line-height:1.05}
.vc__cap .caption{font-size:13px;text-align:right;max-width:15ch;color:var(--slate)}
.vc:hover .vc__cap{transform:translateY(-4px)}
.vc--end{display:flex;flex-direction:column;justify-content:space-between;background:var(--manilla);border-radius:var(--r);padding:29px;aspect-ratio:4/5}
.vt__progress{position:absolute;left:var(--gutter);right:var(--gutter);bottom:clamp(36px,3.6vw,52px);height:1px;background:var(--pebble);z-index:2}
.vt__progress i{position:absolute;inset:0;background:var(--ink);transform:scaleX(0);transform-origin:left}

/* ============ ATELIER (card stack) ============ */
.at{height:100vh;height:100svh;display:flex;align-items:center;overflow:hidden}
.at__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(29px,5vw,100px);align-items:center;width:100%}
.at__mask{overflow:hidden;display:block;padding-bottom:.08em}
.at__mask>span{display:block}
.at__desc{margin-top:22px;max-width:34ch;min-height:4.2em}
.at__dots{display:flex;gap:8px;margin-top:29px}
.at__dots i{width:29px;height:1px;background:var(--pebble);transition:background .4s}
.at__dots i.on{background:var(--ink)}
.stack{position:relative;width:min(100%, 440px, 52vh);aspect-ratio:4/5;margin:0 auto}
.ac{position:absolute;inset:0;border-radius:var(--r);overflow:hidden;background:var(--linen);will-change:transform}
.ac img{width:100%;height:100%;object-fit:cover}
.ac__cap{position:absolute;left:12px;bottom:12px;background:var(--canvas);border-radius:var(--r);padding:6px 10px;color:var(--ink)!important}

/* ============ SUR-MESURE (text mask) ============ */
.sm{position:relative;height:100vh;height:100svh;overflow:hidden;color:var(--canvas)}
.sm__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sm__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(72,64,54,.15),rgba(72,64,54,.75));opacity:0}
.sm__svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.sm__cap{position:absolute;left:var(--gutter);right:var(--gutter);bottom:clamp(40px,9vh,100px);display:flex;justify-content:space-between;align-items:flex-end;gap:29px;opacity:0}
.sm__cap p.body{max-width:32ch}
.sm__hint{position:absolute;left:0;right:0;bottom:clamp(30px,6vh,58px);text-align:center;color:var(--pebble)!important}

.dark{color:var(--canvas)}
.on-dark .caption{color:var(--sand)}
.sv{padding-top:clamp(86px,9vw,144px);padding-bottom:clamp(100px,11vw,161px)}
.sv__head{display:grid;grid-template-columns:1fr 1fr;gap:var(--gutter);align-items:end;margin-bottom:clamp(43px,5vw,86px)}
.sv__head p{max-width:34ch;justify-self:end}
.sv__list{border-top:1px solid rgba(250,245,235,.35)}
.row{position:relative;display:grid;grid-template-columns:1.3fr 1.6fr auto;gap:29px;align-items:center;padding:clamp(22px,2.4vw,36px) 0;border-bottom:1px solid rgba(250,245,235,.35)}
.row__t{transition:transform .6s var(--ease)}
.row:hover .row__t{transform:translateX(14px)}
.row__fill{position:absolute;inset:0;background:rgba(250,245,235,.06);transform:scaleY(0);transform-origin:bottom;transition:transform .6s var(--ease);pointer-events:none}
.row:hover .row__fill{transform:scaleY(1)}
.row .caption{color:var(--pebble)}
.row__go{width:44px;height:44px;border:1px solid rgba(250,245,235,.5);border-radius:var(--r);display:grid;place-items:center;transition:background .4s,color .4s}
.row:hover .row__go{background:var(--canvas);color:var(--ink)}
.float-img{position:fixed;top:0;left:0;width:250px;aspect-ratio:3/4;pointer-events:none;z-index:40;border-radius:125px 125px 6px 6px;overflow:hidden;opacity:0;transform:translate(-50%,-50%) scale(.8);background:var(--linen);outline:1px solid rgba(250,245,235,.5);outline-offset:6px}
.float-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.18);transition:opacity .45s,transform 1.2s var(--ease)}
.float-img img.on{opacity:1;transform:scale(1)}
.sv__cta{display:flex;justify-content:space-between;align-items:center;gap:29px;margin-top:clamp(58px,6vw,100px);flex-wrap:wrap}

/* ============ ADRESSES ============ */
.ad__head{display:flex;justify-content:space-between;align-items:flex-end;gap:29px;margin-bottom:clamp(43px,5vw,86px);flex-wrap:wrap}
.shop{display:grid;grid-template-columns:1.25fr 1fr 1fr auto;gap:29px;padding:clamp(29px,3vw,43px) 0;position:relative;align-items:start}
.shop__line{position:absolute;left:0;right:0;top:0;height:1px;background:var(--slate);transform:scaleX(0);transform-origin:left}
.shop__city{font-size:clamp(36px,3.9vw,var(--t-heading-lg));line-height:.98;letter-spacing:-.045em}
.shop dl{display:grid;grid-template-columns:auto 1fr;gap:4px 18px;font-size:clamp(15px,1.2vw,18px);line-height:1.35}
.shop dt{color:var(--slate)}
.status{display:inline-flex;align-items:center;gap:10px;margin-top:14px}
.status i{width:7px;height:7px;border:1px solid var(--ink);border-radius:50%}
.status.open i{background:var(--ink);animation:pulse 2s infinite}
@keyframes pulse{50%{opacity:.25}}
.shop__actions{display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.ad__visual{margin-top:clamp(58px,6vw,100px);display:grid;grid-template-columns:7fr 4fr;gap:clamp(20px,3vw,43px);align-items:end}
.pimg{position:relative;overflow:hidden;border-radius:var(--r);background:var(--linen)}
.pimg img{width:100%;height:118%;object-fit:cover;position:absolute;top:-9%;left:0}
.reveal-mask{clip-path:inset(100% 0 0 0)}
.ad__card{background:var(--linen);border:1px solid var(--slate);border-radius:var(--r);padding:29px;display:flex;flex-direction:column;gap:29px}

/* ============ INSTAGRAM ============ */
.ig{overflow:hidden;padding:clamp(86px,9vw,144px) 0 clamp(58px,6vw,100px)}
.ig__marquee{display:flex;white-space:nowrap;will-change:transform}
.ig__marquee span{font-size:clamp(80px,14vw,230px);line-height:.98;letter-spacing:-.055em;padding-right:.35em}
.ig__marquee span.o{color:transparent;-webkit-text-stroke:1px var(--ink)}
.ig__strip{display:flex;gap:14px;margin-top:clamp(43px,4vw,58px);width:max-content;will-change:transform}
.ig__strip a{width:clamp(170px,19vw,290px);aspect-ratio:1;flex:none;border-radius:var(--r);overflow:hidden;background:var(--linen)}
.ig__strip img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.ig__strip a:hover img{transform:scale(1.06)}
.ig__foot{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:43px;flex-wrap:wrap}

/* ============ FOOTER ============ */
.footer{background:var(--charcoal);color:var(--canvas);padding-top:clamp(86px,9vw,144px);overflow:hidden;position:relative}
.footer__top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:29px}
.footer__top h3{font-size:clamp(30px,3.2vw,45px);line-height:1.03;letter-spacing:-.035em;max-width:14ch}
.footer ul{list-style:none;display:flex;flex-direction:column;gap:8px;font-size:clamp(16px,1.25vw,19px)}
.footer .caption{color:var(--sand);margin-bottom:14px}
.footer .link::after{background:var(--slate)}
.footer__logo{width:min(100%,980px);margin:clamp(58px,7vw,121px) auto clamp(29px,3vw,43px);color:var(--canvas)}
.footer__bar{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px 0 29px;border-top:1px solid rgba(250,245,235,.2);font-size:14px;color:var(--pebble)}

/* cursor */
.cursor{position:fixed;top:0;left:0;z-index:90;pointer-events:none;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--ink);display:grid;place-items:center;transition:width .45s var(--ease),height .45s var(--ease),margin .45s var(--ease),background .3s,opacity .3s}
.cursor span{font-size:13px;color:var(--canvas);opacity:0;transition:opacity .3s;letter-spacing:.02em}
.cursor.is-view{width:86px;height:86px;margin:-43px 0 0 -43px}
.cursor.is-view span{opacity:1}
.cursor.is-light{background:var(--canvas)}
.cursor.is-light span{color:var(--ink)}
@media (hover:none),(pointer:coarse){.cursor{display:none}}

/* ============ RESPONSIVE ============ */
@media (max-width: 1024px){
  .nav__links{display:none}
  .nav__burger{display:block}
  .nav__right .btn{display:none}
  .shop{grid-template-columns:1fr 1fr;row-gap:20px}
  .shop__actions{align-items:flex-start;flex-direction:row;flex-wrap:wrap}
  .footer__top{grid-template-columns:1fr 1fr}
  .footer__top > div:first-child{grid-column:1/-1}
  .row{grid-template-columns:1fr auto}
  .row .caption{grid-column:1/2}
  .row__go{grid-row:1;grid-column:2}
}
@media (max-width: 767px){
  .room{display:none}
  .hero__slot{width:58vw;height:36vh}
  .hf.m-hide{display:none}
  /* phones: a hand-placed frame around the clip; tiles also shrink on short screens */
  .hf:not(.m-hide){left:var(--ml)!important;top:var(--mt)!important;width:min(var(--mw), 14vh)!important}
  .hero__meta{display:none}
  .hero__meta .hide-m{display:none}
  .hero__over{flex-direction:column;align-items:flex-start;left:0;width:100%;margin-left:0;padding:0 var(--gutter)}
  .hero__core .hero__media{left:0;width:100%;margin-left:0}
  .manifesto__grid,.sv__head,.ad__visual{grid-template-columns:1fr}
  .an{align-items:flex-start;padding-top:84px}
  .an__grid{grid-template-columns:1fr;gap:18px}
  .an__stage{width:min(100%,46vh)}
  .an__title{margin:10px 0 0}
  .an__title .display{font-size:52px}
  .an__list,.an__desc.desk{display:none}
  .an__mob{display:block;border-top:1px solid var(--slate);padding-top:14px;margin-top:14px}
  .an__mob .sub{margin:6px 0 8px}
  .an__mob p:last-child{font-size:16px;line-height:1.35}
  .vt__head{flex-direction:column;align-items:flex-start}
  .vt__track{padding-right:var(--gutter);width:auto;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:var(--gutter);scrollbar-width:none;padding-top:20px}
  .vt__track::-webkit-scrollbar{display:none}
  .vc{width:72vw;scroll-snap-align:start}
  .vt__progress{display:none}
  .at{align-items:flex-start;padding-top:84px}
  .at__grid{grid-template-columns:1fr;gap:20px}
  .at__desc{min-height:0;font-size:16px}
  .at__dots{margin-top:14px}
  .stack{width:min(78vw,38vh)}
  .sv__head p{justify-self:start}
  .row{grid-template-columns:1fr auto;gap:10px 14px}
  .shop{grid-template-columns:1fr}
  .footer__top{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .manifesto__text .wd{color:var(--ink)}
  .reveal-mask{clip-path:none}
  .shop__line{transform:none}
  .sm__svg{display:none}
  .sm__cap,.sm__shade{opacity:1}
  .hero__core{clip-path:none}
  .hero__core .hero__media{transform:none}
  .hero__veil,.hero__over{opacity:1}
  .hero__meta,.hf{display:none}
  .an__list li{color:var(--ink)}
}
