/* Recovery navigation: native drawers use ivory backgrounds, not dark dial glass. */
@media (max-width: 1100px) {
  body :is(#route-home, [data-route]) .sf-primary-nav[data-open="true"]:not(:has(.sf-menu-editorial)) a {
    color: #221b16 !important;
    opacity: 1 !important;
  }
}
/* Small progressive enhancements layered above the preserved Selisva bundle. */

#sf-whatsapp-float {
  position: fixed;
  right: 22px;
  bottom: 82px;
  z-index: 1200;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(255, 255, 255, 0.88);
  border-radius: 50%;
  color: #ffffff;
  background: #25d366;
  box-shadow: 0 12px 28px rgba(18, 101, 56, 0.28);
  text-decoration: none;
  transition: transform 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}

/* Approved Journal layout: controlled editorial masonry. */
#route-fashion-week-ss27 [id$="-art-head"],
#route-fashion-week-ss27 [id$="-art-head"] > *,
#route-beauty-of-contrasts-in-fashion [id$="-art-head"],
#route-beauty-of-contrasts-in-fashion [id$="-art-head"] > *,
#route-why-the-same-outfit-looks-expensive [id$="-art-head"],
#route-why-the-same-outfit-looks-expensive [id$="-art-head"] > * {
  height: auto !important;
  min-height: 0 !important;
  flex: 0 0 auto !important;
}

#route-fashion-week-ss27 .sf-article-hero,
#route-beauty-of-contrasts-in-fashion .sf-article-hero,
#route-why-the-same-outfit-looks-expensive .sf-article-hero {
  max-width: 740px !important;
}

#route-fashion-week-ss27 .sf-article-hero img,
#route-beauty-of-contrasts-in-fashion .sf-article-hero img {
  max-height: none !important;
  height: auto !important;
}

:is(#route-beauty-of-contrasts-in-fashion, #route-why-the-same-outfit-looks-expensive) .sf-article-body .sf-contrasts-inline-cta {
  display: block !important;
  margin: 46px 0 !important;
  padding: clamp(26px, 4vw, 42px) !important;
  border: 1px solid #d5c4ae !important;
  border-left: 4px solid #8a5a36 !important;
  background: #f0e8dc !important;
  color: #221b16 !important;
  text-align: left !important;
}

:is(#route-beauty-of-contrasts-in-fashion, #route-why-the-same-outfit-looks-expensive) .sf-article-body .sf-contrasts-inline-cta .sf-meta {
  color: #815231 !important;
  font-size: 11px !important;
  letter-spacing: .2em !important;
  text-transform: uppercase;
}

:is(#route-beauty-of-contrasts-in-fashion, #route-why-the-same-outfit-looks-expensive) .sf-article-body .sf-contrasts-inline-cta h2 {
  margin: 14px 0 15px !important;
  color: #221b16 !important;
  font-family: 'Gilda Display', Georgia, serif;
  font-size: clamp(27px, 3vw, 37px) !important;
  font-weight: 400 !important;
  line-height: 1.16 !important;
}

:is(#route-beauty-of-contrasts-in-fashion, #route-why-the-same-outfit-looks-expensive) .sf-article-body .sf-contrasts-inline-cta p {
  max-width: 54ch;
  margin: 0 0 25px !important;
  color: #4a4038 !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

:is(#route-beauty-of-contrasts-in-fashion, #route-why-the-same-outfit-looks-expensive) .sf-article-body .sf-contrasts-inline-cta .sf-cta-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: 48px;
  box-sizing: border-box;
  padding: 12px 20px !important;
  border: 1px solid #34251e !important;
  background: #34251e !important;
  color: #f5f1ea !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
  letter-spacing: .14em !important;
  text-align: center;
  text-decoration: none !important;
  text-transform: uppercase;
}

:is(#route-beauty-of-contrasts-in-fashion, #route-why-the-same-outfit-looks-expensive) .sf-article-body .sf-contrasts-inline-cta .sf-cta-btn:hover,
:is(#route-beauty-of-contrasts-in-fashion, #route-why-the-same-outfit-looks-expensive) .sf-article-body .sf-contrasts-inline-cta .sf-cta-btn:focus-visible {
  background: #65432f !important;
  color: #fff !important;
}

@media (max-width: 600px) {
  :is(#route-beauty-of-contrasts-in-fashion, #route-why-the-same-outfit-looks-expensive) .sf-article-body .sf-contrasts-inline-cta {
    margin: 34px 0 !important;
    padding: 24px 20px !important;
  }
  :is(#route-beauty-of-contrasts-in-fashion, #route-why-the-same-outfit-looks-expensive) .sf-article-body .sf-contrasts-inline-cta .sf-cta-btn {
    width: 100%;
  }
}

.sf-contrasts-related {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 56px 72px;
}
.sf-contrasts-related h2 {
  font-family: 'Gilda Display', Georgia, serif;
  font-weight: 400;
  font-size: 32px;
}
.sf-contrasts-related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: 28px;
  margin-bottom: 30px;
}
.sf-contrasts-related-grid img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
.sf-contrasts-related-grid h3 {
  font-family: 'Gilda Display', Georgia, serif;
  font-size: 22px;
  line-height: 1.3;
  font-weight: 400;
}
@media (max-width: 760px) {
  .sf-contrasts-related { padding: 0 20px 54px; }
  .sf-contrasts-related-grid { grid-template-columns: minmax(0, 1fr); }
}

#route-fashion-week-ss27 .sf-article-body h3 {
  font-family: 'Gilda Display', Georgia, serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 1.35;
  margin: 36px 0 18px;
}

#route-journal #j-wall {
  padding-right: clamp(24px, 5vw, 80px) !important;
  padding-left: clamp(24px, 5vw, 80px) !important;
}

#route-journal #j-wall::before {
  display: block;
  width: 100%;
  height: 1px;
  margin: 0 0 clamp(28px, 3vw, 42px);
  background: #dbd1c1;
  content: "";
}

#route-journal #j-wall .sf-journal-grid {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: clamp(42px, 5vw, 72px) clamp(18px, 2.5vw, 38px) !important;
  align-items: start;
}

