@import url("https://fonts.googleapis.com/css2?family=Assistant:wght@400;500;600;700&family=Heebo:wght@300;400;500;600;700&family=Noto+Serif+Hebrew:wght@400;500;600;700&display=swap");
/* ============================================================================
   scrollcraft.css: the taste floor
   ----------------------------------------------------------------------------
   Two layers, and the split matters:

     TOKENS   what you override per brand. Colour roles, the type ramp, the
              spacing scale, elevation, motion. A brand is ~12 values.
     DEVICES  what the engine drives. Do not restyle these to taste; they are
              the mechanism. Style your own markup instead.

   Nothing here draws a "component". There are no card, badge, or pill classes,
   because a stylesheet that ships those is how every page built on it ends up
   with the same shapes. You get a floor and a vocabulary; the composition is
   yours.
   ========================================================================== */

/* ---------------------------------------------------------------- tokens -- */
:root {
  /* --- colour roles. Override these six and the page is rebranded. -------- */
  --sc-canvas:      #08090b;   /* the page ground. Drift interpolates this.   */
  --sc-surface:     #101217;   /* anything raised off the ground             */
  --sc-ink:         #f4f2ef;   /* primary text                               */
  --sc-ink-soft:    #9a9ba1;   /* secondary text. Tinted, never flat gray.   */
  --sc-accent:      #d8ff3e;   /* ONE accent. It owns a region, not confetti. */
  --sc-accent-ink:  #08090b;   /* text that sits on the accent               */

  --sc-hairline:    color-mix(in oklab, var(--sc-ink) 12%, transparent);
  --sc-hairline-strong: color-mix(in oklab, var(--sc-ink) 22%, transparent);

  /* --- type. Two families max. Display carries voice, text carries prose. - */
  --sc-font-display: "Instrument Sans", "Geist", system-ui, sans-serif;
  --sc-font-text:    "Geist", system-ui, sans-serif;
  --sc-font-mono:    "Geist Mono", ui-monospace, monospace;

  /* Fluid ramp. Tracking tightens as size grows because a face set at 6rem
     with 0 tracking reads loose; this is optical correction, not decoration. */
  --sc-t-xs:   clamp(0.75rem, 0.72rem + 0.15vw, 0.82rem);
  --sc-t-sm:   clamp(0.875rem, 0.84rem + 0.18vw, 0.95rem);
  --sc-t-base: clamp(1rem, 0.96rem + 0.22vw, 1.125rem);
  --sc-t-lg:   clamp(1.2rem, 1.1rem + 0.5vw, 1.5rem);
  --sc-t-xl:   clamp(1.6rem, 1.35rem + 1.2vw, 2.25rem);
  --sc-t-2xl:  clamp(2.1rem, 1.6rem + 2.4vw, 3.4rem);
  --sc-t-3xl:  clamp(2.8rem, 1.9rem + 4.2vw, 5rem);
  --sc-t-4xl:  clamp(3.4rem, 1.9rem + 6.6vw, 7.5rem);

  --sc-track-tight:  -0.035em;
  --sc-track-snug:   -0.02em;
  --sc-track-normal: -0.005em;
  --sc-track-wide:    0.08em;

  --sc-leading-none: 0.94;
  --sc-leading-tight: 1.06;
  --sc-leading-body: 1.62;

  --sc-measure: 62ch;

  /* --- space. 4px base: the useful middle steps an 8-only scale misses. --- */
  --sc-1: 0.25rem;  --sc-2: 0.5rem;   --sc-3: 0.75rem;  --sc-4: 1rem;
  --sc-5: 1.5rem;   --sc-6: 2rem;     --sc-7: 3rem;     --sc-8: 4rem;
  --sc-9: 6rem;     --sc-10: 8rem;    --sc-11: 12rem;

  /* Section rhythm is fluid so a phone doesn't inherit desktop air. */
  --sc-section: clamp(4.5rem, 9vw, 11rem);
  --sc-gutter:  clamp(1.25rem, 5vw, 5.5rem);
  --sc-maxw:    82rem;

  /* --- radius. Pick one scale for the page and hold it. ------------------- */
  --sc-r-sm: 6px;  --sc-r-md: 12px;  --sc-r-lg: 20px;  --sc-r-pill: 999px;

  /* --- elevation. Every shadow has an offset AND a soft blur, and is tinted
         to the canvas hue. A zero-offset coloured halo is decoration, not
         depth, so there isn't one here. ---------------------------------- */
  --sc-shadow-color: 220 40% 2%;
  --sc-e1: 0 1px 2px hsl(var(--sc-shadow-color) / 0.28),
           0 2px 6px -1px hsl(var(--sc-shadow-color) / 0.20);
  --sc-e2: 0 2px 4px hsl(var(--sc-shadow-color) / 0.24),
           0 8px 18px -4px hsl(var(--sc-shadow-color) / 0.30);
  --sc-e3: 0 4px 8px hsl(var(--sc-shadow-color) / 0.22),
           0 18px 40px -8px hsl(var(--sc-shadow-color) / 0.38),
           0 48px 90px -24px hsl(var(--sc-shadow-color) / 0.30);

  /* Edge light: a 1px top highlight sells a raised surface better than any
     amount of blur, because real raised things catch light on their lip. */
  --sc-edge: inset 0 1px 0 color-mix(in oklab, var(--sc-ink) 10%, transparent);

  /* --- motion. Built-in CSS easings are too weak for UI. ------------------ */
  --sc-ease-out:    cubic-bezier(0.23, 1, 0.32, 1);
  --sc-ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
  --sc-ease-drawer: cubic-bezier(0.32, 0.72, 0, 1);
  --sc-d-fast: 160ms;  --sc-d-base: 240ms;  --sc-d-slow: 420ms;

  --sc-z-stage: 1; --sc-z-copy: 20; --sc-z-chrome: 60;
}

/* --------------------------------------------------------------- reset -- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
  margin: 0;
  background: var(--sc-canvas);
  color: var(--sc-ink);
  font-family: var(--sc-font-text);
  font-size: var(--sc-t-base);
  line-height: var(--sc-leading-body);
  letter-spacing: var(--sc-track-normal);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-synthesis-weight: none;
  overflow-x: clip;
}
img, video, canvas, svg { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; color: inherit; }

/* ------------------------------------------------- the browser surfaces --
   The parts you did not draw still carry the design. Selection, caret, focus
   ring, scrollbar and tabular numerals all ship with defaults that belong to no
   design system. Theming them is the cheapest signal that a page was built
   rather than assembled, and it is the step that gets skipped most reliably. */
::selection { background: var(--sc-accent); color: var(--sc-accent-ink); }
:root { caret-color: var(--sc-accent); accent-color: var(--sc-accent); }
:focus-visible {
  outline: 2px solid var(--sc-accent);
  outline-offset: 3px;
  border-radius: var(--sc-r-sm);
}
:where(a) { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 0.22em; }
@supports (scrollbar-color: auto) {
  html { scrollbar-color: color-mix(in oklab, var(--sc-ink) 26%, transparent) transparent; scrollbar-width: thin; }
}
:where(table, .sc-nums, [data-sc-count]) { font-variant-numeric: tabular-nums; }

/* ----------------------------------------------------------- typography -- */
.sc-display {
  font-family: var(--sc-font-display);
  font-weight: 500;
  line-height: var(--sc-leading-none);
  letter-spacing: var(--sc-track-tight);
  text-wrap: balance;
  margin: 0;
}
.sc-display--xl { font-size: var(--sc-t-4xl); }
.sc-display--lg { font-size: var(--sc-t-3xl); }
.sc-display--md { font-size: var(--sc-t-2xl); letter-spacing: var(--sc-track-snug); }
.sc-lede {
  font-size: var(--sc-t-lg);
  line-height: 1.44;
  letter-spacing: var(--sc-track-snug);
  color: var(--sc-ink);
  max-width: 46ch;
  text-wrap: pretty;
  margin: 0;
}
.sc-body { max-width: var(--sc-measure); color: var(--sc-ink-soft); text-wrap: pretty; margin: 0; }
.sc-label {
  font-family: var(--sc-font-mono);
  font-size: var(--sc-t-xs);
  letter-spacing: var(--sc-track-wide);
  text-transform: uppercase;
  color: var(--sc-ink-soft);
}

/* ---------------------------------------------------------------- layout -- */
.sc-wrap { width: 100%; max-width: var(--sc-maxw); margin-inline: auto; padding-inline: var(--sc-gutter); }
.sc-section { padding-block: var(--sc-section); }
/* More space above a heading than below it: the gap belongs to the boundary,
   not to the pair. */
.sc-stack > * + * { margin-top: var(--sc-4); }
.sc-stack > :is(h1,h2,h3) { margin-top: var(--sc-7); }
.sc-stack > :is(h1,h2,h3):first-child { margin-top: 0; }
.sc-rule { height: 1px; border: 0; background: var(--sc-hairline); margin: 0; }

/* =============================================================== DEVICES ==
   Driven by the engine. Restyle your own markup, not these.                */

.sc-act--pinned { position: relative; }
.sc-stage {
  position: sticky; top: 0;
  height: 100vh; height: 100svh;
  overflow: clip;
  z-index: var(--sc-z-stage);
}

/* scrub / sequence media */
.sc-stage :is(video[data-sc-scrub], canvas[data-sc-sequence], .sc-stage__poster) {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
}
video[data-sc-scrub] { opacity: 0; transition: opacity 380ms var(--sc-ease-out); }
.sc-has-clip video[data-sc-scrub] { opacity: 1; }
/* The poster is a live frame-holder, not a placeholder: it stays up until a
   real video frame has painted, which is what stops the blank-stage flash. */
.sc-stage__poster { z-index: 0; transition: opacity 380ms var(--sc-ease-out); }
.sc-has-clip .sc-stage__poster { opacity: 0; }

/* A scrim only where text sits. A full-frame darkening layer flattens the
   image everywhere to fix contrast in one corner. */
.sc-scrim {
  position: absolute; inset: 0; pointer-events: none; z-index: 1;
  background: linear-gradient(
    var(--sc-scrim-angle, 180deg),
    color-mix(in oklab, var(--sc-canvas) var(--sc-scrim-a, 78%), transparent) 0%,
    color-mix(in oklab, var(--sc-canvas) 30%, transparent) 42%,
    transparent 68%);
}
/* Point the scrim at the copy. A scrim gradient that darkens the top while the
   copy sits at the bottom fixes contrast nowhere and flattens the image
   everywhere, which is the most common way text-over-video goes wrong. */
.sc-scrim--bottom { --sc-scrim-angle: 0deg; }
.sc-scrim--left   { --sc-scrim-angle: 90deg; }
.sc-scrim--right  { --sc-scrim-angle: 270deg; }

/* Corner scrims, for copy anchored to a corner. An edge gradient has to darken
   a whole band across the frame to cover one corner; a corner gradient puts the
   density where the text is and leaves the rest of the image alone. Pair with
   .sc-copy--lead / .sc-copy--trail. */
.sc-scrim--lead {
  background: linear-gradient(to top right,
    color-mix(in oklab, var(--sc-canvas) 94%, transparent) 0%,
    color-mix(in oklab, var(--sc-canvas) 72%, transparent) 30%,
    color-mix(in oklab, var(--sc-canvas) 30%, transparent) 52%,
    transparent 72%);
}
.sc-scrim--trail {
  background: linear-gradient(to top left,
    color-mix(in oklab, var(--sc-canvas) 94%, transparent) 0%,
    color-mix(in oklab, var(--sc-canvas) 72%, transparent) 30%,
    color-mix(in oklab, var(--sc-canvas) 30%, transparent) 52%,
    transparent 72%);
}
/* A band across the bottom, for copy that spans the full width of the frame.
   That is what both corner anchors become below 860px, and it is also the right
   shape whenever the copy block is wider than a corner. */
.sc-scrim--band {
  background: linear-gradient(to top,
    color-mix(in oklab, var(--sc-canvas) 94%, transparent) 0%,
    color-mix(in oklab, var(--sc-canvas) 74%, transparent) 22%,
    color-mix(in oklab, var(--sc-canvas) 30%, transparent) 42%,
    transparent 58%);
}
.sc-scrim--vignette {
  background: radial-gradient(120% 90% at 50% 45%, transparent 40%,
              color-mix(in oklab, var(--sc-canvas) 70%, transparent) 100%);
}

/* copy over a stage.
   max-width is in rem, never ch. A `ch` on this container resolves against the
   CONTAINER's font-size (body size), not the display size of the heading inside
   it, so `max-width: 20ch` here silently produces a ~180px column and wraps a
   hero headline to six lines. Set a ch measure on the text element itself. */
.sc-copy {
  position: absolute; z-index: var(--sc-z-copy);
  inset-inline: var(--sc-gutter);
  max-width: min(46rem, 76vw);
  will-change: opacity, transform;
}
.sc-copy--lead   { left: var(--sc-gutter); bottom: clamp(3rem, 12vh, 9rem); }
/* inset-inline FIRST. It is the shorthand for left+right, so declaring it after
   `left: 50%` resets left to auto and the block drifts off the left edge. */
.sc-copy--center { inset-inline: auto; left: 50%; top: 50%; translate: -50% -50%; text-align: center; }
.sc-copy--trail  { inset-inline: auto; right: var(--sc-gutter); bottom: clamp(3rem, 12vh, 9rem); text-align: right; }

/* cue defaults: the engine writes opacity/transform inline, these are the
   pre-paint state so nothing flashes before the first read() */
[data-sc-cue] { opacity: 0; will-change: opacity, transform; }
.sc-ready [data-sc-cue] { transition: none; }

/* kinetic split */
.sc-split { display: inline-block; overflow: hidden; vertical-align: top; }
/* Descenders live below the baseline; a line mask clipped to the line box eats
   the tails off g, y, p, j. The padding buys them room back. */
.sc-split--line { display: block; padding-bottom: 0.14em; margin-bottom: -0.14em; }
.sc-split__i { display: inline-block; will-change: transform, opacity; }
.sc-is-split { opacity: 1 !important; }

/* horizontal rail */
[data-sc-pan] { display: flex; will-change: transform; }

/* reveal + parallax */
[data-sc-reveal] { will-change: clip-path; }
[data-sc-parallax] { will-change: transform; }

/* flow reveal (fires once) */
[data-sc-in], [data-sc-stagger] > * {
  opacity: 0;
  transform: translate3d(0, 14px, 0);
  transition: opacity 620ms var(--sc-ease-out), transform 620ms var(--sc-ease-out);
}
[data-sc-in].sc-in, [data-sc-stagger] > .sc-in { opacity: 1; transform: none; }

/* pointer devices */
[data-sc-tilt] { transform-style: preserve-3d; will-change: transform; }
[data-sc-magnet] { will-change: transform; }
/* isolation always; position only if nothing more specific already set it.
   Written with :where() (zero specificity) on purpose: a plain `position:
   relative` here has the same weight as `.sc-stage` and, being later in the
   file, silently wins. A stage carrying both attributes then stops being
   sticky and the whole act scrolls away instead of pinning. */
[data-sc-spotlight] { isolation: isolate; }
:where([data-sc-spotlight]) { position: relative; }
[data-sc-spotlight]::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 2;
  background: radial-gradient(
    28rem 28rem at calc(var(--sc-mx, 0.5) * 100%) calc(var(--sc-my, 0.5) * 100%),
    color-mix(in oklab, var(--sc-accent) 16%, transparent), transparent 70%);
  opacity: 0; transition: opacity var(--sc-d-slow) var(--sc-ease-out);
}
[data-sc-spotlight]:hover::after { opacity: 1; }

/* =========================================================== WORLDFLIGHT ==
   One fixed stage for the whole page. The only thing in document flow is the
   spacer, and it is empty. If you find yourself adding a section here, you want
   act mode instead: the moment a real block scrolls past the fixed stage, the
   page has a seam again and the whole point is gone.                        */

[data-sc-mode="worldflight"] { position: relative; }

.sc-world {
  position: fixed; inset: 0;
  overflow: clip;
  z-index: var(--sc-z-stage);
  background: var(--sc-canvas);
}

/* Every leg is mounted for the life of the page and stacked in the same box.
   The engine owns opacity, visibility and z-index here; do not set them. */
.sc-world__seg {
  position: absolute; inset: 0;
  opacity: 0;
  will-change: opacity;
}
.sc-world__seg > :is(video, img, canvas) {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
}
/* The poster is the frame-holder AND the first camera move: the engine pushes
   it in slowly until a real decoded frame is available to replace it. */
.sc-world__poster {
  z-index: 0;
  transform-origin: 50% 50%;
  transition: opacity 420ms var(--sc-ease-out);
}
.sc-world__seg > video { z-index: 1; }
.sc-world__seg.sc-has-clip .sc-world__poster { opacity: 0; }
/* The act stylesheet lights a clip through its ancestor act. A worldflight leg
   has no act, so match the class the engine also writes on the clip itself. */
video[data-sc-scrub].sc-has-clip { opacity: 1; }

/* The copy layer is fixed too, and inert by default: the engine hands
   pointer-events back to a block only while it is actually legible. */
