/* Pass notes DA : rythme, hors-champ Junettes, FAQ sobre, boutons, footer pastel. */

:root{--js-peach:#fbe9df}

/* Hero + footer share the peach ground. */
/* Hero + footer share the peach ground. Hero height never follows the photos. */
body .hero{background:var(--js-peach);color:#342e27;height:100svh;min-height:100svh;max-height:100svh;overflow:hidden;contain:size layout;padding:0;max-width:none;z-index:0}
body .hero-stage{position:absolute;inset:0;z-index:0;isolation:isolate;width:100%;height:100%;min-height:0;max-width:none;margin:0;overflow:hidden}
body .hero-stage:after{background:radial-gradient(ellipse at center,#fbe9dfe6 0%,#fbe9df88 30%,transparent 68%)}
body .hero-heading{position:relative;z-index:5;pointer-events:none}
body .hero-baseline{z-index:5}
body .eyebrow{font-size:12px;letter-spacing:.14em}
body .hero-heading .eyebrow{font-size:13px;letter-spacing:.14em}
body .hero-baseline>span{font-size:13px}
body .hero .campaign{overflow:hidden;aspect-ratio:4/5;background:#fff;box-shadow:0 18px 36px #2a24181f}
body .hero .campaign img{width:100%;height:100%;max-width:none;object-fit:cover}

body .selection-moodboard .jewelry-grid .jewelry-card .media-placeholder,
body .selection-moodboard .jewelry-grid .jewelry-card:nth-child(2) .media-placeholder,
body .selection-moodboard .jewelry-grid .jewelry-card:nth-child(4) .media-placeholder{aspect-ratio:4/5}
body .selection-moodboard .jewelry-link{cursor:default}
body .selection-moodboard .jewelry-grid .jewelry-card .media-placeholder img{
  object-fit:cover;
  object-position:center center;
}

/* 1. Title and copy live in the same column. */
body .story{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px 48px;align-items:center;padding-block:90px}
body .story .story-text{grid-column:1;grid-row:1;min-width:0}
body .story .story-copy{grid-column:auto;grid-row:auto;margin-top:20px;padding:0;max-width:46ch}
body .story .story-copy .large-copy{margin:0 0 14px}
body .story .story-copy .text-link{margin-top:18px}
body .story .story-film{grid-column:2;grid-row:1;justify-self:start;width:min(100%,470px)}

.js-field{position:relative;overflow:clip;background:none;max-width:100%}
.js-field-mark{
  position:absolute;
  right:-16vw;
  top:46%;
  width:clamp(420px,52vw,920px);
  transform:translateY(-50%);
  color:#171717;
  opacity:.13;
  pointer-events:none;
  z-index:0;
}
.js-field-mark svg{display:block;width:100%;height:auto}
.js-field-mark path{fill:none;stroke:currentColor;stroke-width:.55;stroke-linecap:round;stroke-linejoin:round}
body .story,
body .js-field .story,
body .js-field .selection,
body .js-field .selection-moodboard{position:relative;z-index:1;background:transparent;border-top:0}

/* 2. Stop the left-aligned heading march. */
body .selection .section-heading.heading-center{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;margin-bottom:42px}
body .selection .heading-center h2.composed-heading{align-items:center}
body .stores .section-heading.heading-title-end{display:grid;grid-template-columns:1fr;align-items:end;gap:0;margin-bottom:28px}
body .stores .heading-title-end>div:last-child{text-align:right;justify-self:end}
body .stores .heading-title-end h2.composed-heading{align-items:flex-end}
body .shops-caption{display:none!important}

/* 3. Junettes: papier 2400×850, jamais stretch. Copy au centre géométrique. */
body .club-scrapbook{
  position:relative;
  overflow:hidden;
  max-width:none!important;
  width:100%;
  margin-inline:0!important;
  padding:0!important;
  aspect-ratio:2400/850;
  min-height:560px;
  height:auto;
}
body .club-complete-background{
  inset:auto!important;
  top:0!important;
  bottom:0!important;
  left:50%!important;
  right:auto!important;
  width:128%!important;
  height:auto!important;
  max-width:none!important;
  transform:translateX(-50%)!important;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:100% 100%!important;
}
body .club-scrapbook .club-scrapbook-scene{
  position:absolute;
  inset:0;
  display:block!important;
  width:auto!important;
  max-width:none!important;
  height:auto;
  min-height:0;
  margin:0!important;
  padding:0;
}
body .club-scrapbook .club-core{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  z-index:6;
  width:min(800px,86%);
  max-width:800px;
  margin:0;
  padding:0 20px;
  text-align:center;
  pointer-events:auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  isolation:isolate;
}
body .club-scrapbook .club-top{
  position:relative;
  z-index:6;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
}
body .club-scrapbook .club-copy{
  position:relative;
  z-index:6;
  margin:0 auto;
  width:100%;
  max-width:none;
  display:flex;
  flex-direction:column;
  align-items:center;
}
body .club-scrapbook .club-copy .club-overline,
body .club-scrapbook .club-copy>p{
  max-width:36em;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
body .club-scrapbook .club-copy .action-row{
  justify-content:center;
  width:100%;
}
body .club-scrapbook .club-copy .club-overline{
  font:500 20px/1.45 'JS Inter',sans-serif;
  margin-bottom:18px;
  max-width:none;
}
body .club-scrapbook .club-copy>p:not(.club-overline){
  font-size:18px;
  line-height:1.55;
  max-width:34em;
}
body .club-scrapbook .club-top .eyebrow{font-size:12px;letter-spacing:.14em}
body .club-scrapbook .club-copy .button,
body .club-scrapbook .club-copy a.button{font-size:16px;min-height:52px;padding:0 26px}
body .club-scrapbook h2.composed-heading{
  align-items:center;
  text-align:center;
  width:100%;
}
body .club-scrapbook h2.composed-heading>.heading-script{padding-inline:.08em;padding-bottom:.08em}
body .club-scrapbook .club-wing{
  position:absolute;
  top:0;
  bottom:0;
  width:36%;
  height:auto;
  pointer-events:none;
  z-index:2;
}
body .club-scrapbook .club-wing-left{left:0;right:auto}
body .club-scrapbook .club-wing-right{right:0;left:auto}
body .club-scrapbook .club-paper{display:none}
body .club-scrapbook .junette-cutout,
body .club-scrapbook .club-sticker,
body .club-scrapbook .paper-label{position:absolute;display:block;max-width:none;height:auto;object-fit:contain;pointer-events:none;z-index:2;transform:none}
body .club-scrapbook .junette-human-a{width:62%;left:4%;top:18%;bottom:auto;rotate:-7deg;z-index:3;animation:stop-2 1.7s steps(1,end) infinite}
body .club-scrapbook .junette-peek{width:38%;left:-8%;top:8%;rotate:-11deg;z-index:2;animation:stop-1 1.4s steps(1,end) infinite}
body .club-scrapbook .junette-left{display:none}
body .club-scrapbook .strawberry{width:20%;left:48%;top:8%;rotate:12deg;z-index:4;animation:stop-2 1.2s steps(1,end) infinite}
body .club-scrapbook .star{width:22%;left:56%;top:44%;right:auto;bottom:auto;rotate:-14deg;z-index:4;animation:stop-4 1.3s steps(1,end) infinite}
body .club-scrapbook .butterfly{width:28%;left:-2%;top:auto;bottom:22%;rotate:-18deg;z-index:4;animation:stop-1 1.9s steps(1,end) infinite}
body .club-scrapbook .rhinestones{width:24%;left:22%;right:auto;bottom:8%;top:auto;rotate:-16deg;z-index:5;animation:stop-3 1.6s steps(1,end) infinite}
body .club-scrapbook .junette-human-b{width:56%;left:auto;right:14%;top:12%;rotate:6deg;z-index:3;animation:stop-4 1.5s steps(1,end) infinite}
body .club-scrapbook .junette-right{width:58%;left:auto;right:-10%;top:auto;bottom:4%;rotate:9deg;z-index:4;animation:stop-1 1.8s steps(1,end) infinite}
body .club-scrapbook .heart{width:18%;left:auto;right:18%;top:28%;rotate:10deg;z-index:5;animation:stop-2 1.1s steps(1,end) infinite}
body .club-scrapbook .cloud{width:34%;left:auto;right:-8%;top:2%;rotate:-6deg;z-index:2;animation:stop-3 2s steps(1,end) infinite}
body .club-scrapbook .paper-label{left:auto;right:6%;bottom:12%;z-index:6;rotate:-6deg;animation:stop-4 2.2s steps(1,end) infinite}
@keyframes stop-1{
  0%{translate:0 0}
  25%{translate:8px -9px}
  50%{translate:-7px 6px}
  75%{translate:5px 8px}
}
@keyframes stop-2{
  0%{translate:0 0}
  25%{translate:-8px 7px}
  50%{translate:9px -5px}
  75%{translate:-4px -8px}
}
@keyframes stop-3{
  0%{translate:0 0}
  25%{translate:7px 9px}
  50%{translate:-8px -4px}
  75%{translate:5px -7px}
}
@keyframes stop-4{
  0%{translate:0 0}
  25%{translate:-9px -6px}
  50%{translate:7px 8px}
  75%{translate:-4px 5px}
}

/* 4. Gesture: zone dark, lettres type AE, décalage entre les mots. */
.gesture-caption{display:none}
.js-gesture{align-items:baseline;perspective:600px;color:#171717}
.js-gesture .gesture-word{display:inline-flex;font-weight:400;text-shadow:none;overflow:visible;transform-style:preserve-3d;color:#171717}
.js-gesture .letter{display:inline-block;will-change:transform,opacity;transform-origin:50% 80%}
.js-gesture .letter.is-out{animation:letter-out .42s cubic-bezier(.55,0,1,.45) both}
.js-gesture .letter.is-in{animation:letter-in .7s cubic-bezier(.16,1,.3,1) both}
.js-gesture .gesture-display{font:inherit;color:#171717}
.js-gesture .gesture-hand-alt{font:italic 1.05em/.9 var(--font-display);letter-spacing:-.04em;color:#171717;font-style:italic}
.js-gesture .gesture-script{font:1.35em/.8 var(--font-script);color:#171717;font-style:normal}
.js-gesture span[aria-hidden]{color:#171717;text-shadow:none}
.js-gesture i{color:#171717}
@keyframes letter-out{
  0%{opacity:1;transform:translateY(0) rotateX(0)}
  100%{opacity:0;transform:translateY(-.7em) rotateX(80deg)}
}
@keyframes letter-in{
  0%{opacity:0;transform:translateY(.85em) rotateX(-85deg)}
  100%{opacity:1;transform:translateY(0) rotateX(0)}
}

/* 5. FAQ: pas de vidéo, pas de vert, ouverture animée. */
body .faq-sober,
body .faq-playful{display:block;padding:0;margin:50px auto 90px;max-width:1180px;background:transparent;overflow:visible;border:0}
.faq-video{display:none!important}
body .faq-sober .faq-content,
body .faq-playful .faq-content{padding:0;max-width:none;width:100%}
body .faq-sober h2,
body .faq-playful h2{font:400 clamp(36px,4.4vw,58px)/1.05 var(--font-display);letter-spacing:-.04em;margin:0 0 28px;white-space:nowrap}
body .faq-sober .faq-list,
body .faq-playful .faq-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-rows:repeat(5,auto);
  grid-auto-flow:column;
  column-gap:clamp(28px,5vw,72px);
  border:0;
}
body .faq-sober details,
body .faq-playful details{border:0;border-bottom:1px solid #25272922;background:transparent!important}
body .faq-sober details:first-child,
body .faq-playful details:first-child,
body .faq-sober details:nth-child(6),
body .faq-playful details:nth-child(6){border-top:0}
body .faq-sober details:last-child,
body .faq-playful details:last-child{border-bottom:1px solid #25272922}
body .faq-sober details[open],
body .faq-playful details[open]{background:transparent!important}
body .faq-sober summary,
body .faq-playful summary{font:500 16px/1.5 'JS Inter',sans-serif;padding:18px 8px;gap:22px;align-items:center;cursor:pointer}
body .faq-sober summary>span,
body .faq-playful summary>span{flex-shrink:0;transition:transform .35s ease}
body .faq-sober details[open] summary>span,
body .faq-playful details[open] summary>span{transform:rotate(45deg)}
body .faq-sober .faq-answer,
body .faq-playful .faq-answer{height:0;overflow:hidden;transition:height .38s cubic-bezier(.22,1,.36,1)}
body .faq-sober details p,
body .faq-playful details p{font-size:14px;line-height:1.8;padding:0 24px 18px 8px;margin:0;max-width:none}

/* 6. Boutons pills plats, sans lueur. */
body .button,
body a.button,
body button.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:0 28px;
  margin:0;
  border:0;
  border-radius:999px;
  background:#171717;
  color:#fff;
  font:500 16px/1 'JS Inter',sans-serif;
  letter-spacing:.05em;
  box-shadow:none;
  transition:background .3s,color .3s;
}
body .button:hover,
body a.button:hover,
body button.button:hover{background:#fff;color:#171717;box-shadow:none;transform:none}
body .header-store{min-height:46px;padding:0 22px;font-size:16px}
body .site-header .button:hover,
body .header-store:hover{background:#171717;color:#fff;box-shadow:inset 0 0 0 1.5px #171717}
body .hero-heading .hero-actions,
body .hero-heading .hero-invitation,
body .hero-heading .hero-club{pointer-events:auto}
body .hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:16px 22px;
  margin-top:26px;
}
body .text-link,
body a.text-link,
body .hero-invitation,
body .hero-baseline>a,
body .navigation-dialog .menu-bottom .text-link,
body .faq-content>.text-link,
body .join-editorial .join-card-action{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:0;
  min-height:0;
  margin:0;
  padding:0 0 6px;
  border:0;
  border-radius:0;
  border-bottom:1px solid currentColor;
  background:none;
  box-shadow:none;
  font:500 16px/1.2 'JS Inter',sans-serif;
  letter-spacing:.03em;
  text-transform:none;
  color:inherit;
  white-space:nowrap;
}
body .text-link:hover,
body a.text-link:hover,
body .hero-invitation:hover,
body .hero-baseline>a:hover,
body .navigation-dialog .menu-bottom .text-link:hover,
body .faq-content>.text-link:hover,
body .join-editorial .join-card:hover .join-card-action{
  gap:0;
  opacity:.6;
  background:none;
  color:inherit;
  box-shadow:none;
  border-bottom-color:currentColor;
}
body .hero-club{min-height:52px;padding:0 26px;font-size:16px;letter-spacing:.05em;white-space:normal;text-align:center}

.newsletter{
  position:relative;
  z-index:2;
  background:#fbe9df;
  color:#171717;
  padding:80px var(--gutter) 88px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.newsletter .eyebrow{margin-bottom:18px}
.newsletter h2.composed-heading{align-items:center;font-size:clamp(36px,5.2vw,78px)}
.newsletter h2 .heading-script{color:#171717;animation:none}
.newsletter-form{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:28px;
  width:min(560px,100%);
}
.newsletter-honeypot,
.newsletter-label{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
}
.newsletter-form input[type=email]{
  flex:1 1 220px;
  min-height:52px;
  border:0;
  border-bottom:1.5px solid #171717;
  background:transparent;
  color:#171717;
  font:15px/1.4 'JS Inter',Arial,sans-serif;
  padding:0 4px;
  outline:none;
}
.newsletter-form input[type=email]::placeholder{color:#17171799}
.newsletter-form .button{min-height:52px;margin:0}
body .desktop-nav{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
}
body .desktop-nav a{font-size:14px}
html{scroll-padding-top:96px}
body .section,
body #marque,
body #bijoux,
body #boutiques,
body #junettes,
body #rejoindre,
body #faq,
body #newsletter{scroll-margin-top:0}
body .site-header{
  top:0;
  z-index:50;
  min-height:108px;
  background:#fffcf5ee;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
body .site-header.is-scrolled{
  min-height:80px;
  background:#fffcf5f2;
}
body .site-header .brand{
  display:block;
  line-height:0;
  flex-shrink:0;
}
body .site-header .brand .nav-logo,
body .site-header .brand>img{
  display:block;
  width:auto;
  height:72px;
  max-width:none;
  object-fit:contain;
  object-position:left center;
  transition:height .4s;
}
body .site-header.is-scrolled .brand .nav-logo,
body .site-header.is-scrolled .brand>img{height:62px}
body .menu-trigger{font-size:13px}
@media(max-width:760px){
  body .site-header{min-height:90px}
  body .site-header.is-scrolled{min-height:76px}
  body .site-header .brand .nav-logo,
  body .site-header .brand>img{height:64px}
  body .site-header.is-scrolled .brand .nav-logo,
  body .site-header.is-scrolled .brand>img{height:54px}
}
body .button-neon{background:#171717;color:#fff;box-shadow:none}
body .button-neon:hover{background:#fff;color:#171717;box-shadow:none}
body .club-scrapbook .button,
body .club-scrapbook a.button{color:#fff;background:#171717;box-shadow:none}
body .club-scrapbook .button:hover,
body .club-scrapbook a.button:hover{background:#fff;color:#171717;box-shadow:none}
body .club .button.drawably-host{background:#171717;border:0;color:#fff;overflow:hidden;padding:0 26px}
body .club .button.drawably-host .drawably-svg{display:none}

body .navigation-dialog{
  background:var(--js-peach);
  color:#342e27;
  padding:20px var(--gutter) 16px;
}
body .navigation-dialog .menu-top{
  border-bottom:1px solid #342e2718;
  padding-bottom:16px;
  align-items:center;
}
body .menu-brand{
  display:block;
  line-height:0;
  color:#171717;
}
body .menu-brand img{
  display:block;
  width:auto;
  height:64px;
  max-width:none;
  object-fit:contain;
}
body .navigation-dialog .close-button{
  font:500 13px/1 'JS Inter',sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#171717;
  gap:12px;
}
body .navigation-dialog .close-x{font:28px/.8 var(--font-display);letter-spacing:0;text-transform:none}
body .navigation-dialog .menu-content{padding:42px 0 28px}
body .navigation-dialog .eyebrow{font-family:'JS Inter',sans-serif;color:#8a847c}
body .navigation-dialog .main-menu a{
  font-family:var(--font-display);
  letter-spacing:-.045em;
  color:#171717;
  border-bottom:1px solid #342e2718;
  transition:padding .45s cubic-bezier(.22,1,.36,1),color .3s;
}
body .navigation-dialog .main-menu a small{
  font:500 11px/1 'JS Inter',sans-serif;
  letter-spacing:.16em;
  color:#8a847c;
  margin-right:14px;
}
body .navigation-dialog .main-menu a:hover{color:#2400ff;padding-left:10px}
body .navigation-dialog .menu-photo{
  display:block;
  width:180px;
  height:auto;
  aspect-ratio:4/5;
  margin:0 0 8px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 16px 32px #2a24181f;
  transform:rotate(-6deg);
}
body .navigation-dialog .menu-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
body .navigation-dialog .menu-aside>a:not(.button),
body .navigation-dialog .menu-aside>button{
  font:14px/1.45 'JS Inter',sans-serif;
  color:#171717;
}
body .navigation-dialog .menu-aside>a:not(.button):hover,
body .navigation-dialog .menu-aside>button:hover{text-decoration:underline;text-underline-offset:5px}
body .navigation-dialog .menu-bottom{
  border-top:1px solid #342e2718;
  padding-block:18px;
  align-items:end;
}
body .menu-manifesto{
  margin:0;
  max-width:none;
  font:22px/1.2 var(--font-display);
  letter-spacing:-.03em;
  color:#171717;
}
body .menu-manifesto em{
  font-family:var(--font-script);
  font-style:normal;
  font-size:1.4em;
  letter-spacing:0;
  animation:script-colors 15s ease-in-out infinite;
}
@media(max-width:760px){
  body .navigation-dialog .menu-photo{display:none}
  body .menu-brand img{height:56px}
  body .menu-manifesto{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
  body .menu-manifesto em{animation:none;color:#2400ff}
}

/* Recruitment stays WTTJ. Franchise is a real pre-footer. */
body .join-editorial{padding-bottom:70px;overflow:visible}
body .join-editorial .join-scene{align-items:start;overflow:visible}
body .join-editorial .join-links{position:relative;z-index:2}
body .join-editorial .join-heading{text-align:left;margin:0 0 28px}
body .join-editorial .join-heading h2{align-items:flex-start}
body .join-editorial .join-heading h2.composed-heading>.heading-line,
body .join-editorial .join-heading h2.composed-heading>.heading-script{
  white-space:normal;
  text-wrap:balance;
  max-width:100%;
}
body .join-editorial .join-card,
body .join-editorial .join-card:nth-child(2){
  display:block;
  position:relative;
  z-index:2;
  border-top:0;
  margin-top:0;
  padding-top:0;
  padding-bottom:0;
  text-decoration:none;
  color:inherit;
  cursor:pointer;
  pointer-events:auto;
}
body .join-editorial .join-card-action{margin-top:22px;font-size:16px}
body .join-editorial .join-card .eyebrow{display:none}
.ticker-toggle{display:none!important}
body .detail-dialog{max-width:640px}
body .store-facts{margin:8px 0 0;border-top:1px solid #17171722}
body .store-facts>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px 18px;padding:16px 0;border-bottom:1px solid #17171718}
body .store-facts dt{margin:0;font:500 11px/1.4 'JS Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#17171799}
body .store-facts dd{margin:0;font:15px/1.55 'JS Inter',sans-serif;color:#171717}
body .store-hours{list-style:none;margin:0;padding:0;display:grid;gap:6px}
body .store-hours li{display:flex;justify-content:space-between;gap:16px;align-items:baseline}
body .store-hours span{color:#17171788}
body .store-hours b{font-weight:500;text-align:right}
body .store-extras{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;max-width:none}
body .store-extras span{font:11px/1 'JS Inter',sans-serif;letter-spacing:.04em;border:1px solid #17171722;padding:7px 10px}
body .store-fact-note{margin:16px 0 0;font:12px/1.5 'JS Inter',sans-serif;color:#17171788;max-width:none}
body .store-actions{margin-top:22px;flex-wrap:wrap}
@media(max-width:760px){
  body .store-facts>div{grid-template-columns:1fr;gap:6px;padding:14px 0}
  body .store-hours li{font-size:14px}
}
body .join-editorial .join-portrait{background:none;overflow:visible}
body .join-editorial .join-portrait img,
body .join-editorial .join-portrait video{
  display:block;
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:1122/1402;
  object-fit:contain;
}
body .join-editorial .join-portrait figcaption{display:none!important}
body .join-editorial .join-parallax{
  position:relative;
  width:100%;
  margin:0;
  overflow:visible;
}
body .join-editorial .join-parallax-stage{
  position:relative;
  width:100%;
  aspect-ratio:1122/1402;
  overflow:visible;
}
body .join-editorial .join-parallax-fit{
  position:absolute;
  inset:4% 5% 3%;
}
body .join-editorial .join-parallax .pl{
  position:absolute;
  display:block;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto;
  object-fit:contain;
  pointer-events:none;
  will-change:transform;
  transform-origin:center center;
}
body .join-editorial .join-parallax .pl-girl{left:4%;top:2%;width:90%;z-index:1}
body .join-editorial .join-parallax .pl-bow{left:0;top:28%;width:22%;z-index:2}
body .join-editorial .join-parallax .pl-heart-pink{left:68%;top:2%;width:24%;z-index:3}
body .join-editorial .join-parallax .pl-heart-gold{left:74%;top:34%;width:20%;z-index:3}
body .join-editorial .join-parallax .pl-want{left:2%;top:54%;width:96%;z-index:4}
body .join-editorial .join-parallax .pl-for{left:1%;top:72%;width:36%;z-index:5}
body .join-editorial .join-parallax .pl-j{left:41.4%;top:68%;width:43.2%;z-index:6}

/* Ticker cards: textes qui bougent à l'entrée et au hover. */
body .shop-identity{perspective:700px}
body .shop-city{
  text-transform:none;
  letter-spacing:.02em;
  font:500 13px/1.2 'JS Inter',sans-serif;
  padding:7px 12px;
  max-width:90%;
}
body .shop-monogram,
body .shop-concept,
body .shop-city,
body .shop-more{
  transition:transform .55s cubic-bezier(.22,1,.36,1),letter-spacing .55s,opacity .55s,filter .55s;
}
body .shop-more b{transition:transform .5s cubic-bezier(.22,1,.36,1)}
body .shop-concept{animation:shop-copy-in .9s cubic-bezier(.22,1,.36,1) both}
body .shop-city{animation:shop-copy-in .8s cubic-bezier(.22,1,.36,1) .12s both}
body .shop-more{animation:shop-copy-in .8s cubic-bezier(.22,1,.36,1) .22s both}
body .shop-monogram{animation:shop-copy-in .7s cubic-bezier(.22,1,.36,1) both}
@keyframes shop-copy-in{
  from{opacity:0;transform:translateY(28px) rotateX(18deg)}
  to{opacity:1;transform:none}
}
body .shop-portal:hover .shop-concept{transform:translateY(-10px) scale(1.04);letter-spacing:-.06em}
body .shop-portal:hover .shop-city{transform:translateY(-6px) scale(1.04)}
body .shop-portal:hover .shop-more{transform:translateY(-4px);letter-spacing:.08em}
body .shop-portal:hover .shop-more b{transform:rotate(90deg)}
body .shop-portal:hover .shop-monogram{transform:rotate(-10deg) scale(1.08)}
body .shop-portal:hover .shop-background{scale:1.1}

/* Footer + préfooter: papier pêche, mesh pastel calé sur les sacs. */
.site-end{position:relative;background:var(--js-peach);overflow:visible;color:#171717}
.site-end .footer-mesh{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;pointer-events:none}
.prefooter{position:relative;z-index:1;max-width:none;margin:0;padding:110px var(--gutter) 72px;background:transparent;color:#171717;text-align:center;display:flex;flex-direction:column;align-items:center}
.footer-split{
  position:relative;
  z-index:2;
  height:1px;
  margin:0 10vw;
  background:linear-gradient(90deg,transparent 0%,#17171718 18%,#17171755 50%,#17171718 82%,transparent 100%);
}
.prefooter .eyebrow{color:#17171788;margin-bottom:22px}
.prefooter h2.composed-heading{align-items:center;color:#171717;font-size:clamp(42px,6vw,92px)}
.prefooter h2 .heading-script{color:#d8303c;animation-name:script-colors-pastel}
.prefooter-copy{margin:22px auto 0;max-width:42ch;font:15px/1.8 'JS Inter',Arial,sans-serif;color:#171717b3}
.prefooter .button,
.prefooter .button-pill,
.prefooter .button-neon{
  margin-top:34px;
  min-height:56px;
  padding:0 36px;
  background:#171717;
  color:#fff;
  font-size:16px;
  letter-spacing:.08em;
  box-shadow:none;
}
.prefooter .button:hover,
.prefooter .button-pill:hover,
.prefooter .button-neon:hover{background:#60906c;color:#fff;box-shadow:none}
@keyframes script-colors-pastel{
  0%,100%{color:#d8303c}
  25%{color:#e07090}
  50%{color:#60906c}
  75%{color:#6a9ad4}
}
.franchise-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px 20px;
  margin-top:34px;
  width:min(640px,100%);
  text-align:left;
}
.franchise-form .franchise-field{
  display:flex;
  flex-direction:column;
  gap:8px;
  font:500 11px/1.3 'JS Inter',sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#cfc8bc;
}
.franchise-form .franchise-field-wide{grid-column:1/-1}
.franchise-form input,
.franchise-form textarea{
  min-height:48px;
  border:0;
  border-bottom:1.5px solid #f4efe688;
  background:transparent;
  color:#f4efe6;
  font:15px/1.45 'JS Inter',Arial,sans-serif;
  letter-spacing:0;
  text-transform:none;
  padding:8px 4px;
  outline:none;
  width:100%;
}
.franchise-form textarea{min-height:92px;resize:vertical}
.franchise-form .button{
  grid-column:1/-1;
  justify-self:center;
  margin-top:10px;
}

/* Inner pages: hub chrome on paper. */
body.page{background:var(--color-paper,#faf7ef);color:#171717}
body.page .site-header{top:0}
body.page main#main{padding:140px var(--gutter) 80px;max-width:1280px;margin-inline:auto}
body.fiche-page main#main{max-width:none;padding:110px 0 0}
body.part-page main#main,
body.franchise-inner main#main{max-width:none;padding:0}

.fiche{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  min-height:calc(100svh - 110px);
  align-items:stretch;
}
.fiche-visual{
  margin:0;
  position:relative;
  background:#d8c49f;
  min-height:70svh;
}
.fiche-visual img{width:100%;height:100%;object-fit:cover;display:block}
.fiche-float{position:absolute;width:28%;right:6%;top:8%;pointer-events:none;filter:drop-shadow(0 18px 16px #33271422)}
.fiche-copy{padding:clamp(32px,6vw,72px) clamp(24px,5vw,64px) 80px;display:flex;flex-direction:column;justify-content:center}
.fiche-copy h1{font-size:clamp(52px,7vw,110px);margin:0 0 18px;letter-spacing:-.05em}
.fiche-brand{
  margin:0 0 8px;
  font:600 12px/1 'JS Inter',sans-serif;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.shop-yellow .fiche-brand{color:#734d1f}
.shop-riviera .fiche-brand{color:#061d45}
.shop-mint .fiche-brand{color:#526741}
.shop-terracotta .fiche-brand{color:#b85b3e}
.shop-coast .fiche-brand{color:#387788}
.fiche-lead{font:20px/1.45 'JS Inter',sans-serif;max-width:36ch;margin:0 0 18px}
.fiche-copy>p{max-width:46ch;margin:0 0 28px}
.fiche .store-facts{margin-top:8px}
.fiche-others{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:40px}
.fiche-others-link{font:500 13px/1 'JS Inter',sans-serif;letter-spacing:.04em;border-bottom:1px solid #17171733;padding-bottom:3px}
.fiche-others-link.is-current{border-bottom-color:#171717}

.part-hero{
  padding:150px var(--gutter) 72px;
}
.part-hero-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:22px;
}
.part-hero h1,
.franchise-copy h1{
  font-size:clamp(26px,5.4vw,68px);
  margin:0;
}
.part-hero h1>.heading-line,
.part-hero h1>.heading-script,
.franchise-copy h1>.heading-line,
.franchise-copy h1>.heading-script{
  white-space:nowrap;
  max-width:none;
}
.part-hero h1>.heading-script,
.franchise-copy h1>.heading-script{font-size:1.06em}
.part-lead,
.franchise-lead{
  margin:0;
  max-width:28ch;
  font:16px/1.7 'JS Inter',sans-serif;
  padding-bottom:8px;
}
.part-keewe{
  padding:80px var(--gutter);
  color:#131313;
  background:
    linear-gradient(105deg,
      #e5dd9b 0 46%,
      #d0c047 46% 100%);
}
.keewe-mark{
  display:inline-block;
  margin:18px 0 28px;
  text-decoration:none;
}
.keewe-mark img{display:block;height:38px;width:auto}
.part-keewe-copy{max-width:54ch}
.part-keewe-copy h2{
  font-size:clamp(28px,3.4vw,48px);
  line-height:1.08;
  margin:0 0 22px;
}
.part-keewe-copy p{margin:0 0 14px;max-width:46ch}
.part-causes{padding:80px var(--gutter) 88px}
.part-causes-head{margin-bottom:36px}
.part-causes h2{font-size:clamp(32px,4.4vw,68px);margin:0}
.part-causes ol{list-style:none;margin:0;padding:0}
.part-causes li{
  display:grid;
  grid-template-columns:3.2rem minmax(0,1fr) minmax(0,.9fr);
  gap:18px;
  align-items:baseline;
  padding:26px 0;
  border-top:1px solid #17171722;
}
.part-causes li:last-child{border-bottom:1px solid #17171722}
.part-causes li span{
  font:500 12px/1 'JS Inter',sans-serif;
  letter-spacing:.14em;
  color:#17171788;
}
.part-causes li b{
  font:400 clamp(28px,4.6vw,64px)/.95 var(--font-display),Georgia,serif;
  letter-spacing:-.04em;
}
.part-causes li em{
  font:400 clamp(28px,3.6vw,52px)/.9 var(--font-script);
  font-style:normal;
  color:#171717;
  justify-self:end;
  text-align:right;
}

.franchise-page{padding:0}
.franchise-split{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);
  min-height:calc(100svh - 0px);
  align-items:stretch;
}
.franchise-copy{
  padding:150px var(--gutter) 72px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}
.franchise-when{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin:36px 0 0;
  padding-top:28px;
  border-top:1px solid #17171722;
}
.franchise-when dt{
  font:500 11px/1 'JS Inter',sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#17171788;
  margin-bottom:8px;
}
.franchise-when dd{margin:0;font:22px/1.15 var(--font-display),Georgia,serif}
.franchise-letter{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px 22px;
  align-content:end;
  padding:150px clamp(28px,4vw,56px) 64px;
  background:var(--js-peach,#fbe9df);
  color:#171717;
}
.franchise-letter .eyebrow{grid-column:1/-1;margin-bottom:8px}
.franchise-letter .franchise-field{
  display:flex;
  flex-direction:column;
  gap:4px;
  font:500 11px/1.2 'JS Inter',sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#17171799;
}
.franchise-letter .franchise-field-wide{grid-column:1/-1}
.franchise-letter input:not([type="radio"]),
.franchise-letter textarea,
.franchise-letter select{
  display:block;
  width:100%;
  min-height:0;
  height:36px;
  border:0;
  border-bottom:1.5px solid #171717;
  background:transparent;
  color:#171717;
  font:15px/1.4 'JS Inter',Arial,sans-serif;
  letter-spacing:0;
  text-transform:none;
  padding:6px 0 8px;
  outline:none;
  box-sizing:border-box;
  border-radius:0;
}
.franchise-letter select{
  appearance:none;
  cursor:pointer;
  padding-right:22px;
  background-image:linear-gradient(45deg,transparent 50%,#171717 50%),linear-gradient(135deg,#171717 50%,transparent 50%);
  background-position:calc(100% - 12px) 16px,calc(100% - 6px) 16px;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}
.franchise-amount{
  display:flex;
  align-items:baseline;
  gap:8px;
}
.franchise-amount input{flex:1;min-width:0}
.franchise-amount span{
  font:15px/1 'JS Inter',sans-serif;
  letter-spacing:0;
  text-transform:none;
  color:#171717;
  padding-bottom:8px;
}
.franchise-letter .franchise-choice{
  border:0;
  margin:0;
  min-width:0;
  padding:0;
}
.franchise-letter .franchise-choice legend{
  padding:0;
  margin:0 0 4px;
}
.franchise-choice-row{
  display:flex;
  gap:22px;
  min-height:36px;
  align-items:center;
  border-bottom:1.5px solid #171717;
}
.franchise-choice-row label{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  font:15px/1 'JS Inter',sans-serif;
  letter-spacing:0;
  text-transform:none;
  color:#171717;
  cursor:pointer;
}
.franchise-letter .franchise-choice-row input[type="radio"]{
  width:auto;
  height:auto;
  margin:0;
  accent-color:#171717;
}
.franchise-letter textarea{
  height:auto;
  min-height:120px;
  padding:10px 0;
  resize:none;
  line-height:1.45;
}
.franchise-letter .button{
  grid-column:1/-1;
  justify-self:start;
  margin-top:8px;
  background:#171717;
  color:#f4efe6;
}
.franchise-network{padding:56px var(--gutter) 88px}
.franchise-network-head{margin-bottom:28px}
.franchise-network h2{font-size:clamp(32px,4.2vw,64px);margin:0;max-width:18ch}
.franchise-network ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.franchise-network a{display:block;color:inherit}
.franchise-network ul img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#d8c49f}
.franchise-network span{
  display:block;
  margin-top:10px;
  font:400 22px/1 var(--font-display),Georgia,serif;
}

.recruit-form{
  display:flex;
  flex-direction:column;
  gap:18px;
  margin-top:32px;
  padding-top:24px;
  border-top:1px solid #17171722;
  width:min(420px,100%);
  text-align:left;
}
.recruit-form .recruit-field{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin:0;
  font:500 11px/1.2 'JS Inter',sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#17171799;
}
.recruit-form .recruit-field-wide{width:100%}
.recruit-form input,
.recruit-form textarea{
  display:block;
  width:100%;
  min-height:0;
  height:36px;
  border:0;
  border-bottom:1.5px solid #171717;
  background:transparent;
  color:#171717;
  font:15px/1.4 'JS Inter',Arial,sans-serif;
  letter-spacing:0;
  text-transform:none;
  padding:6px 0 8px;
  outline:none;
  box-sizing:border-box;
}
.recruit-form textarea{
  height:auto;
  min-height:108px;
  padding:10px 0;
  resize:none;
  line-height:1.45;
}
.recruit-form input::placeholder,
.recruit-form textarea::placeholder{color:#17171766}
.recruit-form .button{align-self:flex-start;margin-top:4px}
.recruit-form-note{margin:0 0 4px;font:13px/1.5 'JS Inter',sans-serif;text-transform:none;letter-spacing:0;color:#17171799;max-width:36ch}
.form-legal{
  margin:0;
  font:13px/1.5 'JS Inter',sans-serif;
  letter-spacing:0;
  text-transform:none;
  color:#17171799;
  max-width:42ch;
}
.form-legal a{text-decoration:underline;text-underline-offset:3px;color:inherit}
.franchise-letter .form-legal{grid-column:1/-1}
.form-sent{
  margin:0 0 8px;
  font:14px/1.45 'JS Inter',sans-serif;
  letter-spacing:0;
  text-transform:none;
  color:#171717;
}
.form-sent.is-error{color:#9a1f28}
.franchise-letter .form-sent,
.newsletter-form .form-sent{flex:1 1 100%;grid-column:1/-1}
.newsletter-consent{
  flex:1 1 100%;
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin:4px 0 0;
  text-align:left;
  font:13px/1.45 'JS Inter',sans-serif;
  color:#171717;
  max-width:42ch;
}
.newsletter-consent input{
  flex:none;
  width:auto;
  height:auto;
  margin:3px 0 0;
  accent-color:#171717;
}
.newsletter-consent a{text-decoration:underline;text-underline-offset:3px}

body.legal-page main#main{max-width:none;padding:0}
.legal{padding:150px var(--gutter) 96px;max-width:860px}
.legal-hero h1{
  font-size:clamp(34px,5.4vw,68px);
  margin:0 0 28px;
}
.legal-hero h1>.heading-line,
.legal-hero h1>.heading-script{
  white-space:normal;
  max-width:none;
}
.legal-switch{
  display:flex;
  flex-wrap:wrap;
  gap:10px 22px;
  padding:22px 0 0;
  border-top:1px solid #17171722;
}
.legal-switch a{
  font:500 13px/1.2 'JS Inter',sans-serif;
  letter-spacing:.04em;
  border-bottom:1px solid transparent;
  padding-bottom:3px;
}
.legal-switch a:hover,
.legal-switch a[aria-current="page"]{border-bottom-color:#171717}
.legal-body{padding-top:40px}
.legal-body section{margin:0 0 40px}
.legal-body h2{
  font:400 28px/1.15 var(--font-display),Georgia,serif;
  letter-spacing:-.03em;
  margin:0 0 14px;
}
.legal-body p,
.legal-body li{
  font:16px/1.6 'JS Inter',sans-serif;
  max-width:58ch;
  margin:0 0 12px;
}
.legal-body ul{margin:0 0 12px;padding-left:1.15em}
.legal-body a{text-decoration:underline;text-underline-offset:3px}
.legal-body .table-scroll{overflow-x:auto;margin:0 0 16px}
.legal-body table{width:100%;min-width:520px;border-collapse:collapse;font:13px/1.45 'JS Inter',sans-serif;margin:0}
.legal-body th,.legal-body td{border-bottom:1px solid #17171722;padding:9px 12px 9px 0;text-align:left;vertical-align:top}
.legal-body th{font-weight:600}
.legal-body blockquote{
  border:1px solid #171717;
  padding:1em 1.2em;
  margin:1.4em 0;
}
.legal-body blockquote p{max-width:none;font-size:14px;line-height:1.55}

.footer-bottom{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 22px;
  justify-content:space-between;
}
.footer-legal{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  margin:0;
}
.footer-legal a{
  font:500 12px/1.3 'JS Inter',sans-serif;
}

@media(max-width:760px){
  .legal{padding:110px 24px 72px}
}

@media(max-width:900px){
  .fiche{grid-template-columns:1fr}
  .fiche-visual{min-height:48svh}
  .part-hero-grid,
  .part-keewe,
  .franchise-split{grid-template-columns:1fr}
  .part-causes li{grid-template-columns:2.4rem 1fr;gap:10px 16px}
  .part-causes li em{grid-column:2;justify-self:start;text-align:left}
  .franchise-network ul{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  body.page main#main{padding:110px 24px 64px}
  body.fiche-page main#main{padding:90px 0 0}
  body.part-page main#main,
  body.franchise-inner main#main,
  body.legal-page main#main{padding:0}
  .fiche-copy{padding:36px 24px 64px}
  .part-hero,
  .franchise-copy{padding:110px 24px 48px}
  .part-keewe,
  .part-causes,
  .franchise-network{padding-inline:24px}
  .part-keewe{
    background:linear-gradient(180deg,#e5dd9b 0 64%,#d0c047 64% 100%);
  }
  .franchise-letter{padding:48px 24px 56px}
  .franchise-letter,
  .franchise-when{grid-template-columns:1fr}
  .franchise-network ul{grid-template-columns:1fr 1fr;gap:16px 12px}
}
body .footer-light{
  position:relative;
  z-index:1;
  width:100%;
  max-width:none;
  margin-inline:0;
  overflow:visible;
  isolation:auto;
  background:transparent;
  color:#171717;
}
body:not(.page) .footer-light{overflow:hidden}
body .footer-light:before{display:none}
body .footer-light .footer-directory,
body .footer-light .footer-brand-scene,
body .footer-light .footer-bottom{position:relative;z-index:1;color:#171717}
body .footer-directory nav{font-size:14px;line-height:1.5}
body .footer-directory nav .eyebrow{font-size:11px;letter-spacing:.12em;color:#17171788}
body .footer-directory a,
body .footer-directory button{color:#171717}
body.motion-ticker .shop-window{overflow-x:hidden;scroll-snap-type:none;touch-action:pan-y}
body.motion-ticker .shop-window.is-dragging{touch-action:none;cursor:grabbing}
body.motion-ticker .shop-card{scroll-snap-align:none}
body .footer-small-brand{
  display:block;
  justify-self:start;
  width:max-content;
  max-width:100%;
  margin:0;
  padding:0;
  line-height:0;
}
body .footer-small-brand img{
  display:block;
  width:auto;
  height:120px;
  max-width:none;
  object-fit:contain;
  object-position:left top;
  margin:0;
  filter:none;
}
body .footer-brand-scene>p{color:#171717;position:relative;z-index:3}
body .footer-light .footer-bottom{border-color:#17171728;color:#17171799;font-size:12px}
body:not(.page) .footer-bottom{
  justify-content:flex-end;
  column-gap:28px;
}
body:not(.page) .footer-bottom>span{margin-right:auto}
body .footer-large-name{display:none}
body .footer-brand-scene{display:flex;align-items:flex-end;justify-content:space-between;gap:4vw}
body .footer-drawn-brand{justify-content:flex-end;gap:0;color:#171717}
body .logo-trace{width:clamp(220px,32vw,520px);flex-shrink:0}
body .logo-trace path{stroke:#171717;fill:none}
body:not(.page) .footer-drawn-brand{display:none}
.footer-bags{
  position:absolute;
  left:calc(var(--gutter) + 10.5rem);
  bottom:0;
  z-index:2;
  width:min(40vw,440px);
  aspect-ratio:11/9;
  margin:0;
  pointer-events:none;
  opacity:0;
}
.footer-bag{
  position:absolute;
  bottom:0;
  margin:0;
}
.footer-bag-vert{
  right:-6%;
  width:56%;
  z-index:1;
}
.footer-bag-vert .footer-bag-shift{
  display:block;
  transform:translateY(20%) rotate(13deg);
  transform-origin:50% 90%;
}
.footer-bag-rouge{
  left:0;
  width:64%;
  z-index:2;
}
.footer-bag-rouge .footer-bag-shift{
  display:block;
  transform:translateY(10%) rotate(-11deg);
  transform-origin:50% 90%;
}
.footer-bag img{
  width:100%;
  height:auto;
  display:block;
  filter:drop-shadow(0 16px 22px #c4a0904d) drop-shadow(0 2px 6px #8a6a5833);
}
.footer-bags.is-in .footer-bag-rouge .footer-bag-bob{
  display:block;
  animation:footer-bag-float-rouge 5.2s ease-in-out infinite;
}
.footer-bags.is-in .footer-bag-vert .footer-bag-bob{
  display:block;
  animation:footer-bag-float-vert 6.4s ease-in-out .35s infinite;
}
@keyframes footer-bag-float-rouge{
  0%,100%{transform:translate3d(0,0,0) rotate(0deg)}
  50%{transform:translate3d(-5px,-12px,0) rotate(-1.8deg)}
}
@keyframes footer-bag-float-vert{
  0%,100%{transform:translate3d(0,0,0) rotate(0deg)}
  50%{transform:translate3d(6px,-9px,0) rotate(2deg)}
}

body.page .site-end{
  background:#fffcf5;
  color:#171717;
  border-top:1px solid #17171724;
}
body.page .footer-mesh,
body.page .footer-split{display:none}
body.page .footer-light{
  background:transparent;
  color:#171717;
}
body.page .footer-light .footer-directory,
body.page .footer-light .footer-brand-scene,
body.page .footer-light .footer-bottom{color:#171717}
body.page .footer-directory nav .eyebrow{color:#17171788}
body.page .footer-directory a,
body.page .footer-directory button{color:#171717}
body.page .footer-small-brand img{filter:none}
body.page .footer-brand-scene>p{color:#171717}
body.page .footer-light .footer-bottom{border-color:#17171728;color:#17171799}
body.page .footer-drawn-brand{color:#171717}
body.page .logo-trace path{stroke:#171717}

@media(max-width:900px){
  body .stores .section-heading.heading-title-end{grid-template-columns:1fr;gap:22px}
  body .stores .heading-title-end>div:last-child,
  body .stores .heading-title-end h2.composed-heading{text-align:left;align-items:flex-start;justify-self:start}
  body .club-scrapbook{min-height:620px}
  body .club-scrapbook .club-core{
    width:min(640px,88%);
    max-width:640px;
    padding:0 18px;
  }
  body .club-scrapbook .club-wing{width:38%}
  body .club-scrapbook .junette-human-a{width:58%;left:2%;top:16%;bottom:auto}
  body .club-scrapbook .junette-peek{width:32%;left:-6%;top:6%}
  body .club-scrapbook .junette-human-b{width:52%;right:8%;top:10%}
  body .club-scrapbook .junette-left{display:none}
  body .club-scrapbook .junette-right{width:54%;right:-8%;bottom:2%}
}
@media(max-width:760px){
  body .story{grid-template-columns:1fr;padding-block:65px;gap:28px}
  body .story .story-text,
  body .story .story-copy{grid-column:1;grid-row:auto}
  body .story .story-film{grid-column:1;grid-row:auto;width:100%;justify-self:center}
  body .story .story-copy{margin-top:18px}
  .js-field-mark{width:min(78vw,420px);right:-36%;opacity:.1}
  body .selection .section-heading.heading-center{align-items:flex-start;text-align:left}
  body .selection .heading-center h2.composed-heading{align-items:flex-start}
  body .club-scrapbook{padding:0;min-height:min(88svh,760px)}
  body .club-scrapbook .club-core{width:min(420px,90%);max-width:420px;padding:0 16px}
  body .club-scrapbook .club-copy .club-overline{font-size:18px;max-width:none;margin-bottom:14px}
  body .club-scrapbook .club-copy>p:not(.club-overline){font-size:16px;max-width:none}
  body .club-complete-background{width:180%!important}
  body .club-scrapbook .club-copy .button,
  body .club-scrapbook .club-copy a.button{font-size:16px!important;min-height:50px;padding:12px 22px!important}
  body .club-scrapbook .club-top .eyebrow{font-size:12px}
  body .hero-heading .eyebrow{font-size:12px}
  body .hero-club{font-size:16px;min-height:50px;padding:10px 20px}
  body .club-scrapbook .club-wing{width:46%}
  body .club-scrapbook .junette-human-a{width:70%;left:-4%;top:22%}
  body .club-scrapbook .junette-peek{width:40%;left:-10%;top:18%}
  body .club-scrapbook .junette-human-b{width:64%;right:-2%;top:20%}
  body .club-scrapbook .junette-right{width:68%;right:-14%;bottom:12%}
  body .club-scrapbook .star{width:28%;left:48%;top:52%}
  body .club-scrapbook .butterfly{width:34%;left:-8%;bottom:20%}
  body .club-scrapbook .rhinestones{width:30%;left:18%;bottom:16%}
  body .club-scrapbook .strawberry,
  body .club-scrapbook .heart,
  body .club-scrapbook .cloud{display:none}
  body .club-scrapbook .paper-label{font-size:16px;right:10px;bottom:10px}
  body .commitments{padding:56px 24px 64px}
  .js-gesture{
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:center;
    gap:2px;
    font-size:clamp(40px,12.5vw,56px);
    line-height:.95;
    perspective:none;
    width:100%;
    max-width:100%;
  }
  .js-gesture .gesture-word{justify-content:center}
  .js-gesture .gesture-hand-alt{font-size:1em}
  .js-gesture .gesture-script{font-size:1.18em;line-height:.9}
  .js-gesture span[aria-hidden]{display:none}
  body .faq-sober,
  body .faq-playful{margin:20px 24px 55px}
  body .faq-sober h2,
  body .faq-playful h2{white-space:normal}
  body .faq-sober .faq-list,
  body .faq-playful .faq-list{
    grid-template-columns:1fr;
    grid-template-rows:none;
    grid-auto-flow:row;
  }
  .prefooter{padding:80px 24px 72px;text-align:left;align-items:flex-start;width:100%;box-sizing:border-box}
  .prefooter h2.composed-heading{align-items:flex-start;font-size:clamp(34px,10.5vw,52px);width:100%;max-width:100%}
  .prefooter h2.composed-heading>.heading-line,
  .prefooter h2.composed-heading>.heading-script{white-space:normal;text-wrap:balance;max-width:100%;padding-right:0}
  .prefooter-copy{margin-left:0;max-width:100%;padding-right:8px}
  .franchise-form{grid-template-columns:1fr;width:100%}
  .newsletter{padding:64px 24px 72px;align-items:flex-start;text-align:left;width:100%;box-sizing:border-box}
  .newsletter h2.composed-heading{align-items:flex-start;font-size:clamp(34px,10.5vw,52px);width:100%;max-width:100%}
  .newsletter h2.composed-heading>.heading-line,
  .newsletter h2.composed-heading>.heading-script{white-space:normal;text-wrap:balance;max-width:100%}
  body .footer-light{padding-inline:24px}
  body .footer-directory{gap:28px 18px}
  body .footer-small-brand{justify-self:start;width:max-content}
  body .footer-small-brand img{width:auto;height:96px;max-width:none;object-position:left top}
  .footer-bags{width:min(70vw,280px);left:calc(24px + 6.2rem)}
  body:not(.page) .footer-legal{flex:1 1 auto;justify-content:flex-end}
  .newsletter-form{width:100%;justify-content:flex-start}
  body .join-editorial .join-portrait img,
  body .join-editorial .join-portrait video{height:auto}
  body .logo-trace{width:min(58vw,280px)}
}
@media(prefers-reduced-motion:reduce){
  .prefooter h2 .heading-script{animation:none;color:#d8303c}
  .newsletter h2 .heading-script{animation:none;color:#171717}
  body .club-scrapbook .junette-cutout,
  body .club-scrapbook .club-sticker,
  body .club-scrapbook .paper-label{animation:none}
  body .shop-monogram,
  body .shop-concept,
  body .shop-city,
  body .shop-more,
  body .shop-more b{transition:none;animation:none}
  .js-gesture .gesture-word{transition:none}
  .footer-bags{opacity:1}
  .footer-bags.is-in .footer-bag-bob{animation:none}
}