#route-journal #j-wall .sf-journal-grid > figure {
  grid-column: span 4;
  min-width: 0;
  margin: 0 !important;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(1) {
  grid-column: 1 / span 8;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(2) {
  grid-column: 9 / span 4;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(3) {
  grid-column: 1 / span 5;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(4) {
  grid-column: 6 / span 4;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(5) {
  grid-column: 10 / span 3;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(6) {
  grid-column: 1 / span 4;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(7) {
  grid-column: 5 / span 4;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(8) {
  grid-column: 9 / span 4;
}

#route-journal #j-wall .sf-journal-card {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
}

#route-journal #j-wall .sf-journal-card-img {
  position: relative;
  overflow: hidden;
  margin: 0 0 22px !important;
  background: #e9e0d4;
}

#route-journal #j-wall .sf-journal-card-img::after {
  position: absolute;
  inset: 12px;
  border: 1px solid rgb(255 255 255 / 26%);
  content: "";
  pointer-events: none;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(n) .sf-journal-card-img {
  display: block !important;
  aspect-ratio: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

#route-journal #j-wall .sf-journal-grid > figure:nth-child(n) .sf-journal-card-img img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
  transition: filter 0.8s ease !important;
}

#route-journal #j-wall .sf-journal-card:hover .sf-journal-card-img img {
  filter: saturate(0.88);
}

#route-journal #j-wall .sf-journal-card > div:last-child::after {
  display: block;
  margin-top: 24px;
  padding-top: 17px;
  border-top: 1px solid #dbd1c1;
  color: #7b3f3a;
  content: "Read the article  →";
  font-family: Arial, sans-serif;
  font-size: 9px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

#route-journal #j-wall .sf-journal-grid > figure:first-child .sf-title-md {
  max-width: none;
  width: 100%;
  text-wrap: balance;
  font-size: clamp(31px, 3.2vw, 46px) !important;
  line-height: 1.12 !important;
}

@media (min-width: 901px) {
  #route-journal #j-wall .sf-journal-grid > figure.sf-journal-fashion-week .sf-title-md {
    font-size: clamp(30px, 2.6vw, 40px) !important;
  }
}

@media (max-width: 900px) {
  #route-journal #j-wall .sf-journal-grid {
    display: block !important;
  }

  #route-journal #j-wall .sf-journal-grid > figure {
    width: 100%;
    margin: 0 0 54px !important;
  }

  #route-journal #j-wall .sf-journal-grid > figure .sf-journal-card-img {
    aspect-ratio: auto !important;
  }

  #route-journal #j-wall .sf-journal-grid > figure:first-child .sf-journal-card-img {
    aspect-ratio: auto !important;
  }

  #route-journal #j-wall .sf-journal-grid > figure:nth-child(n) .sf-journal-card-img img {
    height: auto !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  #route-journal #j-wall .sf-journal-grid > figure:first-child .sf-title-md {
    max-width: none;
    font-size: 30px !important;
  }
}

#sf-whatsapp-float:hover {
  color: #ffffff;
  background: #1fbd5a;
  box-shadow: 0 15px 34px rgba(18, 101, 56, 0.36);
  transform: translateY(-2px);
}

#sf-whatsapp-float:focus-visible {
  outline: 3px solid #221b16;
  outline-offset: 3px;
}

#sf-whatsapp-float svg {
  display: block;
  width: 26px;
  height: 26px;
  fill: currentColor;
}

#sf-back-top {
  left: 22px !important;
  right: auto !important;
}

.avatar-slot {
  position: relative !important;
}

.avatar-slot > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
}

.sf-context-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 36px;
  align-items: end;
  margin: 64px 0 0;
  padding: 34px 0 8px;
  border-top: 1px solid rgba(34, 27, 22, 0.2);
  color: #221b16;
  font-family: "Sorts Mill Goudy", Georgia, serif;
}

.sf-context-cta__copy {
  max-width: 660px;
}

.sf-context-cta__eyebrow {
  margin: 0 0 12px !important;
  color: #8c8175 !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.26em;
  text-transform: uppercase;
}

.sf-context-cta h2 {
  margin: 0 !important;
  color: inherit;
  font-family: "Gilda Display", Georgia, serif !important;
  font-size: clamp(25px, 2.5vw, 37px) !important;
  font-weight: 400 !important;
  line-height: 1.16 !important;
}

.sf-context-cta__description {
  max-width: 590px;
  margin: 14px 0 0 !important;
  color: #5f554c !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

.sf-context-cta__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  min-width: 245px;
}

.sf-context-cta__primary,
.sf-context-cta__secondary {
  display: inline-flex;
  align-items: center;
  color: inherit !important;
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  transition: color 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.sf-context-cta__primary {
  padding: 13px 18px 11px;
  border: 1px solid rgba(34, 27, 22, 0.48);
}

.sf-context-cta__secondary {
  padding-bottom: 5px;
  border-bottom: 1px solid rgba(34, 27, 22, 0.35);
}

.sf-context-cta__primary::after,
.sf-context-cta__secondary::after {
  margin-left: 12px;
  content: "→";
  letter-spacing: 0;
}

.sf-context-cta__primary:hover,
.sf-context-cta__secondary:hover,
.sf-context-cta__primary:focus-visible,
.sf-context-cta__secondary:focus-visible {
  color: #8a5a36 !important;
  border-color: #8a5a36;
  transform: translateX(2px);
}

.sf-context-cta--dark {
  border-color: rgba(245, 241, 234, 0.3);
  color: #f5f1ea;
}

.sf-context-cta--dark .sf-context-cta__eyebrow,
.sf-context-cta--dark .sf-context-cta__description {
  color: #c9bca7 !important;
}

.sf-context-cta--dark .sf-context-cta__primary,
.sf-context-cta--dark .sf-context-cta__secondary {
  color: #f5f1ea !important;
  border-color: rgba(245, 241, 234, 0.55);
}

.sf-context-cta--dark .sf-context-cta__primary:hover,
.sf-context-cta--dark .sf-context-cta__secondary:hover {
  color: #d4aa7a !important;
  border-color: #d4aa7a;
}

.sf-home-cta--approach {
  max-width: 1120px;
  margin-right: auto;
  margin-left: auto;
}

.sf-home-cta--guide {
  margin-top: 76px;
}

.sf-journal-cta {
  margin-top: 92px;
}

.sf-article-context-cta {
  margin-top: 56px;
  padding-top: 28px;
}

.sf-article-context-cta h2 {
  font-size: clamp(23px, 2.1vw, 31px) !important;
}

.sf-article-context-cta .sf-context-cta__description {
  display: none;
}

.sf-guide-cta {
  max-width: 720px;
  margin: 56px auto 80px;
  padding: 36px 28px 30px;
  border: 1px solid rgba(34, 27, 22, 0.18);
  background: #faf8f3;
}

.sf-mobile-method {
  display: none;
}

#h-seasons .premium-btn-light {
  display: inline-flex !important;
  min-height: 56px;
  align-items: center;
  justify-content: center;
  padding: 17px 24px 15px !important;
  border: 1px solid #f5f1ea !important;
  color: #2a211b !important;
  background: #f5f1ea !important;
  box-shadow: 0 12px 30px rgba(10, 7, 5, 0.18);
  font-size: 12px !important;
  letter-spacing: 0.2em !important;
  line-height: 1.3;
  text-transform: uppercase;
  transition:
    color 180ms ease,
    background-color 180ms ease,
    transform 180ms ease,
    box-shadow 180ms ease;
}

#h-seasons .premium-btn-light::after {
  margin-left: 18px;
  content: "↗";
  font-size: 16px;
  letter-spacing: 0;
}

#h-seasons .premium-btn-light:hover,
#h-seasons .premium-btn-light:focus-visible {
  color: #f5f1ea !important;
  background: #985943 !important;
  border-color: #985943 !important;
  box-shadow: 0 16px 36px rgba(10, 7, 5, 0.28);
  transform: translateY(-2px);
}

@media (max-width: 760px) {
  .sf-context-cta {
    grid-template-columns: 1fr;
    gap: 26px;
    margin-top: 48px;
    padding-top: 28px;
  }

  .sf-context-cta__actions {
    min-width: 0;
  }

  .sf-context-cta__primary,
  .sf-context-cta__secondary {
    font-size: 10px;
  }

  .sf-guide-cta {
    margin: 20px 12px 48px;
    padding: 28px 22px;
  }
}