.sc-world__copy {
  position: fixed; inset: 0;
  z-index: var(--sc-z-copy);
  pointer-events: none;
}
.sc-world__scrim { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
[data-sc-copy] {
  opacity: 0;
  pointer-events: none;
  will-change: opacity, transform;
}
.sc-ready [data-sc-copy] { transition: none; }

/* The track. Empty on purpose. */
.sc-world__spacer { pointer-events: none; }

/* scroll progress */
[data-sc-progress] {
  position: fixed; inset: 0 0 auto 0; height: 2px; z-index: var(--sc-z-chrome);
  background: var(--sc-accent); transform-origin: 0 50%; transform: scaleX(0);
  will-change: transform;
}

/* ----------------------------------------------------------- atmosphere --
   Depth is not only shadow. Grain keeps a flat dark ground from banding, and
   it is the difference between "a dark page" and "a lit room". */
.sc-grain { position: fixed; inset: 0; pointer-events: none; z-index: 3; opacity: 0.045; }
.sc-grain::before {
  content: ""; position: absolute; inset: -50%;
  background-image: url("https://ftp2.oia-file.com/stores/903/media/rIAzPDBlVOpQ/original.webp");
}

/* -------------------------------------------------------- reduced motion -- */
@media (prefers-reduced-motion: reduce) {
  /* Fewer and gentler, not zero. Opacity still carries the reveal so the page
     is comprehensible; every position change is dropped. */
  [data-sc-in], [data-sc-stagger] > * { transform: none; transition-duration: 220ms; }
  [data-sc-parallax], [data-sc-pan], .sc-split__i { transform: none !important; }
  /* A wipe is a position change too. Show reveal content settled. */
  [data-sc-reveal] { clip-path: none !important; }
  /* A rail's transform IS its navigation, not decoration. Zeroing it the way
     parallax and kinetic type are zeroed parks the act on its first screenful
     and makes everything past the fold unreachable: a device degrading into
     missing content. Hand the travel back to the reader as an ordinary scroll
     region instead, so the same items are all still gettable without motion.
     A build that would rather re-lay the rail out as a grid can still do that;
     this is the floor, not the ceiling. */
  [data-sc-act="pan"] .sc-stage,
  [data-sc-act="pan"] [data-sc-stage] {
    overflow-x: auto; overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
  }
  [data-sc-pan] > * { scroll-snap-align: center; }
  [data-sc-spotlight]::after { display: none; }
  /* A worldflight keeps its whole story here. No clip is ever fetched, so the
     posters are the film, and they cross-dissolve through exactly the same
     seams at exactly the same scroll positions. The push-in and the copy drift
     are the only things that go. */
  .sc-world__poster, [data-sc-copy] { transform: none !important; }
}

/* --------------------------------------------------------------- mobile -- */
@media (max-width: 860px) {
  .sc-copy { inset-inline: var(--sc-gutter); max-width: none; }
  .sc-copy--trail { text-align: left; }
  .sc-stage { height: 100svh; }
  /* .sc-copy--trail re-anchors to the left and spans the full width here, so a
     bottom-RIGHT corner gradient darkens the one corner the copy just left and
     guarantees a contrast failure over any bright clip. Point the density at
     the copy: the same band .sc-scrim--band paints. */
  .sc-scrim--trail {
    background: linear-gradient(to top,
      color-mix(in oklab, var(--sc-canvas) 94%, transparent) 0%,
      color-mix(in oklab, var(--sc-canvas) 74%, transparent) 22%,
      color-mix(in oklab, var(--sc-canvas) 30%, transparent) 42%,
      transparent 58%);
  }
}

:root {
  --ink: #151310;
  --ink-soft: #4b463f;
  --paper: #ffffff;
  --ivory: #fbf8f3;
  --ivory-deep: #f1e9de;
  --gold: #b3915a;
  --gold-dark: #8e6c37;
  --gold-light: #d8c6a7;
  --line: rgba(99, 79, 49, .19);
  --shadow: 0 20px 55px rgba(36, 26, 14, .09);
  --font-display: "Noto Serif Hebrew", "Frank Ruhl Libre", Georgia, serif;
  --shell: min(1380px, calc(100% - 48px));
  --header-height: 130px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 190px; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: "Assistant", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  overflow-x: visible;
}
@supports (overflow: clip) {
  body { overflow-x: clip; }
}
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
h1, h2, h3 { font-family: "Assistant", Arial, sans-serif; font-weight: 500; }
.hero h1 { font-family: var(--font-display); }

:focus-visible {
  outline: 3px solid #7f5c27;
  outline-offset: 4px;
}

.skip-link {
  position: fixed;
  z-index: 999;
  top: 12px;
  right: 12px;
  transform: translateY(-160%);
  padding: 10px 18px;
  background: var(--ink);
  color: white;
  border-radius: 3px;
}
.skip-link:focus { transform: none; }

.shell { width: var(--shell); margin-inline: auto; }
.section { padding: 72px 0; }

.announcement {
  position: sticky;
  top: 0;
  z-index: 40;
  min-height: 29px;
  color: #75634c;
  background: #fbf8f3;
  border-bottom: 1px solid rgba(179,145,90,.38);
  font-size: .75rem;
  font-weight: 500;
}
.announcement__inner {
  min-height: 29px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 4px 20px;
}
.announcement__divider { width: 1px; height: 12px; background: rgba(179,145,90,.5); }

.site-header {
  position: sticky;
  top: var(--announcement-height, 29px);
  z-index: 35;
  background: rgba(251,248,243,.985);
  border-bottom: 1px solid var(--line);
  box-shadow: 0 10px 28px rgba(54,40,24,.045);
}
.header-main {
  min-height: 86px;
  display: grid;
  grid-template-columns: 220px minmax(170px, 1fr) 380px;
  align-items: center;
  gap: 28px;
}
.brand { width: 104px; height: 82px; display: grid; place-items: center; justify-self: start; }
.brand img { width: 104px; height: 82px; object-fit: contain; }
.header-title {
  justify-self: center;
  display: flex;
  align-items: baseline;
  gap: 9px;
  white-space: nowrap;
  font-size: 1.22rem;
}
.header-title strong { font-weight: 700; }
.header-title span { color: var(--ink-soft); font-weight: 300; }
.header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; direction: ltr; }
.icon-button {
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease;
}
.icon-button:hover { background: var(--ivory-deep); color: var(--gold-dark); }
.icon-button svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.icon-button img { width: 23px; height: 23px; object-fit: contain; }
.phone-link { display: flex; align-items: center; gap: 9px; padding-inline: 8px 17px; border-inline-end: 1px solid var(--line); direction: ltr; }
.phone-link > img { width: 26px; height: 26px; object-fit: contain; }
.phone-link span { display: flex; flex-direction: column; line-height: 1.05; text-align: left; }
.phone-link bdi { font-weight: 700; font-size: .92rem; }
.phone-link small { margin-top: 5px; color: #70685e; font-size: .69rem; }
.menu-toggle { display: none; }

.desktop-nav { min-height: 49px; border-top: 1px solid rgba(179,145,90,.2); }
.desktop-nav__inner { width: calc(100% - 30px); max-width: 1680px; min-height: 49px; display: flex; align-items: stretch; justify-content: center; gap: clamp(5px, .55vw, 11px); }
.desktop-nav__link { position: relative; min-width: 0; display: inline-flex; align-items: center; padding: 13px 3px 12px; white-space: nowrap; font-size: clamp(.72rem, .76vw, .83rem); font-weight: 500; }
.desktop-nav__link::after { content: ""; position: absolute; right: 3px; bottom: 7px; width: 0; height: 1px; background: var(--gold); transition: width .2s ease; }
.desktop-nav__link:hover::after, .desktop-nav__link.is-active::after, .nav-item.is-open > .desktop-nav__link::after { width: calc(100% - 6px); }
.desktop-nav__link.is-active { color: var(--gold-dark); }
.nav-item { position: relative; display: flex; align-items: stretch; }
.nav-dropdown__toggle { width: 21px; display: grid; place-items: center; padding: 0; border: 0; color: #746857; background: transparent; cursor: pointer; }
.nav-dropdown__toggle img { width: 15px; height: 15px; display: block; transition: transform .2s ease; }
.nav-item.is-open .nav-dropdown__toggle img { transform: rotate(180deg); }
.nav-dropdown__menu { position: absolute; z-index: 80; top: calc(100% - 1px); right: 0; width: 220px; padding: 10px; visibility: hidden; opacity: 0; transform: translateY(8px); color: var(--ink); background: rgba(251,248,243,.99); border: 1px solid rgba(179,145,90,.28); box-shadow: 0 18px 46px rgba(43,31,20,.14); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
.nav-dropdown__menu a { min-height: 42px; display: flex; align-items: center; padding: 8px 12px; border-bottom: 1px solid rgba(179,145,90,.16); font-size: .84rem; }
.nav-dropdown__menu a:last-child { border-bottom: 0; }
.nav-dropdown__menu a:hover, .nav-dropdown__menu a:focus-visible { color: var(--gold-dark); background: #f4ecdf; }
.nav-item:hover .nav-dropdown__menu, .nav-item.is-open .nav-dropdown__menu { visibility: visible; opacity: 1; transform: none; }
.mobile-menu { display: none; }

.hero {
  --hero-progress: 0;
  --hero-pin-top: 0px;
  --hero-entry-offset: 0px;
  position: relative;
  height: 270vh;
  height: 270svh;
  min-height: 0;
  background: #f8f3eb;
}
.hero__stage {
  position: sticky;
  top: var(--hero-pin-top);
  height: calc(100vh - var(--hero-entry-offset));
  height: calc(100svh - var(--hero-entry-offset));
  min-height: 0;
  overflow: hidden;
  background: #f8f3eb;
  isolation: isolate;
}

.hero__media {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  overflow: hidden;
  background: #f8f3eb;
}
.hero__layer {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
  opacity: 0;
  transform: translate3d(0, 0, 0) scale(1.04);
  transform-origin: center 35%;
  will-change: opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.hero__layer img { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }
.hero__layer.is-active { opacity: 1; }
.hero__veil {
  position: absolute;
  z-index: 2;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(68,48,37,.01) 50%, rgba(45,31,23,.15) 100%),
    linear-gradient(90deg, rgba(108,80,62,0) 30%, rgba(78,56,43,.04) 52%, rgba(54,38,29,.18) 72%, rgba(38,27,21,.34) 100%);
}
.hero__content { position: relative; z-index: 3; height: 100%; display: flex; align-items: center; }
.hero__copy { width: min(560px, 43%); margin-inline-end: auto; padding: 54px 0 70px; color: white; text-align: right; }
.hero h1 { margin: 0; font-size: clamp(3rem, 5.2vw, 5.6rem); line-height: .94; font-weight: 500; letter-spacing: -.045em; }
.hero h1::after { content: ""; display: block; width: 92px; height: 2px; margin: 22px 0 20px; background: linear-gradient(90deg, var(--gold), transparent); }
.hero-story__states { position: relative; min-height: 176px; }
.hero-story__state {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: translateY(18px) scale(.985);
  pointer-events: none;
  transition: opacity .36s ease, transform .36s ease;
}
.hero-story__state.is-active { opacity: 1; transform: translateY(0) scale(1); pointer-events: auto; }
.hero-story__state strong { display: block; font-size: clamp(1.55rem, 2.45vw, 2.45rem); line-height: 1.1; font-weight: 500; }
.hero-story__state p { max-width: 430px; margin: 7px 0 20px; color: rgba(255,255,255,.74); font-size: 1rem; }
.hero-story__state .button { min-width: 160px; }
.hero-story__indicator { max-width: 430px; margin-top: 15px; }
.hero-story__indicator > span { display: block; margin-bottom: 7px; color: rgba(255,255,255,.58); font-size: .73rem; }
.hero-story__track { height: 2px; overflow: hidden; background: rgba(255,255,255,.22); }
.hero-story__track i { width: 100%; height: 100%; display: block; background: var(--gold-light); transform: scaleX(var(--hero-progress)); transform-origin: right center; }
.hero-story__choices { margin-top: 8px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 7px; }
.hero-story__choices button { position: relative; min-height: 46px; display: flex; flex-direction: column; align-items: flex-start; gap: 1px; padding: 11px 0 0; border: 0; color: rgba(255,255,255,.5); background: transparent; text-align: right; cursor: pointer; transition: color .24s ease; }
.hero-story__choices button::before { content: ""; position: absolute; top: 0; right: 0; width: 6px; height: 6px; border-radius: 50%; background: rgba(255,255,255,.55); transition: background-color .24s ease, transform .24s ease; }
.hero-story__choices button span { font-family: Georgia, serif; font-size: .61rem; }
.hero-story__choices button strong { font-size: .72rem; font-weight: 500; }
.hero-story__choices button.is-active { color: white; }
.hero-story__choices button.is-active::before { background: var(--gold-light); transform: scale(1.45); }

@media (min-width: 821px) and (max-height: 900px) {
  .hero__copy { padding-block: clamp(18px, 3.2vh, 30px); }
  .hero h1 { font-size: clamp(2.7rem, 4.8vw, 4.85rem); }
  .hero h1::after { margin-block: 14px 13px; }
  .hero-story__states { min-height: 142px; }
  .hero-story__state strong { font-size: clamp(1.4rem, 2.2vw, 2.1rem); }
  .hero-story__state p { margin: 5px 0 13px; }
  .hero-story__state .button { min-height: 42px; padding-block: 8px; }
  .hero-story__indicator { margin-top: 8px; }
  .hero-story__choices button { min-height: 40px; padding-top: 8px; }
}
.button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 29px;
  border: 1px solid transparent;
  font-weight: 600;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
.button:hover { transform: translateY(-2px); }
.button--gold { color: white; background: linear-gradient(100deg, #8b6b3c, #c5a46a 55%, #9a7743); box-shadow: 0 8px 24px rgba(119,87,41,.2); }
.button--gold:hover { background: var(--gold-dark); }
.button--outline { border-color: var(--gold); color: var(--gold-dark); background: transparent; }
.button--outline:hover { background: var(--gold); color: white; }
.button--dark { background: var(--ink); color: white; }
.button--dark:hover { background: #38322b; }
.text-link { padding-block: 4px; border-bottom: 1px solid var(--gold); font-weight: 500; }
.text-link:hover { color: var(--gold-dark); }
.hero__signature { position: absolute; z-index: 3; bottom: 25px; left: 4.5%; color: rgba(255,255,255,.65); font-family: "Segoe Script", cursive; font-size: 1rem; transform: rotate(-5deg); }

.benefits { position: relative; z-index: 5; background: white; border-block: 1px solid var(--line); }
.benefits__grid { min-height: 86px; display: grid; grid-template-columns: repeat(4, 1fr); align-items: stretch; }
.benefit { display: flex; align-items: center; justify-content: center; gap: 14px; padding: 14px 24px; border-inline-start: 1px solid var(--line); }
.benefit:last-child { border-inline-end: 1px solid var(--line); }
.benefit__icon { color: var(--gold); }
.benefit__icon svg, .benefit__icon img { width: 36px; height: 36px; }
.benefit__icon img { filter: brightness(0) saturate(100%) invert(57%) sepia(20%) saturate(1052%) hue-rotate(357deg) brightness(94%) contrast(86%); }
.benefit > span:last-child { display: flex; flex-direction: column; line-height: 1.25; }
.benefit strong { font-size: .92rem; }
.benefit small { margin-top: 4px; color: #766e64; font-size: .76rem; }

.catalog { background: var(--ivory) url("https://ftp2.oia-file.com/stores/903/media/rIAzPDBlVOpQ/original.webp") center / cover; }
.section-heading { max-width: 660px; margin: 0 auto 36px; text-align: center; }
.section-heading h2 { margin: 0; font-size: clamp(2.2rem, 3.4vw, 3.45rem); line-height: 1.08; font-weight: 500; letter-spacing: -.025em; }
.section-heading > img { width: 180px; margin: 16px auto 13px; }
.section-heading p { margin: 0; color: var(--ink-soft); font-size: 1.02rem; }
.section-heading--start { max-width: none; margin-inline: 0; text-align: start; }
.section-heading--start > img { margin-inline: 0; }

.catalog-selector {
  height: clamp(520px, 44vw, 650px);
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 2.12fr) minmax(300px, .88fr);
  grid-template-rows: repeat(4, 1fr);
  direction: ltr;
  overflow: hidden;
  background: #211a14;
  border: 1px solid rgba(99,79,49,.17);
  box-shadow: var(--shadow);
}
.category-option { display: contents; }
.category-option__stage {
  position: relative;
  grid-column: 1;
  grid-row: 1 / 5;
  min-width: 0;
  overflow: hidden;
  opacity: 0;
  transform: scale(1.012);
  pointer-events: none;
  transition: opacity .5s ease, transform .75s ease;
}
.category-option.is-active .category-option__stage { opacity: 1; transform: scale(1); pointer-events: auto; }
.category-option__stage::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(18,13,9,.82)); }
.category-option__stage > picture { display: block; width: 100%; height: 100%; }
.category-option__stage > picture img { width: 100%; height: 100%; object-fit: cover; }
.category-option__caption { position: absolute; z-index: 2; right: clamp(25px, 4vw, 58px); bottom: clamp(24px, 4vw, 52px); direction: rtl; color: white; text-align: right; }
.category-option__caption > span { font-family: var(--font-display); color: var(--gold-light); font-size: .82rem; letter-spacing: .08em; }
.category-option__caption h3 { margin: 5px 0 1px; font-size: clamp(2rem, 3.4vw, 3.6rem); line-height: 1.05; font-weight: 500; }
.category-option__caption p { margin: 0 0 14px; color: rgba(255,255,255,.77); }
.category-option__caption a { min-height: 44px; display: inline-flex; align-items: center; gap: 6px; border-bottom: 1px solid var(--gold-light); font-weight: 600; }
.category-option__choice {
  position: relative;
  grid-column: 2;
  min-width: 0;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 22px;
  align-items: center;
  gap: 14px;
  padding: 20px 27px;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,.1);
  color: rgba(255,255,255,.58);
  background: #211a14;
  direction: rtl;
  text-align: right;
  cursor: pointer;
  scroll-margin-top: 190px;
  transition: color .25s ease, background-color .25s ease;
}
.category-option:nth-child(1) .category-option__choice { grid-row: 1; }
.category-option:nth-child(2) .category-option__choice { grid-row: 2; }
.category-option:nth-child(3) .category-option__choice { grid-row: 3; }
.category-option:nth-child(4) .category-option__choice { grid-row: 4; border-bottom: 0; }
.category-option__choice > span:first-child { font-family: var(--font-display); color: var(--gold-light); font-size: .82rem; }
.category-option__choice > span:nth-child(2) { min-width: 0; display: flex; flex-direction: column; }
.category-option__choice strong { font-size: clamp(1rem, 1.35vw, 1.28rem); font-weight: 500; }
.category-option__choice small { margin-top: 3px; color: rgba(255,255,255,.44); font-size: .76rem; }
.category-option__choice i { font-style: normal; font-size: 1.25rem; opacity: 0; transform: translateX(8px); transition: opacity .25s ease, transform .25s ease; }
.category-option.is-active .category-option__choice, .category-option__choice:hover, .category-option__choice:focus-visible { color: white; background: #2b2119; }
.category-option.is-active .category-option__choice i { opacity: 1; transform: none; }

.hair-care { overflow: hidden; background: #f6eee9; }
.hair-care__panel {
  position: relative;
  min-height: 650px;
  overflow: hidden;
  background: #ead1d0;
  border: 1px solid rgba(112,71,67,.13);
  box-shadow: 0 24px 60px rgba(85,52,47,.1);
}
.hair-care__panel::after { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, transparent 31%, rgba(238,215,213,.55) 52%, rgba(246,231,228,.98) 79%); pointer-events: none; }
.hair-care__copy { position: relative; z-index: 2; width: min(48%, 650px); margin-left: auto; padding: clamp(48px, 5vw, 76px) clamp(34px, 5vw, 72px); }
.hair-care__copy h2 { margin: 0; font-family: var(--font-display); font-size: clamp(2.8rem, 4vw, 4.7rem); line-height: .95; font-weight: 500; letter-spacing: -.025em; white-space: nowrap; }
.hair-care__copy > p { margin: 14px 0 20px; color: #725953; font-size: 1.04rem; }
.hair-care__spotlight { min-height: 112px; display: flex; align-items: center; gap: 18px; margin-bottom: 18px; padding: 11px 16px; background: rgba(255,250,247,.72); border: 1px solid rgba(112,71,67,.14); backdrop-filter: blur(8px); }
.hair-care__spotlight-art { width: 90px; height: 90px; flex: 0 0 90px; display: grid; place-items: center; overflow: hidden; background: rgba(255,255,255,.72); }
.hair-care__spotlight-art img { width: 100%; height: 100%; object-fit: cover; mix-blend-mode: multiply; transition: opacity .22s ease, transform .35s ease; }
.hair-care__spotlight.is-switching img { opacity: .2; transform: scale(.96); }
.hair-care__spotlight > span:last-child { display: flex; flex-direction: column; }
.hair-care__spotlight small { color: #8a645c; font-size: .72rem; }
.hair-care__spotlight strong { font-family: var(--font-display); font-size: clamp(1.35rem, 2vw, 2rem); line-height: 1.1; font-weight: 500; }
.hair-care__rail { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-block: 1px solid rgba(112,71,67,.16); }
.hair-care__rail button { min-height: 52px; display: flex; align-items: center; gap: 9px; padding: 9px 3px; border: 0; border-bottom: 1px solid rgba(112,71,67,.12); color: #725953; background: transparent; text-align: right; cursor: pointer; transition: color .2s ease, background-color .2s ease; }
.hair-care__rail button:nth-last-child(-n+2) { border-bottom: 0; }
.hair-care__rail button:nth-child(odd) { border-inline-end: 1px solid rgba(112,71,67,.12); padding-inline-end: 12px; }
.hair-care__rail button span { color: #a67e73; font-family: var(--font-display); font-size: .72rem; }
.hair-care__rail button:hover, .hair-care__rail button:focus-visible, .hair-care__rail button.is-active { color: #281c18; background: rgba(255,255,255,.3); }
.hair-care__rail button.is-active { font-weight: 600; }
.hair-care__all-link { min-height: 44px; display: inline-flex; align-items: center; gap: 7px; margin-top: 15px; color: #7d544a; border-bottom: 1px solid rgba(125,84,74,.45); font-size: .85rem; font-weight: 600; }
.hair-care__all-link:hover { color: #2f201b; }
.hair-care__media { position: absolute; inset: 0; }
.hair-care__media picture { display: block; width: 100%; height: 100%; }
.hair-care__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }

.testimonials { position: relative; background: var(--ivory) url("https://ftp2.oia-file.com/stores/903/media/rIAzPDBlVOpQ/original.webp") center / cover; }
.testimonials__heading { margin-bottom: 32px; }
.testimonials-grid { display: grid; grid-template-columns: 1.08fr .92fr .92fr 1.08fr; align-items: start; gap: 12px; padding: 28px 24px 34px; background: #211a14; box-shadow: var(--shadow); }
.testimonial-card { min-width: 0; overflow: hidden; background: transparent; border: 1px solid rgba(216,198,167,.22); }
.testimonial-card:nth-child(even) { margin-top: 38px; }
.testimonial-card__media { position: relative; aspect-ratio: 9 / 16; overflow: hidden; background: #d9cec0; }
.testimonial-card__play { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; overflow: hidden; border: 0; color: white; background: #1b1712; cursor: pointer; }
.testimonial-card__play::after { content: ""; position: absolute; inset: 40% 0 0; background: linear-gradient(transparent, rgba(18,13,9,.7)); pointer-events: none; }
.testimonial-card__play img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease, filter .3s ease; }
.testimonial-card__play:hover img { transform: scale(1.025); filter: brightness(.9); }
.testimonial-card__play-icon { position: absolute; z-index: 2; top: 50%; left: 50%; width: 66px; height: 66px; display: grid; place-items: center; border-radius: 50%; background: rgba(250,247,241,.92); border: 1px solid rgba(255,255,255,.45); transform: translate(-50%, -50%); filter: drop-shadow(0 7px 16px rgba(0,0,0,.24)); transition: transform .22s ease; }
.testimonial-card__play:hover .testimonial-card__play-icon { transform: translate(-50%, -50%) scale(1.07); }
.testimonial-card__play-icon img { width: 30px; height: 30px; transform: translateX(1px); }
.testimonial-card__load-label { position: absolute; z-index: 2; right: 18px; bottom: 16px; font-size: .78rem; font-weight: 600; }
.testimonial-card__media iframe { position: absolute; z-index: 4; inset: 0; width: 100%; height: 100%; border: 0; background: white; }
.testimonial-card__body { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 14px; color: white; background: #211a14; }
.testimonial-card__body > span { color: var(--gold-dark); font-family: Georgia, serif; font-size: .75rem; letter-spacing: .08em; }
.testimonial-card__body a { min-height: 40px; display: inline-flex; align-items: center; gap: 4px; color: rgba(255,255,255,.78); font-size: .78rem; font-weight: 500; }
.testimonial-card__body a:hover { color: var(--gold-dark); text-decoration: underline; }
.testimonials__footer { margin-top: 28px; display: flex; justify-content: center; }

.about { background: #f6f1ea url("https://ftp2.oia-file.com/stores/903/media/h6kHPbXjmBdp/original.webp") center / cover; }
.about__layout { position: relative; min-height: clamp(500px, 43vw, 650px); overflow: hidden; background: #e7d5c2; box-shadow: var(--shadow); isolation: isolate; }
.about__layout::after { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(247,239,229,.98) 0 25%, rgba(247,239,229,.9) 40%, rgba(247,239,229,.08) 67%); pointer-events: none; }
.about__content { position: relative; z-index: 2; width: min(47%, 610px); min-height: clamp(500px, 43vw, 650px); margin-right: auto; display: flex; flex-direction: column; justify-content: center; padding: clamp(48px, 6vw, 90px); }
.about__content .section-heading { margin-bottom: 25px; }
.about__content > p { max-width: 680px; margin: 0 0 14px; color: #4e4840; font-size: 1.07rem; }
.about__actions { display: flex; align-items: center; gap: 28px; margin-top: 31px; }
.about__portrait { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; background: #e3d7ca; }
.about__portrait > picture { display: block; width: 100%; height: 100%; }
.about__portrait > picture img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.about__caption { position: absolute; right: -22px; bottom: 25px; min-width: 195px; padding: 15px 20px; display: flex; flex-direction: column; background: rgba(255,255,255,.94); border: 1px solid rgba(159,122,69,.25); box-shadow: 0 10px 28px rgba(38,29,18,.12); }
.about__caption strong { font-size: 1.05rem; }
.about__caption span { color: var(--gold-dark); font-family: Georgia, serif; font-size: .78rem; }

.site-footer { background: #fffdfa; }
.footer-feature {
  position: relative;
  min-height: 430px;
  color: white;
  background: #aa9789 url("https://ftp2.oia-file.com/stores/903/media/fb6qob4ofcUq/original.webp") center / cover no-repeat;
  isolation: isolate;
}
.footer-feature::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(24,17,13,.05) 28%, rgba(24,17,13,.48) 53%, rgba(24,17,13,.91) 82%, #18110d); }
.footer-feature__content { min-height: 430px; width: min(42%, 610px); margin-left: auto; display: flex; align-items: center; }
.footer-feature__block { min-width: 0; max-width: 540px; padding: 42px clamp(28px, 4vw, 64px); }
.footer-feature h2 { margin: 0; font-size: clamp(2.25rem, 3.4vw, 3.6rem); line-height: 1.06; font-weight: 500; }
.footer-feature p { max-width: 430px; margin: 13px 0 25px; color: rgba(255,255,255,.78); font-size: 1rem; }
.footer-feature__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.footer-feature__button { min-height: 44px; gap: 8px; color: #241913; background: var(--gold-light); }
.footer-feature__button img { width: 20px; height: 20px; }
.footer-feature__button:hover { color: white; background: var(--gold); }
.footer-feature__button--outline { color: white; background: transparent; border-color: rgba(255,255,255,.48); }
.footer-feature__button--outline img { filter: invert(1); }
.footer-feature__button--outline:hover { background: rgba(255,255,255,.12); }
.footer-feature__phone { min-height: 44px; display: inline-flex; align-items: center; gap: 6px; padding-inline: 6px; border-bottom: 1px solid rgba(255,255,255,.35); font-weight: 500; }
.footer-feature__phone span { color: var(--gold-light); }

.footer-main { display: grid; grid-template-columns: 1.2fr .72fr .72fr 1.05fr; gap: clamp(30px, 4vw, 64px); padding-block: 62px 55px; }
.footer-brand { padding-inline-end: 35px; border-inline-end: 1px solid var(--line); }
.footer-brand img { width: 130px; height: 108px; object-fit: contain; object-position: right center; }
.footer-brand p { max-width: 260px; margin: 15px 0 0; color: #696159; font-size: .9rem; }
.footer-credit { margin-top: 28px; display: flex; flex-direction: column; color: #8c8278; font-size: .72rem; }
.footer-column { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.footer-main h2 { margin: 0 0 12px; font-size: 1rem; font-weight: 700; }
.footer-column a { color: #575149; font-size: .94rem; }
.footer-column a:hover { color: var(--gold-dark); text-decoration: underline; }
.footer-gift { align-self: start; padding: 27px; background: linear-gradient(135deg, #f6eee7, #fffaf5); border: 1px solid rgba(133,94,71,.18); box-shadow: 0 14px 35px rgba(70,48,31,.07); }
.footer-gift__icon { width: 35px; height: 35px; display: grid; place-items: center; margin-bottom: 15px; color: var(--gold-dark); border: 1px solid var(--gold); border-radius: 50%; }
.footer-gift__icon img { width: 19px; height: 19px; }
.footer-gift h2 { margin-bottom: 3px; font-family: var(--font-display); font-size: 1.7rem; font-weight: 500; }
.footer-gift p { margin: 0 0 17px; color: #776b61; font-size: .86rem; }
.footer-gift a { min-height: 44px; display: inline-flex; align-items: center; gap: 6px; color: var(--gold-dark); border-bottom: 1px solid var(--gold); font-size: .84rem; font-weight: 600; }

.search-dialog {
  width: min(620px, calc(100% - 32px));
  padding: 30px;
  border: 0;
  color: var(--ink);
  background: var(--ivory);
  box-shadow: 0 30px 90px rgba(17,12,7,.35);
}
.search-dialog.is-open { position: fixed; inset: 50% auto auto 50%; z-index: 95; transform: translate(-50%, -50%); display: block; }
.search-dialog.is-open::before { content: ""; position: fixed; z-index: -1; inset: -100vh -100vw; background: rgba(20,17,13,.66); }
.search-dialog::backdrop { background: rgba(20,17,13,.66); backdrop-filter: blur(3px); }
.search-dialog__head { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); padding-bottom: 14px; }
.search-dialog h2 { margin: 0; font-size: 1.65rem; }
.search-dialog p { color: var(--ink-soft); }
.search-dialog__links { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.search-dialog__links a { padding: 13px 15px; background: white; border: 1px solid var(--line); }
.search-dialog__links a:hover { color: var(--gold-dark); border-color: var(--gold); }
.toast { position: fixed; z-index: 100; left: 20px; bottom: 20px; max-width: calc(100% - 40px); padding: 12px 17px; color: white; background: #2a251f; box-shadow: var(--shadow); font-size: .87rem; }

@media (max-width: 1120px) {
  :root { --shell: min(100% - 36px, 1040px); }
  .header-main { grid-template-columns: 160px 1fr 300px; }
  .desktop-nav__inner { gap: 19px; overflow: auto; justify-content: flex-start; scrollbar-width: none; }
  .desktop-nav__inner::-webkit-scrollbar { display: none; }
  .testimonials-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
  .footer-feature__content { width: min(48%, 620px); }
  .footer-main { grid-template-columns: 1.2fr .8fr .8fr; }
  .footer-gift { grid-column: 1 / -1; display: grid; grid-template-columns: 40px auto 1fr auto; align-items: center; gap: 18px; }
  .footer-gift__icon, .footer-gift h2, .footer-gift p { margin: 0; }
}

@media (max-width: 820px) {
  :root { --shell: min(100% - 30px, 760px); }
  html { scroll-padding-top: 85px; }
  .section { padding: 58px 0; }
  .announcement { position: relative; top: auto; font-size: .75rem; }
  .site-header { position: relative; top: auto; }
  .announcement__inner { gap: 9px; }
  .header-main { min-height: 74px; grid-template-columns: 46px 1fr 80px; gap: 8px; }
  .brand { justify-self: center; width: 74px; height: 64px; }
  .brand img { width: 74px; height: 64px; }
  .header-title, .desktop-action, .desktop-nav { display: none; }
  .menu-toggle { display: inline-grid; justify-self: start; }
  .header-actions { justify-content: flex-start; }
  .icon-button { width: 44px; height: 44px; }
  .phone-link { width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border: 0; }
  .phone-link svg { width: 25px; height: 25px; }
  .phone-link span { display: none; }
  .mobile-menu {
    position: fixed;
    z-index: 70;
    inset: 0 0 0 auto;
    width: min(390px, 88vw);
    height: 100dvh;
    display: flex;
    flex-direction: column;
    padding: 22px;
    background: var(--ivory);
    box-shadow: -20px 0 60px rgba(24,18,10,.2);
    overflow: auto;
  }
  .mobile-menu[hidden] { display: none; }
  .menu-backdrop { position: fixed; z-index: 60; inset: 0 min(390px, 88vw) 0 0; display: block; background: rgba(15,12,9,.5); cursor: pointer; }
  .menu-backdrop[hidden] { display: none; }
  .mobile-menu__head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px; padding-bottom: 17px; border-bottom: 1px solid var(--line); font-size: 1.2rem; font-weight: 600; }
  .mobile-menu > a { padding: 13px 4px; border-bottom: 1px solid var(--line); font-weight: 500; }
  .mobile-menu > a:hover { color: var(--gold-dark); }
  .mobile-menu .mobile-menu__phone { margin-top: auto; border: 1px solid var(--gold); text-align: center; }
  .mobile-nav-group { border-bottom: 1px solid var(--line); }
  .mobile-nav-group__row { display: grid; grid-template-columns: minmax(0, 1fr) 46px; align-items: stretch; }
  .mobile-nav-group__row > a { min-width: 0; display: flex; align-items: center; padding: 13px 4px; font-weight: 500; }
  .mobile-nav-group__row > button { display: grid; place-items: center; padding: 0; border: 0; border-inline-start: 1px solid var(--line); color: var(--gold-dark); background: transparent; cursor: pointer; }
  .mobile-nav-group__row > button img { width: 18px; height: 18px; transition: transform .2s ease; }
  .mobile-nav-group__row > button[aria-expanded="true"] img { transform: rotate(180deg); }
  .mobile-nav-group__panel { padding: 2px 14px 10px; background: #f4ecdf; }
  .mobile-nav-group__panel[hidden] { display: none; }
  .mobile-nav-group__panel a { min-height: 42px; display: flex; align-items: center; padding: 7px 4px; border-bottom: 1px solid rgba(179,145,90,.18); color: #655a4d; font-size: .9rem; }
  .mobile-nav-group__panel a:last-child { border-bottom: 0; }

  .hero { height: 235vh; height: 235svh; }
  .hero__stage { min-height: 0; }
  .hero__media { inset: 0; width: 100%; height: 100%; }
  .hero__layer { inset: 0; width: 100%; height: 100%; }
  .hero__layer img { object-fit: cover; object-position: center top; }
  .hero__veil { background: linear-gradient(180deg, rgba(22,16,12,.03) 0%, rgba(22,16,12,.1) 38%, rgba(22,16,12,.48) 62%, rgba(22,16,12,.9) 100%); }
  .hero__content { align-items: flex-end; }
  .hero__copy { width: 100%; margin: 0 auto; padding: 0 8px clamp(98px, 14vh, 130px); padding-bottom: clamp(98px, 14svh, 130px); }
  .hero h1 { font-size: clamp(2.8rem, 9vw, 4.2rem); }
  .hero h1::after { margin: 16px 0 14px; }
  .hero-story__states { min-height: 151px; }
  .hero-story__state strong { font-size: clamp(1.45rem, 4.8vw, 2rem); }
  .hero-story__state p { margin-block: 4px 14px; font-size: .91rem; }
  .hero-story__state .button { min-height: 43px; }
  .hero-story__indicator { max-width: none; margin-top: 8px; }
  .hero .text-link, .about .text-link { min-height: 44px; display: inline-flex; align-items: center; }
  .hero__signature { display: none; }
  .benefits__grid { grid-template-columns: 1fr 1fr; }
  .benefit { min-height: 78px; justify-content: flex-start; border-bottom: 1px solid var(--line); }
  .benefit:nth-child(odd) { border-inline-end: 1px solid var(--line); }
  .benefit:nth-last-child(-n+2) { border-bottom: 0; }

  .catalog-selector {
    height: auto;
    min-height: 0;
    display: flex;
    gap: 16px;
    padding: 2px 0 14px;
    overflow-x: auto;
    overflow-y: hidden;
    background: transparent;
    border: 0;
    box-shadow: none;
    scroll-snap-type: inline mandatory;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
    scrollbar-color: var(--gold) transparent;
  }
  .category-option { flex: 0 0 min(82vw, 470px); display: block; scroll-snap-align: start; }
  .category-option__choice { display: none; }
  .category-option__stage {
    position: relative;
    display: block;
    width: 100%;
    height: min(68svh, 590px);
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto;
    background: #211a14;
    box-shadow: 0 14px 32px rgba(55,43,25,.12);
    scroll-margin-top: 90px;
  }
  .category-option__caption { right: 22px; bottom: 22px; }
  .category-option__caption h3 { font-size: clamp(1.75rem, 5.5vw, 2.5rem); }

  .hair-care__panel { min-height: 0; display: grid; grid-template-columns: 1fr; }
  .hair-care__panel::after { background: linear-gradient(180deg, transparent 48%, rgba(246,232,229,.28) 58%, #f2dedb 78%); }
  .hair-care__media { position: relative; grid-row: 1; min-height: min(105vw, 570px); }
  .hair-care__media img { object-position: center top; }
  .hair-care__copy { grid-row: 2; width: auto; margin: 0; padding: 38px clamp(25px, 7vw, 55px) 46px; text-align: center; }
  .hair-care__copy h2 { font-size: clamp(2.7rem, 10vw, 4.6rem); white-space: normal; }
  .hair-care__copy > p { margin-bottom: 20px; }
  .hair-care__spotlight { justify-content: center; text-align: right; }
  .hair-care__rail { text-align: right; }
  .hair-care__all-link { justify-content: center; }

  .section-heading { margin-bottom: 36px; }
  .about__layout { min-height: 0; display: flex; flex-direction: column-reverse; overflow: visible; background: transparent; box-shadow: none; }
  .about__layout::after { display: none; }
  .about__content { width: 100%; min-height: 0; margin: 0; padding: 42px 4px 0; }
  .about__portrait { position: relative; width: 100%; height: auto; aspect-ratio: 3 / 4; overflow: hidden; box-shadow: var(--shadow); }
  .about__portrait > picture img { object-position: center top; }
  .footer-feature { min-height: 650px; background-color: #18110d; background-image: url("https://ftp2.oia-file.com/stores/903/media/qRix6DYP8Y3K/original.webp"); background-position: center top; background-size: 100% auto; }
  .footer-feature::after { background: linear-gradient(180deg, rgba(24,17,13,.02) 22%, rgba(24,17,13,.55) 48%, rgba(24,17,13,.98) 68%, #18110d); }
  .footer-feature__content { min-height: 650px; width: 100%; margin: 0; align-items: flex-end; padding-bottom: 24px; }
  .footer-feature__block { width: 100%; max-width: 620px; padding: 34px 24px; }
  .footer-main { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; padding: 0 0 30px; border-inline-end: 0; border-bottom: 1px solid var(--line); }
  .footer-gift { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
  :root { --shell: calc(100% - 28px); }
  body { font-size: 15px; }
  .announcement__inner span:last-child { display: none; }
  .announcement__divider { display: none; }
  .section { padding: 48px 0; }
  .hero__copy { padding-inline: 1px; }
  .hero h1 { font-size: clamp(2.45rem, 13vw, 3.2rem); }
  .hero h1::after { width: 72px; margin: 12px 0 11px; }
  .hero-story__states { min-height: 145px; }
  .hero-story__state strong { font-size: 1.42rem; }
  .hero-story__state p { max-width: 330px; margin-block: 3px 11px; font-size: .84rem; }
  .hero-story__state .button { min-width: 145px; }
  .hero-story__indicator > span { margin-bottom: 5px; }
  .hero-story__choices { margin-top: 6px; gap: 3px; }
  .hero-story__choices button { min-height: 43px; padding-top: 9px; }
  .hero-story__choices button strong { font-size: .66rem; }
  .button { min-height: 46px; padding-inline: 21px; }
  .benefit { min-height: 83px; gap: 9px; padding: 12px 10px; }
  .benefit__icon svg, .benefit__icon img { width: 29px; height: 29px; }
  .benefit strong { font-size: .8rem; }
  .benefit small { font-size: .68rem; }
  .category-option { flex-basis: min(86vw, 350px); }
  .category-option__stage { height: min(66svh, 530px); }
  .category-option__caption { right: 18px; bottom: 18px; }
  .category-option__caption p { margin-bottom: 10px; }
  .hair-care__media { min-height: min(112vw, 520px); }
  .hair-care__copy p { margin-block: 14px 22px; font-size: .98rem; }
  .hair-care__copy { padding-inline: 22px; }
  .hair-care__rail button { min-height: 58px; font-size: .82rem; }
  .hair-care__rail button:nth-child(odd) { padding-inline-end: 7px; }
  .catalog-cta { align-items: stretch; flex-direction: column; text-align: center; }
  .testimonials-grid {
    width: 100%;
    margin: 0;
    padding: 22px 18px 28px;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: min(78vw, 310px);
    gap: 14px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: thin;
    scrollbar-color: var(--gold) transparent;
  }
  .testimonial-card { scroll-snap-align: start; }
  .testimonial-card:nth-child(even) { margin-top: 28px; }
  .testimonial-card__play-icon { width: 58px; height: 58px; }
  .about__layout { gap: 0; }
  .about__portrait { width: calc(100% - 22px); margin-inline: auto; }
  .about__caption { right: -10px; bottom: 18px; }
  .about__actions { gap: 20px; }
  .footer-feature { min-height: 690px; background-size: auto 330px; }
  .footer-feature__content { min-height: 690px; }
  .footer-feature__block { padding: 21px 14px; }
  .footer-feature h2 { font-size: 2.05rem; }
  .footer-feature p { margin-block: 7px 15px; }
  .footer-feature__actions { align-items: stretch; }
  .footer-feature__button { flex: 1 1 145px; }
  .footer-feature__phone { flex: 1 0 100%; justify-content: center; }
  .footer-main { gap: 38px 25px; padding-block: 48px; }
  .footer-column a { min-height: 44px; display: flex; align-items: center; padding-block: 8px; }
  .footer-gift { display: block; }
  .footer-gift__icon { margin-bottom: 15px; }
  .footer-gift h2 { margin-bottom: 3px; }
  .footer-gift p { margin-bottom: 17px; }
  .search-dialog { padding: 22px; }
  .search-dialog__links { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .hero__layer { transform: none !important; transition: none !important; }
}
/* Reference storefront refresh: post-Hero only */
.shell--wide { width: min(1480px, calc(100% - 32px)); }

.benefits {
  position: relative;
  z-index: 5;
  color: #201c18;
  background: #fff;
  border-block: 1px solid rgba(142, 108, 55, .18);
}
.benefits__grid { min-height: 78px; }
.benefit { min-height: 78px; gap: 12px; padding: 12px 22px; border-color: rgba(142, 108, 55, .16); }
.benefit__icon { width: 36px; height: 36px; display: grid; place-items: center; }
.benefit__icon img { width: 32px; height: 32px; }
.benefit strong { color: #201c18; font-size: .9rem; font-weight: 650; }
.benefit small { margin-top: 2px; color: #766e64; font-size: .75rem; }

.catalog { padding: 52px 0 58px; background: #fffdfa; }
.store-heading { max-width: 620px; margin: 0 auto 30px; text-align: center; }
.store-heading h2 { margin: 0; color: #1e1b18; font-size: clamp(2.25rem, 3.2vw, 3.25rem); line-height: 1.05; font-weight: 550; }
.store-heading h2::after { content: ""; width: 88px; height: 1px; display: block; margin: 13px auto 10px; background: #b3915a; }
.store-heading p { margin: 0; color: #635d55; font-size: .98rem; }
.catalog-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
.category-card { min-width: 0; display: flex; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid rgba(104, 83, 53, .18); box-shadow: 0 7px 20px rgba(53, 39, 22, .045); transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease; }
.category-card:hover, .category-card:focus-visible { transform: translateY(-3px); border-color: rgba(160, 120, 58, .46); box-shadow: 0 14px 28px rgba(53, 39, 22, .09); }
.category-card__media { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: #eee8df; }
.category-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.category-card:hover .category-card__media img { transform: scale(1.025); }
.category-card__body { min-height: 105px; display: flex; flex-direction: column; align-items: center; padding: 13px 10px 11px; color: #211d19; text-align: center; }
.category-card__body strong { max-width: 100%; font-size: .94rem; line-height: 1.3; font-weight: 680; }
.category-card__body small { margin-top: 2px; color: #777067; font-size: .74rem; }
.category-card__body > span { margin-top: auto; padding-top: 8px; color: #856331; font-size: .69rem; font-weight: 650; letter-spacing: .02em; }
.category-card__body i { font-style: normal; }

.care-showcase { padding: 58px 0 62px; overflow: hidden; background: #fcf8f5; border-block: 1px solid rgba(151, 105, 93, .12); }
.care-showcase__lead { position: relative; min-height: 390px; overflow: hidden; background: #f8e8e5; border: 1px solid rgba(148, 101, 89, .14); }
.care-showcase__composition { position: absolute; inset: 0; display: block; }
.care-showcase__composition img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.care-showcase__copy { position: relative; z-index: 2; width: min(39%, 510px); min-height: 390px; margin-left: auto; display: flex; flex-direction: column; justify-content: center; padding: 38px clamp(28px, 3.5vw, 56px); }
.care-showcase__copy h2 { margin: 0; color: #2b211f; font-size: clamp(2.45rem, 3.8vw, 4.15rem); line-height: .98; font-weight: 530; }
.care-showcase__copy p { margin: 12px 0 22px; color: #6e5550; font-size: 1rem; }
.care-showcase__copy a { width: fit-content; min-height: 42px; display: inline-flex; align-items: center; gap: 7px; color: #79544a; border-bottom: 1px solid rgba(121, 84, 74, .46); font-size: .82rem; font-weight: 650; }
.care-products { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); margin-top: 14px; gap: 10px; }
.care-product { min-width: 0; margin: 0; display: grid; grid-template-columns: 76px minmax(0, 1fr); align-items: center; gap: 10px; min-height: 92px; padding: 8px; background: rgba(255,255,255,.84); border: 1px solid rgba(148, 101, 89, .13); }
.care-product img { width: 76px; height: 76px; object-fit: cover; mix-blend-mode: multiply; }
.care-product h3 { min-width: 0; margin: 0; color: #4d3834; font-family: "Assistant", Arial, sans-serif; font-size: .82rem; line-height: 1.3; font-weight: 650; }

.testimonials { padding: 54px 0 58px; background: #f4efe7; }
.testimonials__heading { margin-bottom: 27px; }
.testimonials-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; padding: 0; background: transparent; box-shadow: none; }
.testimonial-card { min-width: 0; margin: 0 !important; overflow: hidden; background: #fff; border: 1px solid rgba(114, 88, 53, .16); box-shadow: 0 8px 22px rgba(52, 39, 23, .05); }
.testimonial-card__media { height: 310px; aspect-ratio: auto; background: #e6ded3; }
.testimonial-card__play { color: #fff; background: #ddd4c8; }
.testimonial-card__play::after { inset: 52% 0 0; background: linear-gradient(transparent, rgba(28,22,17,.54)); }
.testimonial-card__play img { width: 100%; height: 100%; object-fit: cover; object-position: center 23%; }
.testimonial-card__play-icon { width: 58px; height: 58px; background: rgba(255,253,249,.94); border: 1px solid rgba(179,145,90,.32); }
.testimonial-card__play-icon img { width: 26px; height: 26px; }
.testimonial-card__load-label { right: 15px; bottom: 13px; font-size: .74rem; }
.testimonial-card__media iframe { background: #fff; }
.testimonial-card__body { min-height: 54px; padding: 8px 12px; color: #2d2924; background: #fff; border-top: 1px solid rgba(114, 88, 53, .13); }
.testimonial-card__body > span { color: #9b7740; font-family: "Assistant", Arial, sans-serif; font-size: .7rem; }
.testimonial-card__body a { color: #5d554d; font-size: .72rem; }
.testimonial-card__body a:hover { color: #8e6c37; }
.testimonials__footer { margin-top: 22px; }
.testimonials__footer .text-link { min-height: 42px; color: #795d35; font-weight: 650; }

.about { padding: 0; background: #f7f1e9; }
.about__layout { position: relative; min-height: 500px; overflow: hidden; background: #eee2d5; box-shadow: none; }
.about__layout::after { content: ""; position: absolute; z-index: 1; inset: 0; display: block; background: linear-gradient(90deg, rgba(250,247,241,.98) 0%, rgba(250,247,241,.93) 30%, rgba(250,247,241,.5) 48%, rgba(250,247,241,0) 68%); pointer-events: none; }
.about__portrait { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; overflow: hidden; box-shadow: none; }
.about__portrait img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.about__content-wrap { position: relative; z-index: 2; min-height: 500px; display: flex; align-items: center; }
.about__content { width: min(45%, 600px); min-height: 0; margin: 0; padding: 54px 0; }
.about__content h2 { margin: 0 0 18px; font-size: clamp(2.3rem, 3.4vw, 3.6rem); line-height: 1.08; font-weight: 540; }
.about__content h2::after { content: ""; width: 72px; height: 1px; display: block; margin-top: 13px; background: #b3915a; }
.about__content p { max-width: 560px; margin: 0 0 13px; color: #4f4942; font-size: 1rem; }
.about__content .button { margin-top: 17px; }

.site-footer { color: #26221e; background: #fff; border-top: 1px solid rgba(108, 83, 49, .18); }
.footer-main { display: grid; grid-template-columns: 1.25fr .75fr .75fr 1fr; gap: clamp(28px, 4vw, 60px); padding-block: 48px 38px; }
.footer-brand { padding-inline-end: 28px; border-inline-end: 1px solid rgba(108, 83, 49, .16); }
.footer-brand img { width: 116px; height: 96px; object-fit: contain; object-position: right center; }
.footer-brand p { max-width: 260px; margin: 12px 0 0; color: #686159; font-size: .86rem; }
.footer-column { gap: 5px; }
.footer-main h2 { margin-bottom: 8px; color: #29241f; font-size: .96rem; }
.footer-column a { min-height: 32px; display: flex; align-items: center; color: #625b53; font-size: .86rem; }
.footer-gift { padding: 22px; background: #fbf6ef; border: 1px solid rgba(132, 96, 49, .17); box-shadow: none; }
.footer-gift__icon { width: 32px; height: 32px; margin-bottom: 10px; }
.footer-gift h2 { margin-bottom: 2px; font-size: 1.45rem; }
.footer-gift p { margin-bottom: 11px; }
.footer-gift a { min-height: 38px; }
.footer-bottom { min-height: 46px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-block: 11px; color: #8a8178; border-top: 1px solid rgba(108, 83, 49, .14); font-size: .72rem; }

@media (max-width: 1100px) {
  .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .care-products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .testimonials-grid { grid-template-columns: repeat(4, minmax(230px, 1fr)); overflow-x: auto; padding: 0 2px 14px; scroll-snap-type: inline mandatory; }
  .testimonial-card { scroll-snap-align: start; }
}

@media (max-width: 820px) {
  .benefits__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .benefit { justify-content: flex-start; }
  .benefit:nth-child(odd) { border-inline-end: 1px solid rgba(142, 108, 55, .16); }
  .benefit:nth-last-child(-n+2) { border-bottom: 0; }
  .care-showcase__lead { min-height: 650px; display: flex; flex-direction: column; }
  .care-showcase__composition { position: relative; height: 390px; order: 1; }
  .care-showcase__copy { width: 100%; min-height: 0; order: 2; margin: 0; padding: 30px 28px 34px; text-align: center; }
  .care-showcase__copy a { align-self: center; }
  .about__layout { min-height: 0; display: flex; flex-direction: column; }
  .about__layout::after { display: none; }
  .about__portrait { position: relative; width: 100%; height: 54vw; min-height: 360px; aspect-ratio: auto; }
  .about__content-wrap { min-height: 0; width: min(100% - 48px, 720px); }
  .about__content { width: 100%; padding: 40px 0 46px; text-align: center; }
  .about__content h2::after { margin-inline: auto; }
  .about__content p { margin-inline: auto; }
  .footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-brand { grid-column: 1 / -1; padding: 0 0 25px; border-inline-end: 0; border-bottom: 1px solid rgba(108, 83, 49, .14); }
  .footer-gift { grid-column: 1 / -1; }
}

@media (max-width: 520px) {
  .shell--wide { width: calc(100% - 20px); }
  .catalog { padding-block: 40px 45px; }
  .store-heading { margin-bottom: 23px; }
  .store-heading h2 { font-size: 2.35rem; }
  .store-heading p { font-size: .9rem; }
  .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .category-card__media { aspect-ratio: 1 / 1; }
  .category-card__body { min-height: 92px; padding: 10px 6px 8px; }
  .category-card__body strong { font-size: .78rem; }
  .category-card__body small { font-size: .65rem; }
  .category-card__body > span { padding-top: 5px; font-size: .62rem; }
  .care-showcase { padding-block: 43px 46px; }
  .care-showcase__lead { min-height: 0; }
  .care-showcase__composition { height: 315px; }
  .care-showcase__copy { padding: 26px 19px 30px; }
  .care-showcase__copy h2 { font-size: 2.55rem; }
  .care-showcase__copy p { margin-block: 8px 16px; font-size: .9rem; }
  .care-products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .care-product { grid-template-columns: 58px minmax(0, 1fr); min-height: 72px; gap: 7px; padding: 6px; }
  .care-product img { width: 58px; height: 58px; }
  .care-product h3 { font-size: .72rem; }
  .testimonials { padding-block: 42px 46px; }
  .testimonials-grid { grid-template-columns: repeat(4, 68vw); gap: 10px; margin-inline: -10px; padding-inline: 10px; }
  .testimonial-card__media { height: 300px; }
  .about__portrait { height: 100vw; min-height: 0; }
  .about__content-wrap { width: calc(100% - 34px); }
  .about__content { padding-block: 35px 41px; }
  .about__content h2 { font-size: 2.4rem; }
  .about__content p { font-size: .92rem; }
  .footer-main { grid-template-columns: 1fr 1fr; gap: 30px 18px; padding-block: 40px 32px; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-gift { grid-column: 1 / -1; }
  .footer-column a { min-height: 40px; }
  .footer-bottom { flex-direction: column; justify-content: center; gap: 2px; text-align: center; }
}

@media (max-width: 340px) {
  .catalog-grid { grid-template-columns: 1fr; }
}

/* Post-Hero physical alignment corrections */
.about__content-wrap { direction: ltr; }
.about__content { direction: rtl; }

/* Compact reference rhythm on narrow screens */
@media (max-width: 520px) {
  .benefits__grid { min-height: 0; }
  .benefit { min-height: 66px; gap: 7px; padding: 7px 8px; }
  .benefit__icon { width: 28px; height: 28px; }
  .benefit__icon img { width: 25px; height: 25px; }
  .benefit strong { font-size: .76rem; }
  .benefit small { margin-top: 0; font-size: .64rem; }
  .care-showcase { padding-block: 36px 38px; }
  .care-showcase__composition { height: 260px; }
  .care-showcase__copy { padding: 22px 18px 24px; }
  .care-showcase__copy h2 { font-size: 2.25rem; }
  .care-product { grid-template-columns: 52px minmax(0, 1fr); min-height: 64px; }
  .care-product img { width: 52px; height: 52px; }
  .testimonial-card__load-label { display: none; }
  .footer-main { gap: 22px 16px; padding-block: 30px 24px; }
  .footer-brand { display: grid; grid-template-columns: 94px minmax(0, 1fr); align-items: center; gap: 16px; padding-bottom: 20px; }
  .footer-brand img { width: 94px; height: 78px; }
  .footer-brand p { margin: 0; }
  .footer-main h2 { margin-bottom: 5px; }
  .footer-column a { min-height: 32px; padding-block: 4px; font-size: .8rem; }
  .footer-gift { padding: 18px; }
  .footer-gift__icon { float: left; margin: 0; }
  .footer-bottom { min-height: 48px; padding-block: 8px; }
}
/* Mobile Hero copy: one readable state at a time */
@keyframes hero-copy-reveal-mobile {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 820px) {
  .hero-story__state[aria-hidden="true"] {
    visibility: hidden;
    opacity: 0 !important;
    transform: translateY(8px) !important;
    transition: none !important;
  }
  .hero-story__state[aria-hidden="false"] {
    visibility: visible;
    animation: hero-copy-reveal-mobile .24s ease both;
  }
  .hero-story__state strong { margin-bottom: 3px; line-height: 1.16; }
  .hero-story__state p { line-height: 1.42; }
}
@media (max-width: 620px) {
  .hero-story__states { min-height: 148px; margin-top: 2px; }
  .hero-story__state { padding-top: 1px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-story__state[aria-hidden="false"] { animation: none; }
}
/* Hero copy states: single visible state at every viewport */
.hero-story__state[aria-hidden="true"] {
  visibility: hidden;
  opacity: 0 !important;
  transform: translateY(8px) !important;
  transition: none !important;
}
.hero-story__state[aria-hidden="false"] {
  visibility: visible;
  animation: hero-copy-reveal-mobile .24s ease both;
}
@media (prefers-reduced-motion: reduce) {
  .hero-story__state[aria-hidden="false"] { animation: none; }
}
/* Desktop Hero palette: light champagne safe zone */
@media (min-width: 821px) {
  .hero__veil {
    background:
      linear-gradient(180deg, rgba(253, 250, 244, .02) 52%, rgba(246, 239, 229, .1) 100%),
      linear-gradient(90deg, rgba(252, 248, 241, 0) 0 42%, rgba(250, 246, 238, .18) 51%, rgba(249, 245, 237, .76) 63%, rgba(249, 245, 237, .94) 74%, #f8f3eb 88% 100%);
  }
  .hero__copy { color: #241d18; }
  .hero h1 { color: #201a16; }
  .hero h1::after { background: linear-gradient(90deg, #9d7740, rgba(157, 119, 64, .08)); }
  .hero-story__state strong { color: #2d241e; }
  .hero-story__state p { color: #635a51; }
  .hero-story__indicator > span { color: #746b62; }
  .hero-story__track { background: rgba(104, 86, 64, .26); }
  .hero-story__track i { background: #a37e46; }
  .hero-story__choices button { color: #7a7167; }
  .hero-story__choices button::before { background: #b8a993; }
  .hero-story__choices button.is-active { color: #241d18; }
  .hero-story__choices button.is-active::before { background: #9d7740; }
  .hero__signature { color: rgba(77, 62, 48, .56); }
}

/* Focused commerce layer: catalog, verified products and FAQ */
.catalog-grid {
  width: min(1240px, 100%);
  margin-inline: auto;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.category-card__media { aspect-ratio: 18 / 13; }
.category-card__body { min-height: 112px; padding: 15px 12px 13px; }
.category-card__body strong { font-size: 1rem; }
.category-card__body small { font-size: .76rem; }
.care-showcase__copy .care-showcase__cta {
  min-height: 44px;
  padding: 0 20px;
  color: #fff;
  background: #9b725f;
  border: 1px solid #9b725f;
  box-shadow: 0 8px 20px rgba(105, 65, 52, .13);
  transition: color .2s ease, background .2s ease, transform .2s ease;
}
.care-showcase__copy .care-showcase__cta:hover,
.care-showcase__copy .care-showcase__cta:focus-visible {
  color: #593b34;
  background: rgba(255, 255, 255, .8);
  transform: translateY(-2px);
}

.featured-products {
  overflow: hidden;
  padding: 62px 0 66px;
  background: #fffdfa;
  border-bottom: 1px solid rgba(128, 95, 50, .12);
}
.product-rail__header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 26px;
}
.product-rail__header h2,
.premium-products__heading h2,
.faq__heading h2 {
  margin: 0;
  color: #211d19;
  font-size: clamp(2.2rem, 3.1vw, 3.25rem);
  line-height: 1.06;
  font-weight: 550;
}
.product-rail__header h2::after,
.premium-products__heading h2::after,
.faq__heading h2::after {
  content: "";
  width: 72px;
  height: 1px;
  display: block;
  margin-top: 12px;
  background: #b3915a;
}
.product-rail__header p,
.premium-products__heading p,
.faq__heading p {
  margin: 9px 0 0;
  color: #70685f;
  font-size: .96rem;
}
.product-rail__controls { display: flex; gap: 8px; direction: rtl; }
.product-rail__controls button {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  color: #5f4a30;
  background: #fff;
  border: 1px solid rgba(134, 101, 56, .25);
  font-size: 1.1rem;
  transition: color .2s ease, background .2s ease, opacity .2s ease;
}
.product-rail__controls button:hover,
.product-rail__controls button:focus-visible { color: #fff; background: #9d7740; }
.product-rail__controls button:disabled { opacity: .35; cursor: default; }
.product-rail {
  --rail-gap: 16px;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - (var(--rail-gap) * 3)) / 4);
  gap: var(--rail-gap);
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-behavior: smooth;
  scroll-snap-type: inline mandatory;
  scrollbar-width: thin;
  scrollbar-color: rgba(157, 119, 64, .44) transparent;
  padding: 2px 2px 15px;
}
.product-rail:focus-visible { outline: 2px solid #9d7740; outline-offset: 5px; }
.product-card {
  min-width: 0;
  overflow: hidden;
  scroll-snap-align: start;
  background: #fff;
  border: 1px solid rgba(113, 86, 50, .16);
  box-shadow: 0 8px 22px rgba(53, 39, 22, .05);
}
.product-card > a { height: 100%; display: flex; flex-direction: column; }
.product-card__media { aspect-ratio: 1 / 1; display: block; overflow: hidden; background: #f1ece5; }
.product-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.product-card:hover .product-card__media img,
.product-card:focus-within .product-card__media img { transform: scale(1.025); }
.product-card__body { min-height: 118px; display: flex; flex-direction: column; padding: 15px 16px 14px; }
.product-card__body small { color: #9b7740; font-size: .71rem; }
.product-card__body strong { margin-top: 2px; color: #27221d; font-size: 1rem; font-weight: 680; }
.product-card__body > span { margin-top: auto; padding-top: 12px; color: #79603b; font-size: .76rem; font-weight: 650; }
.product-card__body i,
.premium-card__copy i { font-style: normal; }

.premium-products {
  padding: 70px 0 76px;
  background: #faf8f3;
  border-block: 1px solid rgba(112, 88, 57, .1);
}
.premium-products__heading { max-width: 1160px; margin: 0 auto 30px; text-align: right; }
.premium-products__mobile-nav { display: none; }
.premium-products__grid {
  width: min(1160px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  overflow: visible;
}
.premium-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(105, 84, 56, .14);
  box-shadow: 0 12px 30px rgba(47, 36, 22, .06);
}
.premium-card__media { position: relative; aspect-ratio: 4 / 4.75; overflow: hidden; background: #f5f0e7; }
.premium-card__media img { width: 100%; height: 100%; display: block; object-fit: cover; filter: none; }
.premium-card[data-product-id="160326"] .premium-card__media img { object-position: center 56%; transform: scale(1.06); }
.premium-card[data-product-id="71079"] .premium-card__media img { object-position: center 52%; transform: scale(1.04); }
.premium-card__copy { min-height: 184px; flex: 1; display: flex; flex-direction: column; padding: 24px 26px 25px; border-top: 1px solid rgba(105, 84, 56, .12); }
.premium-card__copy h3 { margin: 0 0 8px; color: #29231e; font-size: clamp(1.55rem, 2vw, 2rem); line-height: 1.15; font-weight: 650; }
.premium-card__copy p { max-width: 470px; margin: 0; color: #6b645c; font-size: .94rem; line-height: 1.65; }
.premium-card__copy a { width: fit-content; min-height: 38px; margin-top: auto; padding-top: 13px; color: #70562f; border-bottom: 1px solid rgba(112, 86, 47, .4); font-size: .82rem; font-weight: 700; }
.premium-card__copy a:hover,
.premium-card__copy a:focus-visible { color: #2f271f; border-color: #9d7740; }

.faq { padding: 66px 0 72px; background: #fffdfa; border-top: 1px solid rgba(128, 95, 50, .12); }
.faq__layout { display: grid; grid-template-columns: minmax(220px, .72fr) minmax(0, 1.45fr); gap: clamp(45px, 7vw, 108px); align-items: start; }
.faq__heading { position: sticky; top: 120px; }
.faq__list { border-top: 1px solid rgba(116, 87, 50, .22); }
.faq__list details { border-bottom: 1px solid rgba(116, 87, 50, .2); }
.faq__list summary {
  min-height: 70px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 17px 2px;
  color: #2b2621;
  cursor: pointer;
  list-style: none;
  font-size: 1rem;
  font-weight: 620;
}
.faq__list summary::-webkit-details-marker { display: none; }
.faq__list summary::after { content: "+"; flex: 0 0 auto; color: #9d7740; font-size: 1.4rem; line-height: 1; font-weight: 350; }
.faq__list details[open] summary::after { content: "−"; }
.faq__list details p { max-width: 760px; margin: -4px 0 0; padding: 0 2px 22px; color: #696158; font-size: .94rem; line-height: 1.75; }

@media (max-width: 1100px) {
  .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .product-rail { grid-auto-columns: calc((100% - var(--rail-gap)) / 2); }
}

@media (max-width: 820px) {
  .featured-products,
  .premium-products,
  .faq { padding-block: 48px 52px; }
  .faq__layout { grid-template-columns: 1fr; gap: 28px; }
  .faq__heading { position: static; }
}

@media (max-width: 767px) {
  .premium-products__heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
  }
  .premium-products__mobile-nav { display: flex; align-items: center; gap: 12px; direction: ltr; }
  .premium-products__counter { min-width: 54px; color: #746650; font-size: .78rem; letter-spacing: .08em; white-space: nowrap; }
  .premium-products__counter strong { color: #2f2923; font-size: 1rem; font-weight: 700; }
  .premium-products__buttons { display: flex; gap: 6px; }
  .premium-products__buttons button {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    color: #44392d;
    background: #fff;
    border: 1px solid rgba(113, 87, 51, .24);
    border-radius: 50%;
    font: 600 1.05rem/1 Arial, sans-serif;
  }
  .premium-products__buttons button:hover,
  .premium-products__buttons button:focus-visible { border-color: #9d7740; color: #70562f; }
  .premium-products__buttons button:disabled { opacity: .34; cursor: default; }
  .premium-products__grid {
    width: 100%;
    display: grid;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: 86%;
    gap: 14px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    outline-offset: 5px;
  }
  .premium-products__grid::-webkit-scrollbar { display: none; }
  .premium-card { scroll-snap-align: start; scroll-snap-stop: always; }
  .premium-card__media { aspect-ratio: 4 / 5; }
  .premium-card__copy { min-height: 174px; padding: 20px 19px 22px; }
}

@media (max-width: 520px) {
  .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .category-card__media { aspect-ratio: 1 / 1; }
  .category-card__body { min-height: 96px; }
  .product-rail__header { align-items: center; gap: 14px; margin-bottom: 21px; }
  .product-rail__header h2,
  .premium-products__heading h2,
  .faq__heading h2 { font-size: 2.25rem; }
  .product-rail__header p,
  .premium-products__heading p,
  .faq__heading p { font-size: .87rem; }
  .product-rail__controls { gap: 5px; }
  .product-rail__controls button { width: 38px; height: 38px; }
  .product-rail { grid-auto-columns: 72vw; margin-inline: -10px; padding-inline: 10px; }
  .product-card__body { min-height: 105px; padding: 13px 14px 12px; }
  .premium-products__heading { margin-bottom: 22px; }
  .premium-products__grid { gap: 14px; }
  .premium-card__copy { min-height: 170px; padding: 19px 18px 21px; }
  .premium-card__copy h3 { font-size: 1.55rem; }
  .premium-card__copy p { font-size: .86rem; }
  .faq__list summary { min-height: 64px; padding-block: 15px; font-size: .92rem; }
  .faq__list details p { font-size: .88rem; }
}

@media (max-width: 340px) {
  .catalog-grid { grid-template-columns: 1fr; }
  .product-rail { grid-auto-columns: 82vw; }
}

@media (prefers-reduced-motion: reduce) {
  .product-rail { scroll-behavior: auto; }
  .premium-products__grid { scroll-behavior: auto; }
  .product-card__media img { transform: none !important; }
}

/* Post-Hero heading hierarchy */
.catalog .store-heading h2,
.care-showcase__copy h2,
.product-rail__header h2,
.premium-products__heading h2,
.testimonials .store-heading h2,
.about__content h2,
.faq__heading h2 {
  font-family: "Assistant", Arial, sans-serif;
  font-size: clamp(2.875rem, 3.8vw, 3.5rem);
  line-height: 1.04;
  font-weight: 700;
  letter-spacing: -.025em;
}
.catalog .store-heading h2::after,
.product-rail__header h2::after,
.premium-products__heading h2::after,
.testimonials .store-heading h2::after,
.about__content h2::after,
.faq__heading h2::after { display: none; }

@media (max-width: 520px) {
  .catalog .store-heading h2,
  .care-showcase__copy h2,
  .product-rail__header h2,
  .premium-products__heading h2,
  .testimonials .store-heading h2,
  .about__content h2,
  .faq__heading h2 {
    font-size: clamp(2rem, 9vw, 2.25rem);
    line-height: 1.06;
  }
}

/* Branded Gift Card footer tile */
.footer-gift {
  align-self: start;
  justify-self: start;
  width: 100%;
  max-width: 280px;
  display: flex !important;
  flex-direction: column;
  grid-template-columns: none !important;
  gap: 0;
  overflow: hidden;
  padding: 0;
  background: #fff;
  border: 1px solid rgba(105, 84, 56, .15);
  box-shadow: 0 8px 20px rgba(47, 36, 22, .045);
}
.footer-gift__media {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  display: block;
  object-fit: contain;
  object-position: center;
}
.footer-gift a {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 9px 14px;
  color: #332b23;
  border: 0;
  border-top: 1px solid rgba(105, 84, 56, .13);
  font-size: .82rem;
  font-weight: 650;
}
.footer-gift a:hover,
.footer-gift a:focus-visible { color: #7b5d32; background: #fbf7f0; }

@media (max-width: 520px) {
  .footer-gift { justify-self: center; max-width: 280px; }
}

/* Final studio polish and cross-browser Hero safeguards */
:root { --shell: min(1280px, calc(100% - 80px)); }
.shell--wide { width: var(--shell); }
.section { padding-block: 64px; }

.desktop-nav__inner { gap: clamp(3px, .42vw, 8px); }
.desktop-nav__link { font-size: 13px; }

.benefits { border-block: 1px solid rgba(142, 108, 55, .2); box-shadow: none; }
.benefits__grid { min-height: 68px; }
.benefit { min-height: 68px; padding: 10px 18px; border: 0 !important; box-shadow: none; }
.benefit__icon,
.benefit__icon img { width: 28px; height: 28px; }

.store-heading,
.product-rail__header,
.premium-products__heading,
.faq__heading { text-align: right; }
.store-heading { max-width: none; margin: 0 0 30px; }
.catalog .store-heading h2,
.care-showcase__copy h2,
.product-rail__header h2,
.premium-products__heading h2,
.testimonials .store-heading h2,
.about__content h2,
.faq__heading h2 {
  font-family: "Assistant", Arial, sans-serif;
  font-size: clamp(2.75rem, 3.35vw, 3rem);
  line-height: 1.06;
  font-weight: 600;
  letter-spacing: -.02em;
}

.catalog { padding-block: 60px 66px; background: #fffdf9; }
.catalog-grid { width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 22px; }
.category-card {
  overflow: visible;
  background: transparent;
  border: 0;
  box-shadow: none;
  transition: none;
}
.category-card:hover,
.category-card:focus-visible { transform: none; border-color: transparent; box-shadow: none; }
.category-card__media { aspect-ratio: 4 / 3; background: #f2ede5; }
.category-card__media img { object-fit: cover; object-position: center; }
.category-card__body { min-height: 102px; align-items: flex-start; padding: 14px 0 4px; text-align: right; }
.category-card__body strong { font-size: 1.125rem; line-height: 1.28; font-weight: 650; }
.category-card__body small { margin-top: 3px; color: #6f685f; font-size: .875rem; }
.category-card__body > span { padding-top: 8px; font-size: .875rem; letter-spacing: 0; }

.care-showcase { padding-block: 64px 68px; background: #fcf7f4; }
.care-showcase__lead {
  min-height: 460px;
  display: grid;
  grid-template-columns: minmax(0, 1.63fr) minmax(330px, 1fr);
  overflow: hidden;
  background: #f6e5e2;
  border: 0;
}
.care-showcase__composition { position: relative; inset: auto; grid-column: 1; grid-row: 1; min-width: 0; height: 100%; }
.care-showcase__composition img { object-fit: cover; object-position: center top; }
.care-showcase__copy {
  grid-column: 2;
  grid-row: 1;
  width: auto;
  min-height: 460px;
  margin: 0;
  padding: 46px clamp(28px, 3.5vw, 52px);
}
.care-showcase__copy .care-showcase__cta { box-shadow: none; transform: none; }
.care-products { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 18px; margin-top: 26px; }
.care-product {
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  padding: 0;
  background: transparent;
  border: 0;
}
.care-product img { width: 112px; height: 112px; object-fit: contain; mix-blend-mode: multiply; }
.care-product h3 { margin: 0; color: #493834; font-size: .9rem; line-height: 1.35; text-align: center; }

.featured-products { padding-block: 64px 68px; background: #fffdf9; }
.product-rail__header { margin-bottom: 24px; }
.product-rail__controls { align-items: center; gap: 8px; direction: ltr; }
.product-rail__counter { min-width: 54px; color: #746650; font-size: .78rem; letter-spacing: .07em; white-space: nowrap; }
.product-rail__counter strong { color: #2f2923; font-size: 1rem; font-weight: 700; }
.product-rail__controls button { border-radius: 50%; }
.product-rail { padding: 0; scrollbar-width: none; }
.product-rail::-webkit-scrollbar { display: none; }
.product-card { overflow: visible; background: transparent; border: 0; box-shadow: none; }
.product-card__media { aspect-ratio: 1 / 1; padding: 8px; background: #f2ede5; }
.product-card__media img { object-fit: contain; object-position: center; }
.product-card__body { min-height: 108px; padding: 14px 0 2px; text-align: right; }
.product-card__body small { color: #80633d; font-size: .78rem; }
.product-card__body strong { margin-top: 3px; font-size: 1.125rem; }
.product-card__body > span { padding-top: 9px; font-size: .875rem; }
.product-rail__status { height: 2px; margin-top: 20px; overflow: hidden; background: rgba(113, 87, 51, .14); }
.product-rail__status i { width: 100%; height: 100%; display: block; background: #a9824b; transform: scaleX(.16); transform-origin: right center; transition: transform .24s ease; }

.premium-products { padding-block: 64px 70px; }
.premium-products__heading { margin-bottom: 26px; }
.premium-card__media { aspect-ratio: 4 / 4.3; }
.premium-card__copy { min-height: 172px; }

.testimonials { padding-block: 60px 64px; background: #f4efe7; }
.testimonials__heading { max-width: none; display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.testimonials__heading .text-link { min-height: 44px; display: inline-flex; align-items: center; font-size: .875rem; }
.testimonials-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; overflow: visible; }
.testimonial-card { margin: 0 !important; overflow: visible; background: transparent; border: 0; box-shadow: none; }
.testimonial-card__media { height: auto; aspect-ratio: 9 / 13; background: #e9e2d8; }
.testimonial-card__play-icon { width: 48px; height: 48px; border: 0; box-shadow: 0 3px 14px rgba(38, 29, 20, .12); }
.testimonial-card__play-icon img { width: 22px; height: 22px; }
.testimonial-card__body { min-height: 44px; justify-content: flex-start; padding: 10px 0 0; background: transparent; border: 0; }
.testimonial-card__body a { min-height: 34px; display: inline-flex; align-items: center; font-size: .82rem; white-space: nowrap; }
.testimonials__footer { display: none; }

.about__content { width: min(42%, 420px); padding-block: 56px; text-align: right; }
.about__content p { max-width: 420px; margin: 0; font-size: 1.0625rem; line-height: 1.7; }
.about__content .button { width: min(190px, 100%); min-width: 160px; min-height: 48px; margin-top: 22px; box-shadow: none; }

.faq { padding-block: 64px 70px; }
.faq__layout { grid-template-columns: minmax(240px, .72fr) minmax(0, 1.28fr); gap: clamp(48px, 7vw, 96px); }
.faq__list summary { min-height: 60px; padding-block: 15px; }
.faq__list details p a { color: #70562f; border-bottom: 1px solid rgba(112, 86, 47, .38); }

.site-footer { color: #302a25; background: #f3ede4; }
.footer-main { grid-template-columns: 1.15fr .75fr .75fr 1fr; align-items: start; padding-block: 48px 38px; }
.footer-column a { color: #514a42; }
.footer-gift { overflow: visible; padding: 0; background: transparent; border: 0; box-shadow: none; }
.footer-gift a { color: #514a42; background: transparent; border-top: 0; }
.footer-gift a:hover,
.footer-gift a:focus-visible { color: #765a34; background: transparent; }

@media (min-width: 821px) and (max-width: 1024px) and (orientation: portrait) {
  .hero { height: 235vh; height: 235svh; }
  .hero__media { inset: 0; width: 100%; height: 100%; }
  .hero__layer,
  .hero__layer img { width: 100%; height: 100%; }
  .hero__layer img { object-fit: cover; object-position: center top; }
  .hero__veil { background: linear-gradient(180deg, rgba(22,16,12,.03) 0%, rgba(22,16,12,.1) 38%, rgba(22,16,12,.5) 64%, rgba(22,16,12,.91) 100%); }
  .hero__content { align-items: flex-end; }
  .hero__copy { width: 100%; margin: 0 auto; padding: 0 18px clamp(84px, 11vh, 118px); padding-bottom: clamp(84px, 11svh, 118px); color: #fff; }
  .hero h1,
  .hero-story__state strong { color: #fff; }
  .hero h1 { font-size: clamp(3.2rem, 7vw, 4.7rem); }
  .hero h1::after { background: linear-gradient(90deg, var(--gold), transparent); }
  .hero-story__state p { color: rgba(255,255,255,.78); }
  .hero-story__indicator { max-width: 540px; }
  .hero-story__indicator > span { color: rgba(255,255,255,.62); }
  .hero-story__track { background: rgba(255,255,255,.24); }
  .hero-story__choices button { color: rgba(255,255,255,.58); }
  .hero-story__choices button::before { background: rgba(255,255,255,.55); }
  .hero-story__choices button.is-active { color: #fff; }
  .hero__signature { display: none; }
  .care-showcase__lead { min-height: 0; grid-template-columns: 1fr; }
  .care-showcase__composition { grid-column: 1; grid-row: 1; height: min(62vw, 540px); }
  .care-showcase__copy { grid-column: 1; grid-row: 2; min-height: 0; padding: 36px 32px 40px; text-align: center; }
  .care-showcase__copy a { align-self: center; }
  .care-products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  :root { --shell: min(760px, calc(100% - 40px)); }
  .announcement { min-height: 34px; font-size: .8125rem; }
  .announcement__inner { padding-block: 6px; }
  .section { padding-block: 52px; }
  .care-showcase__lead { min-height: 0; display: grid; grid-template-columns: 1fr; }
  .care-showcase__composition { grid-column: 1; grid-row: 1; height: min(78vw, 520px); }
  .care-showcase__copy { grid-column: 1; grid-row: 2; min-height: 0; padding: 32px 24px 38px; }
  .care-products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 10px; }
  .care-product img { width: 88px; height: 88px; }
  .care-product h3 { max-width: 110px; min-height: 2.7em; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: .82rem; }
  .faq__layout { grid-template-columns: 1fr; gap: 26px; }
  .faq__heading { position: static; }
  .about__content { width: 100%; max-width: 420px; padding: 38px 0 44px; text-align: right; }
  .footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 12px; }
  .premium-products__buttons button { width: 44px; height: 44px; }
}

@media (max-width: 620px) {
  .catalog .store-heading h2,
  .care-showcase__copy h2,
  .product-rail__header h2,
  .premium-products__heading h2,
  .testimonials .store-heading h2,
  .about__content h2,
  .faq__heading h2 { font-size: clamp(1.875rem, 8.2vw, 2rem); font-weight: 600; }
  .category-card__body { min-height: 94px; padding-top: 11px; }
  .category-card__body strong { font-size: .9375rem; }
  .category-card__body small,
  .category-card__body > span { font-size: .8125rem; }
  .product-rail__header { align-items: center; }
  .product-rail__controls { gap: 6px; }
  .product-rail__controls button { width: 44px; height: 44px; }
  .product-rail__counter { min-width: 48px; }
  .product-card__body strong { font-size: 1rem; }
  .product-card__body > span { font-size: .875rem; }
  .testimonials__heading { align-items: flex-start; flex-direction: column; gap: 6px; }
  .testimonials-grid { width: 100%; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 78vw; gap: 14px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: inline mandatory; scrollbar-width: none; }
  .testimonials-grid::-webkit-scrollbar { display: none; }
  .testimonial-card { scroll-snap-align: start; }
  .testimonial-card__media { aspect-ratio: 9 / 13; }
  .footer-column a,
  .footer-gift a { min-height: 44px; }
}

@media (prefers-reduced-motion: reduce) {
  .product-rail__status i { transition: none; }
  .category-card__media img,
  .product-card__media img { transform: none !important; }
}

/* Header follows the same phone and portrait-tablet breakpoint as the Hero. */
@media (max-width: 820px), (min-width: 821px) and (max-width: 1024px) and (orientation: portrait) {
  .announcement {
    position: relative;
    top: auto;
    font-size: .8125rem;
  }
  .announcement__inner { gap: 9px; padding-block: 6px; }
  .site-header { position: relative; top: auto; }
  .header-main {
    min-height: 74px;
    grid-template-columns: 46px minmax(0, 1fr) 46px;
    gap: 8px;
  }
  .brand {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    width: 74px;
    height: 64px;
  }
  .brand img { width: 74px; height: 64px; }
  .header-title,
  .desktop-action,
  .desktop-nav { display: none; }
  .menu-toggle {
    grid-column: 1;
    grid-row: 1;
    display: inline-grid;
    justify-self: start;
  }
  .header-actions {
    grid-column: 3;
    grid-row: 1;
    justify-content: flex-start;
  }
  .icon-button { width: 44px; height: 44px; }
  .phone-link {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
  }
  .phone-link span { display: none; }
  .mobile-menu {
    position: fixed;
    z-index: 70;
    inset: 0 0 0 auto;
    width: min(390px, 88vw);
    height: 100vh;
    height: 100dvh;
    display: flex;
    flex-direction: column;
    padding: 22px;
    background: var(--ivory);
    box-shadow: -20px 0 60px rgba(24,18,10,.2);
    overflow: auto;
  }
  .mobile-menu[hidden] { display: none; }
  .menu-backdrop {
    position: fixed;
    z-index: 60;
    inset: 0 min(390px, 88vw) 0 0;
    display: block;
    background: rgba(15,12,9,.5);
    cursor: pointer;
  }
  .menu-backdrop[hidden] { display: none; }
  .mobile-menu__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 18px;
    padding-bottom: 17px;
    border-bottom: 1px solid var(--line);
    font-size: 1.2rem;
    font-weight: 600;
  }
  .mobile-menu > a { padding: 13px 4px; border-bottom: 1px solid var(--line); font-weight: 500; }
  .mobile-menu > a:hover { color: var(--gold-dark); }
  .mobile-menu .mobile-menu__phone { margin-top: auto; border: 1px solid var(--gold); text-align: center; }
  .mobile-nav-group { border-bottom: 1px solid var(--line); }
  .mobile-nav-group__row { display: grid; grid-template-columns: minmax(0, 1fr) 46px; align-items: stretch; }
  .mobile-nav-group__row > a { min-width: 0; display: flex; align-items: center; padding: 13px 4px; font-weight: 500; }
  .mobile-nav-group__row > button { display: grid; place-items: center; padding: 0; border: 0; border-inline-start: 1px solid var(--line); color: var(--gold-dark); background: transparent; cursor: pointer; }
  .mobile-nav-group__row > button img { width: 18px; height: 18px; transition: transform .2s ease; }
  .mobile-nav-group__row > button[aria-expanded="true"] img { transform: rotate(180deg); }
  .mobile-nav-group__panel { padding: 2px 14px 10px; background: #f4ecdf; }
  .mobile-nav-group__panel[hidden] { display: none; }
  .mobile-nav-group__panel a { min-height: 42px; display: flex; align-items: center; padding: 7px 4px; border-bottom: 1px solid rgba(179,145,90,.18); color: #655a4d; font-size: .9rem; }
  .mobile-nav-group__panel a:last-child { border-bottom: 0; }
}

/* Assistant is the working typeface; the Hero title keeps its approved display face. */
body,
button,
input,
select,
textarea,
.announcement,
.site-header,
main section:not(.hero),
.site-footer { font-family: "Assistant", Arial, sans-serif; }

main section:not(.hero) h1,
main section:not(.hero) h2,
main section:not(.hero) h3,
.site-footer h2,
.site-footer h3 { font-family: "Assistant", Arial, sans-serif; }

/* Premium collection: two official products in a controlled studio composition. */
.premium-products {
  padding-block: 74px 82px;
  overflow: hidden;
  background: linear-gradient(180deg, #eee9e1 0%, #e8e2d9 100%);
  border-block: 0;
}
.premium-products__heading {
  width: 100%;
  max-width: none;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 28px;
  margin: 0 0 32px;
}
.premium-products__heading h2 {
  margin: 0;
  font-family: "Assistant", Arial, sans-serif;
  font-size: 3.5rem;
  line-height: .98;
  font-weight: 700;
  letter-spacing: -.035em;
}
.premium-products__heading h2::after { display: none; }
.premium-products__desktop-counter {
  padding-bottom: 4px;
  color: #6b6258;
  font-size: .875rem;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .12em;
  direction: ltr;
}
.premium-products__grid {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 2.2vw, 34px);
  margin: 0;
  overflow: visible;
}
.premium-card {
  height: clamp(520px, 40vw, 570px);
  display: grid;
  grid-template-rows: minmax(0, 68%) minmax(0, 32%);
  overflow: hidden;
  background: #f5f1e9;
  border: 0;
  box-shadow: none;
}
.premium-card:nth-child(2) { background: #ded8cf; }
.premium-card__media {
  min-height: 0;
  aspect-ratio: auto;
  padding: 18px 24px 10px;
  overflow: hidden;
  background: rgba(255,255,255,.34);
}
.premium-card:nth-child(2) .premium-card__media { background: rgba(255,255,255,.22); }
.premium-card__media img,
.premium-card[data-product-id="160326"] .premium-card__media img,
.premium-card[data-product-id="71079"] .premium-card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transform: none;
  filter: none;
}
.premium-card[data-product-id="160326"] .premium-card__media img { transform: scale(1.08); }
.premium-card[data-product-id="71079"] .premium-card__media img { transform: scale(1.03); }
.premium-card__copy {
  min-height: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-template-rows: auto auto 1fr;
  column-gap: 16px;
  align-content: start;
  padding: 21px clamp(22px, 2.2vw, 32px) 24px;
  background: rgba(255,255,255,.84);
  border: 0;
}
.premium-card:nth-child(2) .premium-card__copy { background: rgba(248,246,241,.9); }
.premium-card__number {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  color: #756b60;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
}
.premium-card__copy h3 {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  color: #211d19;
  font-family: "Assistant", Arial, sans-serif;
  font-size: clamp(1.75rem, 2.1vw, 2rem);
  line-height: 1;
  font-weight: 700;
}
.premium-card__copy > p:not(.premium-card__tags) {
  grid-column: 2;
  grid-row: 2;
  margin: 8px 0 0;
  color: #5d564e;
  font-size: .9375rem;
  line-height: 1.4;
}
.premium-card__tags {
  grid-column: 2;
  grid-row: 3;
  align-self: end;
  margin: 12px 0 0;
  color: #766c61;
  font-size: .8125rem;
  line-height: 1.35;
  font-weight: 600;
}
.premium-card__copy a {
  grid-column: 3;
  grid-row: 1 / 4;
  align-self: end;
  width: auto;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 10px 20px;
  color: #fdfaf4;
  background: #25211d;
  border: 1px solid #25211d;
  font-size: .875rem;
  font-weight: 700;
  transition: color .2s ease, background-color .2s ease;
}
.premium-card__copy a:hover,
.premium-card__copy a:focus-visible { color: #25211d; background: transparent; border-color: #25211d; }

@media (max-width: 980px) and (min-width: 768px) {
  .premium-card { height: 540px; grid-template-rows: minmax(0, 64%) minmax(0, 36%); }
  .premium-card__copy { grid-template-columns: auto minmax(0, 1fr); grid-template-rows: auto auto 1fr auto; padding: 20px; }
  .premium-card__copy a { grid-column: 1 / -1; grid-row: 4; justify-self: start; margin-top: 13px; }
}

@media (max-width: 767px) {
  .premium-products { padding-block: 52px 58px; }
  .premium-products__heading { align-items: center; gap: 18px; margin-bottom: 24px; }
  .premium-products__heading h2 { font-size: 2.25rem; line-height: 1; }
  .premium-products__desktop-counter { display: none; }
  .premium-products__mobile-nav { display: flex; align-items: center; gap: 10px; }
  .premium-products__grid {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: 84vw;
    gap: 14px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
  }
  .premium-products__grid::-webkit-scrollbar { display: none; }
  .premium-card {
    height: clamp(520px, 69vh, 560px);
    grid-template-rows: minmax(0, 58%) minmax(0, 42%);
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
  .premium-card__media { padding: 12px 14px 6px; }
  .premium-card__copy {
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto 1fr auto;
    column-gap: 12px;
    padding: 20px 19px 21px;
  }
  .premium-card__copy h3 { font-size: 1.75rem; }
  .premium-card__copy > p:not(.premium-card__tags) { font-size: .9375rem; }
  .premium-card__tags { grid-column: 2; grid-row: 3; align-self: start; font-size: .8125rem; }
  .premium-card__copy a {
    grid-column: 1 / -1;
    grid-row: 4;
    justify-self: start;
    align-self: end;
    min-height: 46px;
    margin-top: 14px;
  }
  .premium-products__buttons button { width: 44px; height: 44px; }
}

/* Restrained typographic finish outside the approved Hero display treatment. */
body { font-weight: 400; }
main section:not(.hero) h2,
.catalog .store-heading h2,
.care-showcase__copy h2,
.product-rail__header h2,
.premium-products__heading h2,
.testimonials .store-heading h2,
.about__content h2,
.faq__heading h2 {
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: normal;
}
.announcement,
.desktop-nav,
.mobile-menu,
button,
.category-card__body,
.product-card__body,
.premium-card__copy,
.faq__list,
.site-footer { font-weight: 500; }
.hero h1::after { height: 1px; background: rgba(142, 108, 55, .42); }
/* Selected Tali brand system integration */
.brand {
  width: clamp(176px, 14vw, 206px);
  height: 70px;
  padding-block: 5px;
  overflow: visible;
}
.brand__art {
  width: 100%;
  display: block;
  line-height: 0;
}
.brand__art img {
  width: 100%;
  height: auto;
  max-height: 60px;
  display: block;
  object-fit: contain;
  object-position: right center;
}
.footer-brand__art {
  width: min(174px, 100%);
  display: block;
  line-height: 0;
}
.footer-brand .footer-brand__art img {
  width: 100%;
  height: auto;
  max-height: none;
  display: block;
  object-fit: contain;
  object-position: right center;
}

@media (max-width: 820px), (min-width: 821px) and (max-width: 1024px) and (orientation: portrait) {
  .brand {
    width: 58px;
    height: 58px;
    padding: 0;
  }
  .brand__art {
    width: 58px;
    height: 58px;
  }
  .brand__art img {
    width: 58px;
    height: 58px;
    max-height: none;
    object-position: center;
  }
  .footer-brand__art { width: 164px; }
}

@media (max-width: 520px) {
  .footer-brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }
  .footer-brand__art { width: 140px; }
  .footer-brand p { margin: 0; }
}

/* Tali Hair Scroll Craft layer. The engine stays untouched in scrollcraft.css. */
:root {
  --sc-canvas: #fffdf9;
  --sc-surface: #f3ece3;
  --sc-ink: #211c18;
  --sc-ink-soft: #6f655b;
  --sc-accent: #aa8046;
  --sc-accent-ink: #fffdf8;
  --sc-font-display: "Noto Serif Hebrew", Georgia, serif;
  --sc-font-text: "Assistant", Arial, sans-serif;
  --sc-header-stack: 0px;
  --tali-hero-media-y: 0px;
  --tali-hero-media-scale: 1.018;
  --tali-hero-copy-y: 0px;
  --care-media-x: 0px;
}

html { background: #fffdf9; }
body {
  background: #fffdf9;
  color: #211c18;
}

.tali-grain {
  z-index: 2;
  opacity: .016;
  mix-blend-mode: multiply;
}

.t-strand {
  position: fixed;
  z-index: 44;
  inset: 0;
  width: 100%;
  height: 100svh;
  pointer-events: none;
  opacity: var(--t-strand-opacity, 0);
  transition: opacity 240ms cubic-bezier(.23,1,.32,1);
}
.t-strand svg { width: 100%; height: 100%; overflow: visible; }
.t-strand path {
  fill: none;
  vector-effect: non-scaling-stroke;
  stroke-linecap: round;
  stroke-linejoin: round;
}
[data-t-strand-shadow] {
  stroke: rgba(255,255,255,.68);
  stroke-width: 4px;
  opacity: .7;
}
[data-t-strand-path] {
  stroke: #aa8046;
  stroke-width: 1.25px;
}
.t-strand::after {
  content: "";
  position: absolute;
  left: clamp(20px, 4vw, 64px);
  bottom: clamp(20px, 5vh, 56px);
  width: clamp(48px, 5vw, 76px);
  aspect-ratio: 1;
  background: url("https://ftp2.oia-file.com/stores/903/media/oU63xWoYeBNi/original.svg") center / contain no-repeat;
  opacity: var(--t-strand-icon, 0);
  transform: translate3d(0, calc((1 - var(--t-strand-icon, 0)) * 16px), 0) scale(calc(.9 + var(--t-strand-icon, 0) * .1));
  transition: opacity 240ms ease;
}

/* Recognition: preserve the approved hero controller and add depth on wrappers only. */
[data-scrollcraft-hero] .hero__media {
  transform: translate3d(0, var(--tali-hero-media-y), 0) scale(var(--tali-hero-media-scale));
  transform-origin: 38% 46%;
  will-change: transform;
}
[data-scrollcraft-hero] .hero__veil {
  background:
    radial-gradient(58% 72% at 28% 42%, rgba(255,255,255,.16), transparent 70%),
    linear-gradient(90deg, rgba(255,251,245,0) 0 45%, rgba(255,251,245,.54) 63%, rgba(255,251,245,.97) 100%);
}
[data-scrollcraft-hero] .hero__copy {
  transform: translate3d(0, var(--tali-hero-copy-y), 0);
  will-change: transform;
}
[data-scrollcraft-hero] .hero__stage::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(28rem 22rem at 45% 18%, rgba(255,255,255,.18), transparent 70%),
    linear-gradient(125deg, transparent 0 53%, rgba(170,128,70,.05) 53.1% 53.22%, transparent 53.3%);
  opacity: calc(.42 + var(--hero-progress, 0) * .22);
}
[data-scrollcraft-hero] .hero-story__indicator > span {
  color: #75695f;
  letter-spacing: 0;
}

/* The peak. One gesture equals one complete studio look. */
.sc-texture {
  position: relative;
  height: 440vh;
  height: 440svh;
  background: #f3ece3;
  --texture-media-x: 0px;
  --texture-media-scale: 1.015;
}
.sc-texture__stage {
  position: sticky;
  top: var(--sc-header-stack);
  height: calc(100vh - var(--sc-header-stack));
  height: calc(100svh - var(--sc-header-stack));
  min-height: 620px;
  display: grid;
  grid-template-columns: minmax(0, 58%) minmax(360px, 42%);
  direction: ltr;
  overflow: clip;
  isolation: isolate;
  color: #211c18;
  background: #f4ede4;
}
.sc-texture__wash {
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    radial-gradient(circle at 86% 22%, rgba(255,255,255,.92) 0 9%, transparent 34%),
    linear-gradient(135deg, #f7f2eb 0 52%, #eee3d6 100%);
}
.sc-texture__media {
  position: relative;
  min-width: 0;
  height: 100%;
  overflow: clip;
  clip-path: polygon(0 0, 92% 0, 100% 100%, 0 100%);
  transform: translate3d(var(--texture-media-x), 0, 0) scale(var(--texture-media-scale));
  transform-origin: 45% 45%;
  will-change: transform;
  background: #ded3c7;
}
.sc-texture__layer {
  position: absolute;
  inset: 0;
  opacity: 0;
  clip-path: inset(0 100% 0 0);
  transition:
    opacity 520ms cubic-bezier(.23,1,.32,1),
    clip-path 760ms cubic-bezier(.77,0,.175,1);
  will-change: opacity, clip-path;
}
.sc-texture__layer.is-active {
  z-index: 2;
  opacity: 1;
  clip-path: inset(0 0 0 0);
}
.sc-texture__layer.is-previous {
  z-index: 1;
  opacity: 1;
  clip-path: inset(0 0 0 0);
}
.sc-texture__layer img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 18%;
}
.sc-texture__light {
  position: absolute;
  z-index: 4;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent 56%, rgba(247,241,233,.28) 80%, rgba(247,241,233,.78) 100%),
    radial-gradient(52% 26% at 32% 8%, rgba(255,255,255,.28), transparent 76%);
}
.sc-texture__copy {
  min-width: 0;
  height: 100%;
  direction: rtl;
  display: grid;
  grid-template-rows: auto minmax(178px, auto) auto;
  align-content: center;
  gap: clamp(24px, 3.5vh, 42px);
  padding: clamp(44px, 5vw, 88px);
  background: rgba(251,248,243,.84);
  backdrop-filter: blur(14px);
}
.sc-texture__heading { max-width: 610px; }
.sc-texture__heading > img {
  width: 44px;
  height: 44px;
  margin: 0 0 20px auto;
  opacity: .86;
}
.sc-texture__heading h2 {
  max-width: 8ch;
  margin: 0;
  font-family: "Noto Serif Hebrew", Georgia, serif;
  font-size: clamp(3.3rem, 5.3vw, 6.6rem);
  line-height: .95;
  font-weight: 500;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.sc-texture__heading p {
  max-width: 35ch;
  margin: 22px 0 0;
  color: #675e55;
  font-size: clamp(1rem, 1.25vw, 1.2rem);
  line-height: 1.65;
}
.sc-texture__states {
  display: grid;
  align-items: start;
  min-height: 176px;
}
.sc-texture__state {
  grid-area: 1 / 1;
  max-width: 430px;
  opacity: 0;
  visibility: hidden;
  transform: translate3d(0, 18px, 0);
  transition:
    opacity 360ms cubic-bezier(.23,1,.32,1),
    transform 520ms cubic-bezier(.23,1,.32,1),
    visibility 0s linear 520ms;
}
.sc-texture__state.is-active {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition-delay: 120ms, 120ms, 0s;
}
.sc-texture__state strong {
  display: block;
  font-size: clamp(1.9rem, 2.5vw, 3.1rem);
  line-height: 1.05;
  font-weight: 650;
}
.sc-texture__state p {
  margin: 12px 0 22px;
  color: #6f665d;
  font-size: 1.02rem;
}
.sc-texture__state a {
  min-height: 46px;
  width: fit-content;
  display: inline-flex;
  align-items: center;
  color: #2a241e;
  font-weight: 700;
  border-bottom: 1px solid rgba(129,91,45,.55);
}
.sc-texture__controls {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(66,52,37,.18);
}
.sc-texture__controls button {
  position: relative;
  min-height: 58px;
  padding: 15px 7px 4px;
  color: #776f66;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-weight: 600;
}
.sc-texture__controls button::after {
  content: "";
  position: absolute;
  top: -1px;
  right: 0;
  width: 100%;
  height: 2px;
  background: #aa8046;
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform 420ms cubic-bezier(.23,1,.32,1);
}
.sc-texture__controls button span {
  width: 7px;
  height: 7px;
  display: block;
  margin: 0 auto 7px;
  border-radius: 50%;
  background: #b9aea1;
  transition: transform 280ms ease, background-color 280ms ease;
}
.sc-texture__controls button.is-active { color: #241f1a; }
.sc-texture__controls button.is-active::after { transform: scaleX(1); }
.sc-texture__controls button.is-active span {
  background: #aa8046;
  transform: scale(1.25);
}

/* Range: retain the approved 3 by 2 catalog but give it an editorial rhythm. */
.catalog[data-scrollcraft-chapter] {
  position: relative;
  overflow: clip;
  padding-block: clamp(82px, 9vw, 138px);
}
.catalog[data-scrollcraft-chapter]::before {
  content: "";
  position: absolute;
  inset: clamp(90px, 9vw, 130px) 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(170,128,70,.32), transparent);
}
.catalog[data-scrollcraft-chapter] .store-heading {
  position: relative;
  z-index: 2;
  margin-bottom: clamp(38px, 5vw, 64px);
}
.catalog[data-scrollcraft-chapter] .store-heading h2 {
  font-size: clamp(3.2rem, 5.8vw, 6.8rem);
  letter-spacing: -.045em;
}
.catalog[data-scrollcraft-chapter] .category-card {
  position: relative;
  isolation: isolate;
}
.catalog[data-scrollcraft-chapter] .category-card__media {
  overflow: clip;
  background: #eee8df;
}
.catalog[data-scrollcraft-chapter] .category-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255,255,255,.38);
  pointer-events: none;
}
.catalog[data-scrollcraft-chapter] .category-card__media img {
  transform: scale(1.002);
  transition: transform 700ms cubic-bezier(.23,1,.32,1), filter 420ms ease;
}
.catalog[data-scrollcraft-chapter] .category-card:hover .category-card__media img,
.catalog[data-scrollcraft-chapter] .category-card:focus-visible .category-card__media img {
  transform: scale(1.045);
  filter: saturate(1.04) contrast(1.02);
}
.catalog[data-scrollcraft-chapter] .category-card:nth-child(2),
.catalog[data-scrollcraft-chapter] .category-card:nth-child(5) {
  transform: translate3d(0, 24px, 0);
}
.catalog[data-scrollcraft-chapter] .category-card__body > span i {
  display: inline-block;
  transition: transform 240ms ease;
}
.catalog[data-scrollcraft-chapter] .category-card:hover .category-card__body > span i,
.catalog[data-scrollcraft-chapter] .category-card:focus-visible .category-card__body > span i {
  transform: translate3d(-5px, 0, 0);
}

/* Care ritual: a bright product studio with layered motion. */
.care-showcase[data-care-ritual] {
  position: relative;
  overflow: clip;
  padding-block: clamp(80px, 8vw, 126px);
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.9), transparent 24%),
    linear-gradient(135deg, #fffaf8 0, #f7eae7 58%, #f1dfdb 100%);
}
.care-showcase[data-care-ritual]::before {
  content: "";
  position: absolute;
  width: min(42vw, 620px);
  aspect-ratio: 1;
  left: -12vw;
  top: -18%;
  border-radius: 50%;
  border: 1px solid rgba(151,105,93,.16);
}
.care-showcase[data-care-ritual] .care-showcase__lead {
  min-height: clamp(470px, 47vw, 650px);
  border: 0;
  box-shadow: 0 34px 80px rgba(100,65,54,.11);
}
.care-showcase[data-care-ritual] .care-showcase__composition {
  overflow: clip;
}
.care-showcase[data-care-ritual] .care-showcase__composition img {
  transform: translate3d(var(--care-media-x), 0, 0) scale(1.035);
  transform-origin: 36% 50%;
  will-change: transform;
}
.care-showcase[data-care-ritual] .care-showcase__copy {
  isolation: isolate;
}
.care-showcase[data-care-ritual] .care-showcase__copy::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,251,248,.96), rgba(255,251,248,.78));
  backdrop-filter: blur(9px);
}
.care-showcase[data-care-ritual] .care-products {
  position: relative;
  z-index: 2;
}
.care-showcase[data-care-ritual] .care-product {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(126,89,78,.13);
  background: rgba(255,255,255,.68);
  box-shadow: 0 14px 34px rgba(91,59,50,.065);
}
.care-showcase[data-care-ritual] .care-product img {
  transition: transform 620ms cubic-bezier(.23,1,.32,1);
}
.care-showcase[data-care-ritual] .care-product:hover img {
  transform: translate3d(0,-5px,0) scale(1.035);
}

/* Featured products keep native scrolling and add depth to the image, never the measured card. */
.featured-products[data-scrollcraft-chapter] {
  position: relative;
  padding-block: clamp(82px, 8vw, 126px);
}
.featured-products[data-scrollcraft-chapter] .product-rail__header h2 {
  font-size: clamp(3.1rem, 5vw, 5.7rem);
}
.featured-products[data-scrollcraft-chapter] .product-card__media img {
  transform: scale(1.01);
  transition: transform 640ms cubic-bezier(.23,1,.32,1), filter 360ms ease;
}
.featured-products[data-scrollcraft-chapter] .product-card.is-scrollcraft-active .product-card__media img,
.featured-products[data-scrollcraft-chapter] .product-card:hover .product-card__media img {
  transform: scale(1.045);
  filter: contrast(1.025) saturate(1.03);
}

/* Premium split stage. The links and mobile rail stay untouched. */
.premium-products[data-scrollcraft-chapter] {
  position: relative;
  overflow: clip;
  padding-block: clamp(92px, 9vw, 146px);
  background:
    radial-gradient(circle at 50% 0, rgba(255,255,255,.92), transparent 38%),
    linear-gradient(180deg, #f4f0e9 0, #ebe4da 100%);
}
.premium-products[data-scrollcraft-chapter]::before {
  content: "T";
  position: absolute;
  left: -1vw;
  top: 3%;
  color: rgba(170,128,70,.08);
  font-family: "Noto Serif Hebrew", Georgia, serif;
  font-size: min(34vw, 520px);
  line-height: .8;
  pointer-events: none;
}
.premium-products[data-scrollcraft-chapter] .premium-products__heading {
  position: relative;
  z-index: 2;
  margin-bottom: clamp(38px, 5vw, 70px);
}
.premium-products[data-scrollcraft-chapter] .premium-products__heading h2 {
  font-size: clamp(3.4rem, 6.2vw, 7.2rem);
  letter-spacing: -.05em;
}
.premium-products[data-scrollcraft-chapter] .premium-products__grid {
  position: relative;
  z-index: 2;
  gap: clamp(18px, 2.6vw, 40px);
}
.premium-products[data-scrollcraft-chapter] .premium-card {
  box-shadow: 0 28px 70px rgba(51,42,32,.13);
}
.premium-products[data-scrollcraft-chapter] .premium-card:first-child {
  transform: translate3d(0, 34px, 0);
}
.premium-products[data-scrollcraft-chapter] .premium-card__media {
  overflow: clip;
}
.premium-products[data-scrollcraft-chapter] .premium-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.3);
  pointer-events: none;
}
.premium-products[data-scrollcraft-chapter] .premium-card__copy {
  border-top: 1px solid rgba(77,65,51,.12);
}

/* Real reels, user activated. A single visual focus without eager iframes. */
.testimonials[data-reel-stack] {
  position: relative;
  overflow: clip;
  padding-block: clamp(88px, 9vw, 138px);
  background:
    radial-gradient(circle at 85% 18%, rgba(255,255,255,.9), transparent 28%),
    #f6f1ea;
}
.testimonials[data-reel-stack] .store-heading h2 {
  font-size: clamp(3.2rem, 5.6vw, 6.4rem);
  letter-spacing: -.045em;
}
.testimonials[data-reel-stack] .testimonials-grid {
  align-items: center;
  perspective: 1400px;
}
.testimonials[data-reel-stack] .testimonial-card {
  opacity: .72;
  transform: translate3d(0, 18px, 0) scale(.965);
  transition: opacity 420ms ease, transform 620ms cubic-bezier(.23,1,.32,1);
}
.testimonials[data-reel-stack] .testimonial-card.is-scrollcraft-active,
.testimonials[data-reel-stack] .testimonial-card:focus-within,
.testimonials[data-reel-stack] .testimonial-card:hover {
  z-index: 2;
  opacity: 1;
  transform: none;
}
.testimonials[data-reel-stack] .testimonial-card.is-scrollcraft-active .testimonial-card__media {
  box-shadow: 0 30px 70px rgba(54,41,26,.17);
}
.testimonials[data-reel-stack] .testimonial-card__media {
  transition: box-shadow 460ms ease;
}

/* Quiet resolution. */
.faq[data-scrollcraft-quiet] {
  position: relative;
  padding-block: clamp(88px, 9vw, 138px);
  background: #fffdf9;
}
.faq[data-scrollcraft-quiet] .faq__heading h2 {
  font-size: clamp(3.1rem, 5vw, 5.8rem);
}
.site-footer[data-scrollcraft-close] {
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(128,96,52,.18);
}
.site-footer[data-scrollcraft-close]::before {
  content: "";
  position: absolute;
  width: min(42vw, 520px);
  aspect-ratio: 1;
  left: -8%;
  bottom: -36%;
  background: url("https://ftp2.oia-file.com/stores/903/media/oU63xWoYeBNi/original.svg") center / contain no-repeat;
  opacity: .035;
  pointer-events: none;
}
.site-footer[data-scrollcraft-close] .footer-gift {
  position: relative;
  isolation: isolate;
}
.site-footer[data-scrollcraft-close] .footer-gift::after {
  content: "";
  position: absolute;
  z-index: 3;
  left: 18px;
  bottom: 18px;
  width: 50px;
  aspect-ratio: 1;
  background: rgba(255,253,249,.88) url("https://ftp2.oia-file.com/stores/903/media/oU63xWoYeBNi/original.svg") center / 66% no-repeat;
  border: 1px solid rgba(151,113,60,.18);
  box-shadow: 0 12px 26px rgba(58,43,27,.1);
}

/* The engine's entrance transforms never own commerce rails or sticky ancestors. */
[data-scrollcraft-chapter][data-sc-act="flow"] { min-height: 0; }
[data-scrollcraft-chapter] [data-sc-in] { will-change: opacity, transform; }

@media (min-width: 1025px) {
  .care-showcase[data-care-ritual] .care-product:nth-child(2),
  .care-showcase[data-care-ritual] .care-product:nth-child(5) {
    transform: translate3d(0, 18px, 0);
  }
}

@media (max-width: 1024px) and (orientation: portrait),
       (max-width: 820px) {
  .t-strand { z-index: 32; }
  [data-scrollcraft-hero] .hero__media {
    transform-origin: 50% 32%;
  }
  .sc-texture {
    height: 380vh;
    height: 380svh;
  }
  .sc-texture__stage {
    top: 0;
    height: 100vh;
    height: 100svh;
    min-height: 0;
    display: flex;
    flex-direction: column;
    direction: ltr;
  }
  .sc-texture__media {
    flex: 0 0 58%;
    width: 100%;
    height: 58%;
    clip-path: none;
    transform-origin: 50% 36%;
  }
  .sc-texture__layer img { object-position: center 20%; }
  .sc-texture__light {
    background: linear-gradient(0deg, rgba(248,243,237,.48), transparent 28%);
  }
  .sc-texture__copy {
    position: relative;
    z-index: 7;
    flex: 1 1 auto;
    width: 100%;
    height: auto;
    min-height: 42%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(132px, .55fr);
    grid-template-rows: auto auto;
    gap: 12px 22px;
    align-content: center;
    padding: clamp(20px, 4vw, 34px);
    background: rgba(251,248,243,.96);
    backdrop-filter: blur(12px);
  }
  .sc-texture__heading { grid-column: 1; grid-row: 1; }
  .sc-texture__heading > img { display: none; }
  .sc-texture__heading h2 {
    max-width: 11ch;
    font-size: clamp(2.2rem, 7vw, 4.4rem);
    line-height: .96;
  }
  .sc-texture__heading p {
    margin-top: 10px;
    font-size: .92rem;
    line-height: 1.45;
  }
  .sc-texture__states {
    grid-column: 2;
    grid-row: 1;
    min-height: 122px;
    align-self: center;
  }
  .sc-texture__state strong { font-size: clamp(1.45rem, 4vw, 2.25rem); }
  .sc-texture__state p { margin: 7px 0 10px; font-size: .84rem; line-height: 1.35; }
  .sc-texture__state a { min-height: 34px; font-size: .8rem; }
  .sc-texture__controls {
    grid-column: 1 / -1;
    grid-row: 2;
  }
  .sc-texture__controls button {
    min-height: 48px;
    padding-top: 10px;
    font-size: .84rem;
  }
  .catalog[data-scrollcraft-chapter] .category-card:nth-child(2),
  .catalog[data-scrollcraft-chapter] .category-card:nth-child(5),
  .premium-products[data-scrollcraft-chapter] .premium-card:first-child,
  .care-showcase[data-care-ritual] .care-product:nth-child(2),
  .care-showcase[data-care-ritual] .care-product:nth-child(5) {
    transform: none;
  }
}

@media (max-width: 620px) {
  .t-strand {
    opacity: calc(var(--t-strand-opacity, 0) * .62);
  }
  .t-strand svg { transform: translate3d(16%,0,0); }
  [data-scrollcraft-hero] .hero__veil {
    background: linear-gradient(0deg, rgba(255,251,245,.93) 0 32%, rgba(255,251,245,.18) 57%, transparent 76%);
  }
  .sc-texture { height: 400svh; }
  .sc-texture__media { flex-basis: 61%; height: 61%; }
  .sc-texture__copy {
    min-height: 39%;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    gap: 7px;
    padding: 16px 18px max(16px, env(safe-area-inset-bottom));
  }
  .sc-texture__heading { grid-column: 1; grid-row: 1; }
  .sc-texture__heading h2 { font-size: clamp(2rem, 10vw, 3rem); }
  .sc-texture__heading p {
    max-width: 36ch;
    margin-top: 6px;
    font-size: .82rem;
  }
  .sc-texture__states {
    grid-column: 1;
    grid-row: 2;
    min-height: 74px;
  }
  .sc-texture__state {
    width: 100%;
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 12px;
    align-items: baseline;
  }
  .sc-texture__state strong { font-size: 1.34rem; }
  .sc-texture__state p {
    margin: 0;
    font-size: .78rem;
  }
  .sc-texture__state a {
    grid-column: 1 / -1;
    min-height: 28px;
    margin-top: 4px;
    font-size: .75rem;
  }
  .sc-texture__controls {
    grid-column: 1;
    grid-row: 3;
  }
  .sc-texture__controls button {
    min-height: 42px;
    padding: 8px 3px 2px;
    font-size: .75rem;
  }
  .sc-texture__controls button span {
    width: 5px;
    height: 5px;
    margin-bottom: 4px;
  }
  .catalog[data-scrollcraft-chapter],
  .care-showcase[data-care-ritual],
  .featured-products[data-scrollcraft-chapter],
  .premium-products[data-scrollcraft-chapter],
  .testimonials[data-reel-stack],
  .faq[data-scrollcraft-quiet] {
    padding-block: 68px;
  }
  .catalog[data-scrollcraft-chapter] .store-heading h2,
  .featured-products[data-scrollcraft-chapter] .product-rail__header h2,
  .premium-products[data-scrollcraft-chapter] .premium-products__heading h2,
  .testimonials[data-reel-stack] .store-heading h2,
  .faq[data-scrollcraft-quiet] .faq__heading h2 {
    font-size: clamp(2.75rem, 14vw, 4.2rem);
  }
  .testimonials[data-reel-stack] .testimonials-grid {
    display: flex;
    overflow-x: auto;
    overflow-y: visible;
    gap: 14px;
    padding: 18px 24vw 34px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    overscroll-behavior-inline: contain;
  }
  .testimonials[data-reel-stack] .testimonials-grid::-webkit-scrollbar { display: none; }
  .testimonials[data-reel-stack] .testimonial-card {
    flex: 0 0 72vw;
    scroll-snap-align: center;
  }
}

@media (max-width: 370px), (max-height: 690px) and (max-width: 620px) {
  .sc-texture__media { flex-basis: 56%; height: 56%; }
  .sc-texture__copy { min-height: 44%; }
  .sc-texture__heading h2 { font-size: 1.9rem; }
  .sc-texture__heading p { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .t-strand,
  .tali-grain { display: none; }
  [data-scrollcraft-hero] .hero__media,
  [data-scrollcraft-hero] .hero__copy,
  .care-showcase[data-care-ritual] .care-showcase__composition img {
    transform: none !important;
  }
  .sc-texture {
    height: auto;
    padding: 56px 0;
  }
  .sc-texture__stage {
    position: relative;
    top: auto;
    height: auto;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
    overflow: visible;
  }
  .sc-texture__media {
    height: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    clip-path: none;
    transform: none !important;
  }
  .sc-texture__layer,
  .sc-texture__layer.is-active,
  .sc-texture__layer.is-previous {
    position: relative;
    inset: auto;
    aspect-ratio: 4 / 3;
    opacity: 1;
    clip-path: none;
  }
  .sc-texture__layer img { object-position: center 18%; }
  .sc-texture__copy {
    height: auto;
    min-height: 0;
    display: block;
  }
  .sc-texture__states {
    min-height: 0;
    display: grid;
    gap: 18px;
    margin-top: 34px;
  }
  .sc-texture__state,
  .sc-texture__state.is-active {
    grid-area: auto;
    max-width: none;
    opacity: 1;
    visibility: visible;
    transform: none;
  }
  .sc-texture__controls { display: none; }
  .catalog[data-scrollcraft-chapter] .category-card:nth-child(2),
  .catalog[data-scrollcraft-chapter] .category-card:nth-child(5),
  .premium-products[data-scrollcraft-chapter] .premium-card:first-child,
  .testimonials[data-reel-stack] .testimonial-card {
    transform: none !important;
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) and (max-width: 820px) {
  .sc-texture__stage {
    display: block;
  }
  .sc-texture__media {
    width: 100%;
    display: grid;
  }
  .sc-texture__copy { width: 100%; }
}

/* Fifth authorized Instagram reel uses the approved brand mark until its real embed is requested. */
.testimonials[data-reel-stack] .testimonial-card__play--brand {
  background:
    radial-gradient(circle at 72% 20%, rgba(255,255,255,.96), transparent 32%),
    linear-gradient(145deg, #f4ebe0 0%, #ddd0c1 52%, #c8af90 100%);
}
.testimonials[data-reel-stack] .testimonial-card__brand-cover {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: clamp(28px, 4vw, 54px);
}
.testimonials[data-reel-stack] .testimonial-card__brand-cover::before {
  content: "";
  position: absolute;
  inset: 8%;
  border: 1px solid rgba(74,54,34,.16);
}
.testimonials[data-reel-stack] .testimonial-card__brand-cover > img {
  width: min(82%, 210px);
  height: auto;
  object-fit: contain;
  filter: none;
  transform: none;
}
.testimonials[data-reel-stack] .testimonial-card__play--brand:hover .testimonial-card__brand-cover > img {
  filter: none;
  transform: scale(1.018);
}
@media (min-width: 1101px) {
  .testimonials[data-reel-stack] .testimonials-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .testimonials[data-reel-stack] .testimonial-card__play--brand:hover .testimonial-card__brand-cover > img {
    transform: none;
  }
}
/* Reliable local stagger ownership for the six catalog and six Hair Care cards. */
.sc-ready [data-tali-stagger] > * {
  opacity: 0;
  transform: translate3d(0, 22px, 0);
  transition:
    opacity 520ms cubic-bezier(.22,.61,.36,1),
    transform 720ms cubic-bezier(.22,.61,.36,1);
  transition-delay: calc(var(--tali-stagger-index, 0) * var(--tali-stagger-delay, 64ms));
}
.sc-ready [data-tali-stagger].is-scrollcraft-visible > * {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .sc-ready [data-tali-stagger] > *,
  .sc-ready [data-tali-stagger].is-scrollcraft-visible > * {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
/* Motion QA correction: discrete portrait handoff prevents facial ghosting. */
[data-scrollcraft-hero] .hero__layer {
  opacity: 0 !important;
  visibility: hidden;
  transition: opacity 160ms cubic-bezier(.23,1,.32,1), visibility 0s linear 160ms !important;
}
[data-scrollcraft-hero] .hero__layer.is-active {
  opacity: 1 !important;
  visibility: visible;
  transition: opacity 160ms cubic-bezier(.23,1,.32,1), visibility 0s linear 0s !important;
}

/* The T-Strand reads at the margins and never crosses faces, headings, or product controls. */
.t-strand {
  z-index: 8;
  opacity: min(var(--t-strand-opacity, 0), .34);
  -webkit-mask-image: linear-gradient(90deg, #000 0 7%, transparent 13% 87%, #000 93% 100%);
  mask-image: linear-gradient(90deg, #000 0 7%, transparent 13% 87%, #000 93% 100%);
}

/* Approved product photos stay truthful, with one consistent studio crop and frame. */
.featured-products[data-scrollcraft-chapter] .product-card__media {
  position: relative;
  padding: clamp(10px, 1.1vw, 16px);
  overflow: clip;
  background:
    radial-gradient(circle at 70% 18%, rgba(255,255,255,.98), transparent 35%),
    linear-gradient(145deg, #f6f1e9 0%, #e5dcd0 100%);
}
.featured-products[data-scrollcraft-chapter] .product-card__media::after {
  content: "";
  position: absolute;
  inset: clamp(10px, 1.1vw, 16px);
  border: 1px solid rgba(106,79,49,.12);
  box-shadow: inset 0 0 38px rgba(255,255,255,.26);
  pointer-events: none;
}
.featured-products[data-scrollcraft-chapter] .product-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 34%;
  filter: contrast(1.035) saturate(.92) brightness(1.035);
  transform: scale(1.075);
}
.featured-products[data-scrollcraft-chapter] .product-card:nth-child(2) .product-card__media img,
.featured-products[data-scrollcraft-chapter] .product-card:nth-child(3) .product-card__media img {
  object-position: center 28%;
}
.featured-products[data-scrollcraft-chapter] .product-card:nth-child(6) .product-card__media img {
  object-position: center 42%;
}
.featured-products[data-scrollcraft-chapter] .product-card.is-scrollcraft-active .product-card__media img,
.featured-products[data-scrollcraft-chapter] .product-card:hover .product-card__media img {
  transform: scale(1.105);
}

/* Premium pair becomes a mirrored editorial composition on desktop. */
@media (min-width: 768px) {
  .premium-products[data-scrollcraft-chapter] {
    background:
      linear-gradient(90deg, rgba(255,255,255,.46) 1px, transparent 1px) center / 25% 100%,
      radial-gradient(circle at 50% 0, rgba(255,255,255,.98), transparent 42%),
      #f2ede6;
  }
  .premium-products[data-scrollcraft-chapter] .premium-products__heading {
    padding-bottom: 26px;
    border-bottom: 1px solid rgba(74,57,38,.16);
  }
  .premium-products[data-scrollcraft-chapter] .premium-products__grid {
    gap: clamp(22px, 3.2vw, 52px);
  }
  .premium-products[data-scrollcraft-chapter] .premium-card,
  .premium-products[data-scrollcraft-chapter] .premium-card:first-child {
    position: relative;
    height: clamp(570px, 43vw, 660px);
    display: block;
    overflow: clip;
    transform: none;
    border: 1px solid rgba(83,64,42,.12);
    box-shadow: none;
    background: linear-gradient(145deg, #fbf8f2, #dfd6ca);
  }
  .premium-products[data-scrollcraft-chapter] .premium-card:nth-child(2) {
    background: linear-gradient(215deg, #f8f4ec, #d9d0c5);
  }
  .premium-products[data-scrollcraft-chapter] .premium-card__media {
    position: absolute;
    inset: 0;
    padding: clamp(30px, 3.2vw, 52px) clamp(30px, 3vw, 48px) 150px;
    background: transparent;
  }
  .premium-products[data-scrollcraft-chapter] .premium-card__media::before {
    content: "T";
    position: absolute;
    top: 22px;
    inset-inline-end: 26px;
    color: rgba(124,93,51,.09);
    font-family: "Noto Serif Hebrew", Georgia, serif;
    font-size: clamp(6rem, 9vw, 10rem);
    line-height: 1;
  }
  .premium-products[data-scrollcraft-chapter] .premium-card__media img,
  .premium-products[data-scrollcraft-chapter] .premium-card[data-product-id="160326"] .premium-card__media img,
  .premium-products[data-scrollcraft-chapter] .premium-card[data-product-id="71079"] .premium-card__media img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    filter: contrast(1.04) saturate(.94);
    transform: scale(1.06);
  }
  .premium-products[data-scrollcraft-chapter] .premium-card:nth-child(2) .premium-card__media img {
    transform: scale(1.02);
  }
  .premium-products[data-scrollcraft-chapter] .premium-card__copy {
    position: absolute;
    z-index: 3;
    right: clamp(18px, 2vw, 30px);
    bottom: clamp(18px, 2vw, 30px);
    width: min(72%, 430px);
    min-height: 176px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto 1fr auto;
    padding: 24px 26px 22px;
    background: rgba(255,253,249,.97);
    border: 1px solid rgba(86,65,42,.15);
    backdrop-filter: blur(12px);
  }
  .premium-products[data-scrollcraft-chapter] .premium-card:nth-child(2) .premium-card__copy {
    right: auto;
    left: clamp(18px, 2vw, 30px);
  }
  .premium-products[data-scrollcraft-chapter] .premium-card__number { grid-column: 1; grid-row: 1; }
  .premium-products[data-scrollcraft-chapter] .premium-card__copy h3 { grid-column: 2; grid-row: 1; }
  .premium-products[data-scrollcraft-chapter] .premium-card__copy > p:not(.premium-card__tags) { grid-column: 2; grid-row: 2; }
  .premium-products[data-scrollcraft-chapter] .premium-card__tags { grid-column: 2; grid-row: 3; align-self: start; }
  .premium-products[data-scrollcraft-chapter] .premium-card__copy a {
    grid-column: 1 / -1;
    grid-row: 4;
    justify-self: start;
    align-self: end;
    margin-top: 14px;
    color: #29231d;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #8f6d3d;
    padding: 7px 0;
  }
}

/* Anchor clearance follows the sticky header without adding empty space to sections. */
@media (min-width: 1025px) {
  .featured-products .product-rail__header,
  .premium-products .premium-products__heading,
  .testimonials .store-heading,
  .about #about-title,
  .faq #faq-title {
    scroll-margin-top: calc(var(--sc-header-stack) + 28px);
  }
}

/* Settle every card before the next visible beat while retaining the spatial glide. */
.sc-ready [data-tali-stagger] > * {
  transition-duration: 440ms, 620ms;
}
/* Reduced motion is a single, complete Hero composition with no sticky dead scroll. */
@media (prefers-reduced-motion: reduce) {
  [data-scrollcraft-hero] {
    height: auto !important;
    min-height: 0;
  }
  [data-scrollcraft-hero] .hero__stage {
    position: relative;
    top: auto;
    height: calc(100vh - var(--hero-entry-offset, 0px));
    height: calc(100svh - var(--hero-entry-offset, 0px));
    min-height: 560px;
  }
  [data-scrollcraft-hero] .hero__media,
  [data-scrollcraft-hero] .hero__copy {
    transform: none;
  }
}
/* The line and its footer T endpoint have independent visibility channels. */
.t-strand { opacity: 1; }
.t-strand svg {
  opacity: min(var(--t-strand-opacity, 0), .34);
  transition: opacity 240ms cubic-bezier(.23,1,.32,1);
}
@media (prefers-reduced-motion: reduce) {
  .t-strand { display: none; }
}/* Single texture Hero correction */
:root { --sc-entry-stack: 0px; }

.sc-texture.sc-texture--hero {
  height: 420vh;
  height: 420svh;
  background: #f4ede4;
  --texture-index: 0;
  --texture-ratio: 0;
}
.sc-texture--hero .sc-texture__stage {
  top: var(--sc-header-stack);
  height: calc(100vh - var(--sc-header-stack));
  height: calc(100svh - var(--sc-header-stack));
  min-height: 0;
  grid-template-columns: minmax(0, 56.5%) minmax(390px, 43.5%);
  background: #f7f1e9;
}
.sc-texture--hero .sc-texture__wash {
  background:
    radial-gradient(circle at 88% 17%, rgba(255,255,255,.98) 0 7%, transparent 30%),
    linear-gradient(132deg, #fbf7f1 0 54%, #eee4d8 100%);
}
.sc-texture--hero .sc-texture__media {
  clip-path: polygon(0 0, 94% 0, 100% 100%, 0 100%);
}
.sc-texture--hero .sc-texture__light {
  background:
    linear-gradient(90deg, transparent 60%, rgba(249,244,237,.18) 78%, rgba(249,244,237,.76) 100%),
    radial-gradient(50% 22% at 34% 8%, rgba(255,255,255,.32), transparent 78%);
}
.sc-texture--hero .sc-texture__copy {
  position: relative;
  z-index: 6;
  grid-template-rows: auto minmax(150px, auto) auto;
  align-content: center;
  gap: clamp(18px, 2.5vh, 30px);
  padding: clamp(34px, 4vw, 64px) clamp(38px, 4.4vw, 72px);
  background: rgba(252,249,244,.9);
  backdrop-filter: blur(16px);
}
.sc-texture--hero .sc-texture__copy::before {
  content: "";
  position: absolute;
  top: clamp(34px, 5vh, 68px);
  right: 0;
  width: 1px;
  height: clamp(88px, 14vh, 156px);
  background: linear-gradient(180deg, transparent, rgba(170,128,70,.58), transparent);
}
.sc-texture--hero .sc-texture__heading {
  max-width: 520px;
}
.sc-texture--hero .sc-texture__heading > img {
  width: clamp(34px, 3vw, 46px);
  height: auto;
  display: block;
  margin: 0 0 clamp(14px, 2vh, 22px) auto;
  opacity: .9;
}
.sc-texture--hero .sc-texture__heading h1 {
  max-width: 9ch;
  margin: 0;
  font-family: "Noto Serif Hebrew", Georgia, serif;
  font-size: clamp(3.35rem, 5.25vw, 6.1rem);
  font-weight: 500;
  line-height: .94;
  letter-spacing: -.052em;
  text-wrap: balance;
}
.sc-texture--hero .sc-texture__heading p {
  max-width: 32ch;
  margin: clamp(14px, 2vh, 22px) 0 0;
  color: #665d54;
  font-size: clamp(.98rem, 1.12vw, 1.14rem);
  line-height: 1.55;
}
.sc-texture--hero .sc-texture__states {
  min-height: 150px;
  align-items: center;
}
.sc-texture--hero .sc-texture__state {
  max-width: 420px;
  padding-inline-end: clamp(14px, 1.6vw, 22px);
  border-inline-end: 1px solid rgba(170,128,70,.34);
}
.sc-texture--hero .sc-texture__state strong {
  font-family: "Assistant", Arial, sans-serif;
  font-size: clamp(2rem, 2.5vw, 3rem);
  font-weight: 650;
  letter-spacing: -.025em;
}
.sc-texture--hero .sc-texture__state p {
  max-width: 35ch;
  margin: 9px 0 17px;
  line-height: 1.5;
}
.sc-texture--hero .sc-texture__state a {
  min-height: 42px;
  padding: 8px 14px;
  border: 1px solid rgba(143,104,55,.32);
  background: rgba(255,255,255,.46);
  transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease;
}
.sc-texture--hero .sc-texture__state a:hover,
.sc-texture--hero .sc-texture__state a:focus-visible {
  color: #fffdf9;
  background: #9f773f;
  border-color: #9f773f;
}
.sc-texture--hero .sc-texture__controls {
  isolation: isolate;
  border-top-color: rgba(73,56,37,.2);
}
.sc-texture--hero .sc-texture__progress {
  position: absolute;
  z-index: 2;
  top: -1px;
  right: 0;
  left: 0;
  height: 2px;
  overflow: hidden;
  pointer-events: none;
}
.sc-texture--hero .sc-texture__progress i {
  width: 100%;
  height: 100%;
  display: block;
  background: linear-gradient(90deg, #c9aa7a, #8e6735);
  transform: scaleX(calc(.25 + var(--texture-progress, 0) * .75));
  transform-origin: right center;
  transition: transform 560ms cubic-bezier(.23,1,.32,1);
}
.sc-texture--hero .sc-texture__controls button::after { display: none; }
.sc-texture--hero .sc-texture__controls button {
  min-height: 56px;
  padding: 15px 5px 4px;
  font-size: .9rem;
  transition: color 220ms ease;
}
.sc-texture--hero .sc-texture__controls button:focus-visible {
  outline: 2px solid #8f6b3d;
  outline-offset: 3px;
}

@media (min-width: 821px) and (max-width: 1024px) and (orientation: portrait) {
  .sc-texture.sc-texture--hero { height: 410svh; }
  .sc-texture--hero .sc-texture__stage {
    top: 0;
    height: calc(100svh - var(--sc-entry-stack));
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 46%) minmax(0, 54%);
    grid-template-rows: 1fr;
    direction: ltr;
  }
  .sc-texture--hero .sc-texture__media {
    width: auto;
    height: 100%;
    min-height: 0;
    flex: none;
    clip-path: none;
    transform-origin: 50% 36%;
  }
  .sc-texture--hero .sc-texture__layer img { object-position: center 18%; }
  .sc-texture--hero .sc-texture__copy {
    width: auto;
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(130px, auto) auto;
    align-content: center;
    gap: clamp(18px, 2.3vh, 28px);
    padding: clamp(28px, 5vw, 48px);
  }
  .sc-texture--hero .sc-texture__heading,
  .sc-texture--hero .sc-texture__states,
  .sc-texture--hero .sc-texture__controls { grid-column: 1; }
  .sc-texture--hero .sc-texture__heading { grid-row: 1; }
  .sc-texture--hero .sc-texture__states { grid-row: 2; }
  .sc-texture--hero .sc-texture__controls { grid-row: 3; }
  .sc-texture--hero .sc-texture__heading > img { display: block; }
  .sc-texture--hero .sc-texture__heading h1 { font-size: clamp(3.1rem, 7.3vw, 4.7rem); }
  .sc-texture--hero .sc-texture__heading p { max-width: 30ch; }
}

@media (min-width: 621px) and (max-width: 820px) {
  .sc-texture.sc-texture--hero { height: 410svh; }
  .sc-texture--hero .sc-texture__stage {
    top: 0;
    height: calc(100svh - var(--sc-entry-stack));
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 45%) minmax(0, 55%);
    grid-template-rows: 1fr;
    direction: ltr;
  }
  .sc-texture--hero .sc-texture__media {
    width: auto;
    height: 100%;
    min-height: 0;
    flex: none;
    clip-path: none;
    transform-origin: 50% 34%;
  }
  .sc-texture--hero .sc-texture__layer img { object-position: center 18%; }
  .sc-texture--hero .sc-texture__copy {
    width: auto;
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(118px, auto) auto;
    align-content: center;
    gap: clamp(14px, 2vh, 22px);
    padding: clamp(24px, 4.2vw, 38px);
  }
  .sc-texture--hero .sc-texture__heading,
  .sc-texture--hero .sc-texture__states,
  .sc-texture--hero .sc-texture__controls { grid-column: 1; }
  .sc-texture--hero .sc-texture__heading { grid-row: 1; }
  .sc-texture--hero .sc-texture__states { grid-row: 2; }
  .sc-texture--hero .sc-texture__controls { grid-row: 3; }
  .sc-texture--hero .sc-texture__heading > img { display: block; }
  .sc-texture--hero .sc-texture__heading h1 { font-size: clamp(2.75rem, 7vw, 4rem); }
  .sc-texture--hero .sc-texture__heading p { font-size: .9rem; }
  .sc-texture--hero .sc-texture__state strong { font-size: clamp(1.75rem, 4vw, 2.3rem); }
  .sc-texture--hero .sc-texture__state p { font-size: .88rem; }
  .sc-texture--hero .sc-texture__controls button { font-size: .78rem; }
}

@media (max-width: 620px) {
  .sc-texture.sc-texture--hero { height: 410svh; }
  .sc-texture--hero .sc-texture__stage {
    top: 0;
    height: calc(100svh - var(--sc-entry-stack));
    min-height: 0;
    display: flex;
    flex-direction: column;
    direction: ltr;
  }
  .sc-texture--hero .sc-texture__media {
    flex: 0 0 53%;
    width: 100%;
    height: 53%;
    min-height: 0;
    clip-path: none;
    transform-origin: 50% 30%;
  }
  .sc-texture--hero .sc-texture__layer img { object-position: center 17%; }
  .sc-texture--hero .sc-texture__light {
    background: linear-gradient(0deg, rgba(249,245,239,.34), transparent 28%);
  }
  .sc-texture--hero .sc-texture__copy {
    flex: 1 1 auto;
    width: 100%;
    height: auto;
    min-height: 47%;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    align-content: center;
    gap: 7px;
    padding: 12px 18px max(12px, env(safe-area-inset-bottom));
    background: rgba(252,249,244,.98);
  }
  .sc-texture--hero .sc-texture__copy::before { display: none; }
  .sc-texture--hero .sc-texture__heading,
  .sc-texture--hero .sc-texture__states,
  .sc-texture--hero .sc-texture__controls { grid-column: 1; }
  .sc-texture--hero .sc-texture__heading { grid-row: 1; }
  .sc-texture--hero .sc-texture__states { grid-row: 2; min-height: 68px; }
  .sc-texture--hero .sc-texture__controls { grid-row: 3; }
  .sc-texture--hero .sc-texture__heading > img {
    width: 25px;
    display: block;
    margin-bottom: 5px;
  }
  .sc-texture--hero .sc-texture__heading h1 {
    max-width: none;
    font-size: clamp(2rem, 9.7vw, 2.85rem);
    line-height: .96;
  }
  .sc-texture--hero .sc-texture__heading p {
    max-width: 42ch;
    margin-top: 5px;
    font-size: .78rem;
    line-height: 1.35;
  }
  .sc-texture--hero .sc-texture__state {
    width: 100%;
    max-width: none;
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 10px;
    align-items: baseline;
    padding-inline-end: 10px;
  }
  .sc-texture--hero .sc-texture__state strong { font-size: 1.32rem; }
  .sc-texture--hero .sc-texture__state p { margin: 0; font-size: .76rem; line-height: 1.32; }
  .sc-texture--hero .sc-texture__state a {
    grid-column: 1 / -1;
    min-height: 28px;
    margin-top: 4px;
    padding: 3px 9px;
    font-size: .74rem;
  }
  .sc-texture--hero .sc-texture__controls button {
    min-height: 39px;
    padding: 7px 2px 1px;
    font-size: .72rem;
  }
  .sc-texture--hero .sc-texture__controls button span {
    width: 5px;
    height: 5px;
    margin-bottom: 3px;
  }
}

@media (max-width: 370px), (max-height: 700px) and (max-width: 620px) {
  .sc-texture--hero .sc-texture__media { flex-basis: 50%; height: 50%; }
  .sc-texture--hero .sc-texture__copy { min-height: 50%; padding-block: 9px; gap: 4px; }
  .sc-texture--hero .sc-texture__heading > img { width: 21px; margin-bottom: 2px; }
  .sc-texture--hero .sc-texture__heading h1 { font-size: 1.85rem; }
  .sc-texture--hero .sc-texture__heading p { font-size: .72rem; }
  .sc-texture--hero .sc-texture__states { min-height: 63px; }
}

@media (prefers-reduced-motion: reduce) {
  .sc-texture.sc-texture--hero {
    height: auto;
    padding: 0;
  }
  .sc-texture--hero .sc-texture__stage {
    position: relative;
    top: auto;
    height: auto;
    min-height: 0;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr);
  }
  .sc-texture--hero .sc-texture__media {
    min-height: min(72vw, 760px);
  }
  .sc-texture--hero .sc-texture__copy {
    padding-block: clamp(48px, 7vw, 86px);
  }
  .sc-texture--hero .sc-texture__progress { display: none; }
}

@media (prefers-reduced-motion: reduce) and (max-width: 820px) {
  .sc-texture--hero .sc-texture__stage { display: block; }
  .sc-texture--hero .sc-texture__media {
    min-height: 0;
    display: grid;
  }
  .sc-texture--hero .sc-texture__copy {
    display: block;
    padding: 34px 22px 44px;
  }
  .sc-texture--hero .sc-texture__heading h1 { font-size: clamp(2.6rem, 12vw, 4rem); }
}
/* Approved T mark replaces the native pointer only inside the Hero. */
.sc-texture__cursor { display: none; }
@media (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .sc-texture--hero[data-pointer-active],
  .sc-texture--hero[data-pointer-active] a,
  .sc-texture--hero[data-pointer-active] button {
    cursor: none !important;
  }
  .sc-texture--hero .sc-texture__cursor {
    position: fixed;
    z-index: 90;
    top: 0;
    left: 0;
    width: clamp(30px, 2.35vw, 36px);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    opacity: 0;
    pointer-events: none;
    will-change: transform, opacity;
    transition: opacity 120ms ease, filter 160ms ease;
    filter: drop-shadow(0 5px 9px rgba(41,30,19,.14));
  }
  .sc-texture--hero .sc-texture__cursor::before {
    content: "";
    position: absolute;
    inset: -5px;
    border: 1px solid transparent;
    border-radius: 50%;
    transition: border-color 160ms ease, background-color 160ms ease;
  }
  .sc-texture--hero .sc-texture__cursor img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .sc-texture--hero .sc-texture__cursor.is-visible { opacity: .96; }
  .sc-texture--hero .sc-texture__cursor.is-control::before {
    border-color: rgba(154,113,60,.48);
    background: rgba(255,253,249,.72);
  }
}
/* System-ready header search affordance. */
.header-main {
  grid-template-columns: minmax(176px, 220px) minmax(280px, 1fr) minmax(112px, 150px);
  gap: clamp(18px, 2.4vw, 38px);
}
.header-searchbar {
  width: min(100%, 640px);
  min-height: 46px;
  justify-self: center;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 18px;
  color: #756b61;
  border: 1px solid rgba(80,62,42,.18);
  border-radius: 999px;
  background: rgba(249,246,241,.86);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.82);
  font-family: "Assistant", Arial, sans-serif;
  font-size: .96rem;
  text-align: right;
  cursor: pointer;
  transition: color 220ms ease, border-color 220ms ease, background-color 220ms ease, box-shadow 220ms ease;
}
.header-searchbar img {
  width: 21px;
  height: 21px;
  flex: 0 0 auto;
  opacity: .78;
}
.header-searchbar span { flex: 1 1 auto; }
.header-searchbar:hover {
  color: #28221c;
  border-color: rgba(155,113,57,.46);
  background: #fffdf9;
  box-shadow: 0 10px 26px rgba(74,54,33,.07);
}
.header-searchbar:focus-visible {
  outline: 2px solid #9b733e;
  outline-offset: 3px;
}
.header-actions {
  justify-content: flex-end;
  gap: 6px;
}

@media (max-width: 1120px) and (min-width: 821px) {
  .header-main { grid-template-columns: 176px minmax(240px, 1fr) 116px; gap: 18px; }
  .header-searchbar { min-height: 44px; }
}

@media (max-width: 820px), (min-width: 821px) and (max-width: 1024px) and (orientation: portrait) {
  .header-main {
    min-height: 126px;
    grid-template-columns: 48px minmax(0, 1fr) 96px;
    grid-template-rows: 62px 42px;
    gap: 8px 10px;
    padding-block: 6px 8px;
  }
  .brand {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
  }
  .menu-toggle {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
  }
  .header-actions {
    grid-column: 3;
    grid-row: 1;
    align-self: center;
    justify-content: flex-start;
    gap: 4px;
  }
  .header-searchbar {
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100%;
    min-height: 40px;
    padding-inline: 15px;
    font-size: .88rem;
  }
  .header-tool {
    width: 42px;
    height: 42px;
    display: inline-grid;
  }
}

@media (max-width: 370px) {
  .header-main { grid-template-columns: 44px minmax(0, 1fr) 88px; gap-inline: 6px; }
  .header-tool { width: 40px; height: 40px; }
}
/* Final reference-led polish: one richer texture Hero and a stronger store header. */
@media (min-width: 1025px) {
  .header-main {
    grid-template-columns: minmax(205px, 242px) minmax(420px, 760px) minmax(96px, 124px);
    justify-content: space-between;
    gap: clamp(22px, 3vw, 50px);
    min-height: 88px;
  }
  .brand {
    width: clamp(192px, 15vw, 232px);
    justify-self: end;
  }
  .header-searchbar {
    width: min(100%, 720px);
    min-height: 50px;
    padding-inline: 22px;
    background: #fffdf9;
    border-color: rgba(65, 50, 34, .2);
    box-shadow: 0 9px 30px rgba(55, 40, 24, .055), inset 0 1px 0 rgba(255,255,255,.9);
  }
  .header-actions {
    justify-self: start;
    justify-content: flex-start;
  }
}

.sc-texture--hero .sc-texture__stage {
  grid-template-columns: minmax(0, 57%) minmax(420px, 43%);
}

.sc-texture--hero .sc-texture__media {
  isolation: isolate;
}

.sc-texture--hero .sc-texture__watermark {
  position: absolute;
  z-index: 3;
  top: 9%;
  right: -10%;
  width: min(64%, 650px);
  height: auto;
  opacity: .048;
  filter: grayscale(1) contrast(1.2);
  mix-blend-mode: multiply;
  pointer-events: none;
  transform: rotate(-3deg);
  transform-origin: center;
}

.sc-texture--hero .sc-texture__copy {
  grid-template-rows: auto minmax(128px, auto) auto;
  gap: clamp(12px, 1.7vh, 21px);
  padding: clamp(28px, 3.2vw, 50px) clamp(38px, 4.2vw, 68px);
  background: rgba(253, 250, 246, .94);
}

.sc-texture--hero .sc-texture__heading {
  max-width: 590px;
}

.sc-texture--hero .sc-texture__english {
  display: block;
  margin-bottom: clamp(10px, 1.4vh, 16px);
  color: #6d6258;
  font-family: "Assistant", Arial, sans-serif;
  font-size: clamp(.7rem, .78vw, .82rem);
  font-weight: 600;
  letter-spacing: .28em;
  line-height: 1.2;
  direction: ltr;
  text-align: right;
}

.sc-texture--hero .sc-texture__heading h1 {
  max-width: none;
  font-size: clamp(3.45rem, 4.55vw, 5.65rem);
  line-height: .91;
  letter-spacing: -.055em;
}

.sc-texture--hero .sc-texture__heading h1 > span {
  display: block;
}

.sc-texture--hero .sc-texture__heading h1 > span:first-child {
  color: #211b17;
}

.sc-texture--hero .sc-texture__heading h1 > span:last-child {
  width: fit-content;
  margin-top: .08em;
  color: #ac7d3e;
}

.sc-texture--hero .sc-texture__heading p {
  max-width: 31ch;
  margin-top: clamp(10px, 1.4vh, 16px);
  color: #63594f;
}

.sc-texture--hero .sc-texture__states {
  min-height: 128px;
}

.sc-texture--hero .sc-texture__state {
  padding-inline-end: 16px;
}

.sc-texture--hero .sc-texture__state strong {
  font-size: clamp(1.85rem, 2.1vw, 2.65rem);
}

.sc-texture--hero .sc-texture__state p {
  margin: 7px 0 13px;
}

.sc-texture--hero .sc-texture__state a {
  min-height: 44px;
  padding: 9px 19px;
  color: #fff;
  border-color: #171411;
  background: #171411;
  box-shadow: 0 9px 20px rgba(23, 20, 17, .11);
}

.sc-texture--hero .sc-texture__state a:hover,
.sc-texture--hero .sc-texture__state a:focus-visible {
  color: #fff;
  border-color: #9a7039;
  background: #9a7039;
}

.sc-texture--hero .sc-texture__controls button {
  min-height: 48px;
  padding-top: 12px;
}

.sc-texture--hero .sc-texture__benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 16px;
  padding-top: 13px;
  border-top: 1px solid rgba(65, 50, 34, .13);
}

.sc-texture--hero .sc-texture__benefit {
  min-width: 0;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  color: #2c251f;
}

.sc-texture--hero .sc-texture__benefit > span:first-child {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
}

.sc-texture--hero .sc-texture__benefit img {
  width: 25px;
  height: 25px;
  object-fit: contain;
  opacity: .78;
}

.sc-texture--hero .sc-texture__benefit strong,
.sc-texture--hero .sc-texture__benefit small {
  display: block;
}

.sc-texture--hero .sc-texture__benefit strong {
  font-size: .86rem;
  line-height: 1.15;
  font-weight: 650;
}

.sc-texture--hero .sc-texture__benefit small {
  margin-top: 2px;
  color: #786e64;
  font-size: .72rem;
  line-height: 1.2;
}

@media (min-width: 821px) and (max-width: 1024px) {
  .header-main {
    grid-template-columns: 184px minmax(250px, 1fr) 106px;
    gap: 15px;
  }
  .brand { width: 178px; }
  .header-searchbar { width: 100%; }
}

@media (min-width: 821px) and (max-width: 1024px) and (orientation: portrait) {
  .header-main {
    grid-template-columns: 48px minmax(0, 1fr) 96px;
    grid-template-rows: 62px 42px;
  }
  .brand { width: auto; }
  .sc-texture--hero .sc-texture__stage {
    grid-template-columns: minmax(0, 46%) minmax(0, 54%);
  }
  .sc-texture--hero .sc-texture__copy {
    grid-template-rows: auto minmax(108px, auto) auto;
    gap: clamp(8px, 1.2vh, 14px);
    padding: clamp(20px, 3.6vw, 36px);
  }
  .sc-texture--hero .sc-texture__english {
    margin-bottom: 8px;
    font-size: .65rem;
    letter-spacing: .22em;
  }
  .sc-texture--hero .sc-texture__heading h1 {
    font-size: clamp(2.8rem, 6.3vw, 4rem);
  }
  .sc-texture--hero .sc-texture__heading p {
    margin-top: 8px;
    font-size: .86rem;
  }
  .sc-texture--hero .sc-texture__states { min-height: 108px; }
  .sc-texture--hero .sc-texture__state strong { font-size: clamp(1.6rem, 3.5vw, 2.15rem); }
  .sc-texture--hero .sc-texture__state p { margin-block: 5px 9px; font-size: .82rem; }
  .sc-texture--hero .sc-texture__state a { min-height: 38px; padding: 6px 12px; font-size: .8rem; }
  .sc-texture--hero .sc-texture__controls button { min-height: 42px; padding-top: 9px; }
  .sc-texture--hero .sc-texture__benefits {
    gap: 6px 11px;
    padding-top: 9px;
  }
  .sc-texture--hero .sc-texture__benefit {
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 6px;
  }
  .sc-texture--hero .sc-texture__benefit > span:first-child { width: 25px; height: 25px; }
  .sc-texture--hero .sc-texture__benefit img { width: 21px; height: 21px; }
  .sc-texture--hero .sc-texture__benefit strong { font-size: .75rem; }
  .sc-texture--hero .sc-texture__benefit small { font-size: .65rem; }
}

@media (min-width: 621px) and (max-width: 820px) {
  .sc-texture--hero .sc-texture__copy {
    grid-template-rows: auto minmax(96px, auto) auto;
    gap: 7px;
    padding: 18px 26px;
  }
  .sc-texture--hero .sc-texture__english {
    margin-bottom: 6px;
    font-size: .6rem;
    letter-spacing: .19em;
  }
  .sc-texture--hero .sc-texture__heading h1 {
    font-size: clamp(2.45rem, 6.4vw, 3.3rem);
  }
  .sc-texture--hero .sc-texture__heading p {
    margin-top: 5px;
    font-size: .76rem;
  }
  .sc-texture--hero .sc-texture__states { min-height: 96px; }
  .sc-texture--hero .sc-texture__state strong { font-size: 1.55rem; }
  .sc-texture--hero .sc-texture__state p { margin-block: 3px 7px; font-size: .76rem; }
  .sc-texture--hero .sc-texture__state a { min-height: 34px; padding: 4px 10px; font-size: .74rem; }
  .sc-texture--hero .sc-texture__controls button { min-height: 38px; padding-top: 7px; font-size: .7rem; }
  .sc-texture--hero .sc-texture__benefits { gap: 4px 8px; padding-top: 6px; }
  .sc-texture--hero .sc-texture__benefit { grid-template-columns: 22px minmax(0, 1fr); gap: 5px; }
  .sc-texture--hero .sc-texture__benefit > span:first-child { width: 22px; height: 22px; }
  .sc-texture--hero .sc-texture__benefit img { width: 18px; height: 18px; }
  .sc-texture--hero .sc-texture__benefit strong { font-size: .68rem; }
  .sc-texture--hero .sc-texture__benefit small { font-size: .58rem; }
  .sc-texture--hero .sc-texture__watermark { width: 72%; right: -18%; opacity: .04; }
}

@media (max-width: 620px) {
  .sc-texture--hero .sc-texture__media {
    flex-basis: 49%;
    height: 49%;
  }
  .sc-texture--hero .sc-texture__copy {
    min-height: 51%;
    grid-template-rows: auto minmax(62px, auto) auto;
    gap: 4px;
    padding: 8px 16px max(8px, env(safe-area-inset-bottom));
  }
  .sc-texture--hero .sc-texture__english {
    margin-bottom: 3px;
    font-size: .55rem;
    letter-spacing: .17em;
  }
  .sc-texture--hero .sc-texture__heading h1 {
    font-size: clamp(1.85rem, 8.8vw, 2.45rem);
    line-height: .9;
  }
  .sc-texture--hero .sc-texture__heading h1 > span:last-child {
    display: inline-block;
    margin-top: .02em;
  }
  .sc-texture--hero .sc-texture__heading p {
    margin-top: 3px;
    font-size: .7rem;
    line-height: 1.22;
  }
  .sc-texture--hero .sc-texture__states { min-height: 62px; }
  .sc-texture--hero .sc-texture__state {
    grid-template-columns: auto 1fr;
    column-gap: 8px;
    padding-inline-end: 8px;
  }
  .sc-texture--hero .sc-texture__state strong { font-size: 1.12rem; }
  .sc-texture--hero .sc-texture__state p { font-size: .68rem; line-height: 1.2; }
  .sc-texture--hero .sc-texture__state a {
    min-height: 25px;
    margin-top: 2px;
    padding: 2px 9px;
    font-size: .67rem;
    box-shadow: none;
  }
  .sc-texture--hero .sc-texture__controls button {
    min-height: 34px;
    padding: 5px 1px 0;
    font-size: .66rem;
  }
  .sc-texture--hero .sc-texture__benefits {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 4px;
    padding-top: 4px;
  }
  .sc-texture--hero .sc-texture__benefit {
    display: block;
    text-align: center;
  }
  .sc-texture--hero .sc-texture__benefit > span:first-child {
    width: 20px;
    height: 20px;
    margin-inline: auto;
  }
  .sc-texture--hero .sc-texture__benefit img { width: 17px; height: 17px; }
  .sc-texture--hero .sc-texture__benefit strong { font-size: .62rem; white-space: nowrap; }
  .sc-texture--hero .sc-texture__benefit small { display: none; }
  .sc-texture--hero .sc-texture__watermark {
    top: 7%;
    right: -20%;
    width: 74%;
    opacity: .038;
  }
}

@media (max-width: 370px), (max-height: 700px) and (max-width: 620px) {
  .sc-texture--hero .sc-texture__media { flex-basis: 47%; height: 47%; }
  .sc-texture--hero .sc-texture__copy { min-height: 53%; padding-block: 6px; gap: 2px; }
  .sc-texture--hero .sc-texture__english { margin-bottom: 1px; font-size: .51rem; }
  .sc-texture--hero .sc-texture__heading h1 { font-size: 1.72rem; }
  .sc-texture--hero .sc-texture__heading p { font-size: .65rem; }
  .sc-texture--hero .sc-texture__states { min-height: 57px; }
  .sc-texture--hero .sc-texture__controls button { min-height: 31px; }
}

@media (prefers-reduced-motion: reduce) {
  .sc-texture--hero .sc-texture__watermark { transform: none; }
}
/* Final mobile readability correction after pixel QA. */
@media (max-width: 620px) {
  .sc-texture--hero .sc-texture__media {
    flex-basis: 44%;
    height: 44%;
  }
  .sc-texture--hero .sc-texture__copy {
    min-height: 56%;
    grid-template-rows: auto minmax(80px, auto) auto;
    gap: 5px;
    padding-block: 9px;
  }
  .sc-texture--hero .sc-texture__heading p {
    font-size: .76rem;
    line-height: 1.28;
  }
  .sc-texture--hero .sc-texture__states {
    min-height: 80px;
  }
  .sc-texture--hero .sc-texture__state strong {
    font-size: 1.2rem;
  }
  .sc-texture--hero .sc-texture__state p {
    font-size: .76rem;
    line-height: 1.28;
  }
  .sc-texture--hero .sc-texture__state a {
    min-height: 40px;
    margin-top: 4px;
    padding: 7px 12px;
    font-size: .78rem;
  }
  .sc-texture--hero .sc-texture__controls button {
    min-height: 42px;
    padding-top: 7px;
    font-size: .75rem;
  }
  .sc-texture--hero .sc-texture__benefits {
    padding-top: 5px;
  }
  .sc-texture--hero .sc-texture__benefit strong {
    font-size: .75rem;
  }
}

@media (max-width: 370px), (max-height: 700px) and (max-width: 620px) {
  .sc-texture--hero .sc-texture__media {
    flex-basis: 42%;
    height: 42%;
  }
  .sc-texture--hero .sc-texture__copy {
    min-height: 58%;
    gap: 3px;
    padding-block: 7px;
  }
  .sc-texture--hero .sc-texture__heading p,
  .sc-texture--hero .sc-texture__state p {
    font-size: .75rem;
  }
  .sc-texture--hero .sc-texture__state a {
    min-height: 40px;
    font-size: .75rem;
  }
  .sc-texture--hero .sc-texture__controls button {
    min-height: 40px;
    font-size: .75rem;
  }
  .sc-texture--hero .sc-texture__benefit strong {
    font-size: .72rem;
  }
}
/* Mobile interaction and header-logo legibility polish. */
@media (min-width: 1025px) {
  .header-main {
    grid-template-columns: minmax(250px, 280px) minmax(420px, 720px) minmax(96px, 124px);
  }
  .brand {
    width: clamp(246px, 18vw, 270px);
    height: 76px;
    padding: 0;
  }
  .brand__art img { max-height: 72px; }
}

@media (min-width: 821px) and (max-width: 1024px) and (orientation: landscape) {
  .brand {
    width: 204px;
    height: 64px;
    padding: 0;
  }
  .brand__art img { max-height: 62px; }
}

@media (max-width: 820px), (min-width: 821px) and (max-width: 1024px) and (orientation: portrait) {
  .brand {
    width: min(156px, 100%);
    height: 54px;
    padding: 0;
  }
  .brand__art,
  .brand__art img {
    width: 100%;
    height: 54px;
    max-height: 54px;
  }
  .brand__art img {
    object-fit: contain;
    object-position: center;
  }
}

@media (max-width: 620px) {
  .sc-texture--hero .sc-texture__media {
    flex-basis: 49%;
    height: 49%;
  }
  .sc-texture--hero .sc-texture__copy {
    min-height: 51%;
  }
  .sc-texture--hero .sc-texture__layer {
    transition: opacity 340ms cubic-bezier(.23,1,.32,1), clip-path 480ms cubic-bezier(.77,0,.175,1);
  }
  .sc-texture--hero .sc-texture__state {
    transition: opacity 240ms cubic-bezier(.23,1,.32,1), transform 340ms cubic-bezier(.23,1,.32,1), visibility 0s linear 340ms;
  }
  .sc-texture--hero .sc-texture__state.is-active {
    transition-delay: 40ms, 40ms, 0s;
  }
}

@media (max-width: 370px), (max-height: 700px) and (max-width: 620px) {
  .sc-texture--hero .sc-texture__media {
    flex-basis: 44%;
    height: 44%;
  }
  .sc-texture--hero .sc-texture__copy { min-height: 56%; }
}

/* Assistant-led Hero typography and minimal texture navigation. */
.sc-texture--hero .sc-texture__heading h1 {
  max-width: 11ch;
  font-family: "Assistant", Arial, sans-serif;
  font-size: clamp(4rem, 5.1vw, 6.2rem);
  font-weight: 650;
  line-height: .86;
  letter-spacing: -.065em;
}
.sc-texture--hero .sc-texture__heading h1 > span:first-child {
  font-weight: 620;
}
.sc-texture--hero .sc-texture__heading h1 > span:last-child {
  margin-top: .12em;
  font-weight: 720;
}
.sc-texture--hero .sc-texture__heading p {
  margin-top: clamp(16px, 2vh, 24px);
  color: #655c53;
  font-size: clamp(1rem, 1.08vw, 1.15rem);
  font-weight: 450;
  line-height: 1.55;
}
.sc-texture--hero .sc-texture__state {
  padding-inline-end: 0;
  border-inline-end: 0;
}
.sc-texture--hero .sc-texture__state strong {
  color: #241e19;
  font-size: clamp(2.15rem, 2.45vw, 3rem);
  font-weight: 720;
}
.sc-texture--hero .sc-texture__controls {
  width: min(100%, 310px);
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding-top: 8px;
  border-top: 1px solid rgba(73,56,37,.2);
}
.sc-texture--hero .sc-texture__count {
  display: inline-flex;
  align-items: baseline;
  gap: 7px;
  direction: ltr;
  color: #8c8277;
  font-family: "Assistant", Arial, sans-serif;
  font-size: .78rem;
  letter-spacing: .08em;
}
.sc-texture--hero .sc-texture__count b {
  color: #a77738;
  font-size: 1.08rem;
  font-weight: 700;
}
.sc-texture--hero .sc-texture__count i {
  color: #c2b6a7;
  font-style: normal;
}
.sc-texture--hero .sc-texture__dots {
  display: flex;
  align-items: center;
  gap: 2px;
}
.sc-texture--hero .sc-texture__controls button {
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  display: grid;
  place-items: center;
  padding: 0;
}
.sc-texture--hero .sc-texture__controls button span {
  width: 7px;
  height: 7px;
  margin: 0;
}

@media (min-width: 821px) and (max-width: 1024px) {
  .sc-texture--hero .sc-texture__heading h1 {
    font-size: clamp(3.35rem, 6.9vw, 4.6rem);
  }
}

@media (max-width: 620px) {
  .sc-texture--hero .sc-texture__copy {
    grid-template-rows: auto minmax(78px, auto) auto;
    gap: 7px;
  }
  .sc-texture--hero .sc-texture__heading h1 {
    max-width: none;
    font-size: clamp(2.45rem, 11vw, 3.05rem);
    line-height: .88;
    letter-spacing: -.055em;
  }
  .sc-texture--hero .sc-texture__heading h1 > span:last-child {
    margin-top: .08em;
  }
  .sc-texture--hero .sc-texture__heading p {
    max-width: 31ch;
    margin-top: 8px;
    font-size: .82rem;
    line-height: 1.35;
  }
  .sc-texture--hero .sc-texture__states { min-height: 78px; }
  .sc-texture--hero .sc-texture__state strong { font-size: 1.35rem; }
  .sc-texture--hero .sc-texture__state p { font-size: .78rem; }
  .sc-texture--hero .sc-texture__controls {
    width: 100%;
    min-height: 46px;
    padding-top: 2px;
  }
  .sc-texture--hero .sc-texture__controls button {
    width: 42px;
    min-width: 42px;
    height: 42px;
    min-height: 42px;
    padding: 0;
  }
  .sc-texture--hero .sc-texture__count { font-size: .72rem; }
  .sc-texture--hero .sc-texture__count b { font-size: .98rem; }
}

@media (max-width: 370px), (max-height: 700px) and (max-width: 620px) {
  .sc-texture--hero .sc-texture__heading h1 { font-size: 2.25rem; }
  .sc-texture--hero .sc-texture__heading p { font-size: .78rem; }
  .sc-texture--hero .sc-texture__states { min-height: 74px; }
}

/* Desktop composition correction: two-line headline and fuller text rhythm. */
@media (min-width: 1025px) {
  .sc-texture--hero .sc-texture__stage {
    grid-template-columns: minmax(0, 55%) minmax(440px, 45%);
  }
  .sc-texture--hero .sc-texture__copy {
    grid-template-rows: auto minmax(150px, auto) auto;
    gap: clamp(22px, 3vh, 34px);
    padding-inline: clamp(42px, 4vw, 64px);
  }
  .sc-texture--hero .sc-texture__heading {
    max-width: 640px;
  }
  .sc-texture--hero .sc-texture__heading h1 {
    max-width: none;
    font-size: clamp(3.8rem, 4.55vw, 5.35rem);
    font-weight: 560;
    line-height: .88;
    letter-spacing: -.055em;
  }
  .sc-texture--hero .sc-texture__heading h1 > span:first-child {
    white-space: nowrap;
    font-weight: 560;
  }
  .sc-texture--hero .sc-texture__heading h1 > span:last-child {
    margin-top: .13em;
    font-weight: 650;
  }
  .sc-texture--hero .sc-texture__heading p {
    max-width: 36ch;
    font-size: 1.08rem;
  }
  .sc-texture--hero .sc-texture__state {
    position: relative;
    padding-top: 22px;
  }
  .sc-texture--hero .sc-texture__state::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 54px;
    height: 1px;
    background: #b68a4f;
  }
  .sc-texture--hero .sc-texture__state strong {
    font-size: clamp(2.15rem, 2.35vw, 2.85rem);
  }
  .sc-texture--hero .sc-texture__controls {
    width: min(100%, 360px);
  }
}

@media (max-width: 620px) {
  .sc-texture--hero .sc-texture__heading h1 {
    font-weight: 560;
  }
  .sc-texture--hero .sc-texture__heading h1 > span:first-child {
    white-space: nowrap;
    font-weight: 560;
  }
  .sc-texture--hero .sc-texture__heading h1 > span:last-child {
    font-weight: 650;
  }
}

/* Layered full-width Tali Hair Care section */
.care-showcase[data-care-selected="option-a"] {
  --care-bg-x: 0px;
  --care-bg-y: 0px;
  --care-product-y: 0px;
  --care-product-scale: 1;
  --care-copy-y: 0px;
  position: relative;
  isolation: isolate;
  min-height: 0;
  overflow: clip;
  padding: 0;
  background: #f5e8e2;
  border-block: 1px solid rgba(149, 111, 89, .11);
}
.care-showcase[data-care-selected="option-a"]::before { content: none; }
.care-showcase[data-care-selected="option-a"] .care-showcase__lead {
  position: relative;
  display: block;
  width: 100%;
  min-height: clamp(620px, 48vw, 760px);
  overflow: hidden;
  color: #211c18;
  text-decoration: none;
  background: #f3e7e1;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__background {
  position: absolute;
  z-index: 0;
  inset: -3%;
  display: block;
  overflow: hidden;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: translate3d(var(--care-bg-x), var(--care-bg-y), 0) scale(1.025);
  will-change: transform;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__products {
  position: absolute;
  z-index: 2;
  left: clamp(10px, 1.8vw, 34px);
  bottom: 27%;
  width: min(56vw, 860px);
  display: block;
  pointer-events: none;
  transform: translate3d(0, var(--care-product-y), 0) scale(var(--care-product-scale));
  transform-origin: 46% 100%;
  filter: drop-shadow(0 24px 22px rgba(72, 45, 35, .12));
  will-change: transform;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__products img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 720ms cubic-bezier(.23,1,.32,1), filter 360ms ease;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__veil {
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(255,251,247,0) 0 45%, rgba(255,251,247,.1) 55%, rgba(255,251,247,.62) 74%, rgba(255,252,249,.86) 100%);
}
.care-showcase[data-care-selected="option-a"] .care-showcase__copy {
  position: absolute;
  z-index: 3;
  top: 50%;
  right: max(5.5vw, calc((100vw - 1540px) / 2 + 68px));
  width: min(37%, 560px);
  min-height: 0;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  transform: translate3d(0, calc(-50% + var(--care-copy-y)), 0);
  text-align: right;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__copy::before { content: none; }
.care-showcase[data-care-selected="option-a"] .care-showcase__copy h2 {
  max-width: 570px;
  margin: 0;
  color: #211c18;
  font-family: "Assistant", Arial, sans-serif;
  font-size: clamp(3.2rem, 4.7vw, 5.35rem);
  font-weight: 590;
  line-height: .91;
  letter-spacing: -.052em;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__copy h2 span {
  display: block;
  margin-top: .08em;
  color: #ad7d5e;
  font-weight: 460;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__description {
  max-width: 38ch;
  margin: clamp(18px, 2vw, 28px) 0 clamp(24px, 2.5vw, 36px);
  color: #6f625a;
  font-size: clamp(.98rem, 1.25vw, 1.18rem);
  line-height: 1.6;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__cta {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  gap: 24px;
  padding: 0 27px;
  color: #fff;
  background: #211c18;
  font-size: clamp(.86rem, 1vw, 1rem);
  font-weight: 720;
  transition: background-color 240ms ease, transform 240ms ease;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__cta i {
  display: inline-block;
  font-style: normal;
  font-size: 1.2em;
  transition: transform 240ms ease;
}
.care-showcase[data-care-selected="option-a"] .care-showcase__lead:hover .care-showcase__products img,
.care-showcase[data-care-selected="option-a"] .care-showcase__lead:focus-visible .care-showcase__products img {
  transform: translateY(-5px) scale(1.018);
  filter: saturate(1.025) contrast(1.015);
}
.care-showcase[data-care-selected="option-a"] .care-showcase__lead:hover .care-showcase__cta,
.care-showcase[data-care-selected="option-a"] .care-showcase__lead:focus-visible .care-showcase__cta {
  background: #9a6d50;
  transform: translateY(-2px);
}
.care-showcase[data-care-selected="option-a"] .care-showcase__lead:hover .care-showcase__cta i,
.care-showcase[data-care-selected="option-a"] .care-showcase__lead:focus-visible .care-showcase__cta i {
  transform: translateX(-5px);
}
.care-showcase[data-care-selected="option-a"] .care-showcase__lead:focus-visible {
  outline: 2px solid #9a6d50;
  outline-offset: -4px;
}
@media (max-width: 1024px) and (orientation: portrait), (max-width: 820px) {
  .care-showcase[data-care-selected="option-a"] .care-showcase__lead {
    min-height: clamp(700px, 90svh, 780px);
  }
  .care-showcase[data-care-selected="option-a"] .care-showcase__background {
    inset: -2%;
  }
  .care-showcase[data-care-selected="option-a"] .care-showcase__background img {
    object-position: center 52%;
    transform: translate3d(calc(var(--care-bg-x) * .45), calc(var(--care-bg-y) * .45), 0) scale(1.025);
  }
  .care-showcase[data-care-selected="option-a"] .care-showcase__products {
    left: 3%;
    bottom: 31.5%;
    width: 94%;
    transform: translate3d(0, calc(var(--care-product-y) * .62), 0) scale(var(--care-product-scale));
  }
  .care-showcase[data-care-selected="option-a"] .care-showcase__veil {
    background: linear-gradient(180deg, rgba(255,251,247,.74) 0, rgba(255,251,247,.36) 31%, transparent 52%);
  }
  .care-showcase[data-care-selected="option-a"] .care-showcase__copy {
    top: clamp(34px, 6vw, 58px);
    right: 24px;
    left: 24px;
    width: auto;
    align-items: center;
    transform: translate3d(0, var(--care-copy-y), 0);
    text-align: center;
  }
.care-showcase[data-care-selected="option-a"] .care-showcase__copy h2 {
    max-width: 540px;
    font-size: clamp(2.7rem, 8vw, 4.2rem);
  }
  .care-showcase[data-care-selected="option-a"] .care-showcase__description {
    max-width: 33ch;
    margin-block: 15px 21px;
    font-size: .96rem;
  }
  .care-showcase[data-care-selected="option-a"] .care-showcase__cta { min-height: 50px; }
}
@media (max-width: 520px) {
  .care-showcase[data-care-selected="option-a"] .care-showcase__lead { min-height: clamp(650px, 184vw, 720px); }
  .care-showcase[data-care-selected="option-a"] .care-showcase__copy { top: 31px; right: 18px; left: 18px; }
  .care-showcase[data-care-selected="option-a"] .care-showcase__copy h2 { font-size: clamp(2.32rem, 11.2vw, 3rem); }
  .care-showcase[data-care-selected="option-a"] .care-showcase__description { margin-block: 12px 18px; font-size: .9rem; }
  .care-showcase[data-care-selected="option-a"] .care-showcase__cta { min-height: 46px; padding-inline: 21px; font-size: .82rem; }
  .care-showcase[data-care-selected="option-a"] .care-showcase__products { left: -2%; bottom: 24.5%; width: 104%; }
}
@media (prefers-reduced-motion: reduce) {
  .care-showcase[data-care-selected="option-a"] .care-showcase__background img,
  .care-showcase[data-care-selected="option-a"] .care-showcase__products,
  .care-showcase[data-care-selected="option-a"] .care-showcase__products img,
  .care-showcase[data-care-selected="option-a"] .care-showcase__copy {
    transform: none !important;
    transition: none !important;
  }
  .care-showcase[data-care-selected="option-a"] .care-showcase__copy {
    top: 50%;
  }
  @media (max-width: 1024px) and (orientation: portrait), (max-width: 820px) {
    .care-showcase[data-care-selected="option-a"] .care-showcase__copy { top: clamp(34px, 6vw, 58px); }
  }
}
/* Tight transition from care campaign into products */
.care-showcase + .featured-products[data-scrollcraft-chapter] {
  padding-block-start: clamp(44px, 4vw, 64px);
}
@media (max-width: 767px) {
  .care-showcase + .featured-products[data-scrollcraft-chapter] {
    padding-block-start: 40px;
  }
}
/* Unified section rhythm */
.catalog[data-scrollcraft-chapter],
.featured-products[data-scrollcraft-chapter],
.premium-products[data-scrollcraft-chapter],
.testimonials[data-reel-stack],
.faq[data-scrollcraft-quiet] {
  padding-block: clamp(60px, 5vw, 84px);
}
.care-showcase + .featured-products[data-scrollcraft-chapter] {
  padding-block-start: clamp(40px, 3.6vw, 56px);
}
@media (max-width: 767px) {
  .catalog[data-scrollcraft-chapter],
  .featured-products[data-scrollcraft-chapter],
  .premium-products[data-scrollcraft-chapter],
  .testimonials[data-reel-stack],
  .faq[data-scrollcraft-quiet] {
    padding-block: 52px;
  }
  .care-showcase + .featured-products[data-scrollcraft-chapter] {
    padding-block-start: 36px;
  }
}
.about.section { padding-block: 0; }

/* Care copy has no panel background. */
.care-showcase[data-care-selected="option-a"] .care-showcase__copy { background: transparent; }

/* Selected premium option 3 */
.premium-products[data-premium-selected="option-3"] {
  padding-block: 0;
  overflow: hidden;
  background: #f8f4ee;
}
.premium-products[data-premium-selected="option-3"]::before { content: none; }
.premium-products[data-premium-selected="option-3"] .premium-products__layout {
  width: min(100%, 1600px);
  min-height: clamp(480px, 34vw, 540px);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(320px, .72fr) minmax(0, 1.75fr);
  direction: rtl;
}
.premium-products[data-premium-selected="option-3"] .premium-products__heading {
  position: relative;
  z-index: 3;
  min-width: 0;
  margin: 0;
  padding: clamp(38px, 3.8vw, 58px) clamp(34px, 4.8vw, 74px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  border: 0;
  background: #fbf8f3;
  text-align: right;
}
.premium-products[data-premium-selected="option-3"] .premium-products__heading h2 {
  margin: 0;
  color: #211c18;
  font-family: "Assistant", Arial, sans-serif;
  font-size: clamp(3.25rem, 4.7vw, 5.25rem);
  font-weight: 580;
  line-height: .9;
  letter-spacing: -.055em;
}
.premium-products[data-premium-selected="option-3"] .premium-products__heading h2 span,
.premium-products[data-premium-selected="option-3"] .premium-products__heading h2 em {
  display: block;
  font-style: normal;
}
.premium-products[data-premium-selected="option-3"] .premium-products__heading h2 em {
  margin-top: .08em;
  color: #ad7d43;
  font-weight: 620;
}
.premium-products[data-premium-selected="option-3"] .premium-products__heading > p {
  max-width: 33ch;
  margin: clamp(17px, 1.8vw, 25px) 0 0;
  color: #746960;
  font-size: clamp(.94rem, 1.15vw, 1.08rem);
  line-height: 1.55;
}
.premium-products[data-premium-selected="option-3"] .premium-products__mobile-nav { display: none; }
.premium-products[data-premium-selected="option-3"] .premium-products__grid {
  min-width: 0;
  height: auto;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  direction: ltr;
  overflow: visible;
}
.premium-products[data-premium-selected="option-3"] .premium-card,
.premium-products[data-premium-selected="option-3"] .premium-card:first-child {
  position: relative;
  min-width: 0;
  height: auto;
  min-height: 100%;
  display: block;
  overflow: hidden;
  transform: none;
  border: 0;
  border-inline-end: 1px solid rgba(78,59,39,.1);
  border-radius: 0;
  box-shadow: none;
}
.premium-products[data-premium-selected="option-3"] .premium-card--straight {
  background: linear-gradient(150deg, #eee5db 0%, #faf7f2 100%);
}
.premium-products[data-premium-selected="option-3"] .premium-card--wavy {
  background: linear-gradient(210deg, #ead8d3 0%, #f9f3ee 100%);
}
.premium-products[data-premium-selected="option-3"] .premium-card__media {
  position: absolute;
  inset: 0;
  padding: 0;
  overflow: hidden;
  background: transparent;
}
.premium-products[data-premium-selected="option-3"] .premium-card__media::before,
.premium-products[data-premium-selected="option-3"] .premium-card__media::after { content: none; }
.premium-products[data-premium-selected="option-3"] .premium-card__media img,
.premium-products[data-premium-selected="option-3"] .premium-card[data-product-id="160326"] .premium-card__media img,
.premium-products[data-premium-selected="option-3"] .premium-card[data-product-id="71079"] .premium-card__media img {
  position: absolute;
  z-index: 1;
  display: block;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 24px 22px rgba(50,37,24,.14));
  transition: transform 650ms cubic-bezier(.23,1,.32,1), filter 360ms ease;
}
.premium-products[data-premium-selected="option-3"] .premium-card--straight .premium-card__media img {
  left: 50%;
  bottom: 80px;
  width: min(44%, 260px);
  height: 80%;
  transform: translateX(-50%);
}
.premium-products[data-premium-selected="option-3"] .premium-card--wavy .premium-card__media img {
  left: 50%;
  bottom: 76px;
  width: min(84%, 470px);
  height: 88%;
  transform: translateX(-50%);
}

.premium-products[data-premium-selected="option-3"] .premium-card__copy {
  position: absolute;
  z-index: 4;
  right: 18px;
  bottom: 18px;
  left: 18px;
  width: auto;
  min-height: 78px;
  padding: 12px 16px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 18px;
  border: 1px solid rgba(255,255,255,.64);
  background: rgba(255,253,249,.97);
  box-shadow: none;
  backdrop-filter: none;
  direction: rtl;
}
.premium-products[data-premium-selected="option-3"] .premium-card__copy small {
  display: block;
  color: #8b6b49;
  font-size: .72rem;
  font-weight: 600;
}
.premium-products[data-premium-selected="option-3"] .premium-card__copy h3 {
  margin: 1px 0 0;
  color: #211c18;
  font-size: clamp(1.65rem, 2vw, 2.15rem);
  font-weight: 650;
  line-height: 1;
}
.premium-products[data-premium-selected="option-3"] .premium-card__copy a {
  margin: 0;
  padding: 8px 0 6px;
  display: inline-flex;
  align-items: center;
  gap: 28px;
  color: #211c18;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #9e764a;
  font-weight: 700;
  text-decoration: none;
}
.premium-products[data-premium-selected="option-3"] .premium-card__copy a span { transition: transform 220ms ease; }
.premium-products[data-premium-selected="option-3"] .premium-card__copy a:hover span,
.premium-products[data-premium-selected="option-3"] .premium-card__copy a:focus-visible span { transform: translateX(-4px); }
@media (max-width: 767px) {
  .premium-products[data-premium-selected="option-3"] .premium-products__layout {
    min-height: 0;
    display: block;
  }
  .premium-products[data-premium-selected="option-3"] .premium-products__heading {
    padding: 28px 20px 18px;
  }
  .premium-products[data-premium-selected="option-3"] .premium-products__heading h2 {
    margin-top: 0;
    font-size: clamp(2.3rem, 11vw, 2.9rem);
    line-height: .92;
  }
  .premium-products[data-premium-selected="option-3"] .premium-products__heading > p {
    max-width: 32ch;
    margin-top: 12px;
    font-size: .88rem;
    line-height: 1.45;
  }
  .premium-products[data-premium-selected="option-3"] .premium-products__mobile-nav {
    width: 100%;
    margin-top: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .premium-products[data-premium-selected="option-3"] .premium-products__counter {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #91857a;
    font-size: .78rem;
  }
  .premium-products[data-premium-selected="option-3"] .premium-products__counter strong { color: #211c18; }
  .premium-products[data-premium-selected="option-3"] .premium-products__buttons { display: flex; gap: 9px; }
  .premium-products[data-premium-selected="option-3"] .premium-products__buttons button {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(78,59,39,.18);
    border-radius: 50%;
    background: #fffdf9;
  }
  .premium-products[data-premium-selected="option-3"] .premium-products__buttons button:disabled { opacity: .38; }
  .premium-products[data-premium-selected="option-3"] .premium-products__grid {
    height: auto;
    padding: 0 18px 22px;
    display: flex;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    direction: rtl;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 18px;
    scrollbar-width: none;
    overscroll-behavior-inline: contain;
  }
  .premium-products[data-premium-selected="option-3"] .premium-products__grid::-webkit-scrollbar { display: none; }
  .premium-products[data-premium-selected="option-3"] .premium-card,
  .premium-products[data-premium-selected="option-3"] .premium-card:first-child {
    flex: 0 0 calc(100vw - 36px);
    width: calc(100vw - 36px);
    height: 370px;
    min-height: 370px;
    border: 0;
    scroll-snap-align: center;
  }
    .premium-products[data-premium-selected="option-3"] .premium-card--straight .premium-card__media img {
    bottom: 58px;
    width: min(50%, 190px);
    height: calc(100% - 68px);
  }
  .premium-products[data-premium-selected="option-3"] .premium-card--wavy .premium-card__media img {
    bottom: 56px;
    width: min(78%, 310px);
    height: calc(100% - 64px);
  }
  .premium-products[data-premium-selected="option-3"] .premium-card__copy {
    right: 12px;
    bottom: 12px;
    left: 12px;
    min-height: 66px;
    padding: 9px 12px;
  }
  .premium-products[data-premium-selected="option-3"] .premium-card__copy h3 { font-size: 1.65rem; }
  .premium-products[data-premium-selected="option-3"] .premium-card__copy a { gap: 18px; font-size: .85rem; }
}
@media (prefers-reduced-motion: reduce) {
  .premium-products[data-premium-selected="option-3"] .premium-card__media img { transition: none; }
}
/* Focused repair: keep the parallax media full-bleed throughout its +/-24px travel. */
.sc-texture--hero .sc-texture__media {
  left: -24px;
  width: calc(100% + 48px);
}

/* Client corrections, 2026-11-03: static campaign hero and category order. */
.site-header .brand__art img { object-fit: contain; }
.footer-brand .footer-brand__art img { height: auto; }

.client-hero {
  position: relative;
  min-height: 560px;
  height: clamp(560px, calc(100svh - 160px), 900px);
  isolation: isolate;
  overflow: hidden;
  background: #f8eeeb;
}
.client-hero__art { position: absolute; inset: 0; z-index: -1; display: block; }
.client-hero__art img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.client-hero__copy {
  width: 46%;
  height: 100%;
  margin-inline-end: auto;
  padding: clamp(32px, 5vw, 88px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  text-align: right;
  direction: rtl;
}
.client-hero h1 {
  margin: 0;
  font-family: Assistant, Arial, sans-serif;
  font-size: clamp(40px, 4.35vw, 76px);
  font-weight: 700;
  font-variation-settings: "wght" 700;
  line-height: 1.08;
  letter-spacing: -.045em;
}
.client-hero h1 span { display: block; color: #916429; font-weight: 500; font-variation-settings: "wght" 500; white-space: nowrap; }
.client-hero__rule { width: 64px; height: 2px; margin-block: 26px; background: #ad7b36; }
.client-hero__copy p { margin: 0; max-width: 32ch; color: #62534b; font-size: clamp(17px, 1.45vw, 24px); line-height: 1.65; font-variation-settings: "wght" 400; }
.client-hero__cta {
  margin-top: 30px;
  min-height: 54px;
  padding: 14px 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #191310;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  font-variation-settings: "wght" 700;
  text-decoration: none;
  box-shadow: 0 12px 28px #3320141a;
}
.client-hero__cta:hover { background: #362820; }
.client-hero__cta:focus-visible { outline: 2px solid #ad7b36; outline-offset: 5px; }
#premium-hair { position: relative; scroll-margin-block-start: 155px; }

/* Give product photography a short entrance while keeping the purchase links still. */
@supports (animation-timeline: view()) and (animation-range: entry 0% cover 38%) {
  @media (prefers-reduced-motion: no-preference) {
    #premium-hair { view-timeline-name: --premium-entry; }
    #premium-hair[data-premium-selected] .premium-card__media img {
      animation: premium-photo-arrival linear both;
      animation-timeline: --premium-entry;
      animation-range: entry 0% cover 38%;
    }
  }
}
@keyframes premium-photo-arrival {
  from { translate: 0 20px; opacity: .65; }
  to { translate: 0 0; opacity: 1; }
}
.catalog-grid--client { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.catalog[data-scrollcraft-chapter] .catalog-grid--client .category-card { transform: none; }
.catalog-grid--client .category-card--premium { grid-column: span 2; }
.catalog-grid--client .category-card__media { height: clamp(200px, 20vw, 290px); aspect-ratio: auto; }
.catalog-grid--client .category-card--premium strong { font-size: 1.6rem; }
.category-card--soon { cursor: default; }
.catalog-grid--client .category-card--soon .category-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f4eee7;
}
.catalog-grid--client .category-card--soon:hover { transform: none; }
.desktop-nav .desktop-nav__link--soon { color: #897e73; cursor: default; }
.mobile-menu .mobile-nav--soon { display: block; padding: 14px 0; color: #897e73; }
@media (max-width: 820px), (max-width: 1024px) and (orientation: portrait) {
  .client-hero { height: auto; min-height: 0; background: #fbf5f1; }
  .client-hero__art { position: relative; z-index: 0; height: clamp(280px, 82vw, 410px); overflow: hidden; }
  .client-hero__art img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 25% center;
  }
  .client-hero__copy { width: 100%; height: auto; padding: 24px 24px 28px; }
  .client-hero h1 { font-size: clamp(38px, 6.2vw, 62px); line-height: 1.1; }
  .client-hero__rule { margin-block: 19px; width: 48px; }
  .client-hero__copy p { max-width: 40ch; font-size: 17px; line-height: 1.6; }
  .client-hero__cta { min-height: 49px; margin-top: 23px; font-size: 17px; }
  .catalog-grid--client { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .catalog-grid--client .category-card__media { height: clamp(150px, 38vw, 280px); }
}
@media (max-width: 359px) {
  .client-hero__copy { padding-inline: 20px; }
  .client-hero h1 { font-size: 35px; }
}

/* Keep the product picture and its purchase panel in separate rows. */
#premium-hair[data-premium-selected] .premium-products__heading h2 {
  font-size: clamp(2.25rem, 3.65vw, 4.6rem);
  line-height: 1;
}
#premium-hair[data-premium-selected] .premium-card {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  height: auto;
  min-height: 0;
}
#premium-hair[data-premium-selected] .premium-card__media {
  position: relative;
  inset: auto;
  min-height: clamp(265px, 24vw, 390px);
  padding: 20px 12px 4px;
  display: grid;
  place-items: center;
}
#premium-hair[data-premium-selected] .premium-card .premium-card__media img {
  position: static;
  width: 90%;
  height: clamp(235px, 23vw, 350px);
  max-width: none;
  transform: none;
}
#premium-hair[data-premium-selected] .premium-card .premium-card__media img.premium-client-photo {
  width: 100%;
  height: clamp(285px, 29vw, 420px);
  object-fit: contain;
  filter: none;
}
#premium-hair[data-premium-selected] .premium-card__media:has(.premium-client-photo) {
  padding: 0;
  background: #e9dacb;
}
#premium-hair[data-premium-selected] .premium-card__copy {
  position: relative;
  inset: auto;
  margin: 0 14px 14px;
  min-height: 68px;
}
#premium-hair[data-premium-selected] .premium-card__copy a { min-height: 44px; gap: 12px; }

.catalog .catalog-grid--client .category-card--premium {
  grid-column: 1 / -1;
  background: #f3ebe1;
  border: 1px solid #e6d8c7;
}
.category-card--premium .category-card__body { padding: 14px 20px; }
.catalog-grid--client .category-card--soon .category-card__media { color: #725b44; font-size: 1.15rem; letter-spacing: .08em; }
.catalog .store-heading h2,
.faq[data-scrollcraft-quiet] .faq__heading h2 { font-size: clamp(2.05rem, 4vw, 3.6rem); }
.about .about__content .button--gold { background: #211a16; color: #fff; }
.about .about__content .button--gold:hover { background: #382c24; }

@media (min-width: 821px) {
  .about .about__layout::after {
    background: linear-gradient(270deg, #f9ede9 0%, rgba(249, 237, 233, .9) 27%, rgba(249, 237, 233, 0) 50%);
  }
  .about .about__content-wrap { direction: rtl; }
}

@media (max-width: 620px) {
  .about .about__layout { background: #f6eee5; }
  .about .about__portrait {
    inset: auto;
    width: 100%;
    height: clamp(312px, 102vw, 500px);
    margin: 0;
  }
  .about .about__portrait img {
    position: absolute;
    inset: 0 0 0 auto;
    display: block;
    width: 100%;
    object-position: 36% top;
  }
  .about .about__content-wrap { width: min(420px, calc(100% - 48px)); }
  .about .about__content { padding-block: 28px 34px; }
  .about .about__content h2 {
    margin-block-end: 12px;
    font-size: clamp(1.8rem, 7.6vw, 2.2rem);
  }
  .about .about__content p { font-size: 1rem; line-height: 1.65; }
  .about .about__content bdi { white-space: nowrap; }
  .about .about__content .button {
    align-self: flex-start;
    width: auto;
    min-width: 0;
    padding-inline: 24px;
    margin-top: 18px;
  }
}
.site-footer[data-scrollcraft-close] .footer-gift::after { content: none; }

#premium-hair[data-premium-selected] {
  background: linear-gradient(to bottom, #f8eae6 0%, #f8eae6 72%, #eddfd3 95%, #fbf8f3 100%);
  color: #31231c;
  isolation: isolate;
}
@media (max-width: 820px), (max-width: 1024px) and (orientation: portrait) {
  #premium-hair[data-premium-selected] {
    background: linear-gradient(to bottom, #fbf5f1 0%, #f8eae6 14%, #f8eae6 72%, #eddfd3 95%, #fbf8f3 100%);
  }
}
#premium-hair[data-premium-selected]::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -22% -16%;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 63% 30%, #efb97a2b, transparent 48%),
    radial-gradient(ellipse at 30% 75%, #dba4771e, transparent 45%);
}
@supports (animation-timeline: view()) and (animation-range: cover 0% cover 100%) {
  @media (prefers-reduced-motion: no-preference) {
    #premium-hair[data-premium-selected]::before {
      animation: premium-ambient-drift linear both;
      animation-timeline: --premium-entry;
      animation-range: cover 0% cover 100%;
    }
  }
}
@keyframes premium-ambient-drift {
  from { transform: translate3d(-4%, -3%, 0); }
  to { transform: translate3d(4%, 3%, 0); }
}
#premium-hair[data-premium-selected] .premium-products__layout {
  width: min(100%, 1480px);
  min-height: 0;
  padding: clamp(24px, 4vw, 58px) clamp(20px, 4vw, 60px);
  padding-block-start: clamp(58px, 5vw, 76px);
}
#premium-hair[data-premium-selected] .premium-products__heading { background: transparent; }
#premium-hair[data-premium-selected] .premium-card {
  border: 1px solid #d9b589;
  border-radius: 26px;
  background: #fcf5ed;
  box-shadow: 0 12px 24px #5c3e2514;
}
#premium-hair[data-premium-selected] .premium-card .premium-card__media img.premium-client-photo {
  height: auto;
  aspect-ratio: 4 / 5;
}
#premium-hair[data-premium-selected] .premium-card__copy {
  margin: 0;
  padding: 15px 12px 18px;
  justify-items: center;
  grid-template-columns: 1fr;
  gap: 10px;
  border: 0;
  background: #fcf5ed;
}
#premium-hair[data-premium-selected] .premium-card__media:has(.premium-client-photo)::after {
  content: "";
  position: absolute;
  z-index: 2;
  inset: auto 0 0;
  height: 6%;
  background: linear-gradient(transparent, #fcf5ed);
  pointer-events: none;
}
#premium-hair[data-premium-selected] .premium-card__copy h3,
#premium-hair[data-premium-selected] .premium-products__heading h2 { color: #31231c; }
#premium-hair[data-premium-selected] .premium-products__heading > p { color: #62483a; }
#premium-hair[data-premium-selected] .premium-card__copy a {
  padding: 8px 20px;
  border: 0;
  border-radius: 999px;
  background: #e8c295;
  color: #241911;
}
#premium-hair[data-premium-selected] .premium-card__copy a:hover { background: #f4d7b2; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  #premium-hair[data-premium-selected] .premium-card {
    transition: border-color 280ms ease, box-shadow 280ms ease;
  }
  #premium-hair[data-premium-selected] .premium-card .premium-client-photo {
    transition: scale 420ms ease;
  }
  #premium-hair[data-premium-selected] .premium-card:is(:hover, :focus-within) {
    border-color: #a97849;
    box-shadow: 0 12px 24px #5c3e2526;
  }
  #premium-hair[data-premium-selected] .premium-card:is(:hover, :focus-within) .premium-client-photo {
    scale: 1.025;
  }
}
#premium-hair[data-premium-selected] .premium-products__heading h2 em { color: #916429; }
#premium-hair[data-premium-selected] .premium-products__counter,
#premium-hair[data-premium-selected] .premium-products__counter strong { color: #62483a; }
#premium-hair[data-premium-selected] .premium-products__buttons button {
  color: #fff8ee;
  background: #4b382c;
  border-color: #ac8765;
}
@media (min-width: 768px) {
  #premium-hair[data-premium-selected] .premium-products__layout {
    width: var(--shell);
    padding-inline: 0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(12px, 2vw, 32px);
  }
  #premium-hair[data-premium-selected] .premium-products__heading {
    grid-area: 1 / 2;
    align-items: center;
    text-align: center;
    padding: 16px 0;
  }
  #premium-hair[data-premium-selected] .premium-products__heading h2 {
    font-size: clamp(2.05rem, 4vw, 3.6rem);
  }
  #premium-hair[data-premium-selected] .premium-products__grid { display: contents; }
  #premium-hair[data-premium-selected] .premium-card--straight { grid-area: 1 / 1; }
  #premium-hair[data-premium-selected] .premium-card--wavy { grid-area: 1 / 3; }
  #premium-hair[data-premium-selected] .premium-card__media { min-height: 0; }
}
@media (max-width: 767px) {
  #premium-hair[data-premium-selected] .premium-products__layout { padding-inline: 0; }
  #premium-hair[data-premium-selected] .premium-products__heading {
    padding-top: 0;
    align-items: center;
    text-align: center;
  }
  #premium-hair[data-premium-selected] .premium-products__grid { padding-bottom: 0; }
}

@media (min-width: 821px) {
  .catalog-grid--client { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .about .about__portrait img { object-position: center top; }
}
@media (min-width: 1025px), (min-width: 821px) and (orientation: landscape) {
  .care-showcase[data-care-selected="option-a"] .care-showcase__copy { top: 45%; }
  @media (prefers-reduced-motion: reduce) {
    .care-showcase[data-care-selected="option-a"] .care-showcase__copy { transform: translateY(-50%) !important; }
  }
}
@media (max-width: 820px) {
  .featured-products .product-rail__header { display: grid; gap: 12px; }
  .featured-products .product-rail__header h2 { font-size: clamp(2rem, 8vw, 3rem); }
  .site-footer .footer-main { row-gap: 20px; padding-block: 28px; }
  .site-footer .footer-column { gap: 0; }
  .site-footer .footer-column a { min-height: 44px; padding-block: 5px; }
}
@media (max-width: 520px) {
  .care-showcase[data-care-selected="option-a"] .care-showcase__lead { min-height: clamp(530px, 162vw, 630px); }
  .care-showcase[data-care-selected="option-a"] .care-showcase__products { left: 5%; width: 90%; bottom: 21%; }
}
@media (min-width: 621px) and (max-width: 1024px) and (orientation: portrait) {
  .client-hero__art { height: clamp(320px, 41svh, 410px); }
  .care-showcase[data-care-selected="option-a"] .care-showcase__products {
    left: 50%;
    width: min(68%, 520px);
    bottom: 18%;
    translate: -50% 0;
  }
}

/* Carry the same photograph across the boundary into the premium collection. */
@media (min-width: 1025px), (min-width: 821px) and (orientation: landscape) {
  .client-hero {
    --hero-photo-bleed: clamp(58px, 5vw, 86px);
    overflow: visible;
    z-index: 1;
  }
  .client-hero__art {
    bottom: calc(-1 * var(--hero-photo-bleed));
    pointer-events: none;
    mask-image: linear-gradient(to bottom, #000 calc(100% - var(--hero-photo-bleed) - 12px), transparent 100%);
  }
  #premium-hair[data-premium-selected] .premium-products__layout {
    padding-block-start: clamp(92px, 7vw, 116px);
  }
}

#tali-hair-care .care-showcase__lead {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(24px, 5vw, 76px);
  padding: clamp(24px, 4vw, 58px) max(24px, calc((100% - 1280px) / 2));
  min-height: 0;
}
#tali-hair-care .care-showcase__products--photo {
  position: relative;
  inset: auto;
  grid-area: 1 / 2;
  width: min(100%, 525px);
  justify-self: center;
  translate: none;
  transform: none;
  filter: drop-shadow(0 7px 7px #51382b30);
}
#tali-hair-care .care-showcase__products--photo img {
  width: 100%;
  height: auto;
  border-radius: 0;
}
#tali-hair-care .care-showcase__copy {
  grid-area: 1 / 1;
  position: relative;
  inset: auto;
  width: auto;
  transform: none !important;
}
@supports (animation-timeline: view()) and (animation-range: entry 0% cover 35%) {
  @media (prefers-reduced-motion: no-preference) {
    #tali-hair-care { view-timeline-name: --care-arrival; }
    #tali-hair-care .care-showcase__products--photo img {
      animation: care-photo-arrival linear both;
      animation-timeline: --care-arrival;
      animation-range: entry 0% cover 35%;
    }
    #tali-hair-care .care-showcase__copy h2 {
      animation: care-title-arrival linear both;
      animation-timeline: --care-arrival;
      animation-range: entry 18% cover 36%;
    }
  }
}
@keyframes care-photo-arrival {
  from { translate: 0 16px; opacity: .84; }
  to { translate: 0 0; opacity: 1; }
}
@keyframes care-title-arrival {
  from { translate: 0 8px; }
  to { translate: 0 0; }
}
@media (max-width: 820px), (max-width: 1024px) and (orientation: portrait) {
  #tali-hair-care .care-showcase__lead { grid-template-columns: minmax(0, 1fr); }
  #tali-hair-care .care-showcase__products--photo { grid-area: 2 / 1; }
  #tali-hair-care .care-showcase__copy { justify-self: center; }
}

.tali-reviews {
  padding-block: clamp(44px, 6vw, 84px);
  background: #fbf7ef;
  color: #2d211b;
  scroll-margin-top: 155px;
}
.tali-reviews [hidden] { display: none; }
.tali-reviews__header {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 16px;
  margin-bottom: clamp(18px, 3vw, 32px);
}
.tali-reviews__header h2 {
  margin: 0;
  font-size: clamp(2rem, 4.6vw, 3.65rem);
  line-height: 1.03;
  letter-spacing: -.035em;
}
.tali-reviews__playback {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #745440;
  cursor: pointer;
  flex-shrink: 0;
}
.tali-reviews__playback:hover { background: #f3e4d6; }
.tali-reviews__playback [data-play-icon],
.tali-reviews__playback.is-paused [data-pause-icon] { display: none; }
.tali-reviews__playback.is-paused [data-play-icon] { display: initial; }
.tali-reviews__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 32px) / 3);
  gap: 16px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  overflow-anchor: none;
  scroll-snap-type: inline mandatory;
  scrollbar-width: none;
}
.tali-reviews__track::-webkit-scrollbar { display: none; }
@media (hover: hover) and (pointer: fine) {
  .tali-reviews__track[data-ready] { cursor: grab; }
}
.tali-reviews__track.is-dragging { scroll-snap-type: none; user-select: none; cursor: grabbing; }
.tali-review {
  --review-surface: #fffaf2;
  --review-ink: #2d211b;
  --review-detail: #745440;
  --review-rule: #76563f38;
  display: grid;
  grid-template-rows: 1fr auto;
  min-width: 0;
  border: 1px solid #d5bfab65;
  border-radius: 16px;
  background: var(--review-surface);
  color: var(--review-ink);
  scroll-snap-align: start;
}
.tali-review--espresso {
  --review-surface: #382820;
  --review-ink: #fff8ed;
  --review-detail: #e6c7a9;
  --review-rule: #e6c7a94a;
}
.tali-review--blush { --review-surface: #f1ded6; }
.tali-review__faces {
  display: grid;
  min-height: 234px;
  perspective: 900px;
}
.tali-review__front, .tali-review__back {
  grid-area: 1 / 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  min-width: 0;
  padding: clamp(16px, 2vw, 27px);
  border-radius: 16px 16px 0 0;
  background: var(--review-surface);
  backface-visibility: hidden;
  transition: transform 420ms cubic-bezier(.2,.7,.3,1);
}
.tali-review__back { transform: rotateY(180deg); }
.tali-review.is-open .tali-review__front { transform: rotateY(-180deg); }
.tali-review.is-open .tali-review__back { transform: rotateY(0); }
.tali-review__topic, .tali-review__source {
  color: var(--review-detail);
  font-size: .875rem;
  line-height: 1.35;
}
.tali-review blockquote {
  margin: 0;
  font-size: clamp(1.4rem, 2.35vw, 2rem);
  font-weight: 700;
  line-height: 1.23;
  text-wrap: balance;
}
.tali-review__back img {
  display: block;
  align-self: center;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 194px;
  object-fit: contain;
}
.tali-review__back--closure img {
  clip-path: polygon(0 0,100% 0,100% 100%,17% 100%,17% 95%,0 95%);
}
.tali-review__back--care img {
  clip-path: polygon(0 0,100% 0,100% 100%,17% 100%,17% 94%,0 94%);
}
.tali-review__toggle {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  margin-inline: clamp(16px, 2vw, 27px);
  padding: 0;
  border: 0;
  border-top: 1px solid var(--review-rule);
  background: transparent;
  color: var(--review-detail);
  font: 600 .875rem Assistant, sans-serif;
  cursor: pointer;
}
.tali-reviews :is(button, .tali-reviews__track):focus-visible { outline: 2px solid currentColor; outline-offset: -3px; }
@media (max-width: 900px) {
  .tali-reviews__track { grid-auto-columns: calc((100% - 16px) / 2); }
}
@media (max-width: 580px) {
  .tali-reviews__track { grid-auto-columns: 88%; gap: 12px; }
  .tali-reviews__header { align-items: center; }
}
@media (prefers-reduced-motion: reduce) {
  .tali-review__front, .tali-review__back { transition: none; }
}

.site-header .etx-nav-item { position: relative; }
.site-header .etx-nav-children:empty,
.site-header .etx-mobile-children:empty { display: none; }
.site-header .etx-nav-children { display:none; position:absolute; inset-block-start:100%; inset-inline-start:0; min-width:11rem; z-index:5; background:#fbf8f3; box-shadow:0 14px 40px #38291f24; }
.site-header .etx-nav-item:hover .etx-nav-children:not(:empty),
.site-header .etx-nav-item:focus-within .etx-nav-children:not(:empty) { display:grid; }
.site-header .etx-nav-children a { padding: .72rem 1rem; }
.site-header .etx-mobile-nav-item { display:grid; padding:.75rem .25rem; border-block-end:1px solid var(--line); }
.site-header .etx-mobile-children { display:grid; gap:.55rem; padding:.65rem 1rem 0; font-size:.9rem; }


.catalog-grid .etx-live-category { display:none; }
.catalog-grid .etx-live-category .category-card__media { aspect-ratio:1; background-position:center; background-size:cover; }
.catalog-grid .etx-live-category[data-category-title="תוספות שיער ברזילאי"] { display:flex; order:1; }
.catalog-grid .etx-live-category[data-category-title="תוספות שיער ברזילאי"] .category-card__media { background-image:url("https://ftp2.oia-file.com/stores/903/media/zesEpItBvaQi/original.webp"); }
.catalog-grid .etx-live-category[data-category-title="תוספות שיער ויאטנמי"] { display:flex; order:2; }
.catalog-grid .etx-live-category[data-category-title="תוספות שיער ויאטנמי"] .category-card__media { background-image:url("https://ftp2.oia-file.com/stores/903/media/04GIlnY90pTV/original.webp"); }
.catalog-grid .etx-live-category[data-category-title="צמידי שיער בתולי אירופאי"] { display:flex; order:3; }
.catalog-grid .etx-live-category[data-category-title="צמידי שיער בתולי אירופאי"] .category-card__media { background-image:url("https://ftp2.oia-file.com/stores/903/media/4GRhwg0UdvXU/original.png"); }
.catalog-grid .etx-live-category[data-category-title="פרונטל וקלוזר HD"] { display:flex; order:4; }
.catalog-grid .etx-live-category[data-category-title="פרונטל וקלוזר HD"] .category-card__media { background-image:url("https://ftp2.oia-file.com/stores/903/media/qC16PD5Sk7Xo/original.webp"); }
.catalog-grid .etx-live-category .category-card__media img[src=""],
.catalog-grid .etx-live-category .category-card__media img:not([src]) { display:none; }

.catalog-grid .etx-live-category .category-card__media img[src="/images/category-placeholder.jpg"],
.catalog-grid .etx-live-category .category-card__media img[src^="data:image/svg+xml;utf8,"] { display:none; }

.featured-products .product-card { display:none; }
.featured-products .product-card[data-product-id="42498"] { display:block; order:1; }
.featured-products .product-card[data-product-id="42507"] { display:block; order:2; }
.featured-products .product-card[data-product-id="42506"] { display:block; order:3; }
.featured-products .product-card[data-product-id="42504"] { display:block; order:4; }
.featured-products .product-card[data-product-id="42503"] { display:block; order:5; }
.featured-products .product-card[data-product-id="58448"] { display:block; order:6; }
.tali-november[hidden],.tali-november [hidden]{display:none!important}
.tali-november{position:relative;isolation:isolate;overflow:hidden;margin:0;min-width:0}
.tali-november--lead{background:#2a170f}
.tali-november--lead[data-creative=cream]{background:#edd0ad}
.tali-november--lead[data-creative=products]{background:#430f19}
.tali-november--reminder{margin:clamp(14px,3vw,46px) auto;width:min(calc(100% - 24px),1200px);border-radius:6px}
.tali-november__link,.tali-november__creative{display:block}
.tali-november__link:focus-visible{outline:3px solid #fff2c7;outline-offset:-5px}
.tali-november img{display:block;width:100%;height:auto;margin:0;object-fit:contain}
.tali-november--lead .tali-november__creative{max-width:min(100%,1200px);margin-inline:auto}
.tali-november--lead .tali-november__creative:not([data-sale-creative=bronze]){max-width:min(100%,960px)}
.tali-november__celebration{position:absolute;inset:0;overflow:hidden;pointer-events:none;container-type:size}
.tali-november__foil{position:absolute;top:0;left:var(--left);width:var(--size);height:calc(var(--size)*.56);background:linear-gradient(120deg,var(--foil),#fff0c9,var(--foil));border-radius:1px;opacity:0;animation:tali-november-fall var(--time) var(--delay) linear infinite;animation-play-state:paused}
.tali-november__flare{position:absolute;inset:0;background:linear-gradient(115deg,transparent 34%,#ffeac42a 50%,transparent 66%);transform:translateX(-105%);opacity:0;animation:tali-november-sweep 8s ease-in-out infinite;animation-play-state:paused}
@keyframes tali-november-fall{0%{transform:translate(-50%,-16px) rotate(0)}14%{opacity:.76}76%{opacity:.68}100%{opacity:0;transform:translate(var(--drift),var(--drop)) rotate(var(--turn))}}
@keyframes tali-november-sweep{0%,11%{opacity:0;transform:translateX(-100%)}23%{opacity:.85}40%,100%{opacity:0;transform:translateX(100%)}}
@media(prefers-reduced-motion:reduce){.tali-november__celebration,.tali-november__motion{display:none!important}.tali-november__foil,.tali-november__flare{animation:none}}
.tali-november.is-in-view:not(.is-motion-paused) :is(.tali-november__foil,.tali-november__flare){animation-play-state:running}
.tali-november.is-motion-paused .tali-november__celebration{visibility:hidden}
.tali-november__motion{position:absolute;z-index:2;inset-inline-start:12px;inset-block-end:10px;display:grid;place-items:center;width:34px;height:30px;padding:0;border:1px solid #d1a16a8c;border-radius:6px;background:#281710c9;color:#ffe2ad;font:700 15px/1 Arial,sans-serif;cursor:pointer}
.tali-november__motion:hover{background:#281710}
.tali-november__motion:focus-visible{outline:2px solid #fff2c7;outline-offset:2px}
@media (min-width:681px){
 .tali-november--lead[data-creative=bronze] .tali-november__link{background:radial-gradient(ellipse at 7% 5%,#99562875,transparent 52%),radial-gradient(ellipse at 94% 100%,#92502765,transparent 47%),linear-gradient(105deg,#32190f,#170c07 53%,#281107)}
 .tali-november--lead .tali-november__creative[data-sale-creative=bronze]{max-width:min(100%,clamp(700px,65vw,1030px))}
 .tali-november--lead .tali-november__creative[data-sale-creative=bronze] img{mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
 .tali-november--reminder{width:100%;max-width:none;border-radius:0;background:radial-gradient(ellipse at 8% 0%,#82472788,transparent 47%),radial-gradient(ellipse at 96% 100%,#7d4c3370,transparent 42%),#220e07}
 .tali-november--reminder img{max-width:min(100%,1100px);margin-inline:auto;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
}
.tali-november__art{position:relative;display:block;container-type:inline-size;width:100%;margin-inline:auto}
.tali-november--lead .tali-november__art{max-width:1200px}
.tali-november--lead[data-creative=cream] .tali-november__art,.tali-november--lead[data-creative=products] .tali-november__art{max-width:960px}
.tali-november__caption{position:absolute;display:grid;place-items:center;isolation:isolate;top:var(--label-y,4.2%);height:var(--label-h,8.4%);left:var(--label-l,46.3%);right:var(--label-r,15.6%);padding:0 3%;margin:0;color:var(--label-ink,#fff1d7);font:600 var(--label-size,clamp(8px,1.62cqw,17px))/1.12 Georgia,'Times New Roman',serif;letter-spacing:var(--label-spacing,.11em);text-align:center;text-wrap:balance;pointer-events:none}
.tali-november__caption::before{content:"";position:absolute;z-index:-1;inset:0;background:var(--label-bg,#201008);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent),linear-gradient(0deg,transparent,#000 15%,#000 85%,transparent);mask-composite:intersect}
.tali-november--lead[data-creative=cream] .tali-november__art{--label-y:15.8%;--label-h:6.6%;--label-l:48.9%;--label-r:12.8%;--label-bg:#452714;--label-size:clamp(5.9px,1.65cqw,13px);--label-spacing:.07em}
.tali-november--lead[data-creative=products] .tali-november__art{--label-y:10.2%;--label-h:9.9%;--label-l:47.4%;--label-r:6.6%;--label-bg:#35080d;--label-size:clamp(7.2px,2.05cqw,13px);--label-spacing:.08em}
.tali-november--reminder .tali-november__art{--label-y:40%;--label-h:15.8%;--label-l:.8%;--label-r:77.1%;--label-bg:#220e07;--label-size:clamp(4.7px,1.2cqw,13px);--label-spacing:.09em}
.tali-november--reminder .tali-november__caption{padding:0 1.1%}
.tali-november__flare{background:linear-gradient(114deg,transparent 37%,#ffe1a81c 46%,#fff5d844 50%,#ffe1a81c 54%,transparent 63%)}
@media(max-width:680px){
 .tali-november--lead[data-creative=bronze] .tali-november__art{--label-y:5.9%;--label-h:7.4%;--label-l:45.4%;--label-r:8.4%;--label-size:clamp(8.5px,2.2cqw,14px);--label-spacing:.07em}
}
@media(min-width:681px){
 .tali-november--lead[data-creative=bronze] .tali-november__art{max-width:min(100%,clamp(700px,65vw,1030px))}
 .tali-november--lead .tali-november__creative[data-sale-creative=bronze]{max-width:none}
 .tali-november--reminder .tali-november__art{max-width:min(100%,1100px)}
}

@media(min-width:681px){.tali-november--lead .tali-november__caption{--label-size:clamp(8px,1.24cqw,13px);--label-spacing:.09em;padding:0 1%;white-space:nowrap}}
/* Extend the chosen creative with its own palette. Each image remains uncropped. */
.tali-november--lead[data-creative=olive]{background:#242517}
.tali-november--lead[data-creative=rose]{background:#b87972}
.tali-november--lead:is([data-creative=olive],[data-creative=rose]) .tali-november__caption{display:none}
.tali-november--lead:is([data-creative=olive],[data-creative=rose]) .tali-november__creative{max-width:none}
@media(min-width:681px){
 .tali-november--lead:is([data-creative=olive],[data-creative=rose]) .tali-november__art{max-width:min(100%,clamp(700px,65vw,1030px))}
 .tali-november--lead:is([data-creative=cream],[data-creative=products]) .tali-november__art{max-width:min(100%,690px)}
 .tali-november--lead[data-creative=olive] .tali-november__link{background:radial-gradient(ellipse at 4% 12%,#77704388,transparent 58%),linear-gradient(105deg,#46412b,#222316 55%,#272817)}
 .tali-november--lead[data-creative=rose] .tali-november__link{background:radial-gradient(ellipse at 4% 15%,#f9c4b1bb,transparent 58%),linear-gradient(105deg,#a46661,#da9a90 54%,#ad6e67)}
 .tali-november--lead[data-creative=cream] .tali-november__link{background:radial-gradient(ellipse at 22% 20%,#ffe6c6,transparent 58%),linear-gradient(105deg,#c09b72,#f0d4b1 56%,#dab48d)}
 .tali-november--lead[data-creative=products] .tali-november__link{background:radial-gradient(ellipse at 14% 20%,#8c2835,transparent 55%),linear-gradient(105deg,#591720,#370810 62%,#511118)}
 .tali-november--lead:not([data-creative=bronze]) .tali-november__creative img{mask-image:linear-gradient(90deg,transparent,#000 4%,#000 97.8%,transparent)}
 .tali-november--lead[data-creative=cream] .tali-november__caption{--label-size:clamp(6px,1.15cqw,11px);--label-spacing:.045em}
}
#premium-hair .premium-card[data-product-id="71079"] .premium-client-photo { content: url("https://ftp2.oia-file.com/stores/903/media/0CyPnoanuFig/original.webp"); }
#premium-hair .premium-card[data-product-id="160326"] .premium-client-photo { content: url("https://ftp2.oia-file.com/stores/903/media/jcpuQGNxmVLM/original.webp"); }
#about .about__content .about__whatsapp {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  gap: 8px;
  box-sizing: border-box;
  width: fit-content;
  max-width: 100%;
  min-width: 0;
  min-height: 44px;
  margin-top: 20px;
  padding: 9px 15px;
  border: 1px solid #a48776;
  border-radius: 999px;
  background: rgba(255, 250, 245, .58);
  box-shadow: none;
  color: #49352b;
  font-size: .9375rem;
  font-weight: 650;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}
#about .about__whatsapp svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  color: #775b4b;
}
#about .about__content .about__whatsapp:hover {
  transform: none;
  border-color: #816654;
  background: #fff8f2;
  color: #3d2a20;
}
#about .about__content .about__whatsapp:focus-visible {
  outline: 2px solid #816654;
  outline-offset: 3px;
}

@media (max-width: 560px) {
  #about .about__content .about__whatsapp {
    align-self: center;
    margin-inline-start: clamp(0px, calc(780px - 200vw), 60px);
  }
}