@media (max-width: 600px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  [id^="route-"],
  [id^="route-"] *,
  [id^="route-"] *::before,
  [id^="route-"] *::after {
    box-sizing: border-box;
    min-width: 0;
  }

  [id^="route-"] {
    max-width: 100%;
    overflow-x: clip;
  }

  .sf-context-cta {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 40px;
    padding: 24px 0 4px;
    text-align: left;
  }

  .sf-context-cta__copy {
    max-width: none;
  }

  .sf-context-cta__eyebrow {
    margin-bottom: 9px !important;
    font-size: 8px !important;
    letter-spacing: 0.2em;
  }

  .sf-context-cta h2 {
    font-size: 23px !important;
    line-height: 1.2 !important;
  }

  .sf-context-cta__description {
    margin-top: 10px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
  }

  .sf-context-cta__actions {
    width: 100%;
    min-width: 0;
    align-items: flex-start;
    gap: 8px;
  }

  .sf-context-cta__primary,
  .sf-context-cta__secondary {
    width: auto;
    max-width: 100%;
    min-height: 44px;
    justify-content: center;
    padding: 9px 13px 8px;
    font-size: 9px;
    line-height: 1.35;
    letter-spacing: 0.12em;
    text-align: center;
  }

  .sf-context-cta__secondary {
    padding-right: 4px;
    padding-left: 4px;
  }

  #sf-home-guide-cta {
    margin-top: 42px;
    padding: 26px 12px 2px;
    text-align: center;
  }

  #sf-home-guide-cta .sf-context-cta__copy,
  #sf-home-guide-cta .sf-context-cta__actions {
    align-items: center;
    margin-right: auto;
    margin-left: auto;
  }

  #sf-home-guide-cta h2 {
    max-width: 300px;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  #sf-home-guide-cta .sf-context-cta__primary,
  #sf-home-guide-cta .sf-context-cta__secondary {
    width: auto;
    max-width: 300px;
  }

  #route-home nav {
    padding: 16px 20px !important;
  }

  #route-home nav > div {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 16px !important;
  }

  #route-home header h1 {
    max-width: calc(100vw - 40px);
    font-size: 40px !important;
  }

  #route-home header > div:first-child {
    gap: 44px !important;
    padding: 58px 20px 52px !important;
  }

  #route-home header > div:last-child {
    min-height: 520px !important;
  }

  #h-manifesto {
    padding: 76px 20px !important;
  }

  #h-manifesto p {
    max-width: 34ch;
    font-size: 23px !important;
    line-height: 1.48 !important;
  }

  #h-services,
  #h-looks {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }

  #h-services > .premium-section-inner,
  #h-about > .premium-section-inner,
  #h-method > .premium-section-inner {
    display: block !important;
  }

  #h-services > .premium-section-inner > div:first-child,
  #h-method > .premium-section-inner > div:first-child {
    position: static !important;
  }

  #h-services > .premium-section-inner > div:last-child > div {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    gap: 8px 14px !important;
    padding: 28px 0 !important;
  }

  #h-services > .premium-section-inner > div:last-child > div > p {
    grid-column: 2;
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  #h-fitting {
    height: 46vh !important;
    min-height: 280px;
  }

  #h-fitting > div {
    left: 20px !important;
    bottom: 22px !important;
  }

  #h-approach {
    padding: 78px 20px 72px !important;
  }

  #h-approach > h2 {
    margin-bottom: 46px !important;
    font-size: 34px !important;
  }

  #h-approach .sf-story-grid,
  #h-approach > div[style*="repeat(3, 1fr)"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  #h-approach .sf-story-grid > div,
  #h-approach > div[style*="repeat(3, 1fr)"] > div {
    margin: 0 !important;
  }

  #h-approach .sf-story-grid > div > div:nth-child(2) {
    font-size: 22px !important;
  }

  #h-approach .sf-story-grid p {
    font-size: 17px !important;
    line-height: 1.6 !important;
  }

  #h-looks > .premium-section-inner {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  #h-looks figure {
    margin: 0 !important;
  }

  #h-about > .premium-section-inner {
    padding: 74px 20px !important;
  }

  #h-about blockquote {
    padding-left: 18px !important;
  }

  #h-method {
    padding: 76px 20px 84px !important;
  }

  #h-method > .premium-section-inner {
    display: block !important;
  }

  #h-method > .premium-section-inner > div:first-child {
    display: none !important;
  }

  #h-method > .premium-section-inner > div:last-child > p {
    margin-bottom: 34px !important;
  }

  #h-method > .premium-section-inner > div:last-child > div[style*="grid-template-columns"] {
    display: none !important;
  }

  #h-method .sf-mobile-method {
    display: flex !important;
    width: 100% !important;
    height: auto !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    grid-auto-columns: auto !important;
    grid-auto-rows: auto !important;
  }

  #h-method .sf-mobile-method__story {
    position: relative;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    align-self: auto !important;
    flex: 0 0 auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
    margin: 0;
    overflow: hidden;
    border: 1px solid #d6cbb9;
    background: #f6f1e8;
    box-shadow: 0 12px 26px rgba(55, 42, 32, 0.12);
    transform: none;
    transition:
      margin 420ms cubic-bezier(0.22, 1, 0.36, 1),
      transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 420ms ease;
  }

  #h-method .sf-mobile-method__story:nth-child(even) {
    transform: none;
  }

  #h-method .sf-mobile-method__story[data-open="true"] {
    z-index: 5;
    margin: 0;
    box-shadow: 0 20px 38px rgba(55, 42, 32, 0.2);
    transform: none;
  }

  #h-method .sf-mobile-method__figure {
    position: relative;
    display: block !important;
    width: 100% !important;
    height: 88px !important;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #e0d6c6;
    transition: height 520ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  #h-method .sf-mobile-method__story[data-open="true"] .sf-mobile-method__figure {
    height: auto !important;
  }

  #h-method .sf-mobile-method__image {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    opacity: 1 !important;
    object-fit: contain !important;
    object-position: center !important;
    transform: none !important;
  }

  #h-method .sf-mobile-method__trigger {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) 24px;
    gap: 10px;
    align-items: center;
    width: 100%;
    min-height: 76px;
    padding: 14px 18px;
    border: 0;
    border-bottom: 1px solid #d6cbb9;
    color: #221b16;
    background: #f6f1e8;
    font: inherit;
    text-align: left;
    cursor: pointer;
  }

  #h-method .sf-mobile-method__number {
    color: #9d6d49;
    font-family: "Gilda Display", Georgia, serif;
    font-size: 14px;
    letter-spacing: 0.08em;
  }

  #h-method .sf-mobile-method__trigger-title {
    font-family: "Gilda Display", Georgia, serif;
    font-size: 22px;
    line-height: 1.1;
  }

  #h-method .sf-mobile-method__trigger-icon {
    justify-self: end;
    font-size: 25px;
    font-weight: 300;
    line-height: 1;
    transition: transform 420ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  #h-method .sf-mobile-method__story[data-open="true"] .sf-mobile-method__trigger-icon {
    transform: rotate(45deg);
  }

  #h-method .sf-mobile-method__body {
    position: relative;
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    padding: 0 22px;
    overflow: hidden;
    border-top: 0 solid #d6cbb9;
    opacity: 0;
    transition:
      height 420ms cubic-bezier(0.22, 1, 0.36, 1),
      padding 420ms cubic-bezier(0.22, 1, 0.36, 1),
      border-width 420ms ease,
      opacity 260ms ease;
  }

  #h-method .sf-mobile-method__story[data-open="true"] .sf-mobile-method__body {
    height: auto !important;
    padding: 23px 22px 26px;
    border-top-width: 1px;
    opacity: 1;
  }

  #h-method .sf-mobile-method__body p {
    margin: 0 !important;
    color: #4a4038;
    font-size: 16px;
    line-height: 1.58;
  }

  #h-journal {
    padding: 76px 0 78px 20px !important;
  }

  #h-journal > .premium-section-inner {
    align-items: flex-start !important;
    flex-direction: column;
    gap: 24px;
    padding-right: 20px !important;
    margin-bottom: 36px !important;
  }

  #h-journal > .premium-section-inner + div {
    max-width: 100vw;
    gap: 20px !important;
    padding-right: 20px !important;
  }

  #h-journal article {
    flex: 0 0 min(76vw, 300px) !important;
  }

  #h-journal button,
  #h-instagram button {
    width: 44px !important;
    height: 44px !important;
  }

  #h-seasons {
    padding: 78px 20px !important;
  }

  #h-seasons .sf-guide-overview-grid,
  #h-seasons > div[style*="minmax(0, 340px)"] {
    display: block !important;
  }

  #h-seasons .sf-guide-overview-grid > div:first-child {
    position: static !important;
    margin-bottom: 40px;
  }

  #h-seasons .sf-guide-overview-grid > div:last-child > div {
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: 10px 14px !important;
    padding: 30px 0 !important;
  }

  #h-seasons .sf-guide-overview-grid > div:last-child > div > p {
    grid-column: 2;
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  #h-seasons .premium-btn,
  #h-enquire .premium-btn,
  [id$="-mid-cta"] a,
  section[id$="-cta"] a {
    display: inline-flex !important;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    padding: 9px 15px !important;
    font-size: 9px !important;
    line-height: 1.35;
    letter-spacing: 0.13em !important;
    text-align: center;
  }

  #h-seasons .premium-btn-light {
    width: 100% !important;
    min-height: 62px;
    padding: 18px 20px 16px !important;
    font-size: 13px !important;
    letter-spacing: 0.18em !important;
  }

  #h-trending {
    padding: 76px 20px 70px !important;
  }

  #h-trending > div {
    display: block !important;
  }

  #h-trending > div > div:first-child {
    position: static !important;
    margin-bottom: 34px;
  }

  #h-trending a {
    grid-template-columns: 34px minmax(0, 1fr) !important;
    gap: 10px 12px !important;
    padding: 26px 0 !important;
  }

  #h-trending a > div:last-child {
    grid-column: 2;
  }

  #h-instagram {
    padding-bottom: 78px !important;
  }

  #h-instagram > div:first-child {
    align-items: flex-start !important;
    padding: 0 20px !important;
  }

  #h-instagram .horizontal-rail {
    max-width: 100vw;
    padding: 0 20px !important;
  }

  #h-instagram .horizontal-rail > a {
    flex-basis: min(68vw, 270px) !important;
  }

  #h-enquire {
    padding: 76px 20px 82px !important;
  }

  #h-enquire > div {
    width: 100%;
    padding: 54px 20px !important;
  }

  #h-enquire > div > div:last-child {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    margin-top: 48px !important;
    padding-top: 34px !important;
  }

  #route-home footer {
    flex-direction: column !important;
    gap: 16px !important;
    padding: 38px 20px !important;
    text-align: center;
  }

  #route-home footer > div:last-child {
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px 22px !important;
  }

  #route-journal nav,
  .sf-article-route nav {
    padding: 16px 20px !important;
  }

  #route-journal #j-wall-head {
    padding: 52px 20px 38px !important;
  }

  #route-journal #j-wall-head h1 {
    max-width: 14ch;
    font-size: 36px !important;
  }

  #route-journal #j-wall {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }

  #route-journal #j-wall .sf-journal-grid,
  #route-journal #j-wall > div[style*="grid-template-columns"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  #route-journal #j-wall .sf-journal-grid > * {
    grid-column: auto !important;
    width: 100%;
  }

  #sf-journal-context-cta {
    margin-top: 52px;
  }

  #route-journal #j-cta {
    padding: 62px 20px 70px !important;
  }

  #route-journal footer,
  .sf-article-route footer {
    flex-direction: column !important;
    gap: 16px !important;
    padding: 38px 20px !important;
    text-align: center;
  }

  .sf-article-route [id$="-art-head"] {
    max-width: none !important;
    padding: 48px 20px 24px !important;
  }

  .sf-article-route [id$="-art-head"] h1 {
    font-size: 32px !important;
    line-height: 1.15 !important;
  }

  .sf-article-route [id$="-art-head"] > p {
    font-size: 18px !important;
  }

  .sf-article-route [id$="-art-tools"] > *,
  .sf-article-route [id$="-tools-bottom"] button,
  .sf-article-route [id$="-tools-bottom"] a {
    min-height: 44px !important;
  }

  .sf-article-route [id$="-art-hero"] {
    width: 100%;
    max-width: none !important;
    padding: 0 !important;
  }

  .sf-article-route [id$="-art-hero"] figcaption {
    padding: 0 20px;
    font-size: 10px !important;
    line-height: 1.5;
  }

  .sf-article-route [id$="-art-layout"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    padding: 30px 20px 68px !important;
  }

  .sf-article-route [id$="-side-menu"] {
    position: static !important;
    padding: 0 0 26px !important;
    border-right: 0 !important;
    border-bottom: 1px solid #ded5c6;
  }

  .sf-article-route [id$="-art-body"] {
    width: 100%;
    max-width: 100%;
  }

  .sf-article-route [id$="-art-body"] p,
  .sf-article-route [id$="-art-body"] li {
    font-size: 16px !important;
    line-height: 1.7 !important;
  }

  .sf-article-route [id$="-art-body"] h2 {
    font-size: 28px !important;
  }

  .sf-article-route [id$="-art-body"] ul,
  .sf-article-route [id$="-art-body"] ol {
    padding-left: 20px !important;
  }

  .sf-article-route [id$="-faq"] button {
    min-height: 44px;
    gap: 12px !important;
    padding: 20px 0 !important;
    font-size: 19px !important;
    line-height: 1.3;
  }

  .sf-article-route [id$="-mid-cta"] {
    display: block !important;
    margin: 36px 0 !important;
    padding: 24px 0 !important;
    line-height: 1.5;
  }

  .sf-article-route [id$="-author-card"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 16px !important;
  }

  .sf-article-route [id$="-author-card"] .avatar-slot {
    width: 76px !important;
    height: 76px !important;
    flex-basis: 76px !important;
  }

  .sf-article-route [id$="-related"] {
    padding: 0 20px 72px !important;
  }

  .sf-article-route [id$="-related"] > div:last-child {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .sf-article-route section[id$="-cta"] {
    padding: 62px 20px 70px !important;
  }

  .sf-article-context-cta {
    margin: 38px 0 0 !important;
    padding: 24px 0 4px !important;
    background: transparent !important;
    color: #221b16 !important;
    text-align: left !important;
  }

  .sf-article-context-cta .sf-context-cta__eyebrow {
    color: #8c8175 !important;
  }

  .sf-article-context-cta .sf-context-cta__primary,
  .sf-article-context-cta .sf-context-cta__secondary {
    color: #221b16 !important;
    border-color: rgba(34, 27, 22, 0.42) !important;
  }

  .sf-article-route section[id$="-cta"] {
    color: #f5f1ea !important;
  }

  .sf-article-route section[id$="-cta"] h2,
  .sf-article-route section[id$="-cta"] p {
    color: #f5f1ea !important;
  }

  #route-style-starts-with-you .sf-guide-reader {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    padding: 0 12px 42px;
  }

  #route-style-starts-with-you .sf-guide-reader__section {
    padding: 26px 20px 28px;
  }

  #route-style-starts-with-you .sf-guide-reader__section p {
    font-size: 16px;
    line-height: 1.65;
  }

  #route-style-starts-with-you .sf-guide-reader__section img {
    width: calc(100% + 40px);
    max-width: none;
    max-height: 360px;
    margin-right: -20px;
    margin-left: -20px;
    object-fit: cover;
  }

  #sf-guide-final-cta {
    width: auto;
    margin: 30px 12px 48px;
    padding: 26px 18px;
    text-align: center;
  }

  #sf-guide-final-cta .sf-context-cta__copy,
  #sf-guide-final-cta .sf-context-cta__actions {
    align-items: center;
    margin-right: auto;
    margin-left: auto;
  }

  #sf-guide-final-cta .sf-context-cta__primary,
  #sf-guide-final-cta .sf-context-cta__secondary {
    width: auto;
    max-width: 290px;
  }

  #sf-whatsapp-float {
    right: max(14px, env(safe-area-inset-right));
    bottom: max(72px, calc(env(safe-area-inset-bottom) + 64px));
  }
}

/* Tighten header gaps */
@media (max-width: 1100px) {
  #route-journal #j-wall-head {
    padding-top: 36px !important;
    padding-bottom: 24px !important;
  }
  
  .sf-article-route [id$="-art-head"] {
    padding-top: 30px !important;
    padding-bottom: 16px !important;
  }

  .sf-dynamic-article .sf-article-hero {
    margin-top: 22px;
    padding: 0 20px;
  }

  .sf-dynamic-article .sf-article-layout {
    grid-template-columns: 1fr;
    gap: 34px;
    padding: 42px 20px 72px;
  }

  .sf-dynamic-article .sf-article-side {
    position: static;
    display: none;
  }
  
  #route-home header > div:first-child {
    padding-top: 58px !important;
    padding-bottom: 32px !important;
    gap: 36px !important;
  }
}

@media (min-width: 1101px) {
  #route-journal #j-wall-head {
    padding-top: 72px !important;
    padding-bottom: 48px !important;
  }
  
  .sf-article-route [id$="-art-head"] {
    padding-top: 56px !important;
    padding-bottom: 24px !important;
  }
}

/* Center page titles in journal and articles */
#route-journal #j-wall-head,
.sf-article-route [id$="-art-head"] {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

#route-journal #j-wall-head h1,
.sf-article-route [id$="-art-head"] h1 {
  text-align: center !important;
  text-wrap: balance !important;
}

.sf-article-route [id$="-art-head"] > p {
  text-align: center !important;
  max-width: 600px !important;
}

.sf-article-route [id$="-art-head"] > div:first-child {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Persistent layout for the dynamically added wardrobe essay. */
.sf-dynamic-article .sf-article-hero {
  margin: 34px auto 0;
  padding: 0 56px;
  max-width: 1280px;
}

.sf-dynamic-article .sf-article-hero > div {
  overflow: hidden;
  background: var(--sf-surface);
  border: 1px solid var(--sf-border);
}

.sf-dynamic-article .sf-article-hero img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 760px;
  object-fit: contain;
}

.sf-dynamic-article .sf-article-hero figcaption {
  margin-top: 12px;
  color: var(--sf-ink-light);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-align: center;
}

.sf-dynamic-article .sf-article-layout {
  display: grid;
  grid-template-columns: 220px minmax(0, 680px);
  gap: 64px;
  max-width: 1080px;
  margin: 0 auto;
  padding: 72px 56px 108px;
}

.sf-dynamic-article .sf-article-side {
  align-self: start;
  position: sticky;
  top: 100px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding-top: 8px;
  color: var(--sf-ink-light);
  font-size: 13px;
  line-height: 1.5;
}

.sf-dynamic-article .sf-article-side a {
  border-bottom: 1px solid var(--sf-border);
  padding-bottom: 10px;
}

.sf-dynamic-article .sf-article-body ul {
  margin: 0 0 28px;
  padding-left: 24px;
}

.sf-dynamic-article .sf-article-body li {
  margin-bottom: 10px;
}

.sf-dynamic-article .sf-article-meta {
  margin-top: 24px;
  color: var(--sf-ink-light);
  font-family: var(--sf-sans, -apple-system, sans-serif);
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.sf-dynamic-article .sf-article-nav {
  position: relative;
}

.sf-dynamic-article [id$="-art-head"] {
  height: auto !important;
  min-height: 0 !important;
  flex: none !important;
  justify-content: flex-start !important;
}

.sf-dynamic-article [id$="-art-head"] > * {
  height: auto !important;
  min-height: 0 !important;
  flex: 0 0 auto !important;
}

.sf-dynamic-article .sf-article-tool,
.sf-dynamic-article .sf-article-keyword {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 10px 16px;
  border: 1px solid #c9bca7;
  background: transparent;
  color: #6f6862;
  font-family: "Sorts Mill Goudy", Georgia, serif;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  cursor: pointer;
  transition: border-color 0.3s ease, color 0.3s ease;
}

.sf-dynamic-article .sf-article-tool:hover,
.sf-dynamic-article .sf-article-keyword:hover {
  border-color: #221b16;
  color: #221b16;
}

.sf-dynamic-article .sf-article-keyword {
  min-height: 0;
  padding: 8px 16px;
}

.sf-dynamic-article .sf-article-icon-tool {
  width: 46px;
  min-width: 46px;
  height: 46px;
  min-height: 46px;
  padding: 0;
  font-family: Arial, sans-serif;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}

.sf-dynamic-article .sf-article-icon-tool svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
}

.sf-dynamic-article .sf-article-icon-tool svg.sf-filled-icon {
  fill: currentColor;
  stroke: none;
}

.sf-dynamic-article .sf-article-action-tool {
  height: 46px;
  padding: 0 24px;
  letter-spacing: 0.2em;
}

.sf-dynamic-article .sf-article-ai-tool {
  border-color: #8a5a36;
  color: #8a5a36;
}

/* Desktop Language Switcher */
@media (min-width: 1101px) {
  .sf-primary-nav {
    position: relative;
  }

  .sf-primary-nav > .sf-nav-logo {
    position: absolute;
    left: 50%;
    margin: 0 !important;
    transform: translateX(-50%);
  }

  .sf-desktop-lang {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-left: 12px;
    padding-left: 24px;
    border-left: 1px solid rgba(34, 27, 22, 0.15);
  }
}

.sf-lang-flag {
  display: inline-flex;
  width: 32px;
  height: 28px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid rgba(34, 27, 22, 0.2);
  border-radius: 2px;
  background: rgba(255, 255, 255, 0.24);
  box-shadow: none;
  cursor: pointer;
  font-size: 17px;
  line-height: 1;
}

.sf-lang-flag.is-active {
  border-color: rgba(152, 89, 67, 0.75);
  background: rgba(152, 89, 67, 0.08);
}

.sf-lang-flag[aria-disabled="true"] {
  opacity: 0.68;
  cursor: default;
}

@media (max-width: 1100px) {
  .sf-desktop-lang {
    display: none !important;
  }
}

/* Shared native mobile menus */
.sf-menu-language-row,
.sf-guide-menu-toggle,
.sf-guide-mobile-menu,
.sf-menu-editorial {
  display: none;
}

@media (max-width: 1100px) {
  body [id^="route-"] .sf-primary-nav,
  body .sf-guide-nav {
    position: relative;
    min-height: 64px;
    padding: 18px 20px !important;
    border-bottom: 1px solid #ded5c6;
    transition: background-color 220ms ease, box-shadow 220ms ease;
  }

  body [id^="route-"] .sf-primary-nav > .sf-nav-logo,
  body .sf-guide-nav > .sf-nav-logo {
    display: block !important;
    position: absolute !important;
    top: 22px !important;
    left: 50% !important;
    max-width: calc(100% - 128px);
    margin: 0 !important;
    overflow: hidden;
    transform: translateX(-50%) !important;
    color: #221b16 !important;
    font-family: 'Marcellus', Georgia, serif !important;
    font-size: 22px !important;
    line-height: 1 !important;
    letter-spacing: 0.38em !important;
    text-overflow: clip;
    text-transform: uppercase;
    white-space: nowrap;
  }

  body .sf-guide-nav > span {
    display: none !important;
  }

  body .sf-primary-nav .home-nav-left,
  body .sf-primary-nav .home-nav-right,
  body .sf-primary-nav .journal-nav-left,
  body .sf-primary-nav .journal-nav-right,
  body .sf-primary-nav .article-nav-left,
  body .sf-primary-nav .article-nav-right,
  body .sf-primary-nav .article-mobile-menu,
  body .sf-primary-nav .sf-trust-menu,
  body .sf-primary-nav .sf-guide-mobile-menu,
  body .sf-primary-nav .sf-nav-actions {
    display: none !important;
  }

  body [id^="route-"] .sf-primary-nav .home-menu-toggle,
  body [id^="route-"] .sf-primary-nav .journal-menu-toggle,
  body [id^="route-"] .sf-primary-nav .article-menu-toggle,
  body [id^="route-"] .sf-primary-nav .sf-trust-menu-toggle,
  body .sf-guide-nav .sf-guide-menu-toggle {
    display: flex !important;
    position: absolute !important;
    top: 10px !important;
    right: 16px !important;
    width: 44px !important;
    height: 44px !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    cursor: pointer;
    z-index: 3;
  }

  body .sf-primary-nav .home-menu-toggle span,
  body .sf-primary-nav .journal-menu-toggle span,
  body .sf-primary-nav .article-menu-toggle span,
  body .sf-primary-nav .sf-trust-menu-toggle span,
  body .sf-primary-nav .sf-guide-menu-toggle span {
    display: block;
    width: 24px;
    height: 1px;
    margin: 0 !important;
    background: #221b16;
    transition: transform 0.25s ease, opacity 0.2s ease;
  }

  body .sf-primary-nav [aria-expanded="true"] span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
  }

  body .sf-primary-nav [aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }

  body .sf-primary-nav [aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
  }

  body [id^="route-"] .sf-primary-nav[data-open="true"],
  body .sf-guide-nav[data-open="true"] {
    display: flex !important;
    min-height: 64px;
    flex-direction: column !important;
    align-items: stretch !important;
    padding-top: 64px !important;
    background: #eee8de !important;
    box-shadow: 0 14px 32px rgba(55, 42, 32, 0.12);
  }

  body :is(#route-home, [data-route]) .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) {
    position: fixed !important;
    display: block !important;
    z-index: 3000;
    inset: 0;
    min-height: 100dvh;
    max-height: 100dvh;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    padding: 112px 22px 28px !important;
    border: 0;
    color: #f5f1ea;
    background: #171310 !important;
    box-shadow: none;
  }

  body :is(#route-home, [data-route]) .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) > *:not(.sf-nav-logo):not(.home-menu-toggle):not(.journal-menu-toggle):not(.article-menu-toggle):not(.sf-trust-menu-toggle):not(.sf-guide-menu-toggle):not(.sf-menu-editorial) {
    display: none !important;
  }

  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) > .sf-nav-logo {
    position: fixed !important;
    z-index: 4;
    top: 22px !important;
    right: auto !important;
    bottom: auto !important;
    left: 24px !important;
    display: block !important;
    width: auto !important;
    max-width: 150px;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #f5f1ea !important;
    font-size: 20px !important;
    line-height: 1 !important;
    letter-spacing: 0.34em !important;
    transform: none !important;
    text-align: left;
  }

  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .home-menu-toggle span,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .journal-menu-toggle span,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .article-menu-toggle span,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-trust-menu-toggle span,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-guide-menu-toggle span {
    background: #f5f1ea;
  }

  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .home-menu-toggle,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .journal-menu-toggle,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .article-menu-toggle,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-trust-menu-toggle,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-guide-menu-toggle {
    position: fixed !important;
    z-index: 5;
    top: 10px !important;
    right: 16px !important;
    bottom: auto !important;
    left: auto !important;
    margin: 0 !important;
    transform: none !important;
  }

  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .home-nav-left,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .home-nav-right,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .journal-nav-left,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .journal-nav-right,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .article-mobile-menu,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-trust-menu,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-guide-mobile-menu {
    display: none !important;
  }

  body .sf-primary-nav[data-open="true"] .home-nav-left,
  body .sf-primary-nav[data-open="true"] .home-nav-right,
  body .sf-primary-nav[data-open="true"] .journal-nav-left,
  body .sf-primary-nav[data-open="true"] .journal-nav-right,
  body .sf-primary-nav[data-open="true"] .article-mobile-menu,
  body .sf-primary-nav[data-open="true"] .sf-trust-menu,
  body .sf-primary-nav[data-open="true"] .sf-guide-mobile-menu {
    display: flex !important;
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    padding: 0 !important;
    border-top: 0 !important;
    order: 1 !important;
  }

  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .home-nav-left,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .home-nav-right,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .journal-nav-left,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .journal-nav-right,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .article-mobile-menu,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-trust-menu,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-guide-mobile-menu {
    display: none !important;
  }

  body .sf-primary-nav[data-open="true"] .home-nav-left,
  body .sf-primary-nav[data-open="true"] .journal-nav-left,
  body .sf-primary-nav[data-open="true"] .article-mobile-menu,
  body .sf-primary-nav[data-open="true"] .sf-trust-menu,
  body .sf-primary-nav[data-open="true"] .sf-guide-mobile-menu {
    border-top: 1px solid #ded5c6 !important;
    margin-top: 64px !important;
  }

  body .sf-primary-nav[data-open="true"] a:not(.sf-nav-logo) {
    display: flex !important;
    min-height: 48px;
    align-items: center;
    justify-content: flex-start !important;
    width: 100%;
    padding: 0 4px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(222, 213, 198, 0.72) !important;
    color: #221b16 !important;
    font-family: 'Marcellus', Georgia, serif !important;
    font-size: 11px !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase;
  }

  body #route-home .sf-primary-nav[data-open="true"] .home-nav-left > a,
  body #route-home .sf-primary-nav[data-open="true"] .home-nav-right > a {
    min-height: 52px;
    padding: 0 !important;
    border: 0 !important;
    color: #f5f1ea !important;
    font-family: 'Gilda Display', Georgia, serif !important;
    font-size: clamp(34px, 10vw, 46px) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.015em !important;
    text-transform: none;
  }

  body #route-home .sf-primary-nav[data-open="true"] .home-nav-left > a:hover,
  body #route-home .sf-primary-nav[data-open="true"] .home-nav-right > a:hover,
  body #route-home .sf-primary-nav[data-open="true"] .home-nav-left > a:focus-visible,
  body #route-home .sf-primary-nav[data-open="true"] .home-nav-right > a:focus-visible {
    color: #d4aa7a !important;
  }

  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-menu-language-row {
    display: none !important;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-editorial {
    display: flex;
    width: 100%;
    min-height: 0;
    flex-direction: column;
    gap: 0;
    order: 2;
    margin: 0;
    padding: 0;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-primary-links {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding-top: 0;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-primary-links > a {
    display: flex !important;
    width: 100%;
    min-height: 39px;
    align-items: center;
    padding: 0 !important;
    border: 0 !important;
    color: #f5f1ea !important;
    font-family: 'Gilda Display', Georgia, serif !important;
    font-size: clamp(25px, 7vw, 30px) !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;
    letter-spacing: -0.02em !important;
    text-transform: none;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-primary-links > a:hover,
  body .sf-primary-nav[data-open="true"] .sf-menu-primary-links > a:focus-visible {
    color: #d4aa7a !important;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-contact {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 7px;
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid rgba(245, 241, 234, 0.16);
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-contact > span {
    margin-bottom: 3px;
    color: #9f9388;
    font-family: 'Marcellus', Georgia, serif;
    font-size: 8px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-contact > a {
    display: inline-flex !important;
    width: auto;
    min-height: 0;
    padding: 0 !important;
    border: 0 !important;
    color: #f5f1ea !important;
    font-family: 'Sorts Mill Goudy', Georgia, serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-transform: none;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-contact > a:last-child {
    margin-top: 4px;
    padding-bottom: 3px !important;
    border-bottom: 1px solid rgba(245, 241, 234, 0.55) !important;
    color: #d4aa7a !important;
    font-family: 'Marcellus', Georgia, serif !important;
    font-size: 9px !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-utility-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 22px;
    padding: 18px 0 16px;
    border-top: 1px solid rgba(245, 241, 234, 0.16);
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    padding: 0;
    border: 0;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-socials > a {
    display: inline-flex !important;
    width: 38px;
    min-width: 38px;
    height: 38px;
    min-height: 38px;
    align-items: center;
    justify-content: center !important;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid rgba(245, 241, 234, 0.62) !important;
    border-radius: 50% !important;
    background: #080808 !important;
    box-shadow:
      0 0 0 4px rgba(245, 241, 234, 0.06),
      0 10px 24px rgba(0, 0, 0, 0.24);
    transition:
      border-color 180ms ease,
      box-shadow 180ms ease,
      transform 180ms ease;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-social-logo {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-social-logo--instagram {
    transform: scale(1.02);
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-social-logo--pinterest {
    padding: 7px;
    background: #f5f1ea;
    object-fit: contain;
    transform: none;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-social-logo--x {
    transform: scale(1.05);
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-socials > a:hover,
  body .sf-primary-nav[data-open="true"] .sf-menu-socials > a:focus-visible {
    border-color: #d4aa7a !important;
    background: #080808 !important;
    box-shadow:
      0 0 0 4px rgba(212, 170, 122, 0.18),
      0 14px 30px rgba(0, 0, 0, 0.3);
    transform: translateY(-3px);
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-utility-languages {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-utility-languages .sf-lang-flag {
    width: 38px;
    height: 38px;
    padding: 0;
    border: 1px solid rgba(245, 241, 234, 0.62);
    border-radius: 50%;
    color: #f5f1ea;
    background: #080808;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
    font-size: 17px;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-featured-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    width: 100%;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-utility-languages .sf-lang-flag.is-active {
    border-color: #d4aa7a;
    box-shadow:
      0 0 0 3px rgba(212, 170, 122, 0.15),
      0 10px 24px rgba(0, 0, 0, 0.24);
  }

  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) a.sf-menu-featured {
    display: flex !important;
    width: 100%;
    min-width: 0;
    min-height: 0;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    margin-top: 0;
    padding: 15px 14px !important;
    border: 0 !important;
    color: #221b16 !important;
    background: #f5f1ea;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-featured__eyebrow {
    display: block;
    margin-bottom: 6px;
    color: #985943;
    font-family: 'Marcellus', Georgia, serif;
    font-size: 7px;
    line-height: 1.3;
    letter-spacing: 0.22em;
    text-transform: uppercase;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-featured strong {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-wrap: normal !important;
    color: #221b16 !important;
    font-family: 'Gilda Display', Georgia, serif !important;
    font-size: clamp(17px, 4.8vw, 21px) !important;
    font-weight: 400 !important;
    line-height: 1.14 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    white-space: normal !important;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-featured__action {
    display: block;
    margin-top: 11px;
    padding-bottom: 2px;
    font-family: 'Marcellus', Georgia, serif;
    font-size: 7px;
    line-height: 1.4;
    letter-spacing: 0.16em;
    text-transform: uppercase;
  }

  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .home-menu-toggle[aria-expanded="true"] span,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .journal-menu-toggle[aria-expanded="true"] span,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .article-menu-toggle[aria-expanded="true"] span,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-trust-menu-toggle[aria-expanded="true"] span,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-guide-menu-toggle[aria-expanded="true"] span {
    display: none !important;
  }

  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .home-menu-toggle[aria-expanded="true"]::after,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .journal-menu-toggle[aria-expanded="true"]::after,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .article-menu-toggle[aria-expanded="true"]::after,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-trust-menu-toggle[aria-expanded="true"]::after,
  body .sf-primary-nav[data-open="true"]:has(.sf-menu-editorial) .sf-guide-menu-toggle[aria-expanded="true"]::after {
    content: "×";
    display: block;
    color: #f5f1ea;
    font-family: Arial, sans-serif;
    font-size: 32px;
    font-weight: 200;
    line-height: 1;
  }

  body .sf-primary-nav .sf-menu-language-row {
    display: none !important;
  }

  body .sf-primary-nav[data-open="true"] .sf-menu-language-row {
    display: flex !important;
    min-height: 46px;
    align-items: center;
    gap: 9px;
    width: 100%;
    margin-top: 22px;
    padding: 18px 4px 2px;
    border-top: 1px solid rgba(222, 213, 198, 0.72);
  }

  body .sf-primary-nav .sf-menu-language-row .sf-lang-flag {
    width: 34px;
    height: 30px;
    font-size: 18px;
  }
}

/* Premium in-article consultation panel */
.sf-article-route [id$="-mid-cta"] {
  display: flex !important;
  min-height: 0 !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  margin: 58px 0 !important;
  padding: 52px 28px !important;
  border: 0 !important;
  background: #1a1512 !important;
  text-align: center !important;
}

.sf-article-route [id$="-mid-cta"] > span {
  max-width: 30ch;
  color: #d8cfc2 !important;
  font-size: clamp(19px, 2.2vw, 25px) !important;
  line-height: 1.35 !important;
}

.sf-article-route [id$="-mid-cta"] > a {
  display: inline-flex !important;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 11px 18px 9px !important;
  border: 1px solid #f5f1ea !important;
  background: #f5f1ea !important;
  color: #221b16 !important;
  font-family: 'Marcellus', Georgia, serif !important;
  font-size: 10px !important;
  font-style: normal !important;
  line-height: 1.35 !important;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

@media (max-width: 600px) {
  .sf-article-route [id$="-mid-cta"] {
    gap: 16px !important;
    margin: 42px 0 !important;
    padding: 40px 18px !important;
  }

  .sf-article-route [id$="-mid-cta"] > span {
    font-size: 18px !important;
  }
}

.sf-guide-reader {
  display: none;
}

@media (max-width: 640px) {
  body:has(.sf-primary-nav[data-open="true"]) #sf-whatsapp-float {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  #route-journal #j-wall-head,
  .sf-article-route [id$="-art-head"] {
    gap: 0 !important;
  }

  #route-journal #j-wall-head {
    padding: 30px 20px 28px !important;
  }

  #route-journal #j-wall-head > div:first-child {
    margin-bottom: 14px !important;
  }

  #route-journal #j-wall-head h1 {
    margin: 0 0 12px !important;
  }

  .sf-article-route [id$="-art-head"] {
    padding: 30px 20px 16px !important;
  }

  .sf-article-route [id$="-art-head"] > div:first-child {
    margin-bottom: 14px !important;
  }

  .sf-article-route [id$="-art-head"] h1 {
    margin: 0 0 12px !important;
  }

  .sf-article-route [id$="-art-head"] > p {
    margin: 0 auto 20px !important;
  }

  .sf-article-route [id$="-art-head"] > div:nth-last-child(2) {
    margin-bottom: 18px !important;
  }

  .sf-article-route [id$="-art-tools"] {
    padding-bottom: 24px !important;
  }

  body:has(.sf-primary-nav[data-open="true"]) #sf-back-top {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  #sf-back-top {
    position: fixed !important;
    z-index: 1200 !important;
    right: auto !important;
    bottom: max(76px, calc(env(safe-area-inset-bottom) + 68px)) !important;
    left: max(16px, env(safe-area-inset-left)) !important;
    display: inline-flex !important;
    width: 48px !important;
    height: 48px !important;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    border: 1px solid rgba(245, 241, 234, 0.82) !important;
    border-radius: 50% !important;
    opacity: 1 !important;
    visibility: visible !important;
    color: #f5f1ea !important;
    background: #221b16 !important;
    box-shadow: 0 12px 28px rgba(34, 27, 22, 0.26) !important;
    font-family: Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
  }

  #sf-back-top:hover,
  #sf-back-top:focus-visible {
    border-color: #d4aa7a !important;
    color: #221b16 !important;
    background: #d4aa7a !important;
    transform: translateY(-2px) !important;
  }

  #sf-whatsapp-float {
    right: 16px;
    bottom: 76px;
    width: 48px;
    height: 48px;
  }

  #sf-whatsapp-float svg {
    width: 24px;
    height: 24px;
  }

  #route-style-starts-with-you doc-page {
    display: none !important;
  }

  #route-style-starts-with-you .sf-guide-reader {
    display: block;
    max-width: 42rem;
    margin: 0 auto;
    padding: 0 12px 48px;
    color: #2f2822;
    background: #f5f1ea;
  }

  .sf-guide-reader__intro,
  .sf-guide-reader__section {
    overflow: hidden;
    margin: 0 0 12px;
    border: 1px solid rgba(34, 27, 22, 0.12);
    background: #faf8f3;
    box-shadow: 0 3px 14px rgba(50, 39, 29, 0.06);
  }

  .sf-guide-reader__intro {
    position: relative;
    min-height: 430px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 30px 26px;
    color: #f5f1ea;
    background: #221b16;
  }

  .sf-guide-reader__intro::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: linear-gradient(180deg, rgba(20, 13, 8, 0.04) 25%, rgba(20, 13, 8, 0.84) 86%);
  }

  .sf-guide-reader__intro > * {
    position: relative;
    z-index: 1;
  }

  .sf-guide-reader__intro-image {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .sf-guide-reader__brand,
  .sf-guide-reader__eyebrow {
    margin: 0 0 12px;
    font-size: 10px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.2em;
    text-transform: uppercase;
  }

  .sf-guide-reader__brand {
    color: rgba(245, 241, 234, 0.82);
  }

  .sf-guide-reader__intro h1 {
    max-width: 11ch;
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Gilda Display", Georgia, serif !important;
    font-size: clamp(38px, 11vw, 52px);
    font-weight: 400 !important;
    line-height: 0.98;
  }

  .sf-guide-reader__intro p {
    max-width: 31rem;
    margin: 0;
    font-size: 16px;
    font-style: italic;
    line-height: 1.55;
  }

  .sf-guide-reader__section {
    padding: 28px 26px 30px;
  }

  .sf-guide-reader__section[data-guide-section="Cover"] {
    display: none !important;
  }

  .sf-guide-reader__eyebrow {
    color: #8c8175;
  }

  .sf-guide-reader__section h2 {
    margin: 0 0 18px;
    color: #221b16;
    font-family: "Gilda Display", Georgia, serif !important;
    font-size: clamp(29px, 8vw, 38px);
    font-weight: 400 !important;
    line-height: 1.05;
  }

  .sf-guide-reader__section h3 {
    margin: 24px 0 10px;
    color: #221b16;
    font-family: "Gilda Display", Georgia, serif !important;
    font-size: 23px;
    font-weight: 400 !important;
    line-height: 1.15;
  }

  .sf-guide-reader__section p {
    margin: 0 0 14px;
    color: #403831;
    font-size: 16px;
    line-height: 1.68;
  }

  .sf-guide-reader__section blockquote {
    margin: 22px 0;
    padding: 2px 0 2px 18px;
    border-left: 2px solid #985943;
    color: #221b16;
    font-family: "Gilda Display", Georgia, serif;
    font-size: 22px;
    line-height: 1.28;
  }

  .sf-guide-reader__section img {
    display: block;
    width: calc(100% + 52px);
    max-width: none;
    height: auto;
    max-height: 390px;
    margin: 22px -26px;
    object-fit: cover;
  }

  .sf-guide-reader__section img:first-of-type {
    margin-top: 0;
  }
}

/* Override the old scroll-driven zoom, but allow a gentle mouse-hover zoom.
   Top anchoring keeps the face in frame in both states. */
#route-home img.parallax-image {
  transform: none !important;
  object-position: center top !important;
  transform-origin: center top;
  transition: transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  #route-home .parallax-container:hover img.parallax-image {
    transform: scale(1.04) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #route-home img.parallax-image {
    transition: none !important;
  }
}